O documento discute a qualidade de software e as premissas do desenvolvimento de software tradicional, como linearidade e especialização, que levam a custos mais altos de alteração. Também aborda como a qualidade pode falhar devido à falta de automatização de testes, pressão por prazos e ausência de comunicação. A qualidade é importante para tornar o ciclo de desenvolvimento confiável e minimizar retrabalho.
2. QUALIDADE
O desenvolvimento
de software deve
empregar
mecanismos para
garantir que os
esforços sejam
devidamente
direcionados a um
objetivo comum.
4. PREMISSAS DE DESENVOLVIMENTO DE
SOFTWARE TRADICIONAL
Linearidade (seqüencial)
Determinismo (base de resultados)
Especialização
Foco na execução
Crescimento exponencial do custo de
alteração (indústria típica)
A aceitação desta premissa tem como
conseqüência natural uma busca por processos
determinísticos, já que estes prometem menos
alterações e maior previsibilidade.
5. RESULTADOS DO DESENVOLVIMENTO
TRADICIONAL
Bem sucedidos – O projeto é finalizado no prazo, dentro do orçamento e contendo
todas as funcionalidades especificadas.
Comprometidos – O projeto é finalizado e um software operacional é entregue,
porém o orçamento e o prazo ultrapassam os limites estipulados, e, além disso,
o software entregue possui menos funcionalidades do que o especificado.
Fracassados – O projeto é cancelado em algum momento durante
o desenvolvimento.
7. QUALIDADE: CRITÉRIO DE FINALIZAÇÃO
Um dos aspectos mais importantes a serem estabelecidos durante os
Procedimentos de qualidade é o critério de finalização do desenvolvimento
de um software.
É importante estabelecer que em todas as fases
há um critério de finalização.
8. COMO FAZER A QUALIDADE FALHAR
Ausência de automatização nos testes
Qualidade não é aplicada em todas as fases
Falta de modelo coorporativo de qualidade
Deficiência em testes
Sob pressão os testes são deixados de mão
Ausência de ambiente de testes
Planejamento individual
Falta de comunicação
9. QUALIDADE
Qualquer tipo de erro gera custo Financeiro
a Organização.
10. BENEFÍCIOS DA QUALIDADE
Tornar o ciclo de desenvolvimento confiável
Garante a ação corretiva no desenvolvimento
Amplia a chance de sucesso com a socialização do
projeto
Amplia a produtividade com o projeto bem
definido
Reduz a desorganização
Minimiza (ou Zera) o Retrabalho
Evita a propagação de erros.
Automação dos testes reduz custos do projeto
11. PRÁTICA DA QUALIDADE
Especificação de requisitos (fase)
Verificação dos requisitos (verificação da qualidade)
Para cada fase uma contra-fase de verificação, que
pode ser feita com uma reunião de planejamento,
ou com o apoio do teste. (base de metodologias
ágeis)