180 likes | 288 Views
Processo de Software Pessoal - PSP. Code Reviews e desenvolvimento cíclico. 1. Introdução. Objetivo das Organizações de Software: Entregar produtos de software de alta qualidade , de acordo com os custos e cronograma estabelecidos. 1. Introdução. O que elas têm feito?
E N D
Processo de Software Pessoal - PSP Code Reviews e desenvolvimento cíclico
1. Introdução Objetivo das Organizações de Software: Entregar produtos de software de alta qualidade, de acordo com os custos e cronograma estabelecidos.
1. Introdução • O que elas têm feito? • Programas de qualidade (TQM) • CMM - The Capability Maturity Model • Normas para Software: ISO/IEC 9126, ISO/IEC 12207, etc.
1. Introdução • Qual a deficiência desses métodos? • dizem “o quê” e não “como” fazer • focam a organização e não o indivíduo
1. Introdução • PSP - Personal Software Process • É um framework para auxiliar o desenvolvedor a estimar e planejar suas tarefas, acompanhar sua performance em relação ao planejado e melhorar a qualidade dos produtos produzidos.
1. Introdução • Objetivos do PSP • auxiliar o desenvolvedor a gerenciar seu trabalho, conhecer seus talentos e melhorar suas habilidades; • oferecer métricas e análises métricas; • introduzir gradativamente técnicas de Engenharia de Software.
2. Quality • Personal Quality Management • É melhor prevenir que remediar
2. Quality • Personal Quality Management • efetua o gerenciamento dos defeitos • introduz técnicas de revisão • tem seu foco no design • não ensina a fazer design, mas a checar se está completo
2.1. PSP2 • Novos elementos do PSP2 • Code Reviews: revisões de código baseadas em um checklist • Design Reviews: revisões de projeto baseadas em um checklist
2.1. PSP2 • Por que fazer revisões ? • início do PSP (33% tempo em compilação e teste) e final do PSP (10% tempo em compilação e teste) • economia de tempo ($$) • processo mais previsível • produto de melhor qualidade
2.1. PSP2 • Medidas das revisões • Básicas: tamanho do programa, tempo da revisão, qtde de defeitos encontrados na revisão e depois • Derivadas: % de defeitos encontrados na revisão, defeitos encontrados/KLOC, defeitos encontrados/hora de revisão, qtde de LOC revisadas/hora
2.2. PSP2.1 • Novos elementos do PSP2.1 • COQ (Cost of Quality) • Design Templates: revisões de projeto baseadas em um checklist
2.2. PSP2.1 • Cost of Quality (COQ) - PSP • Failure Costs: tempo gasto em compilação e teste. • Appraisal Cost: tempo gasto em revisões de código e projeto.
2.2. PSP2.1 • Cost of Quality (COQ) - PSP (cont.) • Failure COQ = 100 * (tempo de compilação + tempo de teste) / (tempo total de desenvolvimento) • Appraisal COQ = 100 * (tempo de revisão de projeto + tempo de revisão de código) / (tempo total de desenvolvimento)
2.2. PSP2.1 • Cost of Quality (COQ) - PSP (cont.) • Total COQ = Failure COQ +Appraisal COQ • A/FR ratio = Appraisal COQ / Failure COQ
2.2. PSP2.1 • Design Templates • Operational Scenario • Functional Specification • State Specification • Logic Specification
3. Ciclic Cyclic Personal Process “Estratégia de Guerra:dividir paraconquistar.”
Ciclic • Cyclic Personal Process • expande os conceitos do PSP para projetos maiores • divide um programa maior em pequenas partes • aplica o PSP2 a cada uma das partes