Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho...

64
Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software

Transcript of Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho...

Page 1: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Engenharia de Software

Qualidade de Software

Page 2: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

O que é qualidade?

• Capacidade de um produto ou serviço:– Realizar as funções esperadas– Atender às expectativas do cliente

• Depende do cliente e da aplicação

• Conceito estendido:– envolve outros atributos considerados

importantes

Page 3: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Qualidade, segundo os gurus

• “Quality is free” (Philip Crosby)– benefícios superam os custos– custo da não qualidade

• Ishikawa– “Remova a causa principal e não os

sintomas”– “Não confunda os meios com os objetivos”– “Objetivos devem levar em consideração os

clientes”

Page 4: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Joseph Juran

• Duas visões da qualidade (custo e benefício):– centrada no cliente:

• mais qualidade representa mais custo

– centrada na empresa: redução de custos e defeitos

• mais qualidade representa menos custo

• Três eixos:– planejamento, controle e melhoria

Page 5: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Armand Feigenbaum

• Total Quality Control• Três passos

– Liderança: gerenciamento contínuo e ênfase em excelência (não em reduzir falhas)

– Tecnologia moderna: todos devem se envolver, depto de qualidade sozinho não resolve

– Compromisso organizacional: comprometimento e relacionamento com o planejamento estratégico

Page 6: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Edwards Deming – os 14 pontos

• Constância de propósitos• Mudança filosófica• Não depender de inspeção somente• Fornecedores = parceiros• Melhorar continuamente• Treinar sempre e em todos os níveis• Incentivar liderança• Enfrentar e superar receios (bloqueios)

Page 7: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Edwards Deming – os 14 pontos

• Quebrar barreiras entre áreas• Eliminar slogans e exortações• Eliminar cotas numéricas de trabalho,

gerenciamento por objetivos• Tratar e eliminar as razões de insatisfação

dos trabalhadores (baixa produtividade)• Instituir programa de melhoria pessoal• Engajar todos na organização no

programa de transformação

Page 8: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

A cadeia de Deming

Page 9: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

PDCA - Ciclo de Deming/Shewhart

Page 10: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Aspectos humanos da qualidade

• Qualidade ligada à cultura organizacional• Todos os grandes nomes da qualidade abordam

questões culturais e pessoais• Resistência a mudanças

– alta administração– gerentes de nível intermediário– base

• Processo de mudança– deve se iniciar de cima– pontos importantes de apoio nos vários níveis– implantação piloto

Page 11: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Crise do software

• Abordagem tradicional com teste final• DoD americano verificou:

– grande percentual de sistemas encomendados e não usados; desperdício

– motivos: ou com problemas de confiabilidade ou não atendiam mais às necessidades do cliente

• Falta de foco no cliente:– distância do especificado

• Foco no processo– não basta esperar o produto final– bons processos -> bons produtos

Page 12: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Promessas e realidade

• “There is no silver bullet” (Fred Brooks)

• Ferramentas CASE

• Metodologias de desenvolvimento

• Ciclos de vida

• Técnicas

• A realidade: a melhoria é custosa e gradativa

Page 13: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Qualidade de Software

• No início: função estava no hardware– qualidade de software: funcionalidade ao substituir o

HW

• Com a disseminação do software: confiabilidade• Foco no produto: outros atributos de qualidade• Foco no cliente• TQM e processos• Capabilidade e maturidade de processos

Page 14: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Qualidade de Software

• Histórico semelhante ao de manufatura

• Grande resistência, dizia-se:– “software é diferente”– “arte e criatividade”– “atividades não repetitivas”

Page 15: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Criatividade e procesos

• projeto de desenvolvimento:– entradas -> produto específico– usa uma sequência de processos

• processo:– uma coleção de entradas -> um tipo de saída– rotinas repetitivas (especificar, inspecionar,

projetar, codificar, testar, compilar, etc)– produção baseada em processos

Page 16: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Criatividade e procesos

• Como é possível usar as mesmas abordagens da manufatura?

• Melhorar/otimizar processos repetitivos que compõem a criação

• Liberar a capacidade criadora

Page 17: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Características de Qualidade do Produto – ISO 9126

• Funcionalidade– Conjunto de atributos que evidenciam a

existência de um conjunto de funções e suas propriedades especificadas

– Sub-características:• adequação• acurácia• interoperabilidade• conformidade• segurança de acesso

Page 18: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Características de Qualidade do Produto – ISO 9126

• Confiabilidade – conjunto de atributos que evidenciam a

capacidade do software de manter seu nível de desempenho sob condições estabelecidas durante um período de tempo estabelecido

– Sub-características:• maturidade• tolerância a falhas• recuperabilidade

Page 19: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Características de Qualidade do Produto – ISO 9126

• Usabilidade– conjunto de atributos que evidenciam o

esforço necessário para se poder utilizar o software, bem como o julgamento individual deste uso, por um conjunto explícito ou implícito de usuários

– Sub-características:• inteligibilidade• apreensibilidade• operacionalidade

Page 20: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Características de Qualidade do Produto – ISO 9126

• Eficiência– conjunto de atributos que evidenciam o

relacionamento entre o nível de desempenho do software e a quantidade de recursos usados, sob condições estabelecidas

– Sub-características:• comportamento em relação ao tempo• comportamento em relação aos recursos

Page 21: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Características de Qualidade do Produto – ISO 9126

• Manutenibilidade– conjunto de atributos que evidenciam o

esforço necessário para fazer modificações especificadas no software

– Sub-características:• analisabilidade• modificabilidade• estabilidade• testabilidade

Page 22: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Características de Qualidade do Produto – ISO 9126

• Portabilidade– conjunto de atributos que evidenciam a

capacidade do software ser transferido de um ambiente para outro

– Sub-características:• adaptabilidade• capacidade para ser instalado• conformidade• capacidade para substituir

Page 23: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Qualidade é...

• Função

• Confiabilidade

• Durabilidade

• Desempenho

• Consumo

• Tamanho

• Flexibilidade

Page 24: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Mas é também...

• Preço

• Prazo

• Serviços pós-venda

• Aspectos humanos:– exploração do trabalho– respeito ao meio ambiente– posição quanto à comunidade

Page 25: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Características de Qualidade do Projeto

• Prazo– O melhor produto do mundo entregue com atraso

pode não servir pra nada• Custo

– Se o custo for maior do que o previsto, alguém vai ter que arcar com os prejuízos, o cliente ou a empresa desenvolvedora

• Qualidade dos serviços– Atendimento ao cliente, pós-venda etc.

• Satisfação do cliente– Envolve os aspectos anteriores e a qualidade do

produto, além de outros fatores

Page 26: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Gestão da qualidade

• Ferramenta de administração para atingir os objetivos do negócio

• Evolução da qualidade deve ser gerenciada como se fosse um projeto

• Articulação com os planos corporativos, principalmente o estratégico

• Planos são traçados a partir das expectativas dos clientes

• Foco no cliente não basta -> stakeholders

Page 27: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Gestão da qualidade

• Stakeholders: partes interessadas• Clientes são os mais importantes, mas:

– acionistas– empregados: qualidade no ambiente de trabalho e no

futuro profissional– fornecedores e parceiros– comunidade e meio ambiente

• Frequentemente os objetivos dos stakeholders são antagônicos

• Objetivo: atingir o equilíbrio, satisfazer a todos (win x win)

Page 28: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Controle da Qualidade

• Verificar se o artefato produzido tem qualidade• Exemplos de atividades

– Testes– Revisões

• Encontro formal onde um ou mais artefatos são apresentados ao cliente, usuário ou outra parte interessada no produto para que seja(m) comentado e aprovado(s)

– Inspeções• Encontro formal onde um ou mais artefatos são analisados

pro uma pessoa ou grupo de pessoas para detectar erros, violações de padrões e outros problemas

• Foco na qualidade do produto

Page 29: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Garantia da Qualidade

• Estabelecer procedimentos e padrões que conduzam a um software de qualidade

• Padrões (ou normas) são a chave para a garantia da qualidade

• Padrões podem ser internacionais, nacionais ou organizacionais.– Organizações de padronização:

• ISO, IEEE, ANSI, SEI etc

• Foco na qualidade do processo (contempla tanto produto quanto projeto)

Page 30: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Técnicas para garantir qualidade

• Inspeção:– exame (visual) de características dos produtos

• Teste:– execução e comparação com os resultados

esperados• Auditoria:

– avaliação independente de produtos e processos• Aplicação em produtos:

– inspeção, teste e auditoria• Aplicação em processos:

– auditoria

Page 31: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Modelos/Padrões de Qualidade

• Repositório das melhores práticas• Referência para estabelecimento de processos• Define métrica para avaliação e roteiro

seqüencial para a melhoria, baseado na capacidade de processo

• Define “o quê“ deve ser feito, não o “como”• Independente da tecnologia a ser utilizada

Page 32: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Modelos/Padrões de Qualidade

• CMM/CMMI• ISO/IEC 15504 (SPICE)• CobiT• ITIL• Six Sigma• MPS – Br• ...

Page 33: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI

Page 34: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Maturidade de Processos

Processo IMATURO• Ad hoc - improvisado• Fortemente dependente dos profissionais• Pouca produtividade geral• Prazos e nível de qualidade difíceis de cumprir• Mais riscos na adoção de novas tecnologias• Precisa “apagar incêndios” freqüentemente

Page 35: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Maturidade de Processos

Processo IMATURO• A maioria das organizações de software nessa

situação são como “bombeiros”– O fogo está sob controle– Constantemente reativas – sem tempo para as

melhorias– Os bombeiros se queimam– Seu único controle é: prevenção do incêndio

Page 36: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Maturidade de Processos

Processo MADURO:• É bem conhecido por todos os envolvidos• Permite auditoria da fidelidade ao processo• Propicia adoção disciplinada de tecnologias• Os papéis e responsabilidades são claramente definidos• Permite acompanhamento da qualidade do produto• Permite acompanhamento da satisfação do cliente• O cronograma, custo e qualidade são alcançados• Há melhoria contínua do processo

Page 37: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Maturidade de Processos

Processo MADURO:• A organização possui uma infra-estrutura que efetiva e

consistentemente aplica o processo• Gerência deve “alimentar” a cultura de gestão – “se

ninguém se importa, todo mundo esquece”• Um processo institucionalizado resiste mesmo sem as

pessoas que o definiram originalmente

Page 38: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Maturidade de ProcessosIMATURO• Processo improvisado pelas

pessoas• Processo não é seguido ou

cumprido• Grande dependência dos

atuais desenvolvedores• Baixa visibilidade do processo

para seu progresso e qualidade

• Funcionalidade e qualidade do produto comprometidas para atender prazo

• Custos excessivos de manutenção

• Tecnologia Processo

MADURO• Processo é definido,

documentado e melhorado continuamente

• Processo é entendido, utilizado e “vivo”

• Processo suportado pela gerência

• Processo verificado e cumprido

• Grande visibilidade do processo alinhado ao negócio da organização

• Papéis e responsabilidades claramente definidas

• Processo Tecnologia

Page 39: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMM - Histórico

Desenvolvido pelo SEI – Software Engineering Institute da Carnegie Mellon University no final dos anos 80 a pedido do Departamento de Defesa dos EUA

(DoD)

Watts Humphey foi o principal mentor do CMM

Page 40: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI

• Capability Maturity Model Integrated

• Desenvolvido pelo Software Engineering Institute (SEI)

• Evolução do CMM

• Objetivo: servir de base para a melhoria de processos da organização

• É um modelo, não é um processo!!!

Page 41: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI

• Modelo de gestão da qualidade aplicável ao processo de desenvolvimento de software

• Descreve elementos chave para um processo eficaz e o caminho evolutivo para um processo maduro e disciplinado

• Busca da melhoria contínua, aprimorando a habilidade da organização para atender aos objetivos de custo, prazo, funcionalidade e qualidade do produto

Page 42: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI

Capability Maturity Model Integrated=

Engenharia de Software (SW)

+

Engenharia de Sistemas (SE)

+

Desenvolvimento Integrado de Produtos e Processos (IPPD)

+

Gerência de Fornecimento (SS)

Page 43: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI

• Em relação ao CMM, o CMMI é:– Mais compatível com as práticas atuais de

desenvolvimento de software– Mais flexível– Mais compreensível– Mais complexo

Page 44: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI - Visões

• Depende do tipo de negócio da empresa.

• Pode ser:– SW– SW + SE– SW + SE + IPPD– SW + SE + IPPD + SS

Page 45: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI - Representações

• Estágios– Melhoria de processos por níveis– Cada nível contempla algumas áreas de processo– Níveis de maturidade (1 a 5)

• Contínua– Melhoria de processos por grupos de processo– Níveis de capacidade (0 a 5)– Mais flexível e mais confuso

Page 46: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI - Estrutura

Page 47: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI

Níveis de Maturidade

Page 48: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI

• Nível 1 - Inicial - organizações imaturas– Não há metodologia implementada

• Nível 2 - Repetível - disciplina e estabilidade– Empresa consegue produzir no prazo com custo previsível

• Nível 3 - Definido - padronização e consistência– Garante o nível de qualidade no produto e no processo

• Nível 4 - Gerenciado - medição e controle– O processo é definido, quantificado e acompanhado

• Nível 5 - Otimizado - melhoria contínua– Mudanças no processo não prejudicam o desenvolvimento

Page 49: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI – Nível 1

Nível 1 - Inicial• Processo disforme e de baixa visibilidade• Resultados são imprevisíveis• Formas de controle muito pobres• Enormes dificuldade para previsões de

– cronogramas– orçamentos– funcionalidades– qualidade do produto

Page 50: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI – Nível 2

Nível 2 - Repetível• Disciplinado e estável• Procedimentos de gerenciamento de projetos• Aproveitamento sistemático de históricos• Padrões para projetos de software• Acompanhamento de custos, cronogramas e

funcionalidades

Page 51: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI – Nível 2

Nível 2 - Repetível

Processos disciplinados garantem a reprodução de processo já utilizados em projetos bem sucedidos em aplicações

semelhantes...

Entretanto...

A Gerência ainda é reativa!!!!

Page 52: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI – Nível 2

• Meta Genérica: institucionalizar um processo gerenciado• Práticas Genéricas

– Estabelecer uma política organizacional– Planejar o processo– Prover recursos– Atribuir responsabilidade– Treinar pessoal– Gerenciar configurações– Identificar e envolver stakeholders relevantes– Monitorar e controlar o processo– Avaliar aderência objetivamente– Revisar status com gerência sênior

Page 53: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI – Nível 2

• Áreas de Processo (PAs)– Gerenciamento de Requisitos– Planejamento do Projeto– Acompanhamento do Projeto– Gerenciamento de Fornecimento e

Subcontratação– Medição e Análise– Garantia da Qualidade– Gerenciamento de Configuração

Page 54: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI – Nível 3

Nível 3 - Definido

• As saídas de uma atividade fluem naturalmente para as entradas da atividade seguinte

• Os processos de software são – Integrados no processo padrão da empresa– Documentados– Padronizados

Page 55: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI – Nível 3

Nível 3 - Definido

Todos os projetos usam uma versão aprovada e individualmente adaptada do processo padrão

da organização

A Gerência é Pro-Ativa!!!

Há um grupo para o estabelecimento dos padrões e multiplicação do conhecimento – SEPG

(Software Engineering and Process Group)

Page 56: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI – Nível 3

• Meta Genérica: institucionalizar um processo definido

• Práticas Genéricas– Estabelecer um processo definido– Coletar informações para melhoria

Page 57: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI – Nível 3• Áreas de Processo (PAs)

– Desenvolvimento de Requisitos– Solução técnica– Integração de Produtos– Verificação– Validação– Foco no Processo Organizacional– Definição do Processo Organizacional– Treinamento Organizacional– Gerenciamento Integrado de Projetos– Gerenciamento de Riscos– Alocação Integrada de Pessoas– Gerenciamento Integrado de Fornecimento– Análise de Decisão– Ambiente Organizacional para Intgração

Page 58: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI – Nível 4

Nível 4 - Gerenciado• Faz controle estatístico de processo• Aponta causas da variação do processo• Capacitação predizível• Bases objetivas para tomada de decisão• Gerência quantitativa de produto e processo • Os processo de software e a qualidade do

produto são medidos e controlados quantitativamente

Page 59: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI – Nível 4

• Meta Genérica: institucionalizar um processo quantitativamente gerenciado

• Práticas Genéricas– Estabelecer objetivos quantitativos para o

processo– Estabilizar performance dos subprocessos

Page 60: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI – Nível 4

• Áreas de Processo (PAs)– Performance do Processo Organizacional– Gerenciamento Quantitativo do Projeto

Page 61: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI – Nível 5

Nível 5 - Otimizado• Foco na melhoria contínua do processo• Melhoria contínua proporcionada por • Realimentação quantitativa do processo • Condução de novas idéias e tecnologias

A organização tem capacidade gerencial para estimar e acompanhar quantitativamente o

impacto e a eficácia das mudanças

Page 62: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI – Nível 5

• Meta Genérica: institucionalizar um processo em otimização

• Práticas Genéricas– Garantir melhoria contínua do processo– Corrigir causas (root causes) de problemas

Page 63: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

CMMI – Nível 5

• Áreas de Processo (PAs)– Inovação Organizacional– Análise Causal

Page 64: Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho Engenharia de Software Qualidade de Software.

Faculdade 7 de Setembro – Sistemas de Informação Engenharia de Software – Prof. Ciro Coelho

Exemplo – Gerenciamento de Requisitos

• Gerenciar requisitos (objetivo específico)– Obter entendimento dos requisitos (prática

específica)– Obter comprometimento quanto aos requisitos– Gerenciar mudanças em requisitos

• Capturar mudanças em requisitos (subprática)• Manter histórico de mudanças• Avaliar impacto das mudanças• Disponibilizar mudanças

– Manter rastreabilidade bidirecional de requisitos– Identificar inconsistências entre requisitos e produtos

de trabalho