Plano de gerenciamento de qualidade
Histórico de Versão
Versão | Data | Descrição | Nome |
---|---|---|---|
1.0 | 27/09/2019 | Abertura do documento | William Almeida |
Introdução
Esse documento tem como finalidade apresentar as ferramentas, métricas e o planejamento de qualidade de produto. De acordo com a ISO 9000, a qualidade está relacionada com o grau no qual um conjunto de características inerentes satisfaz aos requisitos.
Planejamento
Buscando que o código tenha uma boa qualidade, serão usadas algumas métricas iniciais que estão relacionadas com a qualidade, como conformidade com os guias de estilos das linguagens, cobertura de testes unitários, nível de manutenibilidade, entre outras características.
Métricas
Métrica | Bom | Regular | Ruim |
---|---|---|---|
Cobertura de testes unitários | Acima de 90% | De 75% a 90% | Abaixo de 75% |
Manutenibilidade | A e B | C | D ou F |
Quebras no padrão de código | 0 a 5 | 6 a 10 | Acima de 11 |
Duplicação de código | Abaixo de 2% | De 2% a 4% | Acima de 4% |
Tamanho de métodos | Abaixo de 25 linhas | De 25 a 40 linhas | Acima de 40 linhas |
Monitoramento
O monitoramento da qualidade do código será feito ao final de cada sprint com auxílio das ferramentas CodeClimate e Coveralls. Após a análise dos resultados, se necessários serão montados planos de melhorias para que as possíveis falhas sejam corrigidas.
Ferramentas
-
Code Climate: O Code Climate permite o monitoramento de algumas métricas importantes do software, como a duplicação, complexidade, quantidade de linhas, e nível de manutenibilidade. Será usado tanto no frontend quanto no backend.
-
Unittest: O unittest é uma ferramenta padrão de testes unitários do python que foi inspirado no JUnit. Ele será usado no backend e permite a automatização dos testes.
-
Karma: O Karma(com auxílio do Jasmine) é uma ferramenta que possibilita a execução de testes unitários no Angular. Será a ferramenta padrão de testes do frontend.
-
Coveralls: O coveralls é uma ferramenta que possibilita o monitoramento dos testes unitários, e permite a visualização dos trechos de códigos que estão cobertos por testes e a porcentagem de código coberto. Será usado tanto no backend quanto no frontend.
-
Travis CI: O Travis CI é uma ferramenta que permite a criação de builds dos testes unitários e coleta de resultados dos mesmos. Será usado tanto no frontend quanto no backend.