Modelos de Qualidade
para indivíduos e
grupos:
PSP & TSP
Qualidade de Software
Alexandre Vasconcelos
1/27
PSP – Personal
Software Process
Qualidade de Software
Alexandre Vasconcelos
2/27
O Modelo PSP
Um modelo desenvolvido pelo SEI para
melhoria e otimização do processo
individual de trabalho.
 Estruturado como um curso, onde os
conceitos, metodologia e documentação
são introduzidos gradativamente via
treinamento
 O PSP representa para o indivíduo,
enquanto processo de amadurecimento, o
que o CMM/CMMI é para a empresa

Qualidade de Software
Alexandre Vasconcelos
3/27
O Modelo PSP

Baseado no CMM, possui também níveis
de maturidade.

Os níveis representam fases de evolução
a serem seguidas até se alcançar o pleno
controle sobre as atividades de
desenvolvimento.

1995 - Livro “A Discipline for Software
Engineering” , de Watts Humphrey
Qualidade de Software
Alexandre Vasconcelos
4/27
Objetivos e Características do
PSP

Objetivos:
– Preencher a lacuna deixada pelos modelos de processo
de software, com relação ao processo pessoal.
– Tornar o trabalho mais produtivo, adequado e
satisfatório ao desenvolvimento de sistemas em escala
individual, fazendo com que o próprio engenheiro de
software encontre os seus limites.

Características
– Suporta desenvolvimento individual.
– Possibilita que o próprio engenheiro encontre seu
processo de desenvolvimento.
– Institucionaliza o controle total das atividades.
Qualidade de Software
Alexandre Vasconcelos
5/27
Estratégia do PSP

Identificação de métodos e técnicas utilizados em
sistemas de grande escala que possam ser úteis
para os sistemas individuais.

Definição de um subconjunto destes métodos e
técnicas para serem aplicados no
desenvolvimento de pequenos programas.

Estruturação destes métodos para que sejam
gradualmente introduzidos.

Fornecimento de um conjunto de exercícios a
serem realizados, possibilitando o aprendizado
do PSP.
Qualidade de Software
Alexandre Vasconcelos
6/27
PSP – Níveis
de Maturidade
Qualidade de Software
Alexandre Vasconcelos
7/27
PSP0 - Medição Pessoal

Construir uma base de medidas para
suporte à evolução, com foco na medição
do tempo gasto, defeitos inseridos e
encontrados.
– Utiliza tabelas para medição e documentação
– Base para todo o processo de melhoria
– Coleta de dados
• tempo
• defeitos
– Delineação do perfil do engenheiro
– Basicamente uma fase de coleta de
informações
Qualidade de Software
Alexandre Vasconcelos
8/27
PSP - Template
Qualidade de Software
Alexandre Vasconcelos
9/27
PSP1 - Planejamento Pessoal


Adiciona planejamento ao PSP0 com base nos
dados históricos
Registro de teste e estimativa de tamanho e
recursos.
– Perceber a relação entre o tamanho do programa
desenvolvido e o tempo gasto para desenvolve-lo.
– Ajudar o engenheiro de software a só assumir
compromissos que possa cumprir.
– Fornecer um planejamento ordenado das tarefas a
serem cumpridas.
– Fornecer dados para avaliação do trabalho realizado.
Qualidade de Software
Alexandre Vasconcelos
10/27
PSP2 - Qualidade Pessoal


Foco em técnicas de revisão de código para
encontrar possíveis defeitos, antes que seja tarde
demais para consertá-los.
Principais dados gerados nas revisões:
–
–
–
–
–
–
Tamanho do programa.
Tempo de revisão.
Número total de defeitos encontrados.
Número de erros encontrados após a revisão.
Número médio encontrado por hora de revisão.
Número médio de linhas de código revistas por hora.
Qualidade de Software
Alexandre Vasconcelos
11/27
PSP3 - Processo Cíclico

Estratégia
– desenvolver programas incrementalmente. A
cada iteração, o processo de PSP2 é
completado, incluindo desenvolvimento,
codificação, revisão e teste.

Objetivos
– Tornar o PSP aplicável a tarefas médias e
grandes.
– Melhoria contínua através de avaliações
sucessivas.
Qualidade de Software
Alexandre Vasconcelos
12/27
PSP X CMM

O PSP suporta, em escala individual, 12 das 18 KPAs
do modelo CMM

CMM 2 - PSP0

– Planejamento do Projeto
– Acompanhamento do Projeto

– Gerenciamento quantitativo dos
processos
– Gerenciamento da qualidade de
software
CMM 3 - PSP1
– Foco no processo organizacional
– Definição do processo
organizacional
– programa de Treinamento
– gerenciamento de software
integrado
– Revisão conjunta
Qualidade de Software
CMM 4 - PSP2

CMM 5 - PSP3
– Prevenção de defeitos
– Gerenciamento de mudanças
tecnológicas
– Gerenciamento de mudanças no
processo
Alexandre Vasconcelos
13/27
Ferramentas para PSP
http://processdash.sourceforge.net/
http://www.laura-art.com/Studio/
Qualidade de Software
Alexandre Vasconcelos
14/27
Como Avaliar PSP?

Cursos
– An Introduction to PSP
– Livro “A Discipline for Software Engineering” ,
de Watts Humphrey, 1995

Iniciativas
– Individual
– Disciplinas em cursos
universitários

Livros são self-study!
Qualidade de Software
Alexandre Vasconcelos
15/27
Benefícios do PSP




Incorporação, no processo de trabalho do
engenheiro de software, de procedimentos para
codificação, e revisões de código e projeto.
Geração de dados históricos obtidos através das
tabelas e relatórios.
Uso de dados históricos acumulados para
planejamento de trabalho e escalonamento de
tarefas.
O processo de desenvolvimento de software
pode ser definido pelo próprio engenheiro.
Qualidade de Software
Alexandre Vasconcelos
16/27
PSP - Pontos Críticos

As tabelas e roteiros do PSP são fortemente
voltados para o paradigma imperativo de
programação.

Foco em codificação e teste

Carência nas fases de requisitos e especificação
de projetos.

Tempo para treinamento e utilização do PSP.

Dificuldade em garantir cultura disciplinar e
comprometimento das pessoas.
Qualidade de Software
Alexandre Vasconcelos
17/27
TSP – Team Software
Process
Qualidade de Software
Alexandre Vasconcelos
18/27
Motivação:
Por que o PSP
não é suficiente?



Pessoas trabalham em grupo
Integração e planejamento de Times de
desenvolvimento
Necessidade de estimativas compostas
Qualidade de Software
Alexandre Vasconcelos
19/27
Team Software Process (TSP)




Proposto por Watts Humphrey, criador do
CMM
Voltado para a formação de equipes de
desenvolvimento de alta produtividade
Focado em métricas e inspeções
Atividades descritas na forma de scripts
Qualidade de Software
Alexandre Vasconcelos
20/27
PSP + TSP
Qualidade de Software
Alexandre Vasconcelos
21/27
TSP – Ciclo de Vida
Ciclo 1
Lançamento
Estratégia
Ciclo 2
Planejamento
Lançamento
Requisitos
Estratégia
Projeto
Planejamento
Implementação
Requisitos
Testes
Projeto
Planejamento
Postmortem
Implementação
Requisitos
Testes
Projeto
Postmortem
Implementação
Ciclo Final
Lançamento
...
Estratégia
Testes
Postmortem
Produto Final
Qualidade de Software
Alexandre Vasconcelos
22/27
CMM x TSP x PSP
Qualidade de Software
Alexandre Vasconcelos
23/27
TSP e SW-CMM
Práticas de Projeto
Fonte:
SEI - TR 008/2002
Qualidade de Software
Alexandre Vasconcelos
24/27
TSP e SW-CMM
Práticas da Organização
Fonte:
SEI - TR 008/2002
Qualidade de Software
Alexandre Vasconcelos
25/27
TSP – Pontos Fortes

Formação de uma equipe coesa, que busca um
objetivo comum

Suas práticas melhoram o gerenciamento do
projeto

Completamente alinhado com o SW-CMM,
funcionando como “catalisador”
Qualidade de Software
Alexandre Vasconcelos
26/27
TSP – Pontos Fracos

Requer treinamento prévio em Personal Software
Process (PSP)

Não possui modelos de documentos

Não entra em detalhes sobre a execução das
atividades
Qualidade de Software
Alexandre Vasconcelos
27/27
Download

PSP/TSP Definições e Questões