Qualidade de Software Aula 6 / 2010 - garcia.pro.br - POS - Qualidade... · A Ação Sistemas acaba...

Preview:

Citation preview

Qualidade de SoftwareAula 6 / 2010

Prof. Dr. Luís Fernando GarciaProf. Dr. Luís Fernando Garcia

luis@garcia.pro.brwww.garcia.pro.br

IntroduçãoAs três dimensões críticas

Introdução

ComeçandoMAL …

CMMI Impeditivos

CMMI Desculpas …

CMMI Desculpas …

CMMI PASSOS IMPLANTAÇÃO

CMMI Treinamentos …

CMMI Exemplo de Serviços …

CMMI Exemplo de Serviços …

CMMI Exemplo de Serviços …

CMMI Exemplo de Serviços …

CMMI Exemplo de Serviços …

CMMI Exemplo de Serviços …

CMMI SCAMPI ? …. níveis A e B ?

CMM e CMMI

CMM e CMMI

� SEI – Instituto de Engenharia de Software� 1986� Estrutura de modelo de maturidade� Requisição do governo americano (DoD)

� Avaliar a capacidade de fornecedores� Melhoria dos processos dos fornecedores

CMM e CMMI

� SW-CMM� Foco Inicial – Desenvolvimento de Software� Não incluia:

Recursos Humanos� Recursos Humanos� Finanças

� Foco em PROJETOS � curto prazo� Foco em PEQUENOS PASSOS (níveis)

CMM

� CMM - Capability Maturity Model for Software� CMMI – “” Integration

� Maturidade?� O quanto um processo está:

� Definido� Gerenciado� Medido� Controlado� Efetivo

CMM evolução/histórico

CMM e CMMI

� CMM – 1993 (versão 1.1) – vigente …� CMMI – versão 1.2 … caminhando para a versão 1.3� www.sei.cmu.edu/cmmi

CMM e CMMI

� CMMI – versão 1.2 … caminhando para a versão 1.3� www.sei.cmu.edu/cmmi

CMM - proposta

� Baseado na experiência prática das empresas;

� Refletir o melhor estado da prática;Ser documentado;� Ser documentado;

� Ser público.

CMM - Objetivos

� guiar organizações a conhecerem e melhorarem seus processos de software.

� Identifica práticas para um processo de software maduro, definindo as características software maduro, definindo as características de um processo de software efetivo.

� Descreve como as práticas de engenharia de software evoluem sob certas condições.

� Organiza os estágios de evolução da melhoria dos processos em cinco níveis de maturidade.

CMM - Níveis

CMM - Níveis

� Necessidade de ordenação:

� Níveis inferiores servem de base e fundamento para os superioresfundamento para os superiores

� Risco de abandono do processo em crises

CMM – Nível 1 - Inicial

CMM – Nível 1 - Inicial

� Não há repetibilidade dos processos� Em crise há abandono de procedimentos� As chances de sucesso baseiam-se em

habilidades pessoais/GURUS/HERÓIShabilidades pessoais/GURUS/HERÓIS� Sucesso, qdo existe, em projetos com

experiência anterior� Tentativas isoladas de manutenção de

procedimentos do processo� As qualidades pertencem as pessoas, não

aos processos

CMM – Nível 1 - Inicial

� Estimativas/cronogramas não realistas� Mesmo o planejado não é seguido (falta de

costume)Requisitos � codificação (ERRO!)� Requisitos � codificação (ERRO!)

� Documentação = burocracia (ERRO!)

Nível 1 – visibilidade

CMM – Nível 1 - Inicial

� Para avançar ao nível 2 …

� Mudança cultural� Resistência a mudanças � Reações intransigentes� Falta de credibilidade de que dá/dará certo� Introdução gradativa de KPAs

CMM – Nível 2 - Repetível

� Políticas de gerência de desenvolvimento de software definidas e seguidas

� Utilização de experiências anteriores, de maneira formalizada e não-intuitivamaneira formalizada e não-intuitiva

� Projetos usam processos definidos, documentados, usados, disseminados, medidos, fiscalizados e com rotinas de melhoria

� Gerência de projetos

CMM – Nível 2 - Repetível

� Compromissos assumidos com bases realistas (especialmente quando há Know-how) ...

� Compromissos assumidos com base em � Compromissos assumidos com base em requisitos documentados

� Desenvolvimento é acompanhado e revisado (custos, prazos, etc...)

� Mecanismos formais de correção de desvios� Gerência de requisitos

CMM – Nível 2 - Repetível

� A definição de processos é feita por projeto –pode não haver padronização na organização

� Disciplina ao executar projetos // mas ainda � Disciplina ao executar projetos // mas ainda não está preparada para mudanças maiores

� Processos repetíveis com resultados esperados

� As qualidades pertencem aos projetos, não às pessoas

Nível 2 – visibilidade

CMM – Nível 3 - Definido

CMM – Nível 3 - Definido

� Processos estabelecidos e padronizados na organização – não “somente” repetição de sucessos de projetos anteriores

� Estabelecimento de infra-estrutura de � Estabelecimento de infra-estrutura de processos adaptáveis a mudanças

� Aderência a processo mesmo em crise

� Processos ainda em nível qualitativo

CMM – Nível 3 - Definido

� Foco em documentação (não é mais burocracia!)

� Relação “não-conformidades”�qualidadeProcessos de engenharia de software e � Processos de engenharia de software e gerenciais aplicados

� Oportunidade de escolha das melhores práticas

� Treinamento (técnico e gerencial)

CMM – Nível 3 - Definido

� Possibilidade de adaptação dos processos as necessidades dos clientes

� Os processos pertencem à organização e não aos projetosnão aos projetos

Nível 3 – visibilidade

Analisando níveis 2 e 3

CMM – Nível 4 - Gerenciado

� Estabelecimento de metas quantitativas para processos e produtos

� Avaliação e análise contínua do desempenhoMelhoria no controle de processos e � Melhoria no controle de processos e produtos

� Gestão baseada quantitativamente� Proficiente em métricas/análise destas� Base de dados de processo� Gerenciamento de riscos

Nível 4 - visibilidade

CMM – Nível 5 - Otimizado

� Melhoria contínua de processos� Identificação de pontos fracos e defeitos� Ação preventiva� Mudanças de tecnologia com base em

análises de custo/benefício� Ações visando reduzir retrabalho e

desperdício� Melhoria da produtividade

CMM – Nível 5 - Otimizado

Nível 5 - visibilidade

CMM – em relação a PESSOAS

CMM – em relação a TECNOLOGIA

CMM – em relação a MÉTRICAS

CMM – Componentes

CMM – Componentes

CMM – KPA x processos

� KPA (áreas chave de processo)� Coleção de práticas que representam o nível de

maturidade� Grupo de atividades correlatas que realizam um � Grupo de atividades correlatas que realizam um

conjunto de metas� Identificam objetivos a serem cumpridos� Cumulativas � KPA – estáticos� Processos – dinâmicos� Processos – evoluem na medida que o nível de

maturidade cresce

CMM – KPAs

� Nível 2 - Repetível

� Gerenciamento de Requisitos� Planejamento do Processo de Software� Planejamento do Processo de Software

Acompanhamento e Supervisão do Projeto de Software

� Gerenciamento da Subcontratação de Software� Controle da Qualidade de Software� Gerenciamento de Configuração de Software

CMMI – KPAs

CMMI nível 2 – KPAs

CMMI nível 2 – KPAs

CMM – KPAs

� Nível 3 – Definido

� Focalização dos Processos da OrganizaçãoDefinição dos Processos da Organização� Definição dos Processos da Organização

� Programa de Treinamento� Gerenciamento Integrado de Software� Engenharia de Produto de Software� Coordenação Inter Grupos� Revisões Detalhadas para Prevenção de Defeitos

CMM – KPAs

CMMI – nível 3 - KPAs

CMMI – nível 3 - KPAs

CMM – KPAs

� Nível 4 - Gerenciado

� Gerenciamento Quantitativo dos ProcessosGerenciamento da Qualidade de Software� Gerenciamento da Qualidade de Software

CMMI – nível 4 - KPAs

CMM – KPAs

� Nível 5 - Otimizado

� Prevenção de FalhasGerenciamento das Mudanças nos Processos� Gerenciamento das Mudanças nos Processos

� Gerenciamento das Mudanças Tecnológicas� Características Comuns� Compromisso para Realizar (políticas e

responsabilidades)� Capacidade para Realizar (recursos, estruturas e

treinamento)

CMM – KPAs

� Nível 5 - Otimizado

� Ações e Atividades Realizadas (planejamento, procedimentos e ações corretivas)procedimentos e ações corretivas)

� Mensuração e Análise (medidas e avaliações)� Verificação da Implantação (revisões e auditorias)

CMMI – nível 5 - KPAs

CMMI

� SW-CMM

� P-CMM – Recursos humanos� SA-CMM – Aquisição de software� SE-CMM – Engenharia de sistemas

� Estruturas, formatos e termos diferentes� Confusão quando integrados/simultâneos

CMMI

� CMMI� Capability Maturity Model Integration

� Guia de melhoria de processos na organização – habilidade em gerenciar:� Desenvolvimento� Aquisição� Manutenção

CMMI

� Terminologia:

� Área de processoConjunto de práticas que coletivamente satisfazem � Conjunto de práticas que coletivamente satisfazem um conjunto de objetivos

� Objetivos específicos� Identificam características únicas que descrevem o

que deve ser feito para satisfazer

CMMI

� Terminologia:

� Práticas específicasAtividades para atingir objetivo específico� Atividades para atingir objetivo específico

� Objetivos genéricos� Um por nível – o que deve-se fazer para atingir um

determinado nível (5)

� Práticas genéricas� Processos efetivos e repetíveis

CMMI

CMMI

CMMI

CMM – Componentes

CMMI

� Disciplinas/corpos de conhecimento

� Engenharia de sistemasMultidisciplinar – soluções que envolvem ou não sw� Multidisciplinar – soluções que envolvem ou não sw

� Avião? Avião é o “sistema”

� Engenharia de software� Desenvolvimento e integração

� Colaboração de stakeholders para atender requisitos

� Fontes de aquisição� Fornecedores de sw – outsourcing/terceirização

CMMI

� Representações

� Estágio/estagiadaIdem ao CMM� Idem ao CMM

� Níveis de maturidade� Normalmente preferida…

� Contínua� Possíveis selecionar a sequência de melhorias que

convem aos objetivos de negócios� ISO 15504 � CMMI

CMMI

CMMI

CMMI

CMMI estagiada

� Níveis sugerem ordem de melhoria

� Nível � n Áreas de Processo� Área � n objetivos e práticas

genéricas/especificos� Aspectos comuns � práticas genéricas

Nível 5

Nível 4

Nível 3e

Área de Processo 1

Área de Processo N

ObjetivosEspecíficos

ObjetivosGenéricos

ObjetivosEspecíficos

…..

Nível 2

Nível 1

Características COMUNSCompromisso com execução – Habilidade para execução

Direção da implementação – Verificação da implementação

CMMI estágio

CMMI contínua

CMMI Contínua

� 4 Categorias

� Gerência de processoFoco no Processo da organização� Foco no Processo da organização

� Definição do Processo da organização� Treinamento organizacional� Desempenho do processo organizacional� Inovação e melhoria organizacional

CMMI Contínua

� 4 Categorias

� Gerência de projetoPlanejamento de projeto� Planejamento de projeto

� Acompanhamento e controle de projeto� Gerência de acordos com fornecedores� Gerência integrada de projeto� Gerência de risco� Gerência quantitativa de projeto

CMMI Contínua

� 4 Categorias

� EngenhariaGerência de requisitos� Gerência de requisitos

� Desenvolvimento de requisitos� Solução Técnica� Integração de produto� Verificação� Validação

CMMI Contínua

� 4 Categorias

� SuporteGerência de configuração� Gerência de configuração

� Garantia da qualidade de processo e de produto� Medição e análise� Análise de decisão e resolução� Análise causal e resolução

CMMIcont.

CMMI

CMMI

CMMI e Métodos Ágeis

SCAMPI – Artigo

SCAMPI – Entrevista em grupo

SCAMPI – Entrevista GP

SCAMPI – Descoberta preliminares

CMM e pequenas empresas

� Pequena empresa?� Métrica? Tamanho do projeto?

� Custo – prazo – envolvidos – pontos de função ?

� Alguns autores não consideram o tamanho… outros consideram

� Relatos …� Muita pesquisa acadêmica …

CMM e pequenas empresas� Ação, a menor a ter CMMI 2 no mundo

� A Ação Sistemas acaba de certificar-se CMMI nível 2. Com uma equipe de 10 analistas, a conquista faz da empresa gaúcha a dona do selo com o menor número de funcionários em todo o mundo, segundo o Software Engineering Institute, instituto americano criador do modelo de qualidade de software.

O processo de adoção das práticas do CMMI demandou quase dois anos da empresa, desenvolvedora do software de gestão de RH UniversalRH, hoje usado por 80 organizações no Brasil. “Foram duas mil horas de trabalho interno”, revela Luiz Carlos Leite, diretor de operações da Ação. trabalho interno”, revela Luiz Carlos Leite, diretor de operações da Ação.

O investimento total chega a R$ 1 milhão, entre as horas gastas pelos colaboradores, consultoria das empresas Crest Consulting e Herbert Consulting e a prova de certificação final. “Já tivemos um retorno de 50% durante a implementação”, acredita Leite.

De acordo com o executivo, o principal ganho foi na previsibilidade dos projetos – a margem de atraso hoje é de 5%, para cima ou para baixo -, e na estabilidade dos sistemas, cujo indicador mínimo estabelecido é 95%.

“Os clientes percebem o valor do CMMI. Depois de dizer que temos o selo, não é preciso mais falar sobre processos de desenvolvimento”, explica Leite. A Ação atende a empresas como a Wal-Mart, que tem 100 mil funcionários no país, ou a Marcopolo, que tem plantas em 12 países diferentes.

O empresário gaúcho garante que já tem na programação a conquista do nível 3 do CMMI. “Vamos ir até o final”, garante Leite.

Fonte: Baguete

CMM e pequenas empresas

PSP/TSPPSP/TSPMPS.BR

CMM – Panorama Brasil

CMMI – Panorama Brasil

CMMI – Panorama Brasil

CMMI – Panorama Brasil

CMMI – mundo 2010

CMMI –mundo 2010

CMMI – tempo obtenção

CMMI – tamanho

http://sas.sei.cmu.edu/pars/pars.aspx

Recommended