1 / 58

P ersonal S oftware P rocess

P ersonal S oftware P rocess. Uma Visão Geral Sheila S. Reinehr ssr@bsi.com.br Novembro/1999. AGENDA. 1. Introdução 2. O PSP 3. Baseline 4. Planning 5. Quality. 6. Cyclic 7. Conclusões 8. Referências. 1. Introdução. Objetivo das organizações de software

jenn
Download Presentation

P ersonal S oftware P rocess

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Personal SoftwareProcess Uma Visão Geral Sheila S. Reinehr ssr@bsi.com.br Novembro/1999

  2. AGENDA 1. Introdução 2. O PSP 3. Baseline 4. Planning 5. Quality 6. Cyclic 7. Conclusões 8. Referências

  3. 1. Introdução Objetivo das organizações de software “Entregar produtos de software de alta qualidade, de acordo com os custos e o cronograma estabelecidos.” [Humphrey97]

  4. 1. Introdução O que elas têm feito ? • Programas de Qualidade (TQM) • CMM - The Capability Maturity Model • SPICE (ISO/IEC TR 15504), Trillium, Bootstrap • Normas para Software: ISO/IEC 9126, ISO/IEC 12207, etc.

  5. 1. Introdução Qual a deficiência destes métodos? • dizem “o quê” e não “como” fazer • focam a organização e não o indivíduo

  6. 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.

  7. 1. Introdução Objetivo 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.

  8. 1. Introdução Como ele é oferecido • Cursos fornecidos pelo SEI e empresas credenciadas (100-150 horas) • Disciplinas no currículo de Universidades (1 ou 2 semestres) • Auto-treinamento com o livro

  9. AGENDA 6. Cyclic 7. Conclusões 8. Referências 1. Introdução  2. O PSP 3. Baseline 4. Planning 5. Quality

  10. Cyclic Personal Process 2. O PSP PSP3Cyclic Development PSP2.1 Design Templates Personal Quality Management PSP2 Code Reviews Design Reviews PSP1.1 Task Planning Schedule Planning Personal Planning Process PSP1 Size estimating Test Report PSP0.1 Coding Standard Size Measurement PIP Baseline Personal Process PSP0 Current Process Time Recording Defect Recording Defect Type Standard

  11. dados de planejamento dados reais REQUERIMENTOS 2. O PSP Planejamento Projeto Orientação Logs Logs Codificação Roteiros (scripts) Compilação dados de tempo e defeito Resumo do Plano de Projeto Teste Finalização (PostMortem) PRODUTO FINAL

  12. AGENDA 6. Cyclic 7. Conclusões 8. Referências 1. Introdução  2. O PSP  3. Baseline 4. Planning 5. Quality

  13. Processo Pessoal Cíclico PSP 3 Desenvolvimento Cíclico 3. Baseline PSP 2.1 Padrões de Projeto PSP 2 Revisões de Código Revisões de Projeto Gestão de Qualidade Pessoal PSP 1.1 Planejamento de Tarefas Cronogramas Processo de Planejamento Pessoal PSP 1 Estimativa de Testes Relatório de Testes PSP 0.1 Padrão de Codificação Medida de Tamanho PIP Processo De Medição Pessoal PSP 0 Processo Atual Registro de Tempo Registro de Defeitos Padrão de Tipos de Defeitos

  14. 3. Baseline Baseline Personal Process “Se você não sabe onde está, um mapa não vai ajudá-lo.”

  15. 3. Baseline O Baseline Personal Process (PSP0 e PSP0.1) estabelece um ponto de partida para a compreensão do processo de software e, consequentemente, uma base sobre a qual promover as melhorias.

  16. 3.1. PSP0 PSP0 Current Process Time Recording Defect Recording Defect Type Standard Elementos do PSP0 • Current Process: processo atual do desenvolvedor (6 fases padrão) • Time Recording: registro de tempos • Defect Recording: registro de defeitos • Defect Type Standard:padrão de classificação dos defeitos

  17. 3.1. PSP0 PSP0 Current Process Time Recording Defect Recording Defect Type Standard

  18. 3.1. PSP0 PSP0 Current Process Time Recording Defect Recording Defect Type Standard

  19. 3.1. PSP0 PSP0 Current Process Time Recording Defect Recording Defect Type Standard Table C20 - Defect Standard Type 10 Documentation 60 Checking 20 Syntax 70 Data 30 Build, Package 80 Function 40 Assignment 90 System 50 Interface 100 Environment

  20. 3.1. PSP0 PSP0 Current Process Time Recording Defect Recording Defect Type Standard

  21. 3.1. PSP0 PSP0 Current Process Time Recording Defect Recording Defect Type Standard

  22. 3.2. PSP0.1 PSP0.1 Coding Standard Size Measurement PIP Novos elementos do PSP0.1 • Coding Standard: C++ (Humphrey), JAVA (Albuquerque), PowerBuilder (Silva) • Size Measurement: LOC novas, deletadas, modificadas e reutilizadas • PIP (Process Improvement Proposal):formulário para o registro de idéias

  23. AGENDA 6. Cyclic 7. Conclusões 8. Referências 1. Introdução  2. O PSP  3. Baseline  4. Planning 5. Quality

  24. Cyclic Personal Process 4. Planning PSP3Cyclic Development PSP2.1 Design Templates Personal Quality Management PSP2 Code Reviews Design Reviews PSP1.1 Task Planning Schedule Planning Personal Planning Process PSP1 Size estimating Test Report PSP0.1 Coding Standard Size Measurement PIP Baseline Personal Process PSP0 Current Process Time Recording Defect Recording Defect Type Standard

  25. 4. Planning Personal Planning Process “Se você não sabe onde quer chegar, qualquer caminho serve.”

  26. 4. Planning Personal Planning Process • introduz técnicas para o estimativa de tamanho do software e esforço (PROBE) • planejamento de tarefas e cronograma • relatório para registro dos dados de teste

  27. 4.1. PSP1 PSP1 Size estimating Test Report Novos elementos do PSP1 • Size estimating: usando PROBE • Test Report: formulário padrão para o registro dos testes

  28. 4.1. PSP1 PSP1 Size estimating Test Report PROBE - PROxi Based Estimating • desenvolvido por Humphrey • específico para o PSP • baseado em métodos populares

  29. Identifique Objetos Núm. de métodos Tipo de objeto Tamanho relativo Categorias de reuso PSP1 Size estimating Test Report 4.1. PSP1 Projeto Conceitual Calcule LOC projetadas e modificadas Estime o tamanho do programa Calcule o intervalo de previsão PROBE

  30. 4.1. PSP1 PSP1 Size estimating Test Report PROBE - LOC projetadas ( C++)

  31. 4.1. PSP1 PSP1 Size estimating Test Report PROBE - Tamanho do programa yk = tamanho estimado do programa xk = qtde de LOC estimadas (LOC total objetos) b0, b1 = parâmetros da regressão yi = qtde de LOC novas e modif. reais (hist.) xi = qtde de LOC estimadas (hist.)

  32. 4.2. PSP1.1 PSP1.1 Task Planning Schedule Planning Novos elementos do PSP1.1 • Task Planning: planejamento de tempo por atividade • Schedule Planning: cronograma baseado nas atividades planejadas e no tempo disponível para o projeto

  33. AGENDA 6. Cyclic 7. Conclusões 8. Referências 1. Introdução  2. O PSP  3. Baseline  4. Planning  5. Quality

  34. Cyclic Personal Process 5. Quality PSP3Cyclic Development PSP2.1 Design Templates Personal Quality Management PSP2 Code Reviews Design Reviews PSP1.1 Task Planning Schedule Planning Personal Planning Process PSP1 Size estimating Test Report PSP0.1 Coding Standard Size Measurement PIP Baseline Personal Process PSP0 Current Process Time Recording Defect Recording Defect Type Standard

  35. 5. Quality Personal Quality Management “É melhor prevenir do que remediar.”

  36. 5. 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

  37. 5.1. PSP2 PSP2 Code Reviews Design Reviews 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

  38. 5.1. PSP2 PSP2 Code Reviews Design Reviews 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

  39. 5.1. PSP2 PSP2 Code Reviews Design Reviews 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

  40. PSP2.1 Design Templates 5.2. PSP2.1 Novos elementos do PSP2.1 • COQ (Cost of Quality) • Design Templates: revisões de projeto baseadas em um checklist

  41. PSP2.1 Design Templates 5.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.

  42. PSP2.1 Design Templates 5.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)

  43. PSP2.1 Design Templates 5.2. PSP2.1 Cost of Quality (COQ) - PSP (cont.) • Total COQ = Failure COQ +Appraisal COQ • A/FR ratio = Appraisal COQ / Failure COQ

  44. PSP2.1 Design Templates 5.2. PSP2.1 Design Templates • Operational Scenario • Functional Specification • State Specification • Logic Specification

  45. AGENDA 6. Cyclic 7. Conclusões 8. Referências 1. Introdução  2. O PSP  3. Baseline  4. Planning  5. Quality 

  46. Cyclic Personal Process 6. Cyclic PSP3Cyclic Development PSP2.1 Design Templates Personal Quality Management PSP2 Code Reviews Design Reviews PSP1.1 Task Planning Schedule Planning Personal Planning Process PSP1 Size estimating Test Report PSP0.1 Coding Standard Size Measurement PIP Baseline Personal Process PSP0 Current Process Time Recording Defect Recording Defect Type Standard

  47. 6. Cyclic Cyclic Personal Process “Estratégia de Guerra: dividir para conquistar.”

  48. 6. Cyclic 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

  49. AGENDA 6. Cyclic  7. Conclusões 8. Referências 1. Introdução  2. O PSP  3. Baseline  4. Planning  5. Quality 

  50. 7. Conclusões Resultados do PSP em cursos • estimativas de tamanho: 2.5 • estimativas de esforço: 1.75 • redução da qtde total de defeitos: 1.5 • redução de defeitos compilação: 3.7 • redução de defeitos teste: 2.5 FONTE: CMU/SEI-97-TR-001 - DEZEMBRO/1997

More Related