Component Based Software Engineering Maturity Model Roteiro • • • • CBSE; ISO 15504; Projeto OOspice; Conclusões. CBSE Introdução • Visa trazer um melhor entendimento da natureza de componentes; • Melhorar o processo de desenvolvimento baseado em componentes. CBSE Principais objetivos: • Diminuir time to market; • Diminuir custos; • Aumentar a qualidade. ISO 15504 • Início em 1993, após um estudo realizado pelo ISO; • Verificou-se a necessidade um padrão internacional; • Define um framework para avaliação de processo. ISO 15504 Projeto OOSpice Introdução • OOSPICE Software Process Improvement and Capability dEtermination for Object Oriented Component Based Software Development. • Teve início em Dezembro 2000; • Novos processos, métodos e ferramentas para CBD. Projeto OOSpice Introdução • Baseado em princípios empíricos da Engenharia de Software. • Combina 4 grandes conceitos: 1. CBD; 2. Desenvolvimento Orientado a Objetos; 3. Avaliação de Processos de Software; 4. Melhoria de Processo de Software. Projeto OOSpice Motivação • Resultados de avaliações com outras abordagens: – Dificuldades para estimar capacidade de processo para CBD; – As práticas em CBD não são sempre prontamente mapeadas para modelos de processos usados; – Falta de abordagens de avaliação de processos para CBSE. Projeto OOSpice Motivação • Falhas quando se aplica abordagens atuais de avaliação ao CBD: 1. Terminologia Inadequada; 2. Granularidade de Processos Inadequada. Projeto OOspice - Problemas • Estrutura organizacional inadequada; • Metodologias de desenvolvimento inadequados; • Abordagens de gerenciamento inadequada, ex. risco; • Informações sobre a utilidade do componente é deficiente; • Cultura de desconfiança de componentes third- party; • Falta de informação sobre fornecedores de componentes. a capacidade dos Projeto OOSpice • OOSpice foca nos processos, tecnologia e qualidade em desenvolvimento de software; • Usa desenvolvimento baseado em componentes. Projeto OOSpice Objetivos • Modelo de processo CBD; • Metamodelo; • Metodologia de avaliação CBD = modelo de avaliação + método de avaliação + ferramenta para avaliação; • Metodologia CBD. Terminologia do OOSpice • A maior dificuldade em desenvolver os modelos OOSpice: – diferentes terminologias usadas em outras abordagens. Terminologia do OOSpice O termo “metodologia” foi adotado no OOSPice para descrever o “processo”, nesta escala mais alta do ciclo de vida. Desde que foi adotado esta palavra no OOSpice num nível mais granulado, não podemos usar ela para o nível organizacional. O Modelo de Arquitetura do OOSPICE • Modelo de arquitetura baseado no framework 4 camadas da OMG; • Adapta a arquitetura UML; • Aplica esta arquitetura ao domínio de processos. O Modelo de Arquitetura OOSpice O Modelo de Arquitetura OOSPICE Mapeando para o OOSpice Modelo de Referência de Processos • PRM define os processos que serão avaliados; • Fornece definições básicas destes processos; • PRM é o ponto de partida para o modelo de avaliação de capacidade; • Definido em termos de: 1- Nome; 2- Propósito; 3- Saídas. Modelo de Avaliação • Compatível com o Modelo de Referência de Processos; • Adiciona um conjunto de Indicadores de Capacidade ao subconjunto de processos do PRM; • Estes indicadores são usados para calcular a capacidade de cada processo no modelo de avaliação; • A capacidade é medida na escala de baixa para capacidade alta. Modelo de Avaliação Modelo de Processos CBD • Conjunto de especificações de componentes processo ( descrição dos processos OOSpice); de • Descreve o processo de ciclo de vida do software para CBD; • Extende a ISO 15504 para suportar CBD. Modelo de Processos CBD • Contém Processos e Tarefas; • Descreve Produtos de Trabalhos associados; • São construídos para o desenvolvimento de aplicações de software baseada: – no uso de componentes; – para desenvolver componentes que são independentemente implantados. Modelo de Processo CBD Resultado • Documento define processos em termos de: 1- Nome; 2- Propósito; 3- Linhas Gerais; 4- Tarefas; 5- Entradas; 6- Saídas. Modelo de Processo CBD • Cobre todas especificações de processos relacionados ao CBD. componentes de • Não descreve detalhes internos dos processos. Ex. definição de técnicas específicas. Metodologia CBD • Tem como baseline o Modelo de Referência de Processo; • Técnicas apropriadas para todas Tarefas do Modelo de Processo, incluindo técnicas documentadas na literatura OO e CBD. Metodologia CBD • Tarefa final para metodologia – Investigar sequências de processos apropriadas; – Criar um conjunto de manuais que permitirão o processo de engenharia fabricar processos apropriados que estendem aqueles que a OOSpice irá fornecer como exemplos. Principais diferenças com a ISO 15504 • Categoria de Processos de Engenharia foi subdividida; • As outras categorias foram extendidas para o CBD, processos como Gerenciamento de Componentes ou Gerência de Configuração tem maior importância para o sucesso de CBD; • Reuso ou Alinhamento da definição dos componentes de processo com as melhores práticas dos padrões ISO. Processos de Engenharia Foca em solucionar o problemas de negócios, construindo novas aplicações ou melhorando as existentes. Foca na entrega de um componente. Processos Não Engenharia Processos Modificados/Criados Atributo de Qualidade Importante para CBD Reusabilidade CATEGORIA PROCESSO que o afeta Cliente – Fornecedor Aquisição Elicitação de Requisitos Engenharia Análise e Projeto Gerência Gerência de Riscos Processos Modificados/Criados Atributo de Qualidade Importante para CBD Substitutíbilidade Clareza Interoperabilidade Performance CATEGORIA PROCESSO que o afeta ???? Certificação de Componentes Referências em outros Modelos • O CMMI faz referências a COTS nas seguintes PAs, Specific Goals e Specific Practices • SAM – Supplier Agreement Management • SG2- SP 2.1 - Review COTS Products • ISM – Integrated Supplier Management • SP 1.1 Analyze Potential Sources of Products • TS – Technical solution • • • • • SG 1 Select Product-Component Solutions SP 1.1 Develop Alternative Solutions and Selection Criteria; SG 2 Develop the Design SP 2.1 Design the Product or Product Component SP 2.4 Perform Make, Buy, or Reuse Analyses • RD – Requirements Development • SG2 Develop product requirements • SP 2.1Establish product and product-component requirements • SP 2.2-1 Allocate Product-component requirements Referências em outros Modelos A ISO/IEC 15504-5 Define um grupo de processos de Reuso, com os seguintes processos: • REU. 1 Asset Management • REU. 2 Reuse Program Management • REU. 3 Domain Engineering Além desses processos, as seguintes práticas se referem à decisão make or buy • ENG.3.BP5: Evaluate alternative system architectures. • ENG.5.BP1: Describe software architecture. Referências em outros Modelos • Os processos de Reuso da ISO/IEC 15504-5 mais as referências a reuso e COTS existentes no CMMI: – indicam aspectos que devem ser considerados na construção de um PRM para CBD. • Por outro lado, a proposta do OOSPICE constitui um Modelo de Referência de Processo completo e especificamente construído para CBD Conclusões • Pontos Negativos 1- Documentação do OOSpice não disponível; 2- Falta de publicações sobre o estado atual do projeto. • Pontos Positivos 1- A proposta do OOSPICE constitui um Modelo de Referência de Processo completo e especificamente construído para CBD; REFERÊNCIAS • Bridging the Gap Process Modeling to Process Assessment: The OOSpice Process Specification for Component-Based Software Engineering. Brian Henderson-Sellers, Fritz Stallinger and Bruno Lefever. • Formal Definition of Metrics upon the CORBA Component Model. Miguel Goulão, Fernando Brito e Abreu. • Software Process Improvement for Component-Based Software Engineering: An Introduction to the OOSPICE Project. Terry Rout Brian Henderson-Sellers Bruno Lefever. • Melhoria e Avaliação de Processo com ISO/IEC 15504 (SPICE). Clênio Figueiredo Salviano. • The OOSPICE Project:Capability Assessment for CBD Methodology. Brian Henderson-Sellers. FIM