GQS - Garantia de Qualidade de Software

O propósito da Garantia de Qualidade de Software é fornecer à gerência a visibilidade da eficácia do processo sendo utilizado pelo projeto de desenvolvimento de software e da qualidade dos artefatos que estão sendo criados.

É o exame minucioso de um artefato de software ou estado do projeto com a finalidade de determinar se há algum desvio com relação aos padrões, diretrizes, especificações, procedimento e planos aprovados, e para recomendar melhorias. As revisões e auditorias são aplicadas em vários pontos durante o desenvolvimento e servem para descobrir defeitos enquanto estes ainda são relativamente baratos para serem encontrados e tratados.

Através da Garantia de Qualidade de Software muita informação pode ser conseguida par beneficiar a organização, no entanto, o papel e as atividades do grupo de GQS precisam estar bem definidos antes de se iniciar o trabalho, pois muitas vezes este grupo é visto pelos desenvolvedores como um grupo que trará mais burocracias do que ajuda. 

Um ponto importante que ajuda neste trabalho é ter procedimentos, padrões, métodos e ferramentas de engenharia de software estabelecidos antes de iniciar os procedimentos formais de garantia de qualidade. Estes serão a base para as revisões e auditorias do grupo de GQS.

As questões de não conformidade verificadas pelo GQS são primeiramente tratadas dentro do projeto e, se possível, resolvidas ali. Os casos que não forem resolvidos nessa instância são conduzidos pelo grupo de GQS para uma instância de gerenciamento apropriada.

Esta ACP cobre as prática do grupo de GQS. As práticas que identificam as atividades específicas e artefatos, que o grupo de GQS revê ou audita, estão geralmente contidas na descrição da característica comum Verificação da Implementação das outras ACPs.

 

Metas 

Planejar atividades de GQS

Verificar objetivamente a conformidade das atividades e dos artefatos de software com os padrões, procedimentos e requisitos aplicáveis

Informar aos grupos e às pessoas envolvidas quanto às atividades e resultados de GQS

Encaminhar à gerência sênior todas as questões de não-conformidade que não possam ser resolvidas no âmbito do projeto de software 

 

Compromissos

1. Seguir uma política organizacional de GQS. Essa política especifica que:

A função de GQS está inserida em todos os projetos de software 

O grupo de GQS possui um canal de comunicação com a gerência sênior que é independente do gerente de projeto, do grupo de engenharia de software do projeto e de outros grupos relacionados ao software, como por exemplo, gerência de configuração de software e suporte à documentação

Organizações precisam determinar a estrutura organizacional necessária para dar suporte às atividades que requerem independência, tal como GQS, no contexto das suas metas estratégicas de negócio e do ambiente de negócio. A independência deve:

- Dar às pessoas que desempenham o papel de GQS a liberdade organizacional para serem os "olhos e ouvidos" da gerência sênior no projeto de software 

- Evitar que as pessoas que desempenham o papel de GQS tenham o seu desempenho avaliado pelos gerentes dos projetos de software, cujos projetos estejam sendo examinados

- Dar à gerência sênior a confiança de que estão sendo relatadas informações objetivas a respeito dos produtos e processos do projeto de software 

A gerência sênior revisa periodicamente os resultados e atividades de GQS

 

Habilitações

1. Ter um grupo de GQS

2. Ter recursos e fundos disponíveis para GQS

3. Ter membros do grupo de GQS treinados em suas atividades

4. Ter membros do projeto orientados sobre o grupo de GQS. Os membros do projeto de software recebem orientação acerca do papel, responsabilidades, autoridade e valor do grupo de GQS

 

Padrões

Plano CGS

Conteúdo:

As responsabilidades e autoridades do grupo de GQS

Os recursos requeridos para o grupo de GQS, incluindo pessoal, ferramentas e facilidades

O cronograma e fundos para atividades do grupo de GQS do projeto

A participação do grupo de GQS em estabelecer o plano de desenvolvimento de software, padrões e procedimentos para o projeto

Avaliações a serem realizadas pelo grupo de GQS. Exemplos:

- O software operacional e de suporte

- Os artefatos entregues ao cliente/usuário ou de uso interno

- Os produtos de software e documentos

- As atividades de desenvolvimento e verificação de produtos (ex. execução de casos de teste)

- As atividades realizadas (procedimentos) para criar um produto

As auditorias e revisões serem conduzidas pelo grupo de GQS

Os padrões e procedimentos de projeto a serem usados como base para revisões e auditorias do grupo de GQS

Os procedimentos (ou referências para outros documentos onde estes estejam descritos) para documentar e acompanhar questões de não-conformidade até sua completa resolução

Os documentos que o grupo de GQS é solicitado a produzir

O método e freqüência de fornecer feedback acerca das atividades de GQS ao grupo de engenharia de software e outros grupos relacionados ao software .

 

Atividades

1. Preparar plano de QGS para o projeto de software de acordo com um procedimento documentado. Esse procedimento especifica que o plano de GQS é:

- Desenvolvido nos estágios preliminares e em paralelo ao planejamento global do projeto

- Revisado pelos grupos e indivíduos envolvidos

2. Executar atividades de acordo com o plano de GQS

3. Fornecer consulta e realizar revisões do plano do projeto de software, dos procedimentos e dos padrões com relação a:

- Conformidade com a política organizacional

- Conformidade com padrões e requisitos impostos externamente, por exemplo padrões exigidos pela declaração de trabalho
- Padrões que são apropriados para o uso pelo projeto

- Tópicos que devem ser abordados no plano de desenvolvimento de software 

- Outras áreas de conformidade designadas pelo projeto.

4. Revisar atividades de engenharia de software para verificar o seu cumprimento. Os desvios (afastamento das normas, planos, padrões, procedimentos, características ou requisitos que estejam sendo analisados) são identificados, documentados e acompanhados até sua resolução 

- As correções são verificadas

5. Realizar auditoria em artefatos de software 

- Os produtos de software a serem entregues são avaliados antes de serem entregues para o cliente

- Os produtos de software são avaliados com relação aos padrões, procedimentos e requisitos contratuais indicados para o software 

- Os desvios são identificados, documentados e avaliados até a sua resolução 

- As correções são verificadas

6. Relatar resultados ao grupo de engenharia de software 

7. Documentar e tratar desvios identificados nas atividades e nos artefatos de software, de acordo com um procedimento documentado. Este procedimento especifica que:

- Desvios do plano de desenvolvimento de software e dos procedimentos e padrões designados para o projeto são documentados e resolvidos com os respectivos líderes de tarefas de software, gerentes de software ou gerente de projeto, quando possível

- Desvios do plano de projeto de software e dos procedimentos e padrões designados para o projeto que não foram solucionados com os líderes de tarefas de software, gerentes de software ou gerente de projeto são documentados e apresentados para o gerente sênior designado para resolver itens de não-conformidade

- Os itens de não-conformidade que foram apresentados para o gerente sênior são periodicamente revisados até serem solucionados

- A documentação dos itens de não-conformidade é gerenciada e controlada

8. Revisar atividades do grupo de GQS com o GQS do cliente

 

Medição e Análise

1. Definir e utilizar medições que determinem o custo e o estado de progresso no cronograma das atividades de GQS. Exemplo de medições:

- Alcance dos marcos de acompanhamento de progresso de projeto para atividades do grupo de GQS, comparadas como o plano de GQS

- Trabalho concluído, esforço despendido e fundos gastos nas atividades de GQS, comparadas como o plano de GQS

- Número e artefatos auditados e de atividades revisadas, comparadas com o plano de GQS

 

Verificação da Implementação

1. Revisar atividades de GQS - gerência sênior

2. Revisar atividades de GQS - gerente de projeto

3. Revidar atividades e artefatos de GQS - especialistas independentes

 

Recomendações

Treinamento

Para os membros do grupo de GQS :

- Práticas e habilidades de engenharia de software 

- Papéis e responsabilidades do grupo de engenharia de software e de outros grupos relacionados a software 

- Padrões, procedimentos e métodos para projeto de software 

- Domínio da aplicação do projeto de software 

- Objetivos, procedimentos e métodos da GQS

- Envolvimento do grupo de GQS nas atividades de software 

- Uso efetivo de métodos e ferramentas

- Comunicação interpessoal

Para os membros do projeto de software :

- Orientação no papel, responsabilidades, autoridade e valor do grupo de GQS

Ferramentas

- Sistemas de gerência de banco de dados

- Planilhas eletrônicos

- Ferramentas de medição

- Ferramentas de acompanhamento da evolução de artefatos

- Pacotes de rotinas estatísticas

- Ferramentas de auditoria

 

Produtos Gerenciados e Controlados

Plano de GQS

Documentação dos itens que não estão em conformidade com as respectivas exigências

 

Procedimentos documentados

Atividade 1 - Preparar plano de GQS

Atividade 7 - Documentar e tratar desvios