1 / 19

Capítulo ... - CMM- Capability Maturity Model

Capítulo ... - CMM- Capability Maturity Model. Auditoria de Sistemas Computacionais Professora Jaciara S. Carosia. Qualidade de Software. Importância do software + crescentes exigências dos usuários: tem-se verificado um notável aumento nos interesses pela qualidade do software.

ria-phelps
Download Presentation

Capítulo ... - CMM- Capability Maturity Model

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Capítulo ... - CMM- CapabilityMaturityModel Auditoria de Sistemas Computacionais Professora Jaciara S. Carosia

  2. Qualidade de Software • Importância do software + crescentes exigências dos usuários: • tem-se verificado um notável aumento nos interesses pela qualidade do software. • Qualidade do produto de software é um objetivo do processo de desenvolvimento. • Ao desenvolver-se um produto, deve-se ter previamente estabelecidas, as características de qualidade que se deseja alcançar. • Qualidade???? • Se o processo de desenvolvimento de software considerar as características de qualidade, há uma grande tendência de que o produto final apresente tais características.

  3. Qualidade de Processo • Processo de software: um conjunto de ferramentas, métodos e práticas usadas para produzir software. “O processo de software é representado por um conjunto seqüencial de atividades, objetivos, transformações e eventos que encapsulam estratégias para cumprimento da evolução de software” (Pressman). As falhas nos processos de desenvolvimento de software foram reconhecidas como inibidoras principais no crescimento da qualidade e produtividade (Lamprech). • Justificativa: Um processo de software bem definido e documentado, utilizado para integrar pessoas, tarefas, ferramentas e métodos, pode prover uma base essencial para garantir a qualidade do produto final.

  4. Normas de Qualidade de Processo • Entre os modelos disponíveis os que mais se destacam são: • Norma ISO/IEC 12207 (Processos de Ciclo de Vida de Software). • Norma ISO/IEC 15504. • CMM (CapabilityMaturityModel) • CMMI (CapabilityMaturityModelIntegration). • MPS.BR (Melhoria do Processo de Software Brasileiro)

  5. SW-CMM • Origem: • SW-CMM (CMM para Software) • Proposto por Watts S. Humphey (1991). • Criado por SEI (Software EngineeringInstitute) ligado a Carnegie-MellonUniversity. • Financiado pelo DoD: avaliar empresas fornecedoras de software. • Premissa: a qualidade de um sistema de software é fortemente influenciado pela qualidade do processo utilizado para desenvolvê-lo e mantê-lo. • Histórico: • 1987: Ambiente de Maturidade e um questionário • 1991: CMM v1.0 ou SW-CMM • 1993: CMM v1.1 • 1997: CMM v2.0

  6. Conceitos • Processo (IEEE): seqüência de passos para atingir um objetivo. • Processo de Software(CMM): conjunto de atividades, métodos, práticas e transformações usadas para desenvolver e manter o software. • Capacidade do processo de SW: conjunto de resultados esperados que pode ser atingido seguindo o processo estabelecido. • Maturidade do processo de SW: processo é definido, documentado, gerenciado, medido, controlado e efetivo. • Imaturas: Não há metodologia implementada e tudo ocorre de forma desorganizada. • Maduras: Capacidade de produzir softwares com qualidade em prazos e custos previsíveis. • Em resumo, a maturidade do processo pode ser traduzida como a possibilidade de entregar sistemas de software dentro dos prazos, utilizando os mesmos recursos, planejando e atendendo requisitos e qualidade desejados. • Maturidade (eficiência) mede o potencial de crescimento da capacidade (eficácia).

  7. Características “O CMM baseia-se em um processo gradual, que leva as organizações a se aprimorarem continuamente, na busca de soluções próprias para os problemas existentes no desenvolvimento do software”.

  8. 5 4 Gerenciado: Processo medido e controlado. 3 Definido: Processo padronizado, bem definido. 2 Repetível: Repete as tarefas de sucesso. 1 Inicial: Imprevisível e pobremente controlado. Níveis do CMM Otimizado: Foco na melhoria contínua.

  9. Áreas Chaves de Processo • KPA’s - KeyProcessAreas. • Para que uma organização atinja um nível de maturidade, ela deve cumprir TODAS as KPAs deste nível (e dos níveis anteriores). • Cada nível depende dos níveis anteriores. • As KPAs definem o que e não como fazer: o modelo precisa ser estudado, compreendido e adaptado as necessidades de cada empresa.

  10. Nível 1 - Inicial • Características: • A organização é carente de práticas de gerenciamento. • Não há planejamento suficiente. • Há dificuldades elevadas em prever custos, programação, funcionalidade e outros objetivos de qualidade. • Durante uma crise, ocorrem procedimentos de abandono de projetos. • Os sucessos dependem de esforços individuais e heróicos. • Não possui KPAs: todas as empresas que buscam melhoria de processo estão no nível 1, os que nem buscam, estão no nível 0 (zero)

  11. Nível 2 - Repetível • Características: • A organização apresenta uma disciplina no desenvolvimento de software – o processo não é mais caótico. • Estabelecem-se políticas de gerenciamento de projetos com relação a custos, programação e qualidade do produto. • O planejamento do projeto é estável e sucessos anteriores podem ser repetidos para projetos com aplicações semelhantes. • Os problemas são percebidos e corrigidos conforme surgem. • O sucesso depende das pessoas, com o suporte do sistema de gerenciamento. • KPAs Nível 2 - Repetível • Gerenciamento de Requisitos. • Planejamento de Projeto de Software. • Visão Geral e Acompanhamento do Projeto. • Gerenciamento de Subcontratos. • Garantia da Qualidade de Software. • Gerenciamento de Configuração.

  12. Nível 3 - Definido • Características: • Há definição e padronização do processo de software da organização. • As atividades de engenharia de software e gerenciamento são estáveis e repetitivas. • Custos, cronogramas e funcionalidades são controladas e a qualidade é acompanhada. • Há um grupo responsável pelo estabelecimento dos padrões e multiplicação do conhecimento. • Os problemas são antecipados, prevenidos ou minimizados. • O treinamento é planejado. • KPAs Nível 3 - Definido • Foco do Processo Organizacional. • Definição do Processo Organizacional. • Programa de Treinamento. • Gerenciamento Integrado de Software. • Engenharia de Produto de Software. • Coordenação Intergrupos. • Revisão Conjunta.

  13. Nível 4 - Gerenciado • Características: • Existem mecanismos para definir quantitativamente objetivos de qualidade para o processo de software e para o produto. • Há medição constantemente da produtividade e da qualidade. • A capacidade do processo é previsível e variações na produtividade podem ser medidos. • Quando alguma circunstância excepcional ocorre, as causas podem ser identificadas e combatidas. • A qualidade é alta. • Fontes de problemas individuais são percebidas e eliminadas. • KPAs Nível 4 - Gerenciado • Gerenciamento Quantitativo dos Processos. • Gerenciamento da Qualidade de Software.

  14. Nível 5 - Otimizado • Características: • A capacidade do processo de software é continuamente melhorada. • Dados de avaliações estatísticas são usados para análise de custo/benefício e mudanças de processo. • A equipe do projeto avalia os defeitos e determinam suas causas, para evitar que defeitos conhecidos ocorram novamente. • Novas tecnologias e processos de software são constantemente avaliados, e quando relevantes, transferidos à organização, através de planejamento e gerenciamento. • Um forte sentido de equipe existe em toda a organização • KPAs Nível 5 - Otimizado • Prevenção de Defeitos. • Gerenciamento de Mudanças Tecnológicas. • Gerenciamento de Mudanças no Processo.

  15. Análise da situação (Avaliação) Comparação com o nível desejado Planejamento de ações corretivas Execução destas ações Implementação do CMM

  16. Aceitação do CMM • Conhecimento e uso de modelos para melhoria do processo de software. Fonte: PBQP-SW – Programa Brasileiro de Qualidade e Produtividade em Software. Disponível em: 2001 http://www.mct.gov.br/index.php/content/view/4919.html • CMM: método mais conhecido e usado. • Embora não seja uma norma por uma instituição internacional (como ISO e IEEE), esta norma tem tido uma grande aceitação mundial (Rezende, 2002).

  17. CMM Processo de Certificação Formal • Foi criado para atender a grandes empresas. • Processo de Certificação Formal • Realizada por auditores certificados (Lead Assessors). • Não existem entidades certificadoras, apenas pessoas físicas. • Melhorias sem certificação • Documentação totalmente disponível no site do Software EngineeringInstitute. • www.sei.cmu.edu • Iniciativa do CPqD (tradução do modelo). • www.cpqd.com.br

  18. Evolução do CMM • Surgem novos modelos baseados no CMM: • AS-CMM (Aquisição de Software), • SE-CMM (Engenharia de Sistemas), • IPD-CMM (Desenvolvimento de Produto Integrado) e • P-CMM (Pessoas). • Surge ISO 15504. Bases para a criação do CMMI

  19. Bibliografia • PAULK, M. C.; CURTIS, B; CHISSIS, M, e WEBER, C. V. CapabilityMaturityModel (Versão 1.1) (CMU/SEI-93-TR-24, ADA 263403) Pittsburgh, Pa.: Software EngineeringInstitute, CarnegieMellonUniversity, Fevereiro 1993. • PAULK, M. C.; CURTIS, B; CHISSIS, M, e WEBER, C. V. A Previewofthe Software CMM Versão 2, Pa.: Software EngineeringInstitute, CarnegieMellonUniversity [1996]. • REZENDE, D. Engenharia de Software e Sistemas de Informação. Rio de Janeiro: Brasport, 2002. “Começar é o passo mais importante e mais difícil de qualquer trabalho” (Frank Herbert)

More Related