O ciclo de vida de um produto de software apresenta atributos que são influenciados uns pelos outros. O processo influencia no produto, que por sua vez influenciará na qualidade em uso. Fazendo o caminho inverso, há uma dependência entre estas características. A qualidade em uso depende da qualidade do produto, que depende a qualidade do processo de desenvolvimento. Assim, percebe-se a importância de um foco constante na qualidade do processo de software, pois ele garantirá uma padronização das atividades, das práticas e dos artefatos.
É comum parar e ficar pensando se é realmente necessária a prática da padronização através de um processo. Por que a padronização dessas práticas é tão importante? A resposta parece simples. Objetiva. A padronização força a reflexão sobre as práticas, que estão sendo desempenhadas pela equipe do projeto, e somadas a isso, a definição expressa problemas no processo e facilita a identificação dos pontos de melhoria.
Qualidade no CMMI
O foco na qualidade é tão importante que o CMMI-dev definiu uma Área de Processo (PA) no nível 2 (Gerenciado) do Modelo de Maturidade, denominada Garantia da Qualidade de Processo e Produto. O propósito principal dela é “Munir a equipe e a gerência com uma visão clara sobre os processos e seus produtos de trabalho associados”. Além disso, define dois grupos e práticas específicas, são elas:
- Avaliar Objetivamente processos e produtos de trabalho
- Fornecer um entendimento objetivo
Qualidade no MPS-BR
Assim como o CMMI, o MPS-BR define níveis de maturidade de uma organização. Logo, o nível F (Gerenciado) define algumas práticas que devem ser seguidas para garantir a qualidade dos produtos desenvolvidos. Entre elas está o processo de Garantia da Qualidade (GQA) que tem como principal propósito “garantir que os produtos de trabalho e a execução dos processos estão em conformidade com os planos e recursos predefinidos”. Assim, para atingir este propósito, o MPS-BR define alguns resultados esperados para este processo, são eles:
- A aderência dos produtos de trabalho aos padrões, procedimentos e requisitos aplicáveis é avaliada objetivamente, antes dos produtos serem entregues e em marcos predefinidos ao longo do ciclo de vida do projeto;
- A aderência dos processos executados às descrições de processo, padrões e procedimentos é avaliada objetivamente;
- Os problemas e as não-conformidades são identificados, registrados e comunicados;
- Ações corretivas para as não-conformidades são estabelecidas e acompanhadas até as suas efetivas conclusões. Quando necessário, o escalamento das ações corretivas para níveis superiores é realizado, de forma a garantir sua solução.
Qualidade na ISO/IEC 9126
Esta norma trata especificamente sobre os atributos de qualidade de software e possui uma abordagem que facilita o entendimento das características que afetam diretamente a qualidade. Ela se divide em 4 partes, como subconjuntos da mesma.
- 9126-1: Modelo de Qualidade
- 9126-2: Métricas Externas
- 9126-3: Métricas Internas
- 9126-4: Métricas de Qualidade em Uso
Um detalhamento maior sobre a norma ISO/IEC pode ser encontrado nas referências deste artigo.
Conclusão
Por fim, quando há foco na qualidade, há um pensamento contínuo em melhorar o processo de produção/desenvolvimento dos produtos. O grande benefício de ter foco na qualidade do processo, é que o resultado estará expresso na qualidade dos produtos desenvolvidos a partir dele.
Referências
- ISO/IEC 9126
- Análise dos Impactos na Qualidade De Software em Instituições Financeiras Segundo a Norma ISO/IEC 9126 na Adoção das Práticas de Testes do Modelo CMMI
- Página principal do MPS-BR
- Melhoria de Processos do Software Brasileiro
- CMMI
- CMMI for Development, Version 1.2