CMMI para Concursos - Parte 1 - Introdução e Constelações Atenção! Este é o meu resumo sobre CMMI. Não me culpe caso algo esteja errado, er rado, faça bom proveito e se encontrar erros, por favor me avise. Conforme for estudando, est udando, vou melhorando os resumos .
Capability (capacidade): Qualidade de ser capaz ou apto a realizar uma tarefa tar efa ou ação. É a capacidade de alcançar determinado resultado. Maturity (maturidade) : O quanto uma empresa está madura em determinada área de interesse. É possível ter a capacidade de entregar determinado resultado sem ter a maturidade suficiente para repetí-lo repet í-lo com segurança. Maturidade é o atingimento de boas práticas. Model (modelo): Representação simplificada e abstrata abstr ata de algo sob diferentes pontos de vista. Observa-se apenas o que é essencial para solução de determinada questão em determinado contexto. Integration (integração): O CMMI é um framework que integrou diversos outros modelos CMM para desenvolvimento, produtos de software e etc. Modelo Integrado de Capacidade e Maturidade M aturidade - É um modelo de melhores melhores práticas prát icas para se definir, implantar e melhorar processos. Assim com o ITIL, CMMI não é uma metodologia, não é uma receita de bolo, não existe passo a passo. Descreve as características que os processos devem ter para se tornarem efetivos. O CMMI foca na seguinte questão: " O que fazer" e não "como "co mo fazer" ou "quem deve fazer". Não existem papéis pré-definidos para os processos: O CMMI trará melhoria na pervisão de custos e tempo a ser gasto no desenvolvimento desenvolvimento e manutenção de produtos e serviços de software. Os processos que dizem às pessoas o que fazer e mapeiam as características importantes a serem atendidas, sendo assim, a equipe já sabe o que fazer para alcançar as metas, o que aumenta a agildade da equipe e portanto, a produtividade. Colocando em prática o que foi dito anteriormente, a consequência é a melhoria melhoria na qualidade dos produtos. Tudo isso também trará maior retorno retor no sobre o investimento. Antes existiam diversos modelos CMM (Engenharia de Software - SW, Engenharia de Aquisições - SA, Engenharia de Sistemas - SE, IPD e People). Diversas areas de interesse tiveram seus modelos criados o que gerou sobreposição de assuntos, gerando processos redundantes ou em oposição dentro de uma mesma empresa que adotasse mais de um modelo. Com a criação do modelo integrado, esses problemas foram resolvidos. Então o CMMI serve serve para implantar e melhorar melhorar os processos de uma organização com foco em desenvolvimento e manutenção de software de forma integrada. (CMMI-DEV) (CMMI -DEV)
Constelações CMMI
Conjunto de componentes (modelos, material de treinamento e documentos de
avaliação) para atender uma área de interesse específica de uma organização. Existem 3 constelações atualmente (versão 1.2):
CMMI-ACQ - Processos para aquisições de suprimentos e terceirização. CMMI-SVC - Processos para entregar e suportar serviços. (processos parecidos com ITIL) CMMI-DEV - Processos para desenvolver produtos e serviços.
Mesmo existindo 3 constelações diferentes, existe uma integração entre elas. 16 processos são comuns a todas as constelações. O framework é flexível o suficiente para receber novas constelações no futuro. Neste resumo, estou estudando apenas o CMMI-DEV (é o que é cobrado)
Disciplinas do CMMI-DEV
Dentro das constelações existem áreas de conhecimento específicas:
Engenharia de Software (SW) : Foco na aplicação de métodos para o desenvolvimento e manutenção de sistemas de software. Engenharia de Hardware (HW) : Técnicas e tecnlogogias para manter e implementar um produto concreto. Engenharia de Sistemas (SE) : Cobre o desenvolvimento de sistema como um todo. Pode ou não incluir softwares. Tranforma expectativas em soluções completas. Exemplo: o desenvolvimento de um IPOD, envolve a criação de um hardware, um software para o hardware e ainda um outro software para atualizar as músicas do aparelho através de um PC. Além disso ainda existe o loja virtual de venda de músicas. Atenção: Assim como nos livros de engenharia de software, existe diferença entre software e sistema. O software é um programa, o sistema é algo maior, que inclui software, documentação, hardware e etc. O caso citado do IPOD mostra a diferença.
Dentro do IPOD roda um software, mas o todo é o sistema e inclui desde o hardware até à loja de música. Existem dois modelos CMMI for Development e CMMI for Development + IPPD (Desenvolvimento Integrado de Produtos e Processos). IPPD é apenas um complemento opcional do CMMI-DEV. Você pode escolher aplicar as praticas dele se quiser. É muito comum empresas gerenciarem os processos, mas tercerizarem o desenvolvimento em outras empresas com níveis de CMMI. Para isso é necessário uma integração entre as partes, aí entra o IPPD (Não confiar muito nessa definição). O CMMI-DEV possui 22 processos. Quando nada for dito em uma questão, considere sempre que está se falando de CMMIDEV.
CMMI para Concursos - Parte 2 - Componentes do Modelo Clique aqui para ver a Parte 1 do resumo de CMMI. Lembre-se que este é um resumo meu e sugestões de melhoria são bem vindas O CMMI possui 22 áreas de processo e seus componentes são dividos em 3 tipos diferentes: em retângulos arredondados estão os componente requeridos (obrigatórios), em losangos estão os esperados e elipses os informativos.
As Áreas de Processo (PA) podem ser referidas simplesmente como processos. "Conjunto de práticas em uma área que quando implementadas CONJUNTAMENTE (e não individualmente) satisfazem a um conjunto de metas consideradas importantes para realizar melhorias significativas naquela área "
Todas as áreas de processo são comuns às representações contínua e por estágios. Cada área de processo possui metas específicas (SG - Specific Goals) e metas
genéricas (Generic Goals).
Metas e Práticas Específicas As metas específicas (SG), como nome diz, se aplicam espeficicamente a uma área de processo e descrevem os resultados que devem ser alcançados para satisfazer a área de processo. Os processos do CMMI possuem de 1 a 3 metas específicas por processo. São componentes requeridos. Abaixo das metas específicas, existem as práticas específicas (SP - Specific Practice) que descrevem atividades importantes para satisfazer .as metas específicas. São componentes esperados. São as atividades (praticas) que devem ser feitas.
Metas e Práticas Genéricas
As metas genéricas (GG) são chamas assim porque são utilizadas em várias áreas de processo. Existem metas genéricas para os níveis de CAPACIDADE de 1 a 5 e para os níveis de MATURIDADE 2 e 3. São componentes requeridos. Abaixo das metas genéricas existemas praticas genéricas (GP) que descrevem as atividades para que seja possível alcançar as metas genéricas. São componentes esperados. Como exemplo, temos a meta genérica Institucionalizar um Processo Perenciado , que possui uma prática genérica chamada Estabelecer uma Política Organizacional.
Classificação dos Componentes Componentes Obrigatórios - Metas específicas e metas genéricas. Devem ser alcançados e serão utilizados em uma avaliação da organização. Componentes Esperados - Práticas específicas e práticas genéricas. Dizem o que PODE ser feito para satisfazer um componente requerido, mas é possível substituir por práticas alternativas. Em uma avaliação da organização é esperado que esses componentes tenham sido implementados conforme descritos. A execução da prática pode ser substituída por uma prática alternativa aceitável (que gere os mesmos resultados). Componentes Informativos - Os outros componentes são informativos, auxiliares e até mesmo dispoensáveis. Auxiliam no entendimento das metas e práticas. Exemplos: objetivos e descrições das áreas de processo, produtos de trabalho típicos, subpráticas, notas introdutórias. O glossário não é um componente requerido, esperado nem informativo. Os termos do glossário devem ser interpretados no contexto do modelo de componente em que aparecem.
CMMI para Concursos - Parte 3 - Representações Contínua e por Estágios Existem duas representações no CMMI
Contínua (Níveis de Capacidade) e por Estágios (Níveis de Maturidade)
Representação Contínua
Oferece a maior flexibilidade possível. Permite selecionar a área de processo a ser melhorada ou a ordem em que as melhorias serão feitas. Entretanto, existem processos que dependem de outros e por isso a flexibilidade não é de 100%. Para ter o processo de Desenvolvimento de Requisitos implementado é preciso ter o processo de Gestão de Requisitos. Uma organização pode possui necessediades específicas, por exemplo: Foco em requisitos e gerenciamento de projetos e não estar preocupada com desenvolvimento e testes, porque será tercerizado. Essa empresa pode focar nas áreas que importam para ela, deixando outras áreas de lado. Cada processo tem o seu próprio nível de CAPACIDADE. Vai do nível de capacidade 0 até o 5 . Com isso, uma organização pode, inclusive, trabalhar algumas áreas mais do que outras de acordo com a estratégia da empresa. (ver figura acima) Essa representação é indicada quando se conhece bem os problemas da organização. Sabe-se quais são os processos que precisam ser melhorados e as dependências entre eles são bem conhecidas. Mapear quais são as áreas de risco e de maior necessidade da sua organização não é tarefa simples. Muitas empresas não possuem essa maturidade e não sabem nem por onde começar.
O que determina os níveis de capacidade dos processos são as METAS GENÉRICAS. Para um processo alcançar o nível de capacidade 1, o processo deve satisfazer a meta genérica 1. Para alcançar o nível de capacidade 2, este deve atender a meta genérica 1 e 2. Existem 5 metas genéricas, uma para cada nível de capacidade.
Existem 6 (SEIS) níveis de CAPACIDADE, que são acumulativos. Um processo em nível mais alto exige a satisfação dos níveis mais baixo.
OS NÍVEIS DE CAPACIDADE 0 - INCOMLPETO - Processo que não é executado ou é executado parcialmente. Talvez a organização nem tenha conhecimento da necessidade do processo em questão. 1 - EXECUTADO - O processo satisfaz às metas específicas da área de processo. 2 - GERENCIADO - O processo é executado (nível 1) e planejado de acordo com cada projeto. Neste caso, o processo é planejado e executado de formas diferentes em projetos diferentes, não exsite um padrão institucionalizado. 3 - DEFINIDO - O processo é adaptado a partir do padrão da organização . O processo segue um padrão, independentemente do projeto. 4 - GERENCIADO QUANTITATIVAMENTE - Processos controlados por meio de técnicas estatísticas. Controle matemático das variações do processo. Sem um padrão institucional, não seria possível fazer medições porque os processos poderiam variar muito de um projeto para outro. 5 - EM OTIMIZAÇÃO - Melhoria contínua a partir do entendimento das variações medidas no nível 4. Benefícios da Representação Contínua 1) Oferece a máxima flexibilidade possível na utilização do modelos para melhoria dos processos. 2) Permite comparação com outras organização, mas somente processo a processo. Dificuldades 1) Os processos da organização precisam ser conhecidos, mas normalmente, as empresas não fazem nem ideia dos processos que precisam ser melhorados 2) Não existe flexibilidade total porque existem dependências entre as áreas. 3) Difícil comprovar o retorno sobre investimento (ROI) porque cada empresa escolhe uma abordagem diferente e é difícil comparar e medir coisas diferentes. Na representação contínua os processo são separados em quatro categorias, conforme abaixo:
Gestão de Processos (palavra chave: organização) : processos que traram de processos Foco nos Processos da Organização Definição dos Processos da Organização + IPPD Treinamento na Organização Desempenho dos Processos da Organização Implantação de Inovações na Organização
Gestão de Projetos (palavra chave: projeto) Planejamento de Projeto Monitoramento e Controle do Projeto Gestão de Contratos com Fornecedores Gestão Integrada de Projeto + IPPD Gestão de Riscos Gestão Quantitativa de Projeto Engenharia: processos mais técnicos Desenvolvimento de Requisitos Gestão de Requisistos Solução Técnica Integração de Produto Verificação Validação
Suporte (palavra chave: análise): processos que apoiam outros processos Gestão de Configuração Garantia de Qualidade do Processo e Produto Medição e Análise Análise e Tomada de Decisões Análise e Resolução de Causas
Representação por Estágios
Provê uma sequência bem definida (rígida) de melhoria, cada um servindo como base para o próximo. Oferece uma forma sistemática e estruturada para melhoria dos processos. Os níveis de MATURIDADE da organização vão do nível 1 ao 5. Um determinado nível de maturidade é definido pelo CONJUNTO DE ÁREAS DE PROCESSO dentro do nível em questão. São 7 áreas de processo para se alcançar o nível 2, 11 áreas de processo para o nível 3, 2 áreas para o nível 4 e 2 áreas para o nível 5. Total de 22 áreas de processo.
A ordem de melhoria é rígida e os estágios são cumulativos e dependentes dos anteriores. Para se alcançar o nível de maturidade 3 uma empresa precisa ter implementado todos os 7 processos do nível 2 e eles precisam estar no nível de capacidade 3 e todos os 11 processos do nível 3 também. Um processo possui um determinado nível de capacidade, uma organização possui maturidade. Mesmo na representação por estágios é necessário medir os níveis de capacidade dos processos. Nível de Maturidade é um platô bem definido de melhoria de processos na organização. As conquistas de cada estágio representam o amadurecimento de um subconjunto de processos e dizem quais processos devem ser implementados. OS NÍVEIS DE MATURIDADe
1 - INICIAL ou AD-HOC - Os processos são imprevisíveis e caóticos. A organização não fornece um ambiente estável para apoiar os processos, são pouco controlados e reativos. O sucesso depende do heroísmo e da competência individual. A organização se compromete além da sua capacidade e abandona qualquer processo ou metodologia em momentos de crise e são incapazes de repetir os sucessos. Se a organização não foi avaliada, ela começa neste nível. 2 - GERENCIADO - Os 7 processos deste nível são caracterizados por projeto e as ações são frequentemente reativas. São planejados e executados de acordo com uma política. Já existem políticas organizacionais, mas não padrões definidos. Recursos adequados e pessoas experientes são envolvidas para produzir saídas controladas. Inclui medição, controle e revisão dos processos. O nível é alcançado pelas metas específicas das 7 áreas de processo de nível 2 e a meta genérica 2. PS: No nível 2 já existe medição, mas não é uma medição formal, matematicamente constituída.
3 - DEFINIDO - Os 7 processos do nível 2 e os 11 processos do nível 3 (18 no total) são caracterizados por padrões formais da organização e são descritos em padrões, procedimentos, ferramentas e métodos. No nível 2, cada projeto tinha seus procedimentos, aqui existe um padrão geral da organização e os projetos estabelecem seus processos a partir da adaptação do padrão. O nível é alcançado pelas métas específicas das 18 áreas de processo no nível 2 e 3 e metas genéricas 2 e 3. 4 - GERENCIADO QUANTITATIVAMENTE - Processos medidos e controlados por meio de técnicas estatísticas e matemáticas. Aqui são 20 processos (7 + 11 + 2). Objetivos quantitativos são estabelecidos para a qualidade dos processos. Medições são feitas através de técnicas estatísticas e quantitativas, APENAS para os processo ou subprocessos mais relevantes. Este nível é alcançado pelas metas específicas das áres de processo de nível 2, 3 e 4 e metas genéricas 2 e 3. Só os processos mais relevantes vão atingir a meta genérica 4. 5 - EM OTIMIZAÇÃO - Melhoria contínua a partir do entendimento das variações medidas no nível 4. 22 processos. As melhorias são escolhidas e comparadas ao seu custo e impacto na organização. Se aplica também aos processos ou subprocessos mais relevantes. Este nível é alcançado pelas metas específicas das áreas de processo de nível 2, 3, 4 e 5 e metas genéricas 2 e 3. Benefícios da Representação por Estágios Oferece uma sequência bem definida de melhoria de processos. Não é preciso pensar a respeito de quais processos escolher. Quando você não sabe por onde começar e quais processos escolher para a sua empresa, o mais adequado é escolher a representação por estágios, que indica a ordem de melhoria dos processos. A representação por estágios facilita a comparação entre empresas diferentes, porque
todas precisam ter obrigatóriamente os mesmos processos implementados em determiando nível. Além disso a empresa recebe uma certificação que alcançou o nível de maturidade X.
Problemas da Representação por Estágios Rigidez na escolha das áres de processos a serem melhoradas e o custo da representação por estágios poderá ser maior que o custo da representação contínua. A empresa será obrigada a implementar algumas áreas de processo que talvez não tenha interesse. As áreas de processo ficam distribuídas por categorias e por níveis de maturidade e é preciso saber o local de cada uma delas na tabela abaixo.
O que está abaixo são dicas de memorização para mim, que talvez não façam sentido para você. Não está escrito em lugar nenhum, é coisa da minha cabeça.
Gestão de Processos: foca na organização, são coisas de mais alto nível, por isso, não possui nada no início, a palavra-chave é organização. Gestão de Projetos: foca nos projetos, o último nível (5) está além dos projetos, a palavra-chave é projeto. Engenharia: é mão na massa, então, são os níveis mais baixos. Muito técnica. Lembrar de engenharia de software para verificação e validação. É a única categoria só de dois níveis. Palavra-chave é requisitos Suporte: deveria estar em todos os níveis, mas não tem no nível 4, que é onde a gestão de projetos termina. Palavra-chave: análise Processos com IPPD são processos de Integração, logo, de nível 3. No nível 2, gerenciado, ainda não existe institucionalização formal, existem apenas políticas institucionalizadas, não se pode falar integração.