SlideShare ist ein Scribd-Unternehmen logo
1 von 30
Downloaden Sie, um offline zu lesen
Linha de Produto de Software:
Diferentes produtos para diferentes
              clientes



            Priscylla Silva
           pmss@ic.ufal.br
Objetivos


➔
    Introduzir os principais conceitos de Linha de
    Produto de Software (LPS)
➔
    Indicar vantagens e riscos de sua utilização
➔
    Mostrar cenários em que a utilização de LPS
    é útil e vantajosa em empresas
➔
    Apontas caminhos para a criação de LPS
Roteiro


➔
    Surgimento das Linhas de Produto
➔
    Customização de Produtos
➔
    Software Individual vs Software Padrão
➔
    Linha de Produto de Software:
     ➔   Definição
     ➔   Motivações
     ➔   Vantagens
     ➔   Riscos
     ➔
         Quando usar? Quando não Usar?
➔
    Como criar uma Linha de Produto de Software?
Surgimento das Linhas de Produto


➔
    Inicialmente os produtos eram
    feitos de modo artesanal;


➔
    Com o crescimento da sociedade e do consumo
    era preciso aumentar a quantidade de produtos
    fabricados.


➔
    Como atender a esta demanda?
Henry Ford

➔
    Na área automotiva, Henry           Ford
    inventou a linha de produtos
      ➔
          Produção em massa;
      ➔
          Preços mais baixos que produtos
          artesanais;

➔
    O    primeiro    automóvel
    produzido desta forma foi
    o Ford T (1908).
➔
    Até 1914, o Ford T era
    produzido em várias cores
    (a escolha do cliente).
Customização de Produtos

➔   Por que Customizar?
➔   Pessoas têm necessidades diferentes:
➔   Algumas podem pagar a mais por certas características
    do produto;
➔   Outras querem mostrar que podem pagar a mais por
    produtos diferenciados;

       Limpador de Pára-brisa
       Traseiro: opcional
                                       Câmbio: automático ou manual
                                                     Motor: 1.0, 1.6 ou 2.0
Ar Condicionado:
opcional



                                Portas: 3 ou 5
Customização de Veículos




Fonte: www.fiat.com.br
Customização de Celulares




Fonte: http://www.motorola.com/
O que tudo isso tem haver com
         Software???
Software Individual vs Software Padrão
Software Individual vs Software Padrão


➔
    Software individual
     ➔
         Produzidos para satisfazer requisitos
         específicos de um cliente;
     ➔
         Podem ser únicos e personalizados
     ➔
         Customização é cara!
➔
    Software padronizado
     ➔
         Vendidos em larga escala;
     ➔
         Custo de produção relativamente baixo;
     ➔
         Sofrem da falta de diversificação para atender
         os vários clientes!
Software Individual vs Software Padrão


➔
    Como unir o melhor que esses
    dois mundos tem a oferecer?

➔
    Queremos:
     ➔
         Customização
     ➔
         Minimizar os custos
     ➔
         Vender em larga escala
Linha de Produto de Software!!!
       Software Product Line
Exemplo
➔
    Desenvolvimento de jogos para dispositivos
    móveis;
O que é uma Linha de Produto de
   Software?


   ➔
       “é um conjunto intensivo de sistemas de
       software que compartilham e gerenciam um
       conjunto de características em comum
       que satisfazem uma necessidade específica
       de um domínio, e que são desenvolvidos a
       partir de um núcleo comum e de uma forma
       preestabelecida.” (Clements and Northrop)



Clements, P., Northrop, L.: Software Product Lines:
Practices and Patterns. Addison-Wesley, Boston, MA, USA
(2002).
Quem já está utilizando???
Motivações para empresas usarem LPS


➔
    Empresas de software buscam atingir um
    segmento de mercado específico;
➔
    Sistemas de desenvolvimento para um
    domínio de aplicação possui mais coisas em
    comum do que particulares;
➔
    Os produtos para um domínio de aplicação
    compartilham elementos que podem ser
    reutilizados com adicionamento de requisitos
    específicos
Motivações


➔   Redução dos custos de
    Desenvolvimento;
➔   Aumento da qualidade
    do produto e satisfação
    do usuário;
➔   Redução do tempo de
    entrega;
➔   Redução dos Esforços
    de Manutenção;
Motivações

➔
    Evolução organizada;
➔
    Ganhos de
    produtividade em larga
    escala
➔
    Maior presença no
    mercado;
➔
    Possibilidade de
    crescimento da
    empresa;
Riscos


     ➔   Maior Nível de Risco
          ➔   Grande investimento inicial
              que pode se tornar inútil se
              importantes requisitos
              mudam;
     ➔   Maior tempo de entrega para o
         primeiro produto baseado na
         arquitetura da LPS;
     ➔   Requer Engenharia Experiente;
     ➔   Gerenciamento técnico e
         organizacional;
Quando usar LPS?

 VARIABILIDADE
 Plataforma comum;
 Domínio estável;


Quando não usar LPS?

 Quando você não conhecer bem o domínio
 da da linha:
 Quando o domínio não for estável:
Demanda pela Engenharia de LPS


➔
    Aumento da quantidade de dispositivos com
    software embarcado;
➔
    Variabilidade no Software   também   tem
    crescido bastante;
➔
    Novos Clientes;
➔
    Portabilidade;
Restrições sobre adaptações


➔
    Em LPS, é preciso que as adaptações:
     ➔
         Possam ser reproduzidas de forma
         controlada;
     ➔
         Ocorram em lugares que façam sentido!
Abordagens para Construção de LPS


➔
    Pró-ativa
➔
    Extrativa
➔
    Reativa
Abordagem Pró-Ativa




                      Product 1




                      Product 2



           SPL
                      Product 3
Abordagem Extrativa




Product 1               Product 1




Product 2               Product 2




                  SPL
Product 3               Product 3
Abordagem Reativa

                                         Product 1

                         React
             Product 1
                         Iterate
                                         Product 2


             Product 2
   SPL
                                         Product 3

                                   SPL
             Product 3

                                         Product 4
Como implementar uma LPS?

➔
    Orientação a objetos e polimorfismo
➔
    Padrões de projeto
➔
    Frameworks
➔
    Programação orientada a features
➔
    Compilação Condicional
➔
    Programação Orientada a Aspectos
Quer saber mais???




http://estruturaopen.com/

        Priscylla Silva
       pmss@ic.ufal.br
Obrigada!




            Perguntas

             Priscylla Silva
            pmss@ic.ufal.br

Weitere ähnliche Inhalte

Was ist angesagt?

5 p9 pnor and open bmc overview - final
5 p9 pnor and open bmc overview - final5 p9 pnor and open bmc overview - final
5 p9 pnor and open bmc overview - finalYutaka Kawai
 
Aula 01.3 - Fundamentos da Construção de Algoritmos e Programas
Aula 01.3 - Fundamentos da Construção de Algoritmos e ProgramasAula 01.3 - Fundamentos da Construção de Algoritmos e Programas
Aula 01.3 - Fundamentos da Construção de Algoritmos e ProgramasMessias Batista
 
2009 1 - sistemas operacionais - aula 3 - processos
2009 1 - sistemas operacionais - aula 3 - processos2009 1 - sistemas operacionais - aula 3 - processos
2009 1 - sistemas operacionais - aula 3 - processosComputação Depressão
 
Demystify eBPF JIT Compiler
Demystify eBPF JIT CompilerDemystify eBPF JIT Compiler
Demystify eBPF JIT CompilerNetronome
 
Sistemas distribuídos aula 1
Sistemas distribuídos aula 1Sistemas distribuídos aula 1
Sistemas distribuídos aula 1Renato William
 
Mineração de Dados Um Estudo de Caso Real.pdf
Mineração de Dados Um Estudo de Caso Real.pdfMineração de Dados Um Estudo de Caso Real.pdf
Mineração de Dados Um Estudo de Caso Real.pdfCloves da Rocha
 
sistemas operativos.ppt
sistemas operativos.pptsistemas operativos.ppt
sistemas operativos.pptssuserb52d9e
 
Reliability, Availability, and Serviceability (RAS) on ARM64 status - SAN19-118
Reliability, Availability, and Serviceability (RAS) on ARM64 status - SAN19-118Reliability, Availability, and Serviceability (RAS) on ARM64 status - SAN19-118
Reliability, Availability, and Serviceability (RAS) on ARM64 status - SAN19-118Wei Fu
 
Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)Bruno Grange
 

Was ist angesagt? (20)

5 p9 pnor and open bmc overview - final
5 p9 pnor and open bmc overview - final5 p9 pnor and open bmc overview - final
5 p9 pnor and open bmc overview - final
 
Processamento paralelo
Processamento paraleloProcessamento paralelo
Processamento paralelo
 
06 - Servidor Apache
06 - Servidor Apache06 - Servidor Apache
06 - Servidor Apache
 
Aula 05-entrada e-saida
Aula 05-entrada e-saidaAula 05-entrada e-saida
Aula 05-entrada e-saida
 
Aula 01.3 - Fundamentos da Construção de Algoritmos e Programas
Aula 01.3 - Fundamentos da Construção de Algoritmos e ProgramasAula 01.3 - Fundamentos da Construção de Algoritmos e Programas
Aula 01.3 - Fundamentos da Construção de Algoritmos e Programas
 
2009 1 - sistemas operacionais - aula 3 - processos
2009 1 - sistemas operacionais - aula 3 - processos2009 1 - sistemas operacionais - aula 3 - processos
2009 1 - sistemas operacionais - aula 3 - processos
 
Linguagem PHP
Linguagem PHPLinguagem PHP
Linguagem PHP
 
Processos e threads cap 02 (i unidade)
Processos e threads   cap 02 (i unidade)Processos e threads   cap 02 (i unidade)
Processos e threads cap 02 (i unidade)
 
Demystify eBPF JIT Compiler
Demystify eBPF JIT CompilerDemystify eBPF JIT Compiler
Demystify eBPF JIT Compiler
 
Sistemas distribuídos aula 1
Sistemas distribuídos aula 1Sistemas distribuídos aula 1
Sistemas distribuídos aula 1
 
Curso basico de informtica
Curso basico de informticaCurso basico de informtica
Curso basico de informtica
 
Aula 07 - Visualg e Pseudocódigo
Aula 07 - Visualg e PseudocódigoAula 07 - Visualg e Pseudocódigo
Aula 07 - Visualg e Pseudocódigo
 
Escalonamento de processos
Escalonamento de processosEscalonamento de processos
Escalonamento de processos
 
Unidade 3 - Ambientes Operacionais
Unidade 3 - Ambientes OperacionaisUnidade 3 - Ambientes Operacionais
Unidade 3 - Ambientes Operacionais
 
Linux para leigos
Linux para leigos Linux para leigos
Linux para leigos
 
Mineração de Dados Um Estudo de Caso Real.pdf
Mineração de Dados Um Estudo de Caso Real.pdfMineração de Dados Um Estudo de Caso Real.pdf
Mineração de Dados Um Estudo de Caso Real.pdf
 
Web Design Responsivo
Web Design ResponsivoWeb Design Responsivo
Web Design Responsivo
 
sistemas operativos.ppt
sistemas operativos.pptsistemas operativos.ppt
sistemas operativos.ppt
 
Reliability, Availability, and Serviceability (RAS) on ARM64 status - SAN19-118
Reliability, Availability, and Serviceability (RAS) on ARM64 status - SAN19-118Reliability, Availability, and Serviceability (RAS) on ARM64 status - SAN19-118
Reliability, Availability, and Serviceability (RAS) on ARM64 status - SAN19-118
 
Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)
 

Ähnlich wie Linha de Produto de Software: Diferentes produtos para diferentes clientes

Es parte do capítulo 16 - linhas de produtos de software
Es   parte do capítulo 16 - linhas de produtos de softwareEs   parte do capítulo 16 - linhas de produtos de software
Es parte do capítulo 16 - linhas de produtos de softwareFelipe Oliveira
 
Não deixe seu projeto só nas mãos do framework
Não deixe seu projeto só nas mãos do frameworkNão deixe seu projeto só nas mãos do framework
Não deixe seu projeto só nas mãos do frameworkGiuseppe Lopes
 
Negócios e Open Source
Negócios e Open SourceNegócios e Open Source
Negócios e Open SourceOpenBossa
 
Como soluções de desenvolvimento ágil podem trazer flexibilidade e velocidade...
Como soluções de desenvolvimento ágil podem trazer flexibilidade e velocidade...Como soluções de desenvolvimento ágil podem trazer flexibilidade e velocidade...
Como soluções de desenvolvimento ágil podem trazer flexibilidade e velocidade...Embratel
 
XP - Extreme Programming
XP - Extreme ProgrammingXP - Extreme Programming
XP - Extreme ProgrammingRodrigo Branas
 
5 Dicas para economizar no desenvolvimento do seu aplicativo
5 Dicas para economizar no desenvolvimento do seu aplicativo5 Dicas para economizar no desenvolvimento do seu aplicativo
5 Dicas para economizar no desenvolvimento do seu aplicativoKleber Carvalho
 
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018 O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018 Gabriel Machado
 
O Papel do Product Owner
O Papel do Product OwnerO Papel do Product Owner
O Papel do Product OwnerMarcia Maia
 
Introdução ao Projeto de Plataformas de Software: o quê, por que, como
Introdução ao Projeto de Plataformas de Software: o quê, por que, comoIntrodução ao Projeto de Plataformas de Software: o quê, por que, como
Introdução ao Projeto de Plataformas de Software: o quê, por que, comoRodrigo Reis
 
Usp Ufba Atratividade Software Livre
Usp Ufba Atratividade Software LivreUsp Ufba Atratividade Software Livre
Usp Ufba Atratividade Software LivreCampus Party Brasil
 
ExpressoBR para Um Milhão (de Usuários)
ExpressoBR para Um Milhão (de Usuários)ExpressoBR para Um Milhão (de Usuários)
ExpressoBR para Um Milhão (de Usuários)Flávio Lisboa
 
Seu código fonte é sustentável?
Seu código fonte é sustentável?Seu código fonte é sustentável?
Seu código fonte é sustentável?Isaac de Souza
 
Aula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareAula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareCloves da Rocha
 
Seja Um Programador Pragmatico
Seja Um Programador PragmaticoSeja Um Programador Pragmatico
Seja Um Programador PragmaticoLeonardo Fernandes
 
Fundamentos Engenharia de Software.pptx
Fundamentos Engenharia de Software.pptxFundamentos Engenharia de Software.pptx
Fundamentos Engenharia de Software.pptxRoberto Nunes
 
Framework Próprio: Vale a Pena?
Framework Próprio: Vale a Pena?Framework Próprio: Vale a Pena?
Framework Próprio: Vale a Pena?Hiarison Gigante
 
Compondo uma plataforma de software com microservices.
Compondo uma plataforma de software com microservices.Compondo uma plataforma de software com microservices.
Compondo uma plataforma de software com microservices.Isaac de Souza
 

Ähnlich wie Linha de Produto de Software: Diferentes produtos para diferentes clientes (20)

Es parte do capítulo 16 - linhas de produtos de software
Es   parte do capítulo 16 - linhas de produtos de softwareEs   parte do capítulo 16 - linhas de produtos de software
Es parte do capítulo 16 - linhas de produtos de software
 
Não deixe seu projeto só nas mãos do framework
Não deixe seu projeto só nas mãos do frameworkNão deixe seu projeto só nas mãos do framework
Não deixe seu projeto só nas mãos do framework
 
Negócios e Open Source
Negócios e Open SourceNegócios e Open Source
Negócios e Open Source
 
Scrum na sua Empresa
Scrum na sua EmpresaScrum na sua Empresa
Scrum na sua Empresa
 
Como soluções de desenvolvimento ágil podem trazer flexibilidade e velocidade...
Como soluções de desenvolvimento ágil podem trazer flexibilidade e velocidade...Como soluções de desenvolvimento ágil podem trazer flexibilidade e velocidade...
Como soluções de desenvolvimento ágil podem trazer flexibilidade e velocidade...
 
XP - Extreme Programming
XP - Extreme ProgrammingXP - Extreme Programming
XP - Extreme Programming
 
5 Dicas para economizar no desenvolvimento do seu aplicativo
5 Dicas para economizar no desenvolvimento do seu aplicativo5 Dicas para economizar no desenvolvimento do seu aplicativo
5 Dicas para economizar no desenvolvimento do seu aplicativo
 
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018 O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
O que não fazer ao atualizar para o PHP 7 @ TDC SP 2018
 
O Papel do Product Owner
O Papel do Product OwnerO Papel do Product Owner
O Papel do Product Owner
 
Introdução ao Projeto de Plataformas de Software: o quê, por que, como
Introdução ao Projeto de Plataformas de Software: o quê, por que, comoIntrodução ao Projeto de Plataformas de Software: o quê, por que, como
Introdução ao Projeto de Plataformas de Software: o quê, por que, como
 
Usp Ufba Atratividade Software Livre
Usp Ufba Atratividade Software LivreUsp Ufba Atratividade Software Livre
Usp Ufba Atratividade Software Livre
 
ExpressoBR para Um Milhão (de Usuários)
ExpressoBR para Um Milhão (de Usuários)ExpressoBR para Um Milhão (de Usuários)
ExpressoBR para Um Milhão (de Usuários)
 
Seu código fonte é sustentável?
Seu código fonte é sustentável?Seu código fonte é sustentável?
Seu código fonte é sustentável?
 
Aula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de SoftwareAula - Introdução a Engenharia de Software
Aula - Introdução a Engenharia de Software
 
Engenharia de Software Aula 1 - Intro
Engenharia de Software Aula 1 - IntroEngenharia de Software Aula 1 - Intro
Engenharia de Software Aula 1 - Intro
 
Seja Um Programador Pragmatico
Seja Um Programador PragmaticoSeja Um Programador Pragmatico
Seja Um Programador Pragmatico
 
Fundamentos Engenharia de Software.pptx
Fundamentos Engenharia de Software.pptxFundamentos Engenharia de Software.pptx
Fundamentos Engenharia de Software.pptx
 
Framework Próprio: Vale a Pena?
Framework Próprio: Vale a Pena?Framework Próprio: Vale a Pena?
Framework Próprio: Vale a Pena?
 
HP Mobile Testing
HP Mobile TestingHP Mobile Testing
HP Mobile Testing
 
Compondo uma plataforma de software com microservices.
Compondo uma plataforma de software com microservices.Compondo uma plataforma de software com microservices.
Compondo uma plataforma de software com microservices.
 

Linha de Produto de Software: Diferentes produtos para diferentes clientes

  • 1. Linha de Produto de Software: Diferentes produtos para diferentes clientes Priscylla Silva pmss@ic.ufal.br
  • 2. Objetivos ➔ Introduzir os principais conceitos de Linha de Produto de Software (LPS) ➔ Indicar vantagens e riscos de sua utilização ➔ Mostrar cenários em que a utilização de LPS é útil e vantajosa em empresas ➔ Apontas caminhos para a criação de LPS
  • 3. Roteiro ➔ Surgimento das Linhas de Produto ➔ Customização de Produtos ➔ Software Individual vs Software Padrão ➔ Linha de Produto de Software: ➔ Definição ➔ Motivações ➔ Vantagens ➔ Riscos ➔ Quando usar? Quando não Usar? ➔ Como criar uma Linha de Produto de Software?
  • 4. Surgimento das Linhas de Produto ➔ Inicialmente os produtos eram feitos de modo artesanal; ➔ Com o crescimento da sociedade e do consumo era preciso aumentar a quantidade de produtos fabricados. ➔ Como atender a esta demanda?
  • 5. Henry Ford ➔ Na área automotiva, Henry Ford inventou a linha de produtos ➔ Produção em massa; ➔ Preços mais baixos que produtos artesanais; ➔ O primeiro automóvel produzido desta forma foi o Ford T (1908). ➔ Até 1914, o Ford T era produzido em várias cores (a escolha do cliente).
  • 6. Customização de Produtos ➔ Por que Customizar? ➔ Pessoas têm necessidades diferentes: ➔ Algumas podem pagar a mais por certas características do produto; ➔ Outras querem mostrar que podem pagar a mais por produtos diferenciados; Limpador de Pára-brisa Traseiro: opcional Câmbio: automático ou manual Motor: 1.0, 1.6 ou 2.0 Ar Condicionado: opcional Portas: 3 ou 5
  • 8. Customização de Celulares Fonte: http://www.motorola.com/
  • 9. O que tudo isso tem haver com Software???
  • 10. Software Individual vs Software Padrão
  • 11. Software Individual vs Software Padrão ➔ Software individual ➔ Produzidos para satisfazer requisitos específicos de um cliente; ➔ Podem ser únicos e personalizados ➔ Customização é cara! ➔ Software padronizado ➔ Vendidos em larga escala; ➔ Custo de produção relativamente baixo; ➔ Sofrem da falta de diversificação para atender os vários clientes!
  • 12. Software Individual vs Software Padrão ➔ Como unir o melhor que esses dois mundos tem a oferecer? ➔ Queremos: ➔ Customização ➔ Minimizar os custos ➔ Vender em larga escala
  • 13. Linha de Produto de Software!!! Software Product Line
  • 14. Exemplo ➔ Desenvolvimento de jogos para dispositivos móveis;
  • 15. O que é uma Linha de Produto de Software? ➔ “é um conjunto intensivo de sistemas de software que compartilham e gerenciam um conjunto de características em comum que satisfazem uma necessidade específica de um domínio, e que são desenvolvidos a partir de um núcleo comum e de uma forma preestabelecida.” (Clements and Northrop) Clements, P., Northrop, L.: Software Product Lines: Practices and Patterns. Addison-Wesley, Boston, MA, USA (2002).
  • 16. Quem já está utilizando???
  • 17. Motivações para empresas usarem LPS ➔ Empresas de software buscam atingir um segmento de mercado específico; ➔ Sistemas de desenvolvimento para um domínio de aplicação possui mais coisas em comum do que particulares; ➔ Os produtos para um domínio de aplicação compartilham elementos que podem ser reutilizados com adicionamento de requisitos específicos
  • 18. Motivações ➔ Redução dos custos de Desenvolvimento; ➔ Aumento da qualidade do produto e satisfação do usuário; ➔ Redução do tempo de entrega; ➔ Redução dos Esforços de Manutenção;
  • 19. Motivações ➔ Evolução organizada; ➔ Ganhos de produtividade em larga escala ➔ Maior presença no mercado; ➔ Possibilidade de crescimento da empresa;
  • 20. Riscos ➔ Maior Nível de Risco ➔ Grande investimento inicial que pode se tornar inútil se importantes requisitos mudam; ➔ Maior tempo de entrega para o primeiro produto baseado na arquitetura da LPS; ➔ Requer Engenharia Experiente; ➔ Gerenciamento técnico e organizacional;
  • 21. Quando usar LPS? VARIABILIDADE Plataforma comum; Domínio estável; Quando não usar LPS? Quando você não conhecer bem o domínio da da linha: Quando o domínio não for estável:
  • 22. Demanda pela Engenharia de LPS ➔ Aumento da quantidade de dispositivos com software embarcado; ➔ Variabilidade no Software também tem crescido bastante; ➔ Novos Clientes; ➔ Portabilidade;
  • 23. Restrições sobre adaptações ➔ Em LPS, é preciso que as adaptações: ➔ Possam ser reproduzidas de forma controlada; ➔ Ocorram em lugares que façam sentido!
  • 24. Abordagens para Construção de LPS ➔ Pró-ativa ➔ Extrativa ➔ Reativa
  • 25. Abordagem Pró-Ativa Product 1 Product 2 SPL Product 3
  • 26. Abordagem Extrativa Product 1 Product 1 Product 2 Product 2 SPL Product 3 Product 3
  • 27. Abordagem Reativa Product 1 React Product 1 Iterate Product 2 Product 2 SPL Product 3 SPL Product 3 Product 4
  • 28. Como implementar uma LPS? ➔ Orientação a objetos e polimorfismo ➔ Padrões de projeto ➔ Frameworks ➔ Programação orientada a features ➔ Compilação Condicional ➔ Programação Orientada a Aspectos
  • 29. Quer saber mais??? http://estruturaopen.com/ Priscylla Silva pmss@ic.ufal.br
  • 30. Obrigada! Perguntas Priscylla Silva pmss@ic.ufal.br