Linha de Produto de Software:Diferentes produtos para diferentes              clientes            Priscylla Silva         ...
Objetivos➔    Introduzir os principais conceitos de Linha de    Produto de Software (LPS)➔    Indicar vantagens e riscos d...
Roteiro➔    Surgimento das Linhas de Produto➔    Customização de Produtos➔    Software Individual vs Software Padrão➔    L...
Surgimento das Linhas de Produto➔    Inicialmente os produtos eram    feitos de modo artesanal;➔    Com o crescimento da s...
Henry Ford➔    Na área automotiva, Henry           Ford    inventou a linha de produtos      ➔          Produção em massa;...
Customização de Produtos➔   Por que Customizar?➔   Pessoas têm necessidades diferentes:➔   Algumas podem pagar a mais por ...
Customização de VeículosFonte: www.fiat.com.br
Customização de CelularesFonte: 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        ...
Software Individual vs Software Padrão➔    Como unir o melhor que esses    dois mundos tem a oferecer?➔    Queremos:     ➔...
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 compartil...
Quem já está utilizando???
Motivações para empresas usarem LPS➔    Empresas de software buscam atingir um    segmento de mercado específico;➔    Sist...
Motivações➔   Redução dos custos de    Desenvolvimento;➔   Aumento da qualidade    do produto e satisfação    do usuário;➔...
Motivações➔    Evolução organizada;➔    Ganhos de    produtividade em larga    escala➔    Maior presença no    mercado;➔  ...
Riscos     ➔   Maior Nível de Risco          ➔   Grande investimento inicial              que pode se tornar inútil se    ...
Quando usar LPS? VARIABILIDADE Plataforma comum; Domínio estável;Quando não usar LPS? Quando você não conhecer bem o domín...
Demanda pela Engenharia de LPS➔    Aumento da quantidade de dispositivos com    software embarcado;➔    Variabilidade no S...
Restrições sobre adaptações➔    Em LPS, é preciso que as adaptações:     ➔         Possam ser reproduzidas de forma       ...
Abordagens para Construção de LPS➔    Pró-ativa➔    Extrativa➔    Reativa
Abordagem Pró-Ativa                      Product 1                      Product 2           SPL                      Produ...
Abordagem ExtrativaProduct 1               Product 1Product 2               Product 2                  SPLProduct 3       ...
Abordagem Reativa                                         Product 1                         React             Product 1   ...
Como implementar uma LPS?➔    Orientação a objetos e polimorfismo➔    Padrões de projeto➔    Frameworks➔    Programação or...
Quer saber mais???http://estruturaopen.com/        Priscylla Silva       pmss@ic.ufal.br
Obrigada!            Perguntas             Priscylla Silva            pmss@ic.ufal.br
Próximos SlideShares
Carregando em…5
×

Linha de Produto de Software: Diferentes produtos para diferentes clientes

2.632 visualizações

Publicada em

Palestra ministrada no Circuito Alagoano de Tecnologia da Informação, no ano de 2011. Com o tema Linha de Produto de Software, foi apresentada uma visão geral sobre o assunto e a sua utilização.

0 comentários
2 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
2.632
No SlideShare
0
A partir de incorporações
0
Número de incorporações
4
Ações
Compartilhamentos
0
Downloads
47
Comentários
0
Gostaram
2
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Linha de Produto de Software: Diferentes produtos para diferentes clientes

  1. 1. Linha de Produto de Software:Diferentes produtos para diferentes clientes Priscylla Silva pmss@ic.ufal.br
  2. 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. 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. 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. 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. 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.0Ar Condicionado:opcional Portas: 3 ou 5
  7. 7. Customização de VeículosFonte: www.fiat.com.br
  8. 8. Customização de CelularesFonte: http://www.motorola.com/
  9. 9. O que tudo isso tem haver com Software???
  10. 10. Software Individual vs Software Padrão
  11. 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. 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. 13. Linha de Produto de Software!!! Software Product Line
  14. 14. Exemplo➔ Desenvolvimento de jogos para dispositivos móveis;
  15. 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. 16. Quem já está utilizando???
  17. 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. 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. 19. Motivações➔ Evolução organizada;➔ Ganhos de produtividade em larga escala➔ Maior presença no mercado;➔ Possibilidade de crescimento da empresa;
  20. 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. 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. 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. 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. 24. Abordagens para Construção de LPS➔ Pró-ativa➔ Extrativa➔ Reativa
  25. 25. Abordagem Pró-Ativa Product 1 Product 2 SPL Product 3
  26. 26. Abordagem ExtrativaProduct 1 Product 1Product 2 Product 2 SPLProduct 3 Product 3
  27. 27. Abordagem Reativa Product 1 React Product 1 Iterate Product 2 Product 2 SPL Product 3 SPL Product 3 Product 4
  28. 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. 29. Quer saber mais???http://estruturaopen.com/ Priscylla Silva pmss@ic.ufal.br
  30. 30. Obrigada! Perguntas Priscylla Silva pmss@ic.ufal.br

×