Melhoria de Processos numa empresa de desenvolvimento de software
Por: Miquéias Machado • 19/8/2018 • Artigo • 3.521 Palavras (15 Páginas) • 367 Visualizações
Melhoria de processos numa empresa de desenvolvimento de software
Diogo Pinheiro, Gabriel Barth, Jaqueline Puntel, Milene Martini, Miquéias Machado
Universidade do Vale do Rio dos Sinos (UNISINOS)
Resumo. Este artigo relata um estudo de caso visando a melhoria de processos em uma empresa de tecnologia. O estudo foi feito no sentido de diagnosticar o nível de capacidade atual das duas áreas de processo da organização, sendo elas Gerência da Configuração e Desenvolvimento de Requisitos, baseado nas práticas sugeridas no modelo de melhoria de processos CMMi. Com esse diagnóstico, pode-se identificar ações de melhoria para elevar em um o nível de capacidade desses processos, visto que atividades inseridas no processo de desenvolvimento de software podem melhorar significativamente a qualidade dos produtos gerados.
Palavras-chave: Melhoria de processos, CMMi, Nível de Capacidade
1. Introdução
Avanços tecnológicos, maior concorrência no mercado, a importância cada vez maior da informação no mundo e a necessidade do software em todas as áreas de negócio estão gerando uma dependência crítica dos sistemas computadorizados para as organizações e este cenário tem desencadeado mudanças no processo de desenvolvimento de programas de computador (Rincon, 2009).
Atualmente, os clientes possuem uma participação mais ativa no processo de desenvolvimento de software, exigem cada vez mais qualidade nos produtos gerados, custos e prazos menores, e empresas mais qualificadas e capacitadas para o desenvolvimento de sua solução (Magalhães, 2008).
Para alcançar essa qualificação exigida pelos clientes e para vencer a concorrência austera, as empresas vêm procurando adequar seu processo de desenvolvimento de software às boas práticas de modelos referência, tais como MR-MPS (SOFTEX, 2012) e o CMMi (CMMi v1.3, 2010) a fim de obter melhores resultados na qualidade de seu processo e produto final (Santos, 2011).
Neste contexto, este artigo tem por finalidade identificar oportunidades de melhoria nos processos de Gerência da Configuração e Desenvolvimento de Requisitos de uma organização e propor soluções para as mesmas. Para isto, antes será feito um diagnóstico inicial que permitirá saber em qual nível de capacidade as áreas de processo da organização se encontram atualmente.
2. Modelos de Melhoria de Processos
Modelos de melhoria de processos são modelos de referência que as organizações podem seguir para alcançar um nível de qualidade para o seu processo de desenvolvimento de software. Visto que a qualidade do processo impacta na qualidade do produto, muitas empresas procuram se adequar a esses modelos (Weber, 2006).
Alguns exemplos de modelos são: CMMi[1], MR-MPS[2], ISO/IEC 15504[3].
2.1 ISO/IEC 15504
A ISO/IEC 15504 foi desenvolvida pela necessidade de padrões para avaliação de processos de software (Maciel, 2008).
Segundo Salviano (Salviano, 2003) a ISO/IEC 15504 organiza e classifica as melhores práticas em duas dimensões: categorias de processo e níveis de capacidade. Seu principal objetivo é a melhoria e a avaliação dos processos, sendo que três elementos básicos devem ser precisamente definidos:
- Os processos: devem ser verificados por um avaliador competente, segundo os
requisitos previstos na norma;
- Uma escala de medida: deve ter como referência um modelo de avaliação de
processo compatível;
- Um método de medição: deve ser realizado seguindo um processo compatível.
A ISO/IEC 15504 define 6 níveis de capacidade, que são utilizados para avaliar como um determinado processo é realizado em uma organização (Maciel, 2008):
- Nível 0 – Processo incompleto: O processo não está implementado ou há falha na obtenção das saídas do processo. Nesse nível existem poucas ou nenhuma evidência de qualquer realização sistemática de qualquer atributo de processo definido.
- Nível 1 – Processo executado: O processo implementado atinge as saídas de processo. Os produtos de trabalho são produzidos e suportam o atingimento das saídas dos processos.
- Nível 2 – Processo gerenciado: O processo anteriormente descrito agora é executado de maneira gerenciada (planejada, acompanhada, verificada e ajustada), baseada em objetivos definidos.
- Nível 3 – Processo estabelecido: O processo gerenciado anteriormente descrito agora é executado usando um processo definido baseado em princípios de engenharia.
- Nível 4 – Processo previsível: O processo anteriormente estabelecido agora é executado de forma consistente dentro de limites definidos para atingir as saídas do processo.
- Nível 5 – Processo em optimização: O processo anteriormente descrito como previsível muda agora dinamicamente e se adapta para atingir objetivos de negócio relevantes e atuais, de forma eficiente.
2.2 CMMi
O modelo escolhido como referência para este trabalho foi o CMMI (Capability Maturity Model Integration), desenvolvido pelo SEI, com o intuito de ser um modelo único que irá definir/melhorar os processos da empresa adaptando-os a realidade da mesma. O processo do CMMI possui a finalidade de unir as ferramentas, métodos e as pessoas e indica como trabalhar de uma forma mais inteligente e padronizada cobrindo todo o ciclo de vida de desenvolvimento do software desde o seu inicio até a entrega e manutenção (CMMI v1.3, 2010).
O objetivo para implementação do modelo é ajudar a definir os objetivos e prioridades de melhoria dos processos da empresa, fornecendo guias para assegurar que os processos serão instáveis, capazes e maduros. O modelo atende as expectativas de melhoria da empresa de duas formas: Com a representação por estágios, sendo que cada nível possui diversas áreas de processo (Process Areas - PA), cada PA é encontrada em um único nível, com a representação por estágios a empresa irá atingir níveis de maturidade. Já a representação contínua cada PA é considerada isoladamente não estando alocadas em um nível de maturidade em particular, com ela a empresa irá atingir níveis de capacidade (Barbosa, 2006).
...