Esse artigo faz parte da revista Engenharia de Software 14 edição especial. Clique aqui para ler todos os artigos desta edição

 

Metodologias Ágeis

Melhoria de Processo de Software no Desenvolvimento Ágil

 

De que trata o artigo:

Este artigo apresenta o conceito de melhoria de processo de software e sua aplicação em aplicações que utilizam abordagens de metodologias ágeis.

Para que serve:

Serve como fonte de exemplos de aplicações da utilização de Melhoria de Processo de Software (MPS) em ambientes ágeis e entender sua diferença em relação ao MPS tradicional.

Em que situação o tema é útil:

A procura pelo conhecimento e aplicação de metodologias ágeis vem aumentando. Desta forma, este artigo tem a finalidade de prover (i) um melhor entendimento de como e quando realizar um processo MPS; e (ii) apresentar etapas a serem seguidas e resultados esperados tratados através do uso de técnicas utilizadas nas metodologias ágeis para iniciativas de MPS.

 

O surgimento das metodologias ágeis foi de fato um importante marco na indústria do desenvolvimento de software. Algumas definições, disponíveis na literatura [Schuh 2004; Mnkandla & Dwolatzky 2004], tratam o tema como algo revolucionário, sendo considerada uma nova disciplina de engenharia que modificava os valores do processo de desenvolvimento de software do mecânico (orientado a processos e utilizando regras da ciência) para o orgânico (dirigido por questões sobre pessoas e suas interações).

De uma forma geral, a apresentação destas metodologias trouxe mudanças culturais em vários aspectos no desenvolvimento de software, a exemplo da proposição de técnicas e procedimentos, até a contribuição na realização da Melhoria de Processo de Software (MPS).

Baseado nesse contexto de mudança cultural, uma nova forma para a realização da Melhoria de Processo de Software era necessária sem que fosse tirado o foco do “orgânico”, valorizando ainda mais as pessoas e suas competências. Neste artigo será mostrado como é proposto o MPS nas metodologias ágeis e sua diferença do MPS tradicional.

Histórico

Para melhor entendermos o contexto do MPS em ambientes tradicionais, devemos entender o que aconteceu com o rumo que a Qualidade de Software tomou a partir daquela reunião da OTAN em 1968 onde o termo “Engenharia de Software” foi utilizado pela primeira vez por F. L. Bauer.

Naquela reunião foi utilizado também o termo “Crise do Software” para definir a situação em que a indústria do software atravessava naquele momento. E a crise foi atribuída à complexidade de desenvolver sistemas cada vez maiores, bem como à falta de gerenciamento no processo de desenvolvimento de software.

A partir daí, “engenheiros de software” tentaram imitar a engenharia convencional, para resolver problemas de qualidade e falhas em sistemas de informação. Uma quantidade significativa de experiência foi obtida através de processos de garantia da qualidade praticados na indústria de manufatura e essa adaptação para a indústria de software foi, em alguns casos, um fracasso e, em outros, um sucesso, como, por exemplo, a utilização de controle estatístico de processo (base do Six Sigma) para avaliação de processos de software.

 Ainda no fim da década de 1980, o controle de qualidade existente na indústria de software era centrado no produto final e com utilização de métodos corretivos em inspeções no fim da linha de produção, e se mostrava pouco efetivo para a solução de problemas gerenciais como prazos e custos.

 No início da década de 1990, o mercado substituía aquele controle de qualidade pela Garantia da Qualidade com um foco centrado no processo e que utilizava auditorias durante todo o ciclo de vida de desenvolvimento. A partir daí, foram surgindo normas (ISO 9000-3, ISO 15504, ISO 12207), padrões (IEEE 1074, IEEE 1298) e Modelos (SW-CMM, CMMI) para Qualidade de Software.

A partir daí começaram a surgir os modelos para Melhoria de Processos de Software. A maioria é baseada no PDCA (Plan-Do-Check-Action) de Eduard Deming. Os modelos para MPS mais utilizados foram o IDEAL [Mcfeeley 1996], utilizado em conjunto com o SW-CMM, e o Modelo DMAIC utilizado pelo Six Sigma.

Com o advento da Garantia da Qualidade, a indústria de software passou a ser centrada em documentação e orientada a planejamento, e essa forma de desenvolvimento de software ficou conhecida como modelo tradicional [Boehm 1988].

 Nesse contexto, a Melhoria do Processo de Software pode ser genericamente estereotipada com as seguintes características:

...

Quer ler esse conteúdo completo? Tenha acesso completo