Você está na página 1de 31

Métodos ágeis e modelos de maturidade

Apresentação
Nos últimos anos, muitas organizações passaram a adotar metodologias de desenvolvimento ágil
vindas do Manifesto Ágil, como o Scrum e o Extreme Programming (XP). Essas metodologias têm
chamado cada vez mais a atenção por serem utilizadas com sucesso para melhorar os processos de
empresas de TI, principalmente as de tamanhos menores. Atualmente, muitas organizações
descobriram a necessidade de aprimorar seus processos, possibilitando a introdução de modelos de
maturidade, como o CMMI (Capability Maturity Model Integration) e o MPS.BR (Melhoria de
Processos do Software Brasileiro). Os modelos de maturidade são capazes de fornecer resultados
previsíveis em ambientes e condições de negócios estáveis, já a metodologia ágil fornece valor aos
negócios de forma mais rápida e econômica em resposta aos requisitos, que estão em mudanças
constantes. Implementar maturidade aos processos ágeis pode melhorar a qualidade do produto,
ampliar a capacidade de gerenciamento do processo e aumentar a adequação de práticas ágeis para
projetos de TI maiores e mais complexos.

Nesta Unidade de Aprendizagem, você irá entender o que faz as empresas adotarem metodologias
ágeis e implementarem modelos de maturidade. Além disso, irá verificar como funciona a junção
dos Modelos CMMI e MPS.BR em ambientes ágeis.

Bons estudos.

Ao final desta Unidade de Aprendizagem, você deve apresentar os seguintes aprendizados:

• Descrever como ocorre a integração entre modelos de maturidade e métodos ágeis.


• Explicar o uso do CMMI para implantações ágeis.
• Conciliar o MPS.BR com as metodologias ágeis.
Infográfico
Muitas empresas utilizam metodologias ágeis para gerenciamento de projetos. Isso ajuda as equipes
a administrarem o trabalho com mais eficiência e eficácia, ao mesmo tempo que entregam o
produto dentro das restrições do orçamento. Por outro lado, para reagir melhor às mudanças
inevitáveis que vêm com a maioria dos projetos, a empresa precisa ganhar maturidade em seus
processos de desenvolvimento. A junção de agilidade e maturidade tem sido o foco de muita
controvérsia no mundo acadêmico e na indústria: aparentemente, acredita-se que eles tenham
princípios completamente diferentes. Porém, por outro lado, mesmo com controvérsia, essa junção
tem se tornado uma realidade para as empresas de TI, na tentativa de melhorar seu desempenho
organizacional.

Veja, no Infográfico a seguir, os benefícios que as organizações podem ter ao serem utilizados, em
conjunto, as metodologias ágeis e os modelos de maturidade
Aponte a câmera para o
código e acesse o link do
conteúdo ou clique no
código para acessar.
Conteúdo do livro
As abordagens ágeis de desenvolvimento de software enfatizam a entrega incremental, a
colaboração da equipe, o planejamento contínuo e o aprendizado contínuo, em vez de tentar
entregar tudo de uma vez perto do fim. Além disso, essa metodologia se concentra em manter o
processo enxuto e criar produtos que passam por uma série de iterações antes de qualquer coisa
ser finalizada. O feedback é coletado e implementado continuamente, sendo um processo muito
mais dinâmico, em que todos estão trabalhando juntos em direção a um objetivo. Nesse contexto,
apesar de muita descrença quanto ao funcionamento conjunto, as empresas passaram a
adotar modelos de maturidade para melhor organização dos seus processos e mais visibilidade no
mercado.

No capítulo Métodos ágeis e modelos de maturidade, da obra Desenvolvimento de software com


metodologias ágeis, base teórica desta Unidade de Aprendizagem, entenda como e por que as
empresas têm o desejo de integrar agilidade e maturidade. Além disso, saiba como acontece o uso
do CMMI e do MPS.BR em metodologias ágeis.

Boa leitura.
DESENVOLVIMENTO
DE SOFTWARE COM
METODOLOGIAS ÁGEIS

Nicolli Souza Rios Alves


Métodos ágeis e modelos
de maturidade
Objetivos de aprendizagem
Ao final deste texto, você deve apresentar os seguintes aprendizados:

 Descrever como ocorre a integração entre modelos de maturidade


e métodos ágeis.
 Explicar o uso do CMMI para implantações ágeis.
 Conciliar o MPS.BR com as metodologias ágeis.

Introdução
Por sua abordagem flexível e interativa, que leva a um fluxo de traba-
lho eficiente, as metodologias ágeis têm se tornado populares entre as
empresas de software. Fatores como a conclusão do projeto em tempo
hábil, com gargalos mitigados, torna-a mais eficiente que as metodologias
tradicionais. Com a popularidade e o crescimento do uso de software,
as empresas se viram forçadas a seguirem modelos de maturidade para
adequar seus processos, a fim de otimizar o desempenho organizacional,
atrair clientes e ganhar espaço no mercado. Assim, a finalidade de um
modelo de maturidade é possibilitar que as empresas avaliem seu pro-
gresso na implementação das melhores práticas em projetos e estejam
em constante aprimoramento.
Neste capítulo, você verá o que são modelos de maturidade e por
que as empresas estão querendo implementá-los em conjunto com
metodologias ágeis. Em seguida, vai conhecer o modelo de maturidade
mais utilizado, o CMMI (do inglês Capability Maturity Model Integration,
e descobrir como é utilizado em empresas que adotam metodologias
ágeis. Por fim, você será apresentado ao modelo de maturidade brasileiro,
o MPS.BR (Melhoria do Processo de Software Brasileiro), e a como ocorre
sua integração em ambientes com agilidade.
2 Métodos ágeis e modelos de maturidade

1 Modelos de maturidade: conceito e relevância


Metodologias ágeis têm sido propostas como alternativa às metodologias tra-
dicionais de desenvolvimento de software. Os valores e princípios da agilidade
são descritos em um documento intitulado Manifesto Ágil, proposto em 2001
durante uma reunião entre especialistas em desenvolvimento de software. Com
base nesse Manifesto, as metodologias ágeis enfatizam o valor dos seguintes
pressupostos (BECK et al., 2001).

 Indivíduos e interações são mais importantes que processos e


ferramentas.
 Software em funcionamento é mais importante que uma documentação
completa.
 Colaboração com o cliente é mais importante que a negociação do
contrato.
 Responder à mudança é mais importante que seguir um plano.

Vale ressaltar que as metodologias ágeis não excluem totalmente os pro-


cessos e as ferramentas, nem a documentação, os contratos e o planejamento,
mas assumem que a entrega de um software funcional e que agregue valor ao
cliente deve ser o foco dos esforços de desenvolvimento (SILVA; SANTOS;
SHIBAO, 2019). Dessa forma, as metodologias ágeis consideram que indivíduos
e interações, software em funcionamento, cooperação com o cliente e resposta
rápida às mudanças são as premissas do desenvolvimento ágil (BECK et al.,
2001). A agilidade estimula a produção de software pela busca de melhorias
constantes em iterações curtas e faz os membros da equipe trocarem conhe-
cimento e experiência.
Hoje, podemos encontrar várias metodologias ágeis disponíveis para adoção
no processo de desenvolvimento de software, como Extreme Programming
(XP), Scrum, feature-driven development (FDD), etc. Essas metodologias
surgiram da necessidade de estabelecer processos que atendessem ao desenvol-
vimento de sistemas com mais rapidez e qualidade, sem excessiva burocracia.
Elas utilizam um ciclo de vida iterativo e incremental, com iterações curtas e
requisitos que podem ser modificados ao longo do desenvolvimento, levando
em consideração a participação do cliente como se ele fosse parte da equipe.
Nesse contexto, as organizações precisaram melhorar seus processos de
software para conquistar espaço no mercado e adquirir mais clientes, uma
vez que as empresas classificadas nos níveis mais altos desses modelos de
maturidade se destacam na competitividade de projetos de software (SILVA;
Métodos ágeis e modelos de maturidade 3

SANTOS; SHIBAO, 2019). Basicamente, um modelo de maturidade é uma


ferramenta que auxilia na avaliação da eficácia atual de alguém ou de um grupo
e ajuda a descobrir quais recursos são necessários adquirir para continuar
melhorando seu desempenho (FOWLER, 2014). Esses modelos são compostos
por uma série de níveis de eficácia, pelos quais se passa à medida que sua
capacidade evolui. Cada fase da evolução, denominada nível de maturidade,
indica um progresso a caminho da melhoria, aumentando o resultado desejado
do processo.

O termo “modelo de maturidade” foi cunhado no final da década de 1980 em uma


pesquisa do governo dos Estados Unidos e do Instituto de Engenharia de Software
da Carnergie Mellon University. O governo queria uma ferramenta capaz de predizer
o desenvolvimento bem-sucedido de software por parte de contratados. O resultado
da pesquisa foi o CMMI, Modelo de Maturidade de Capacitação, focado em guiar e
assessorar empresas na implementação de melhores práticas de gerenciamento de
projetos de desenvolvimento de software (LARSON; GRAY, 2016).

Para começar a avaliar a maturidade de algo utilizando o modelo, primei-


ramente é necessário identificar em qual nível se encontra. Assim, depois de
avaliar e identificar o nível atual, o nível de cima é utilizado como base para
priorizar quais recursos precisam ser aprendidos, o que é facilitado pelo uso
de modelos de maturidade. Dessa forma, o modelo funciona como um manual,
apresentando uma lista de coisas que devem ser aprendidas e trabalhadas para
evoluir (FOWLER, 2014). Além disso, os modelos de maturidade também
podem ser úteis para decisões de investimento e para lidar com a impaciência,
já que as mudanças de nível são lentas e trabalhosas.
Atualmente, podemos encontrar diferentes modelos utilizados para o ama-
durecimento das práticas de software, como:

 Capability Maturity Model Integration (CMMI);


 Software Process Improvement and Capability Determination (SPICE);
 Business Process Management (BPM);
 Project Management Process Maturity Model (PM2);
 Organizational Project Management Maturity Model (OPM3);
 Melhoria do Processo de Software (MPS).
4 Métodos ágeis e modelos de maturidade

Além disso, o aumento do uso do software gerou aumentou a cobrança


por qualidade dos produtos, forçando as empresas a seguirem esses modelos
de maturidade, já que as metodologias tradicionais para gerenciar os projetos
já não atendiam às necessidades da gestão (ROVAI, 2013). Vale ressaltar,
porém, que a implementação direta das práticas dos modelos de maturidade,
sem uma correta assimilação dos princípios e objetivos em que se baseiam,
deve ser evitada.
Tendo essas preocupações em mente, muitas organizações têm demonstrado
maior interesse no desenvolvimento ágil de software para combinar maturi-
dade e agilidade. Apesar de muitas pessoas acreditarem que os modelos de
maturidade são o oposto da metodologia ágil no processo de desenvolvimento
de software, é claramente viável que eles possam ser associados. Dessa forma,
espera-se somar as vantagens dos modelos de maturidade e das metodologias
ágeis, no intuito de tornar o desenvolvimento mais eficiente e equilibrado.
Para isso, muitas empresas têm utilizado o CMMI e o MPS.BR.
O CMMI é um modelo que ajuda as organizações a efetuar a melhoria
de processos e desenvolver comportamentos que diminuem os riscos no de-
senvolvimento de serviços, produtos e software. Já o MPS.BR é um modelo
independente de avaliação de empresas que produzem software no Brasil.
Embora tenham a mesma finalidade, seus objetivos de atuação são distintos.
Enquanto o MPS.BR é mais focado em organizações de pequeno e médio
portes, o CMMI é mais voltado para empresas de grande porte. Porém, no
geral, no Brasil eles se complementam no que diz a respeito de assegurar
um processo com mais qualidade e produção mais competitiva de software.
A seguir, vamos ver em detalhes o uso do CMMI e do MPS.BR em asso-
ciação a metodologias ágeis.

2 CMMI
O CMMI (integração do modelo de capacidade e maturidade, na tradução
literal) é uma abordagem de melhoria de processos cujo principal objetivo
é a melhoria do desempenho organizacional. O CMMI identifica o nível de
maturidade atual da organização pela observação de práticas e comportamen-
tos existentes e tenta melhorar o desempenho introduzindo procedimentos
padronizados e aprendendo com experiências anteriores.
O CMMI oferece suporte a dois caminhos de melhoria (CHRISSIS; KON-
RAD; SHRUM, 2011):
Métodos ágeis e modelos de maturidade 5

1. permite que as organizações aprimorem, de forma gradativa, os pro-


cessos correspondentes a uma área de processo individual (ou grupo)
selecionada pela organização;
2. permite que as organizações aprimorem um conjunto de processos
relacionados, abordando, de forma incremental, conjuntos sucessivos
de áreas de processo.

Esses dois caminhos de melhoria estão associados a dois tipos de níveis:


níveis de capacidade e níveis de maturidade, que correspondem a duas abor-
dagens para a melhoria do processo chamadas de representações. Ao seguir a
representação contínua, é possível alcançar níveis de capacidade. Esses níveis
se aplicam à melhoria do processo de uma organização em áreas de processo
individuais. Por outro lado, ao seguir a representação em estágios, é possível
alcançar níveis de maturidade. Esses níveis se aplicam à melhoria do processo
de uma organização, atingindo várias áreas de processo.
Para alcançar determinado nível, uma organização deve cumprir todas
as metas da área de processo (ou um conjunto delas) que são relacionadas à
melhoria, independentemente de ser nível de capacidade ou de maturidade.
Os dois tipos de representações fornecem formas de melhorar os processos
para atingir os objetivos de negócios e ambos fornecem o mesmo conteúdo
essencial e usam os mesmos componentes do modelo.
Todos os modelos CMMI reproduzem os níveis de maturidade em seu
design e conteúdo. Cada nível consiste em práticas específicas e genéricas
associadas a um conjunto predefinido de áreas de processos que visam melhorar
o desempenho geral da organização. O nível de maturidade de uma organização
corresponde ao desempenho da organização em uma disciplina específica
ou em um conjunto delas (CARNEGIE MELLON UNIVERSITY, 2006).
O CMMI distingue entre cinco níveis de maturidade possíveis (CHRISSIS;
KONRAD; SHRUM, 2011). Veja cada um em detalhes a seguir.

 Nível 1 — Inicial: geralmente, os processos são ad hoc e bagunçados. A


organização não oferece um ambiente estável para apoiar os processos.
Nessas organizações, o sucesso depende da competência e do heroísmo
dos colaboradores, não do uso de processos comprovados. Apesar da
bagunça, as organizações desse nível conseguem produzir produtos e
serviços que funcionam, mas frequentemente excedem o orçamento e
o cronograma planejados.
 Nível 2 — Gerenciado: os projetos garantem que os processos sejam
planejados e executados de acordo com a política definida pela organi-
6 Métodos ágeis e modelos de maturidade

zação. Além disso, geralmente os projetos contam com pessoas quali-


ficadas, com recursos adequados para produzir resultados controlados.
A disciplina de processo refletida por esse nível ajuda a garantir que
as práticas existentes na organização sejam mantidas mesmo durante
períodos de estresse. Quando essas práticas estão em atividade, os
projetos são executados e gerenciados de acordo com o que foi planejado.
 Nível 3 — Definido: os processos são bem caracterizados e com-
preendidos e são descritos em padrões, procedimentos, ferramentas e
métodos. O conjunto de processos-padrão da organização, que é a base
para esse nível, é estabelecido e melhorado no decorrer do tempo. Esses
processos-padrão são usados para tornar toda a organização consistente.
 Nível 4 — Quantitativamente gerenciado: a organização e os projetos
estabelecem objetivos quantitativos de qualidade e desempenho de
processos e os utilizam como critérios na hora de gerenciar os projetos.
Os objetivos quantitativos são baseados nas necessidades do cliente, nos
usuários finais, na organização e naqueles que implementam processo.
A qualidade e o desempenho do processo são entendidos em termos
estatísticos e gerenciados ao longo da vida dos projetos.
 Nível 5 — Otimizado: uma organização melhora seus processos de
forma contínua, com base em uma compreensão quantitativa de seus
objetivos de negócios e de suas necessidades de desempenho.

Vale ressaltar que o CMMI exige apenas que as metas associadas a cada
área de processo sejam atingidas. Decidir “como fazer” para a realizar isso
cabe somente à organização. Enquanto isso, a metodologia ágil é um para-
digma para o desenvolvimento de software que incentiva pequenas entregas
de software, interações focadas no cliente, flexibilidade em conjunto com
comunicação e eficácia. Além disso, não há um manual para as organizações
“agirem com agilidade”, mas alguns princípios e práticas recomendadas
(MINIKIEWICZ, 2017).
Silva, Santos e Shibao (2019) apresentaram uma comparação entre os
principais pontos da metodologia ágil e do CMMI (Quadro 1). Na comparação,
os autores destacaram o fato de que o CMMI apresenta um formato mais bu-
rocrático, com muitas regras e artefatos. Sobre a metodologia ágil, os autores
destacaram que ela é preparada para lidar com poucas regras nas mudanças,
poucos artefatos, e tem como objetivo principal adiantar o processo, bem
como integrar o cliente como parte da equipe.
Métodos ágeis e modelos de maturidade 7

Quadro 1. Comparação entre os métodos ágeis e o CMMI

Processo Métodos ágeis CMMI

Metodologia É uma metodologia Não é uma


metodologia, mas
um modelo

Funções Define papéis Não define papéis

Procedimentos Como fazer O que fazer

Ciclo do projeto Recomenda o ciclo Não estabelece


de vida iterativo ordem de execução
e incremental dos processos

Objeto Agilidade nos projetos Melhoria de processos

Objetivo Desenvolvimento Desenvolvimento


de software (não e manutenção
manutenção) de software

Mudanças Preparado para Mais resistentes


mudanças a mudanças

Controles Menos controlado, com Maior controle, com


poucos princípios políticas e normas

Relacionamento Cliente parte da equipe Cliente atua mais


com clientes nas reuniões

Equipe Grupos pequenos Grupos grandes

Artefatos Poucos artefatos Muitos artefatos

Regulamentação Poucas regras Mais regras

Fonte: Adaptado de Silva, Santos e Shibao (2019).

Na verdade, ainda há muito descrença sobre as duas filosofias funcionarem


juntas devido a problemas de percepção, problemas na implementação, não
levar em conta o contexto, falta de entendimento e questões culturais (MI-
NIKIEWICZ, 2017). Alguns entendem que os métodos ágeis incentivam a
abandonar a disciplina e o processo, enquanto outros acreditam que o CMMI
vai sobrecarregar os membros das equipes de desenvolvimento com tantos
artefatos.
Glazer et al. (2008), porém, afirmam que a integração do modelo CMMI
para implantações ágeis é compatível, porque, no nível do projeto, o CMMI
8 Métodos ágeis e modelos de maturidade

se resume em um alto nível de abstração sobre o que os projetos fazem, não


em qual metodologia de desenvolvimento é utilizada, enquanto os métodos
ágeis se concentram em como os projetos desenvolvem produtos. Dessa forma,
segundo os autores, a junção dos métodos CMMI e agilidade pode ser muito
proveitosa.
Enquanto o CMMI direciona uma organização sobre “o que fazer”, os mé-
todos ágeis mostram um conjunto de práticas sobre “como fazer”, fornecendo
instruções de desenvolvimento de software que estão faltando nas melhores
práticas do CMMI. Já o CMMI fornece as práticas de engenharia de sistemas
que ajudam a capacitar uma abordagem ágil em grandes projetos. Além disso,
ele também fornece o gerenciamento de processos e práticas de suporte que
ajudam a implantar, sustentar e melhorar de forma contínua a implantação
ágil em qualquer organização (GLAZER et al., 2008).
Silva, Santos e Shibao (2019) questionaram alguns profissionais a respeito da
possibilidade de aplicação conjunta de metodologias ágeis e CMMI em projetos
de software, e a maioria afirmou ser possível realizar a junção. Porém, cerca de
13% indicaram não ser possível por não ter nada a ver com metodologia ágil,
uma vez que requer grande quantidade de documentação, regras e padrões, o
que vai de encontro aos princípios ágeis. Os autores fizeram uma relação com
o estudo de Melo et al. (2012), em que foi revelado que o principal motivo de
adotar métodos ágeis em projetos é aumentar a produtividade. Além disso, os
resultados indicaram que as organizações se preocupam com a falta de docu-
mentação e acreditam que a principal barreira seria a capacidade de mudança
cultural. Esses resultados só reforçam o quanto pode ser útil e proveitoso para
as organizações trabalharem com CMMI e agilidade em projetos.
Apesar das claras diferenças, não há razão para que os dois não possam ser
aplicados com sucesso juntos (MINIKIEWICZ, 2017), apenas indícios de que
as duas filosofias permitiriam um melhor desempenho no processo de desen-
volvimento do software. Enquanto a metodologia ágil orienta à equipe sobre o
que fazer, o CMMI descreve como fazer. Além disso, a junção permite que as
equipes melhorem sua produtividade nos projetos, a qualidade dos produtos
que entregam e a capacidade de otimizar os processos de desenvolvimento de
software, uma vez que o CMMI agrega valor ao completar a agilidade com
seus processos mais rigorosos.
Métodos ágeis e modelos de maturidade 9

3 MPS.BR
O MPS.BR é um modelo de qualidade de processo criado com o intuito de
melhorar a capacidade de desenvolvimento de software nas empresas brasi-
leiras (SOFTEX, 2013). A criação desse modelo foi baseada nos princípios do
CMMI e das normas ISO/IEC 12207 e ISO/IEC 15504, tomando como base
a realidade das organizações nacionais. As empresas de software do Brasil
tinham dificuldade em entender os potenciais benefícios em investir em mo-
delos de processos para melhorar o desempenho da empresa, então a Softex
criou o programa MPS.BR visando incentivar essas empresas a melhorarem
seus processos, disseminarem boas práticas da engenharia de software e
aumentarem sua competitividade no mercado (KALINOWSKI et al., 2010).
A fim de gerenciar esse programa, foi montada uma estrutura para definir
e delegar responsabilidades a pesquisadores e profissionais de engenharia de
software. Essa estrutura é composta pelas seguintes unidades (KALINOWSKI
et al., 2010):

 Unidade de execução do programa: responsável pela definição de


estratégias e pelo gerenciamento das atividades do programa MPS.BR.
Essa equipe é coordenada pela Softex, criadora do programa.
 Equipe técnico do modelo MPS: responsável por criar e aprimorar
continuamente o MPS. Além disso, é responsável por capacitar as
pessoas por meio de cursos, provas e palestras. Essa equipe é coordenada
pelo Instituto Alberto Luiz Coimbra de Pós-Graduação e Pesquisa de
Engenharia da Universidade Federal do Rio de Janeiro.
 Fórum de credenciamento de controle do MPS: responsável pela emis-
são de pareceres quanto a decisões de credenciamento de instituições
que implementam e avaliam. Além disso, é responsável pela avaliação e
pelo controle desses resultados, bem como por garantir que as empresas
avaliadas executem suas atividades com ética e qualidade. Essa equipe
consiste em representantes do governo, da indústria e da academia.

O MPS. BR possui sete níveis de maturidade definidos para os processos


das empresas que geram software, como mostra a Figura 1.
10 Métodos ágeis e modelos de maturidade

Figura 1. Relação entre os níveis de maturidade do MPS.BR e do CMMI.


Fonte: Adaptada de O que... (2012).

Os níveis e seus processos são os seguintes (SOFTEX, 2013).

 Nível G — Parcialmente gerenciado: esse é o primeiro nível que deve


ser implementado.
■ Gerência de requisitos: a ideia é gerir os requisitos e componentes
do projeto e encontrar possíveis inconsistências entre eles.
■ Gerência de projetos: o objetivo é planejar a definição de atividades,
recursos e papéis no projeto.
 Nível F — Gerenciado
■ Garantia da qualidade: visa garantir que os produtos de trabalho e
os processos sejam executados conforme planejamento e padrões
definidos.
■ Gerência de configuração: trata do estabelecimento e da manutenção
da integridade dos produtos do trabalho.
■ Medição: consiste na coleta, no armazenamento, na análise e no
relatório dos dados relacionados aos produtos e processos.
■ Aquisição: trata da gestão da aquisição de produtos que atendem
aos clientes.
■ Gerenciamento de portfólio de projetos: tem como objetivo começar
e conservar os projetos necessários, suficientes e sustentáveis.
Métodos ágeis e modelos de maturidade 11

 Nível E — Parcialmente definido


■ Avaliação e melhoria do processo organizacional: define a contribui-
ção dos processos-padrão aos objetivos de negócio e no planejamento
de melhorias.
■ Definição do processo organizacional: foca no estabelecimento e na
manutenção de um conjunto de ativos de processo e de padrões para
atender às necessidades da empresa.
■ Gerência de recursos humanos: tem como objetivo fornecer os re-
cursos e manter suas competências com base nas necessidades da
empresa.
■ Gerência de projetos (evolução dos níveis mais baixos).
 Nível D — Largamente definido
■ Desenvolvimento de requisitos: definição de requisitos do cliente,
do produto e de seus componentes.
■ Projeto e construção do produto: tem como objetivo fazer o projeto,
o desenvolvimento e a implementação para atender aos requisitos.
■ Integração do produto: trata-se de combinar os componentes, fazendo
a integração e tornando o produto consistente.
■ Verificação: verifica se cada serviço ou produto atende aos requisitos.
■ Validação: checa se cada serviço ou produto atende ao uso desejado
quando colocado no ambiente final.
 Nível C — Definido
■ Gerência de decisão: analisa as decisões críticas da gerência.
■ Gerência de riscos: identifica, analisa, trata, monitora e reduz os
riscos no projeto e na empresa.
■ Desenvolvimento para reutilização: identifica oportunidades para o
reúso de ativos na empresa.
 Nível B — Gerenciado quantitativamente
■ Gerência de projetos (evolução dos níveis mais baixos).
 Nível A — Em otimização: esse é o último nível a ser implementado.
■ Atributos de Processo 5.1: trata-se da medição do quanto as alterações
são identificadas na definição e na implantação do processo.
■ Atributos de Processo 5.2: trata-se da medição do quanto as alterações
na definição, na gestão e no desempenho atingiram as metas.
12 Métodos ágeis e modelos de maturidade

Há processos e atributos para cada um desses níveis de maturidade. Eles


indicam onde a unidade da empresa tem que investir esforço a fim de atingir
os objetivos de negócio e do modelo.
Assim como o modelo de maturidade CMMI, há também um receio quanto
à integração do MPS.BR com metodologias ágeis de desenvolvimento de
software. Um dos principais motivos desse receio é a exigência de documen-
tação dos processos, o que, segundo os profissionais, vai contra os princípios
da agilidade. Porém, isso não é verdade, pois os métodos ágeis não são contra
a documentação. O que acontece é uma má interpretação do Manifesto Ágil,
em que consta, apenas, que software em funcionamento deve estar acima
da documentação. O Manifesto se refere a uma documentação excessiva e
desnecessária, que, em vez de ajudar a equipe, pode acabar atrapalhando o
entendimento do projeto e fazendo com que se perca tempo com atividades
desnecessárias. Definitivamente, métodos ágeis NÃO são contra a documen-
tação como um todo.
É possível integrar MPS.BR e agilidade em projetos ágeis sem muita
dificuldade porque, em tese, eles possuem a mesma intenção. Além disso,
é muito fácil encontrar empresas que utilizam metodologias como Extreme
Programming (XP) e Scrum que sejam certificadas no MPS.BR.
Prikladnicki e Magalhães (2010) apresentaram um relato de experiências
em que mostraram os cuidados necessários para realizar essa implementação
respeitando a cultura ágil e satisfazendo as exigências do modelo. O primeiro
passo foi motivar as equipes a se comprometerem com os valores da empresa,
começando a envolver as equipes nas discussões para facilitar a instituciona-
lização. Além disso, os autores destacaram a importância de manter o foco e
evitar o acúmulo de atividades dos membros da equipe e do implementador
do modelo.
Ao implementar o modelo, também é necessário levar em conta as carac-
terísticas da empresa. Quando ela já é acostumada com metodologia ágil,
a mudança para se adaptar a um modelo de maturidade pesa mais. É muito
importante buscar a integração das duas filosofias da forma mais suave pos-
sível, dando pequenos passos e começando as práticas aos poucos. Além
disso, é sensato buscar a compatibilidade dos processos e artefatos já em uso
na empresa. Dessa forma, evita-se a criação de resistência entre os membros
da equipe (PRIKLADNICKI; MAGALHÃES, 2010).
Métodos ágeis e modelos de maturidade 13

Caso a empresa opte por realizar novas contratações e envolver consultoria para
auxiliar no processo de implementação do MPS.BR, é essencial que esse pessoal não
tente alterar os valores da empresa. O ideal é que tente ajustar o modelo com base na
realidade da empresa, não o contrário. Assim, é recomendado procurar empresas de
consultoria que tenham conhecimento suficiente para ajudar na implementação do
modelo em ambientes em que já são utilizadas metodologias ágeis (PRIKLADNICKI;
MAGALHÃES, 2010).

Quanto à documentação, como os modelos de maturidade exigem docu-


mentação bastante detalhada e os métodos ágeis, não, é necessário encontrar
um ponto de equilíbrio para as duas filosofias. Assim, espera-se documentar o
que for realmente necessário para os envolvidos. Quanto à implementação dos
níveis do MPS.BR, deve sempre levar a realidade da empresa em consideração.
Geralmente, a maioria das empresas que tentam implementar o MPS.BR
deseja chegar pelo menos nos níveis G e F, por questões financeiras. Nesse
contexto, Gazoni (2011) realizou um estudo a fim de investigar a compatibi-
lidade entre o modelo e a metodologia ágil Scrum, largamente utilizada nas
empresas. Ao realizar as comparações entre o que a gerência de projetos e de
requisitos do MPS.BR nível G requer e o que o método ágil oferece, o autor
chegou na conclusão resumida no Quadro 2.
14 Métodos ágeis e modelos de maturidade

Quadro 2. Compatibilidade entre requisitos da gerência de projetos e de requisitos do


MPS.BR e o método Scrum

Definir o escopo do trabalho para o projeto. Satisfeito


Utilizando métodos apropriados, dimensionar Não satisfeito
as tarefas e produtos de trabalho do projeto.
Definir o modelo e as fases do Satisfeito
ciclo de vida do projeto.
Com base em dados históricos ou em Parcialmente satisfeito
referências técnicas, estimar o esforço
e o custo para a execução das tarefas
Requisitos de gerência do projeto do MPS.BR nível G

e dos produtos de trabalho.


Estabelecer e manter o orçamento e Não satisfeito
o cronograma do projeto, incluindo a
definição de marcos e pontos de controle.
Identificar e documentar os riscos do Parcialmente satisfeito
projeto e seu impacto, sua probabilidade de
ocorrência e sua prioridade de tratamento.
Planejar os recursos humanos para Satisfeito
o projeto, considerando o perfil e o
conhecimento necessário para executá-lo.
Planejar os recursos e o ambiente de trabalho Satisfeito
necessários para a execução do projeto.
Identificar os dados relevantes do projeto e Não satisfeito
planejar a forma de coleta, de armazenamento
e de distribuição. Estabelecer um mecanismo
para acessá-los, incluindo, se pertinente,
questões de privacidade e segurança.
Com a integração de planos Satisfeito
específicos, estabelecer um plano
geral para a execução do projeto.
Avaliar a viabilidade de atingir as Satisfeito
metas do projeto, considerando as
restrições e os recursos disponíveis.
Se necessário, realizar ajustes.

(Continua)
Métodos ágeis e modelos de maturidade 15

(Continuação)

Quadro 2. Compatibilidade entre requisitos da gerência de projetos e de requisitos do


MPS.BR e o método Scrum

Avaliar a viabilidade de atingir as Satisfeito


metas do projeto, considerando as
restrições e os recursos disponíveis.
Requisitos de gerência do projeto do MPS.BR nível G

Se necessário, realizar ajustes.


Revisar o plano do projeto com Satisfeito
todos os interessados e obter
comprometimento de todos com ele.
Utilizar o plano do projeto para Satisfeito
gerenciá-lo e outros planos que o
afetam e documentar os resultados.
Gerenciar o envolvimento das Satisfeito
partes interessadas no projeto.
Realizar revisões em marcos do projeto, Satisfeito
conforme estabelecido no planejamento.
Estabelecer e tratar com as partes interessadas Satisfeito
os registros de problemas identificados e o
resultado da análise de questões pertinentes,
incluindo dependências críticas.
Estabelecer, implementar e acompanhar Parcialmente satisfeito
ações para corrigir desvios em relação ao
planejamento e para prevenir a repetição dos
problemas identificados até sua conclusão.
Entender, avaliar e aceitar os requisitos, Satisfeito
junto aos fornecedores de requisitos,
utilizando critérios e objetivos.
requisitos do MPS.BR nível G
Requisitos de gerência dos

Obter o comprometimento da equipe Satisfeito


técnica com os requisitos aprovados.
Estabelecer e manter a rastreabilidade Não satisfeito
bidirecional entre os requisitos e
os produtos de trabalho.
Realizar revisões em planos e produtos de Satisfeito
trabalho do projeto, visando identificar e corrigir
inconsistências em relação aos requisitos.
Gerenciar, ao longo do projeto, as Satisfeito
mudanças nos requisitos.

Fonte: Adaptado de Gazoni (2011).


16 Métodos ágeis e modelos de maturidade

Com base nos resultados de Gazoni (2011), é possível perceber que há uma
compatibilidade entre os requisitos de gerência de projetos e da gerência de
requisitos do MPS.BR e o modelo ágil adotado pela empresa. Dessa forma,
ao encontro dos resultados de Oliveira et al. (2007), Boria, Rubinstein e
Rubinstein (2013) e Prikladnicki e Magalhães (2010), trata-se de mais um
estudo que mostra a viabilidade e os potenciais benefícios da junção entre as
duas filosofias. Além disso, foi constatado que essa união pode proporcionar
uma maior agilidade e resposta para certas mudanças no decorrer do projeto.
Muitas são as empresas que adotaram as metodologias ágeis em seus
processos de desenvolvimento no intuito de ter agilidade e flexibilidade para
atender às necessidades dos clientes. Assim, passaram a sentir a necessidade
de implementar modelos de maturidade, como MPS.BR e o CMMI, mas sem
prejudicar a agilidade nos seus projetos. Com agilidade e maturidade implemen-
tadas e trabalhando juntas, é possível melhorar o desempenho organizacional
e garantir prestação de serviços com alto nível de qualidade para os clientes.

BECK, K. et al. Manifesto para desenvolvimento ágil de software. 2001. Disponível em:
https://agilemanifesto.org/iso/ptbr/manifesto.html. Acesso em: 6 set. 2020.
BORIA, J. L.; RUBINSTEIN, V. L.; RUBINSTEIN, A. A história da Tahini-Tahini: melhoria de
processos de software com métodos ágeis e modelo MPS. Brasília: Ministério da Ciência,
Tecnologia e Inovação, 2013.
CARNEGIE MELLON UNIVERSITY. CMMI para desenvolvimento – Versão 1.2. 2006. Dispo-
nível em: https://www.marcusviniciusrodrigues.com.br/LinkClick.aspx?fileticket=rBC
O4hAWwNo%3D&tabid=92&portalid=0&mid=481&language=pt-BR&forcedownloa
d=true. Acesso em: 7 set. 2020.
CHRISSIS, M. B.; KONRAD, M.; SHRUM, S. CMMI for development: guidelines for process
integration and product improvement. London: Pearson, 2011.
FOWLER, M. Maturity model. 2014. Disponível em: https://martinfowler.com/bliki/
MaturityModel.html. Acesso em: 6 set. 2020.
GAZONI, F. E. Análise da compatibilidade entre o modelo Mps.BR nível G e a metodologia de
desenvolvimento Scrum. 2011. 57 f. Trabalho de Conclusão de Curso (Graduação em De-
senvolvimento de Sistemas) — Curso Superior de Tecnologia em Desenvolvimento de
Sistemas, Universidade Tecnológica Federal do Paraná, Medianeira, 2011. Disponível em:
Métodos ágeis e modelos de maturidade 17

http://repositorio.roca.utfpr.edu.br/jspui/bitstream/1/531/1/MD_COADS_2011_2_02.
pdf. Acesso em: 6 set. 2020.
GLAZER, H. et al. CMMI ® or Agile: why not embrace both! 2008. Disponível em: http://
citeseerx.ist.psu.edu/viewdoc/download;jsessionid=A0BB9377FFB7B1994B7E1826A89
9D8A5?doi=10.1.1.1002.8460&rep=rep1&type=pdf. Acesso em: 6 set. 2020.
LARSON, E. W.; GRAY, C. F. Gerenciamento de projetos: o processo gerencial. 6. ed. Porto
Alegre: AMGH, 2016.
KALINOWSKI, M. et al. Mps.BR: promovendo a adoção de boas práticas de engenharia
de software pela indústria brasileira. In: CONGRESO IBEROAMERICANO EN SOFTWARE
ENGINEERING, 13., 2010, Cuenca. Anais […]. Cuenca: CIBSE, 2010.
MELO, C. de O. et al. Métodos ágeis no Brasil: estado da prática em times e organizações.
2012. Disponível em: http://www.agilcoop.org.br/files/metodos_ageis_brasil_es-
tado_da_pratica_em_times_e_organizacoes.pdf. Acesso em: 6 set. 2020.
MINIKIEWICZ, A. CMMI® and agile development: a binary choice? 2017. Disponível em: ht-
tps://documentcenter.eventpedia.us/Events/8cc1bfbb-4b42-482d-ae0e-919807a67454/
Documents/30b3d49a-f02d-42f7-95aa-b3b59e37f515.pdf. Acesso em: 6 set. 2020.
O QUE é o MPS.br? Redação Oficina, 2012. Disponível em: https://www.oficinadanet.
com.br/artigo/desenvolvimento/melhoria-de-processos-do-software-brasileiro--mpsbr.
Acesso em: 6 set. 2020.
PRIKLADNICKI, R.; MAGALHÃES, A. L. C. C. Implantação de modelos de maturidade com
metodologias ágeis: um relato de experiências. 2010. Disponível em: https://www.
softex.br/wp-content/uploads/2013/10/6_WAMPS-2010_Implanta%C3%A7%C3%A3o-
de-Modelos-de-Maturidade-com-Metodologias-%C3%81geis-Um-Relato-de-
Experi%C3%AAncias1.pdf. Acesso em: 6 set. 2020.
ROVAI, R. L. Metodologias inovadoras para gestão de projetos: modelo referencial para
implantação da ITILV3 através da metodologia PRINCE2 – estudo de caso. Revista de
Gestão de Projetos, v. 4, nº. 2, p. 252–270, 2013.
SILVA, P. R. da; SANTOS, M. R. dos; SHIBAO, F. Y. Desenvolvimento de softwares: CMMI
e metodologias ágeis. Revista Livre de Sustentabilidade e Empreendedorismo, v. 4, nº. 3,
p. 157–184, 2019.
SOFTWEX. MPB.BR: Melhor de processo do software brasileiro. 2013. Disponível em:
http://www.softex.br/wp-content/uploads/2013/07/MPS.BR_Guia_de-Avaliacao_2013.
pdf. Acesso em: 7 set. 2020.

Leituras recomendadas
CELESTINO, A. L. Mps.BR e desenvolvimento ágil: é possível conciliá-los? 2013. Disponível
em: https://www.profissionaisti.com.br/mps-br-e-desenvolvimento-agil-e-possivel-
concilia-los/. Acesso em: 6 set. 2020.
18 Métodos ágeis e modelos de maturidade

GLAZER, H. Love and marriage: CMMI and agile need each other. The Journal of Defense
Software Engineering, p. 29–34, jan./fev. 2010. Disponível em: https://pdfs.semantics-
cholar.org/2ff1/e6acb7834c42fb4b1db955e82c35e77d39d4.pdf. Acesso em: 6 set. 2020.
OLIVEIRA, A. C. G. de; GUIMARÃES, F. A.; FONSECA, I. de A. Utilizando metodologias
ágeis para atingir MPS: BR nível F na Powerlogic. Revista Visão Ágil, v. 3, 2007.
SILVA, F. S. et al. Using CMMI together with agile software development: a systematic
review. Information and Software Technology, v. 58, p. 20–43, 2015. Disponível em: https://
romisatriawahono.net/lecture/rm/survey/software%20engineering/Software%20
Process%20Improvement/Silva%20-%20CMMI%20and%20Agile%20-%202015.pdf.
Acesso em: 7 set. 2020.

Os links para sites da web fornecidos neste capítulo foram todos testados, e seu fun-
cionamento foi comprovado no momento da publicação do material. No entanto, a
rede é extremamente dinâmica; suas páginas estão constantemente mudando de
local e conteúdo. Assim, os editores declaram não ter qualquer responsabilidade
sobre qualidade, precisão ou integralidade das informações referidas em tais links.
Dica do professor
Atualmente, as organizações que utilizam metodologias ágeis têm procurado implementar modelos
de maturidade, tendo como objetivo principal assegurar aos seus clientes a prestação de serviços
com alto nível de qualidade. Além disso, com essa implementação, é possível organizar melhor o
desenvolvimento de software, possibilitando, assim, um maior controle e atingindo uma melhor
qualidade nos seus produtos sem perder, no entanto, a agilidade nos seus projetos.

Nesta Dica do Professor, conheça como uma fábrica de software realizou a implementação do Nível
F do MPS.BR utilizando Scrum.

Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.
Exercícios

1) O uso de metodologias ágeis tem se tornado popular entre as empresas de software, devido
à sua flexibilidade e interatividade. No entanto, apesar de as organizações adotarem a
agilidade no processo de desenvolvimento de seus produtos, elas passaram a desejar a
integração com modelos de maturidade, a fim de completar algumas lacunas deixadas pelas
metodologias ágeis. Nesse contexto, é possível afirmar:

I. as empresas passaram a sentir necessidade de adotar a maturidade para adequar seus


processos;

II. os desenvolvedores precisam documentar tudo a partir da adoção de modelos de


maturidade na empresa;

III. com os modelos de maturidades, as empresas buscam otimizar o desempenho


organizacional;

IV. equipes ágeis não conseguem entregar o produto rapidamente com a implementação
desses modelos.

Sobre essas afirmações, é correto o que se afirma em:

A) I e II, apenas.

B) II e III, apenas.

C) III e IV, apenas.

D) I e III, apenas.

E) I e IV, apenas.

2) O MPS.BR é um modelo de qualidade de processo criado pela Softex, cujo intuito é melhorar
a capacidade de desenvolvimento de software nas empresas brasileiras. Para isso, as
organizações que contam com métodos ágeis, como XP e Scrum, visam a implementar esse
processo brasileiro para completar as lacunas da metodologia ágil. Sobre esse modelo de
processo, é possível afirmar:

A) tem cinco níveis de maturidade definidos para os processos das empresas.


B) o Nível D (parcialmente definido) tem três processos, e um deles é a gerência de decisão, que
analisa as decisões críticas da gerência.

C) no processo de gerência de recursos humanos (Nível E), espera-se fornecer os recursos e


manter as competências com base nas necessidades da empresa.

D) ao adotar o MPS.BR, o primeiro nível a ser implementado deve ser o Nível A.

E) no processo de validação, é verificado se cada serviço ou produto atende aos requisitos


definidos.

3) O MPS.BR (Melhoria do Processo de Software Brasileiro) é um programa da Softex com


apoio do Ministério da Ciência, Tecnologia, Inovações e Comunicações (MCTIC). Com início
em dezembro de 2003, ele tem como objetivo melhorar a capacidade de desenvolvimento
de software, serviços e práticas de gestão de RH na indústria de Tecnologia da Informação e
Comunicação (TIC). Em qual nível é esperado que as equipes ágeis possam ter uma garantia
da qualidade, na qual assegura que os produtos de trabalho e os processos sejam executados
conforme o planejado?

A) Nível B (gerenciado quantitativamente).

B) Nível C (definido).

C) Nível D (largamente definido).

D) Nível E (parcialmente definido).

E) Nível F (gerenciado).

4) O CMMI (Capability Maturity Model Integration) foi criado pelo SEI (Software Engineering
Institute), órgão integrante da Universidade Carnegie Mellon, dos Estados Unidos. Trata-se
de um modelo voltado para a capacidade de maturidade de processos de software e é
largamente utilizado no mundo todo. Apesar de muita descrença quanto à sua junção, ele
tem sido muito utilizado com métodos ágeis. Sobre o uso do CMMI com agilidade, é possível
afirmar:

I. tem sete níveis de maturidade, correspondendo ao desempenho da organização em uma


disciplina específica ou um conjunto delas;

II. para alcançar um determinado nível, uma organização deve cumprir todas as metas da
área de processo, as quais são relacionadas à melhoria organizacional;
III. no Nível 2, há processos imprevisíveis e pobremente controlados na empresa;

IV. tem o benefício de promover a prioridade de aprendizado.

Sobre as afirmações, é correto o que se afirma em:

A) I e II, apenas.

B) II e III, apenas.

C) III e IV, apenas.

D) I e III, apenas.

E) II e IV, apenas.

5) O Capability Maturity Model Integration (CMMI) ajuda as organizações a agilizarem a


melhoria de processos, incentivando uma cultura produtiva e eficiente, diminuindo os riscos
no desenvolvimento de software, produtos e serviços. Por isso, tem sido implementado em
conjunto com as metodologias ágeis. Com isso, espera-se que o CMMI traga valor agregado
ao completar a agilidade com seus processos mais rigorosos. Qual dos níveis a
seguir representa a maturidade de uma empresa na qual a qualidade e o desempenho do
processo são compreendidos estatisticamente e são gerenciados ao longo da vida dos
projetos ágeis?

A) Nível 1.

B) Nível 2.

C) Nível 3.

D) Nível 4.

E) Nível 5.
Na prática
Hoje em dia, ainda há muita descrença sobre a utilização, em conjunto, das metodologias ágeis e
dos modelos de maturidade. Isso porque a grande maioria das pessoas acredita que modelos de
maturidade ferem os princípios ágeis, exigindo uma grande quantidade de artefatos e processos, o
que atrapalharia a eficácia da agilidade e sobrecarregaria as equipes de desenvolvimento de
software. No entanto, há diversos estudos comprovando que a junção pode mais do que dar certo:
a agilidade mostra, na prática, como fazer uma atividade, e os modelos de maturidade direcionam o
que fazer, além de ajudarem a implantar, sustentar e melhorar de forma contínua a implantação ágil
em qualquer empresa.

Veja, Na Prática a seguir, a estratégia adotada por uma indústria de software ao enfrentar um
desafio para melhorar seu desempenho e aumentar sua qualidade das entregas.

Conteúdo interativo disponível na plataforma de ensino!


Saiba +
Para ampliar o seu conhecimento a respeito desse assunto, veja as sugestões do professor:

Webinar Softex no âmbito do Programa MPS.BR


Este webinar da Softex (Associação para Promoção da Excelência do Software Brasileiro) retrata o
uso da agilidade com DevOps, Scrum e MPS.

Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.

Metodologias ágeis e DevOps são suficientes para o sucesso de


projetos?
Esta notícia apresenta boas práticas de engenharia de software, incluindo a indicação de adoção de
modelos de maturidade.

Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.

Uma análise sobre CMMI no contexto de metodologias ágeis


Neste artigo, são apresentadas as metodologias ágeis Scrum e XP compatíveis com áreas do CMMI.

Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.
Explorando a gestão de fornecedores no contexto do CMMI-
DEV e metodologias ágeis: a identificação de um gap
Este artigo apresenta uma "revisão sistemática da literatura, com o intuito de explorar o atual
estado da investigação sobre a relação entre Metodologias Ágeis e CMMI-DEV, no contexto da
gestão do acordo de fornecedores" (SANTOS et al., 2017, p. 14).

Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.

Novo modelo do CMMI traz mais benefícios às empresas para


melhoria nos processos
Esta notícia apresenta a versão 2.0 do CMMI, contemplando conceitos ágeis e a metodologia
Scrum.

Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.

Agile with Scrum and CMMI® working together to create true


organizational agility
Neste webinar, em inglês, especialistas compartilham seus insights ao perceberem um desempenho
ágil aprimorado com o CMMI.

Aponte a câmera para o código e acesse o link do conteúdo ou clique no código para acessar.

Você também pode gostar