Modelo de maturidade de capacidade (CMM) explicado em 5 minutos ou menos

O Capability Maturity Model (CMM) é uma maneira eficaz e fácil de dimensionar várias funções do seu negócio.

Para administrar uma empresa, controlar um sistema ou gerenciar um grupo, entender as capacidades é um aspecto essencial.

Depois de restringir as diferentes funções do seu negócio, você deve avaliar o desempenho de todas essas funções. De acordo com isso, você define padrões e metas para o seu negócio.

Assim, para medir e controlar o desempenho e o andamento do trabalho de cada função e indivíduo, os empresários e líderes empresariais precisam ter uma solução sólida e capturá-la.

Dessa forma, uma empresa pode desenvolver sistemas que possam tirar o peso das complexidades e dar a precisão necessária para escalar.

É aqui que o CMM entra em cena.

Neste artigo, discutirei o que são CMM e CMMI, seus níveis e as diferenças entre eles.

Vamos começar!

O que é o modelo de maturidade de capacidade?

O Capability Maturity Model (CMM) é uma metodologia simples usada para criar e refinar o processo de desenvolvimento de aplicativos de uma organização. Isso permite que os desenvolvedores desenvolvam e aprimorem o processo de desenvolvimento de software, resultando em maior consistência e eficiência.

Independentemente da função atribuída a você na equipe de desenvolvimento, familiarizar-se com o CMM pode ajudar a melhorar seu desempenho. Assim, pode-se dizer que o CMM é um método que ajuda a avaliar, desenvolver e melhorar o processo de desenvolvimento de software.

CMM descreve os procedimentos primários para desenvolvimento de software e outras princesas que passam por engenharia, gerenciamento e planejamento. Ele assume que um processo de melhoria regular é alcançável por meio de pequenos sinais de progresso, em vez de avanços maiores.

Além disso, oferece uma estrutura para gerenciar sinais menores em vários níveis de maturidade, a fim de fornecer uma plataforma para melhoria contínua do processo de desenvolvimento de software. Portanto, essa metodologia atua como o coração de sistemas de gestão especialmente desenvolvidos para aprimorar a qualidade do desenvolvimento de produtos e serviços junto com suas entregas.

O CMM foi desenvolvido e promovido pelo SEI (Software Engineering Institute), um centro de P&D patrocinado pelo US DOD. Agora faz parte da Carnegie Mellon University. A SEI foi fundada no ano de 1984 para abordar vários problemas de software e desenvolver metodologias de software.

A SEI foi criada para otimizar o processo de desenvolvimento, aquisição e manutenção de sistemas fortemente reservados a software para o Departamento de Defesa (DOD). Ele defende a adoção centrada na indústria do CMM em evolução, ou seja, CMM Integration (CMMI).

Por que você precisa do CMM?

O CMM tem muitos pontos fortes, e o benefício mais útil de usar essa metodologia é sua capacidade de economizar tempo e dinheiro. Isso porque o sistema é perfeitamente desenhado para conhecer os defeitos no processo de melhoria de forma mais eficiente que outros modelos.

Além disso, o CMM aprimora os processos de negócios e também reduz a mudança repentina nos cronogramas de produção. Como o CMM foi o primeiro modelo projetado para melhorar o processo industrial, ele pode ser a pedra fundamental para outras criações de modelos, como a versão aprimorada do CMM (ou seja, CMMI), Business Capability Maturity Model (BCMM) e muito mais.

O CMM é um modelo bastante flexível para todos os processos e mercados. Não importa a que setor você pertença, se você tiver uma equipe de desenvolvimento, os membros podem utilizar o modelo para corrigir erros no processo.

  Como corrigir o código de erro Netflix U7121-1331-P7

Cinco níveis de maturidade no CMM

Os cinco níveis do Capability Maturity Model (CMM) no processo de desenvolvimento são:

#1. Nivel inicial

Nesse nível, os processos não estão na ordem adequada. Pode até ser caótico às vezes. Aqui, o sucesso depende dos esforços do membro individual e não é considerado um processo repetível. Isso ocorre apenas porque o processo não está bem documentado e definido o suficiente para que possa ser replicado.

Os processos seguidos são imaturos e Adhoc que é um ambiente instável para o seu desenvolvimento de software. Além disso, não há base para prever a qualidade do produto e seu tempo de conclusão.

#2. Repetivel

Nesse nível, os processos necessários são bem estabelecidos, documentados e definidos. Como resultado, as técnicas de gerenciamento de projetos são estabelecidas adequadamente e o sucesso pode não ser replicado em algumas áreas-chave do processo.

O nível repetível pode ser alcançado estabelecendo algumas políticas básicas de gerenciamento de projetos. A experiência em projetos anteriores é usada para gerenciar projetos de natureza semelhante. Inclui a definição de recursos necessários, metas, restrições e muito mais para o projeto.

Este nível apresenta um plano detalhado que precisa ser seguido adequadamente para a conclusão bem-sucedida do software de qualidade. O objetivo principal é manter o desempenho do produto, como seu componente, durante todo o ciclo de vida do software.

O nível repetível também inclui feedback do cliente e gerenciamento de revisão, o que pode levar a algumas alterações no requisito definido. Este gerenciamento de requisitos consiste na acomodação dos requisitos modificados.

Além disso, o gerenciamento de subcontratos se concentra no gerenciamento de contratados qualificados para o desenvolvimento de software. Isso significa que ele gerencia algumas partes de software desenvolvidas por terceiros. A garantia de qualidade de software garante um produto de software de qualidade com certas regras e diretrizes padrão durante o processo de desenvolvimento.

#3. Definiram

A documentação das diretrizes e procedimentos ocorre neste nível. É um conjunto bem definido de processos e gerenciamento de engenharia de software. Isso inclui:

  • Revisões por pares: neste método, os defeitos precisam ser removidos usando uma variedade de processos de revisão, como inspeções, verificações de amigos, orientações, etc.
  • Coordenação intergrupo: Este método consiste em interações entre várias equipes de desenvolvimento para garantir o atendimento adequado e eficiente das necessidades.
  • Definição do processo de organização: O método foca no desenvolvimento e manutenção de processos de desenvolvimento de software.
  • Foco no processo da organização: Isso inclui práticas e atividades que precisam ser seguidas para aprimorar as capacidades do processo da organização.
  • Programas de treinamento: Os programas de treinamento focam no aprimoramento de conhecimentos e habilidades dos membros da equipe e garantem uma melhoria na eficiência do trabalho.

#4. Gerenciou

Nesse nível, metas quantitativas são definidas para a qualidade do produto de software e processos de software de uma organização. As medições realizadas permitem à organização prever a qualidade do processo e do produto dentro dos limites definidos quantitativamente.

Este nível inclui estratégias e planos estabelecidos para desenvolver e entender a análise quantitativa e a qualidade do produto. Ele também se concentra no gerenciamento do desempenho do projeto.

#5. Otimizando

Este é o estágio final da maturidade do processo no CMM que foca apenas na melhoria contínua dos processos de desenvolvimento na organização via feedback quantitativo. Isso é feito usando técnicas, avaliação e ferramentas para processos de software para evitar a repetição de defeitos conhecidos.

Este nível inclui:

  • Gestão de mudanças de processos: Este processo de gestão foca na melhoria contínua dos processos de desenvolvimento de software. Isso melhora a qualidade, o tempo de ciclo e a produtividade do produto de software.
  • Gerenciamento de mudanças tecnológicas: consiste no uso de tecnologias e técnicas de identificação para melhorar a qualidade do produto e minimizar o tempo de desenvolvimento.
  • Prevenção de defeitos: A prevenção de defeitos pode ser feita identificando a causa dos defeitos e evitando que esses defeitos se repitam nos próximos projetos. Isso melhora os processos definidos pelo projeto.
  6 Melhor Hospedagem de Servidor GMod para Todos

Integração do Modelo de Maturidade de Capacidade

O Capability Maturity Model Integration (CMMI) é um modelo de processo simples que as organizações podem usar para aprimorar os processos de desenvolvimento, impulsionar comportamentos eficientes e melhorar a produtividade no fluxo de trabalho durante o desenvolvimento de um produto, serviço ou projeto. Isso resulta na redução de riscos ao longo do processo.

O CMMI foi desenvolvido e introduzido pela Carnegie Mellon University. A intenção principal deste desenvolvimento é aumentar a eficiência e usabilidade de modelos de maturidade que podem medir a capacidade de uma organização ter um aprimoramento contínuo em áreas específicas. Isso só pode acontecer integrando vários modelos em uma única estrutura.

A primeira versão foi lançada em 2002, e a próxima versão foi lançada em 2006. Em 2010, apareceu a versão 1.3, e a versão mais recente, 2.0, foi lançada em 2018, que veio com várias mudanças como torná-la mais acessível, eficaz etc. ., para empresas.

O CMMI foi comprado pela ISACA (anteriormente conhecida como Information Systems Audit and Control Association), que possui certificações como o framework COBIT. O CMMI é um processo e modelo comportamental que auxilia as organizações em todo o processo de desenvolvimento de produtos ou serviços.

Assim, o objetivo do CMMI é bastante claro. É utilizado para melhorar a qualidade do serviço ou produto seguindo o modelo que atende às expectativas do cliente e aumenta o valor de uma organização no mercado. Ele também avalia a reputação do seu negócio e o valor das partes interessadas no setor.

O CMMI atualmente aborda as seguintes áreas de interesse:

  • CMMI for Development: Destina-se ao desenvolvimento de produtos e serviços.
  • CMMI para Serviços: É para estabelecimento, entrega e gerenciamento de serviços.
  • CMMI para Aquisição: Envolve a aquisição de produtos e serviços.

Representação do CMMI

A representação do CMMI permite que uma organização busque um conjunto de objetivos de melhoria. Existem duas representações:

Representação encenada

  • Ele usa um conjunto definido de áreas de processo de desenvolvimento para descrever o caminho de melhoria.
  • Ele fornece uma série de melhorias, onde cada parte da série serve como estrutura para a próxima melhoria.
  • Ele define um caminho melhorado com a ajuda de níveis de maturidade. E o nível de maturidade fala sobre a maturidade de diferentes processos na organização.
  • Permite a comparação entre diferentes organizações para vários níveis de maturidade.

Representação Contínua

  • Ele permite a seleção de áreas de processo específicas.
  • Ele usa níveis de capacidade para medir a melhoria do processo individual.
  • Além disso, permite a comparação entre organizações com base na área de processo por área de processo.
  • A representação contínua também permite que as organizações escolham entre diferentes processos para melhor melhoria.
  • Nessa representação, as organizações podem atender melhor seus objetivos e reduzir riscos ao selecionar a ordem de melhoria dos diferentes processos.

Estágios no CMMI

Existem cinco estágios de maturidade no CMMI com representação em estágios:

#1.Inicial: Neste nível, os processos de desenvolvimento são mal controlados ou gerenciados. Também envolve resultados imprevisíveis dos processos de desenvolvimento. Além disso, são usadas abordagens caóticas e ad hoc. Você não encontrará nenhuma área de processo chave (KPAs) definida. A qualidade não é tão boa e o produto ou serviço corre o maior risco.

#2. Gerenciado: neste estágio de maturidade, os requisitos são gerenciados adequadamente e os processos de desenvolvimento são controlados e planejados. Aqui, o projeto é gerenciado e implementado adequadamente de acordo com os planos documentados. No entanto, o risco ainda existe, mas é menor do que o nível inicial.

  Como salvar uma página de um PDF

#3.Definido: No nível de maturidade definido, os processos de desenvolvimento são bem descritos e caracterizados usando procedimentos, padrões, ferramentas e métodos adequados. A qualidade que você encontrará é de grau médio e o risco também é médio.

#4.Gerenciado quantitativamente: Neste modelo, são definidos os objetivos quantitativos para os processos de qualidade e desempenho. Baseia-se nas necessidades da organização, nos requisitos do cliente e muito mais. As medidas de desempenho do processo são analisadas quantitativamente. Aqui você encontra processos de maior qualidade com menor risco.

#5.Otimização: Esta é a última etapa do modelo de maturidade que envolve a melhoria contínua do desempenho e dos processos. A melhoria neste nível é inovadora e incremental. Os processos e desempenhos são de maior qualidade, e o risco é o menor.

Níveis de capacidade do CMMI

Um nível de capacidade informa sobre as práticas relevantes para uma área de processo específica para aprimorar os processos de uma organização relacionados à área de processo. Existem seis níveis de capacidade para os modelos CMMI:

  • Nível de capacidade 0 (incompleto): inclui processos incompletos, parciais e não executados. Nesse nível, não há metas genéricas.
  • Nível de capacidade 1 (Executado): O desempenho do processo não é estável neste nível. Os objetivos de custo, cronograma e qualidade não são alcançados. O processo de nível 1 precisa realizar práticas específicas.
  • Nível de capacidade 2 (gerenciado): o processo é monitorado, controlado e planejado neste nível. Aqui, os objetivos são modelo e outros como qualidade, cronograma e custo. A organização precisa gerenciar processos ativamente com a ajuda de métricas.
  • Nível de capacidade 3 (definido): é um nível definido em que o processo é bem gerenciado e atende a um conjunto de diretrizes e padrões organizacionais. Tem como foco a padronização de processos.
  • Nível de capacidade 4 (gerenciado quantitativamente): Aqui, o processo é controlado usando técnicas quantitativas e estatísticas. Nesse nível, o desempenho do processo é entendido em termos de métricas e estatísticas.
  • Nível de capacidade 5 (Otimizando): Este nível se concentra na melhoria contínua do desempenho do processo. O desempenho é aprimorado de maneiras inovadoras e incrementais.

CMM vs. CMMI: Diferença

CMMI é um modelo atualizado ou mais recente de CMM. A SEI desenvolveu o CMMI para padronizar e integrar o CMM, que possui diversos modelos para cada função que abrange. Esses modelos não são sincronizados; integrá-los torna o processo flexível e eficiente.

Com relação às principais áreas de processo, práticas, níveis de maturidade e metas, a estrutura do CMMI é semelhante à estrutura do CMM. No entanto, o CMMI oferece duas representações diferentes dos processos.

Vamos descobrir mais algumas diferenças entre CMM e CMMI:

CMMCMMICMM significa Capability Maturity Model, desenvolvido no ano de 1984.CMMI significa Capability Maturity Model Integration, desenvolvido no ano de 2006.É um modelo comportamental desenvolvido para medir os processos de desenvolvimento de software em uma organização.É a versão atualizada do modelo CMM que é mais orientado para a tarefa e eficaz. O objetivo principal é avaliar os níveis de maturidade no processo de desenvolvimento de software. O objetivo principal é combinar diferentes modelos de software em um único software e superar algumas desvantagens do CMM. O CMM tem cinco estágios: inicial, repetido, definido, gerenciado e otimizado O CMMI tem cinco estágios: inicial, gerenciado, definido, gerenciado quantitativamente e otimizado. O CMM é menos eficaz. O CMMI é mais eficaz. É muito orientado para o processo. É orientado para os objetivos.

Conclusão

O Capability Maturity Model (CMM) é um sistema de resolução de problemas para processos de desenvolvimento de software em indústrias. Isso pode evitar que as empresas lidem com problemas de processo.

Por outro lado, o CMMI possui uma metodologia avançada em relação ao CMM. Envolve atender às expectativas dos clientes, valorizar a criação, o crescimento do marketing, melhorar a qualidade dos produtos e serviços e aumentar a reputação.

Você também pode explorar a estrutura de gerenciamento do ciclo de vida do aplicativo, que auxilia no desenvolvimento e na entrega do software dentro do prazo, do orçamento e com qualidade superior.