engenharia de software baseada em componentes

24
Engenharia de Software baseada em Componentes Caio Braz Gustavo Vilela Henrique Stagni Igor Montagner

Upload: igordsm

Post on 28-Nov-2014

8.206 views

Category:

Technology


6 download

DESCRIPTION

Apresentação de Engenharia de Software baseada em Componentes feita na disciplina de ES no IME-USP.

TRANSCRIPT

Engenharia de Software baseada em Componentes

Caio BrazGustavo Vilela

Henrique StagniIgor Montagner

Componente

" Um componente é um pacote coerente de artefatos de software que pode ser independetemente desenvolvido e distribuído como uma unidade e que pode ser composto, sem alterações, com outros componentes para construir algo maior." Motivação: REÚSO.Processo natural que ocorre em muitas indústrias. 

Características de Componentes

Comparação com peças do brinquedo Lego: • São intercambiáveis.• São reutizáveis.• Alguns são mais específicos, outros mais gerais.• Interagem com outros componentes.

Engenharia de Software Baseada em Componentes

A ESBC estuda:•  as práticas necessárias para o desenvolvimento baseado

em componentes.• vantagens e desvantagens da adoção de componentes

Classificação de Componentes

ES x ESBC

ES ESBCO reúso existe, mas

ocorre na fase de desenvolvimento. Geralmente envolve

reutilização de trechos de código.

O reúso é feito na montagem, sem custos

de desenvolvimento, sem mudar a

implementação dos componentes.

Atualização e extensão do sistema são feitas

dinamicamente. Componentização.

ES x ESBC

ES ESBC• Análise dos requisitos.• Especificação do sistema.• Aprovação da especificação

pelo cliente.

• Análise dos requisitos.• Especificação do sistema.• Aprovação da especificação

pelo cliente.

• Projeto de Arquitetura do Software.

• Implementação.

• Busca e Seleção de Componentes.

• Desenvolvimento de partes não atendidas por componentes já existentes.

• Integração.

• Testes • Testes de integração.

• Implantação • Implantação

Mercado de Componentes de Software

Obtenção de software:

• Pacote  • Sob Encomenda

  

ESBC oferece o melhor dos dois modelos e ainda atende reconhecidamente a duas grandes demandas do mercado de TI: • Diminuição do tempo de chegada ao mercado

 • Aumento de produtividade

Mercado de Componentes de SoftwareEstrutura Produtiva

• Desenvolvedores de componentes • Integradores

 • Clientes/usuários de software baseado em

componentes • Intermediários

 • Certificadores de qualidade

 • Fornecedores de ferramentas de desenvolvimento

Mercado de Componentes de SoftwareEconomia de componentes

• Mercados de componentes individuais e linhas de produtos

 • Mercado de Integração

 • Mercado de infra-estrutura

 • Mercado de intermediação

 • Mercado de Certificação

 • Mercado de Treinamento/Capacitação

Mercado de Componentes de SoftwareCadeia de Valor

Mercado de Componentes de SoftwareBarreiras e riscos

• Pouco conhecida • Faltam padrões 

 • Poucos fornecedores e compradores de componentes

 • Dificuldade em encontrar (ou operacionalizar) outros

modos de comercialização mais adequados que a venda de licenças

 • Alguns modelos de negócio são muito sofisticados para

um mercado ainda não firmado

Mercado de Componentes de SoftwareProblemas em aberto

• Descrição de componentes • Confiabilidade

 • Responsabilidade por falhas

 • Combinação de componentes

 • Modelos de negócios

 • Atualizações

 • Suporte a longo prazo

 • Propriedade Intelectual

Tendências do Desenvolvimento e uso da ESBC no Brasil

 Estímulos positivos e negativos para a escolha do modelo ESBC 

o Fatores técnicos positivos:

Positivos a qualidade do software, facilidade de manutenção, confiança e evolução da arquitetura orientada a serviços.

o Fatores técnicos negativos       O baixo grau de maturidade da tecnologia é uma barreira

grande.

Tendências do Desenvolvimento e uso da ESBC no Brasil

 Os estímulos econômicos tiveram uma percepção mais positiva que os técnicos.

o Fatores econômicos positivos:

Os principais foram a produtividade, "time to market" e a geração de oportunidades de negócios.

o Fatores econômicos negativos       O custo da migração para o novo modelo e a falta de

recursos humanos para o processo.

Tendências do Desenvolvimento e uso da ESBC no Brasil

Os modelos de negócio mais atrativos e viáveis para o mercado brasileiro atualmente (2005).

 Obtiveram maior destaque os modelos Integrador, Venda de Componentes e Ferramentas. Em contrapartida, os modelos Broker e Certificação foram os classificados como mais incertos.

 Um fato interessante é verificar a falta de capacitação para todos os modelos.

  

Tendências do Desenvolvimento e uso da ESBC no Brasil

 Intensidade de uso do modelo ESBC atualmente (2005) e

projeção para o futuro (2010), para vários dominios disponíveis no mercado.

2005

2010

Cenário para desenvolvimento e uso de componentes na Indústria Brasileira de Software e Serviços

Metodologia de cenários:• adequada para tratar incertezas

 Exercício de cenários:• identificar cenários futuros para o desenvolvimento de componentes

 Pontos de discussão:•  em que medida a ESBC vai transformar a base técnica e comercial da

indústria mundial de software?•  quais os modelos de negócio criados ou potencializados?•  sendo um mercado internacional em potencial, quais as possibilidades de

inserção do Brasil? 

Cenário para desenvolvimento e uso de componentes na Indústria Brasileira de Software e Serviços

Resultados:•  a evolução do reuso não é uma incerteza, é uma tendência!• incerteza quanto a ESBC tornar-se principal tecnologia nessa trajetória.

 Cenários:• Vento em Popa - ESBC é a trajetória principal de reuso e Brasil acompanha•  Calmaria - ESBC não avança significativamente•  a ver Navios - ESBC avança, torna-se dominante, mas Brasil fica de fora

Considerações  Finais

Pontos fortes•  política nacional de software livre•  mercado interno de porte

significativo e com poder de alavancagem

• boa base acadêmica• política industrial voltada para

software

Pontos fracos• falta de cultura de reuso• falta de recurso humano

capacitado• limitação de recursos financeiros• relativo atraso em intensidade de

uso• baixa inserção do Brasil no

mercado internacional

Considerações  Finais

Oportunidades• vantagens técnicas• ganhos de produtividade e

redução de prazos de entrega• oportunidade de empresas

brasileiras participarem no mercado internacional de software

• expansão do modelo de negócio integrador

• diversificação de produtos e soluções

Ameaças• perda de competitividade global• tendência que não se compre

componentes brasileiros a curto prazo (carece de confiança)

• Brasil corre risco de ter que importar (China e Índia)

• falta de certificação específica dificulta entrada no mercado internacional

Considerações  Finais

 Em resumo:• reuso e intercambialidade são razões principais do

desenvolvimento da ESBC, mas não se sabe se essa será sua principal trajetória

• necessidade da criação da cultura de uso de componentes, formação de pessoal qualificado, financiar a melhoria e maturidade do processo de desenvolvimento e formular políticas para lidar com direitors de propriedade intelectual.