PSP - Personal Software Process

Slides:



Advertisements
Apresentações semelhantes
MPS BR – NÍVEL F MPS BR – NÍVEL F CC 7/8 P51 Nível F
Advertisements

Análise e Projeto de Sistemas III
Gerenciamento de Projetos
BENCHMARKING.
Qualidade de Software Aula 4
Engenharia de Software Qualidade de Software Uma abordagem conceitual André Luis Zanon São Carlos SP – UFSCAR 2010 Engenharia de Software – UFSCAR.
ISO Processos do Ciclo de Vida do Software
GERENCIAMENTO DE INTEGRAÇÃO DO PROJETO
PMBoK Project Management Body of Knowledge
Gerenciamento do escopo do projeto
Gerenciamento da Integração
Qualidade de Software Aula 2
Antonio Carlos Tonini Maio / 2004
Visão Geral do Desenvolvimento de Sistemas e Papéis no Desenvolvimento de Software Marcely Dias
FORMAÇÃO DE AUDITORES INTERNOS RONALDO COSTA RODRIGUES
EXEMPLO DE FLUXO PARA O DESENVOLVIMENTO DE ANÁLISE CRÍTICA DO SGQ
José Roberto Blaschek Gerência do Escopo José Roberto Blaschek.
Gestão de Projetos.
Modelos de Maturidade de Processos de Software
Auditoria da Qualidade
PMBOK 5ª Edição Capítulo 3
Projeto: Capacitação em GP
Gestão de Projetos Ms. Karine R. de Souza
Capability Maturity Model (CMM)
NBR ISO Diretrizes para planos de qualidade
Gerenciamento da Integração
Qualidade de Software Aula 2 / 2014/1
Análise e Projeto de Sistemas
GESTÃO DE PROJETOS Aula 5 1.
Prof. Alexandre Vasconcelos
Modelos de Maturidade de Processos de Software
Modelos de Maturidade de Processos de Software
CURSO TÉCNICO EM SEGURANÇA DO TRABALHO
MPS-Br.
Processo de Aquisição Adilson de Almeida Cezar Meriguetti
Introdução à Gestão da Qualidade (Aula 8 – ISO 9004 & Auditoria da Qualidade) Professor Gustavo F Ribeiro PEÃO São Roque junho.
Instrutor: Objetivos:.
ISO NBR Eduardo Silvestri Ribeiro
Gerenciamento da Qualidade
Melhoria do processo de software brasileiro
Instrutor: Objetivos:.
Teste de Software Conceitos iniciais.
ISO Processos do Ciclo de Vida do Software
Qualidade de Processo de Software CMM e CMMI Aldo Rocha.
Qualidade de Software Aula 4
Engenharia de Software
AVALIAÇÃO DE PROCESSOS
Modelos de Qualidade para indivíduos e grupos: PSP & TSP
José Félix Bezerra.
Instrutor: Objetivos do Workshop:.
Integração.
AVALIAÇÃO DE PROCESSOS DE SOFTWARE
Aula 3: Áreas de Conhecimento em Gerenciamento de Projeto, Integração
Gerenciamento de Qualidade
Certificação e Auditoria
Prof. Fábio Botelho Metodologia de Desenvolvimento de Software - MDS Padrões de Processo de Software: CMMI.
RESPOSTAS A INCIDENTES E PLANO DE CONTINUIDADE DE NEGÓCIOS
ISO/IEC Prof. Dr. Sandro Ronaldo Bezerra Oliveira
Software Process Improvement and Capability dEtermination
ISO9001:2000 para Software Professor: Alexandre Vasconcelos Equipe: Amanda Pimentel Börje Karlsson Danielly Karine Erika Pessoa Jorge Cavalcanti Jose Edson.
Lenylda Albuquerque ISO Processos de Ciclo de Vida de Software Universidade Federal de Pernambuco.
Programa criado em Apoio ao programa: Ministério da Ciência e Tecnologia da Finep Banco Interamericano de Desenvolvimento Universidades e Governo.
Introdução – ISO Conceitos relacionados a Norma NBR ISO/IEC 12207; Procedimentos de ciclo de vida e desenvolvimento de software; Objetivos e a estrutura.
Revisão da Norma ISO 9001:2008 Revisão da Norma ISO 9001:2000 para ISO 9001:2008 Impactos sobre o Sistema de Gestão da Qualidade Informativo Técnico.
Gerenciamento da Qualidade
Leonardo Batista de Queiroz
PROJETO SPICE ISO Integrantes: Erickson Balzaneli
Processos de Software Ludimila Monjardim Casagrande 1º Semestre Desenvolvimento e Qualidade.
CMMI Capability Maturity Model Integration
O Processo Unificado (PU). 2 O que é o Processo Unificado (PU)? É um modelo de processo de software baseado no modelo incremental, visando a construção.
Transcrição da apresentação:

PSP - Personal Software Process Maria Cláudia F. P. Emer

PSP: Personal Software Process Já foram vistas ISO/IEC 9126 – foco no produto ISO 9001 e CMM – foco no processo de desenvolvimento Critica a essas abordagens Difícil aplicação em pequenas empresas ou no nível individual

PSP: Personal Software Process Surgimento do PSP SEI (Software Engineering Institute), por Watts Humphrey Objetivo  ajudar as pessoas a serem melhores engenheiros de software

PSP: Personal Software Process Visa melhorar, no nível pessoal: Capacidade de planejamento Acompanhamento Qualidade dos resultados Benefícios Melhoria de produtividade Melhoria do perfil de qualidade dos produtos

Os quatro níveis do PSP

PSP0: Processo referencial (Baseline process) Estabelecimento de práticas de medidas Formatos de relatórios – base para melhoria contínua pessoal

PSP0: Processo referencial (Baseline process) Padrões de programação Práticas de medida de tamanho de produto de trabalho Proposta de melhoria de processo (PIP – Process Improvement Proposal) – registro de problemas nos processos, experiências e propostas de melhoria

PSP1: Processo de planejamento pessoal Práticas de planejamento Relatório de teste Práticas de estimativa de tamanho e recurso

PSP1: Processo de planejamento pessoal Planejamento de tarefas Elaboração de cronogramas O planejamento no nível pessoal permite: Melhor compreensão do tamanho do programa e tempo gasto no seu desenvolvimento Assumir compromissos com certeza de seu cumprimento Organizar o trabalho Acompanhar melhor o status do desenvolvimento

PSP2: Processo de gestão pessoal de qualidade Gerenciamento dos próprios erros Técnicas de inspeção e revisão para detecção de defeitos Coleta e análise de dados de defeitos de compilação e teste detectados em programas anteriores Avaliação da evolução do nível de qualidade do programador

PSP2: Processo de gestão pessoal de qualidade Processo de design Auxilia no estabelecimento de critérios de completitude e de técnicas de verificação e consistência

PSP3: Processo pessoal cíclico Subdividir o programa em módulos Desenvolvimento incremental Cada módulo é um ciclo completo de design, codificação e teste (PSP2) Controle de qualidade de cada módulo Uso de relatórios Testes de regressão

Utilização do PSP Benefícios concretos para os desenvolvedores [Humphrey 95]: Melhor entendimento do trabalho, através da definição, medição e acompanhamento Uso de uma estrutura de processos definida e critérios mensuráveis  avaliação de experiências anteriores Possibilidade de selecionar métodos e técnicas que melhor se adaptem ao trabalho Maior produtividade e eficácia nas equipes de desenvolvimento

Utilização do PSP Princípios que influenciam a produtividade e qualidade do processo de desenvolvimento Um processo bem definido e estruturado pode melhorar a eficiência no trabalho O processo pessoal deve ser ajustado ao conhecimento e preferência de cada um O desenvolvedor se sente à vontade com o processo se participar de sua definição Na medida que o conhecimento e habilidade de um profissional evoluem, o processo utilizado deve evoluir A melhoria contínua fica facilitada com um processo de realimentação permanente

PSP e CMM PSP foi criado a partir do CMM A idéia é trazer ao nível de programador os conceitos de processo tratados pelo CMM

SPICE – ISO/IEC 15504 Maria Cláudia F. P. Emer

SPICE – ISO/IEC 15504 SPICE – Software Process Improvement and Capability dEtermination Nome dado ao projeto de elaboração da futura norma ISO/IEC 15504 Surgiu pela necessidade de uma norma de avaliação de processo de software

SPICE – ISO/IEC 15504 Objetivo: É dividida em duas dimensões: Ser mais geral e abrangente que modelos existentes Ser mais específica que a ISO 9001 É dividida em duas dimensões: Processo Capacidade de processo

Documentos que formam o SPICE

Uso da ISO/IEC 15504 Pode ser usada para avaliação quanto a: Melhoria de processo Gerar um perfil dos processos que serão usados em um plano de melhorias O perfil deve conter objetivos e contexto para avaliação, modelo e método para avaliação e objetivos de melhoria

Uso da ISO/IEC 15504 Melhoria de processo

Uso da ISO/IEC 15504 Pode ser usada para avaliação quanto a: Determinação da capacidade dos processo de uma organização Avaliar um possível fornecedor Perfil de capacidade – objetivos e métodos de avaliação, modelos e métodos de avaliação e requisitos esperados O perfil de capacidade permite estimar o risco associado a contratação do fornecedor

Uso da ISO/IEC 15504 Determinação da capacidade

Estrutura do Modelo de Referência Dimensão de processo Processos de desenvolvimento são vistos conforme a norma ISO/IEC 12207 (ciclo de vida de software) Dimensão de capacidade Modelo de medição com base na identificação de um conjunto de atributos que permite determinar a capacidade de um processo para atingir seus propósitos

Dimensão de processos Três agrupamentos básicos Processos primários: categorias de engenharia de software e de ralação cliente-fornecedor Processo de apoio: categoria de processos de apoio Processos organizacionais: categorias de processos de gestão e processos organizacionais

Dimensão de processos Cinco categorias de processos CUS: cliente-fornecedor (customer-supplier) ENG: engenharia de software (engineering) SUP: apoio (support) MAN: gestão (management) ORG: organizacionais (organization)

Dimensão de processos - primários

Dimensão de processos - Processos primários Categoria CUS CUS: processos que afetam diretamente o cliente CUS.1 processo de aquisição: obtenção de um produto que satisfaça as necessidades expressas pelo cliente Preparação para aquisição Seleção do fornecedor Monitoramento do fornecedor aceitação

Dimensão de processos - Processos primários Categoria CUS CUS.2 processo de fornecimento: fornecimento do software para o cliente, satisfazendo suas necessidades Preparação de um contrato Entrega Instalação do produto

Dimensão de processos - Processos primários Categoria CUS CUS.3 elicitação de requisitos: indica coletar, processar, controlar e acompanhar os requisitos do cliente Mecanismos de comunicação com o cliente Mecanismos de controle de mudanças de requisitos

Dimensão de processos - Processos primários Categoria CUS CUS.4 processo de operação: fazer operar o software no ambiente de software e hardware para o qual ele foi desenvolvido e fornecer suporte ao cliente Processo de uso operacional Processo de suporte ao usuário

Dimensão de processos - Processos primários Categoria ENG ENG: processos relacionados à construção e manutenção do produto de software ENG.1 processo de desenvolvimento: objetivo de transformar os requisitos em um produto de software Processo de análise de requisitos do sistema Processo de análise de requisitos de software

Dimensão de processos - Processos primários Categoria ENG ENG.1 continuação Processo de projeto de software Processo de construção de software Processo de integração de software Processo de teste de software Processo de integração e teste de sistema

Dimensão de processos - Processos primários Categoria ENG ENG.2 processo de manutenção de software e de sistema: gerenciar modificações, migrações e desativações de software e sistema, a pedido do usuário

Dimensão de processos - Processos apoio

Dimensão de processos – Processo de apoio Categoria SUP SUP: processos relacionados ao apoio ou suporte SUP.1 processo de documentação: desenvolver e manter documentos que registrem informações produzidas por outro processo ou atividade Elaboração, controle, manutenção, revisão, aprovação e publicação de documentos e seu acesso

Dimensão de processos – Processo de apoio Categoria SUP SUP.2 gestão de configuração: estabelecer e manter a integridade de todos os produtos de trabalho de algum processo ou do projeto Estratégia de gestão da configuração Identificação de itens de configuração Controle de acesso e de mudanças de itens Registro da situação de todos os itens Controle do armazenamento e manuseio desse registro

Dimensão de processos – Processo de apoio Categoria SUP SUP.3 garantia da qualidade: assegurar que os produtos de trabalho e atividades de um processo ou projeto estão de acordo com os requisitos especificados e satisfazem aos planos e regras estabelecidos Estabelecimento de procedimentos para o tratamento de desvios encontrados em relação as regras, procedimentos e padrões Pode fazer uso de resultados de processos de verificação, validação, revisão conjunta, auditoria e resolução de problemas Os envolvidos com a garantia de qualidade devem ter autonomia na execução de suas tarefas

Dimensão de processos – Processo de apoio Categoria SUP SUP.4 processo de verificação: examinar se cada produto de trabalho ou serviços obtidos de um processo reflete as especificações de entrada do processo Definição de uma estratégia de verificação Definição de critérios de verificação A verificação deve assegurar que os defeitos encontrados serão removidos e que os resultados serão disponibilizados para elementos relevantes Processo relacionado com os processos ENG1.6 e ENG1.7

Dimensão de processos – Processo de apoio Categoria SUP SUP.5 processo de validação: examinar se estão satisfeitos os requisitos para o uso pretendido de cada produto de trabalho ou serviço, resultado de um processo Definição de uma estratégia de validação Definição de critérios de validação A verificação deve assegurar que os defeitos encontrados serão removidos, que os resultados serão disponibilizados para elementos relevantes e que os produtos são adequados para o uso pretendido Processo relacionado ao processo ENG1.7

Dimensão de processos – Processo de apoio Categoria SUP SUP.6 processo de revisão conjunta: permitir ao cliente a visibilidade do andamento do desenvolvimento quando comparado ao especificado no contrato Aspectos técnicos e administrativos Realização de revisões periódicas da situação de produtos e atividades por todas as partes interessadas em datas preestabelecidas Solução de todas as pendências, problemas e desvios detectados

Dimensão de processos – Processo de apoio Categoria SUP SUP.7 processo de auditoria: determinar a conformidade de produtos identificados e atividades com planos, requisitos e com o contrato Definição da estratégia de programação da auditoria Especificação dos itens que serão auditados e por quais regras O pessoal que conduz a auditoria deve ser independente àquele que executa o desenvolvimento Os problemas detectados devem ser comunicados aos responsáveis para sua correção

Dimensão de processos – Processo de apoio Categoria SUP SUP.8 processo de resolução de problemas: assegurar que todos os problemas encontrados sejam analisados, resolvidos e que tendências sejam observadas, para planejamento e execução de ações corretivas

Dimensão de processos – Processos organizacionais

Dimensão de processos – Processos organizacionais Categoria MAN MAN: processos que contêm práticas de natureza geral MAN.1 processo de gestão: organizar, monitorar e controlar a execução de qualquer processo ou função dentro da organização para garantir a satisfação de seus objetivos e dos objetivos de negócio da organização Planejamento das atividades e dos recursos necessários Análise da viabilidade de se atingir os objetivos associando às restrições técnicas, de custo e de prazo

Dimensão de processos – Processos organizacionais Categoria MAN MAN.2 processo de gestão de projeto: identificar, estabelecer, coordenar e monitorar atividades, tarefas e recursos necessários para que um projeto produza serviços ou produtos de acordo com requisitos especificados Definição do contexto de trabalho Realização de análise de viabilidade Produção de estimativas de recursos e esforço necessário para realização das tarefas

Dimensão de processos – Processos organizacionais Categoria MAN MAN.3 processo de gestão da qualidade: monitorar a qualidade dos produtos e serviços do projeto e garantir a satisfação do cliente Estabelecimento de metas conforme necessidades explícitas e implícitas dos clientes Definição de pontos intermediários de verificação Estabelecimento de uma estratégia contendo práticas de verificação e de garantia de qualidade, monitorando os resultados, comparando-os com as metas estabelecidas e coordenando as correções necessárias

Dimensão de processos – Processos organizacionais Categoria MAN MAN.4 processo de gestão de risco: identificar, analisar, priorizar e monitorar riscos continuamente, desenvolvendo planos de contingência para os mais críticos Níveis organizacionais e de projeto Definição de uma estratégia de gestão de riscos Monitoramento contínuo dos riscos Análise e priorização dos riscos definição de métricas quantitativas de risco (evolução e variação) Planejamento e execução de planos de contingência para prevenção de problemas

Dimensão de processos – Processos organizacionais Categoria ORG ORG: processos associados às atividades gerais da organização, desde os objetivos do negócio até a gestão de recursos humanos ORG.1 processo de alinhamento gerencial: assegurar que os indivíduos na organização conheçam e entendam o seu papel e trabalhem para alcançar os objetivos de negócio da empresa, e também, compreendam a visão da empresa e sua missão

Dimensão de processos – Processos organizacionais Categoria ORG ORG.2 processo de melhoria: estabelecer, medir, controlar e aperfeiçoar os processos do ciclo de vida de software Processo para o estabelecimento de processos Processo para a avaliação de processos Processo de melhoria de processos

Dimensão de processos – Processos organizacionais Categoria ORG ORG.3 processo de gestão de recursos humanos: prover para organização indivíduos capacitados para exercer os seus papéis, como indivíduos e em grupo Avaliação periódica da necessidade de treinamento Verificação da necessidade de recrutamento e contratação Apoio à interação produtiva e harmônica entre grupos Avaliação do desempenho dos profissionais da organização

Dimensão de processos – Processos organizacionais Categoria ORG ORG.4 processo de infra-estrutura: manter de forma estável e confiável a infra-estrutura necessária para apoiar a execução de outros processos A infra-estrutura inclui: hardware, software, métodos, ferramentas, técnicas, padrões e facilidade para o o desenvolvimento, operação e manutenção

Dimensão de processos – Processos organizacionais Categoria ORG ORG.5 processo de medida: coletar e analisar dados relacionados aos produtos desenvolvidos e processos implementados na organização, apoiar a sua gestão e demonstrar de forma objetiva a qualidade dos produtos

Dimensão de processos – Processos organizacionais Categoria ORG ORG.6 processo de reuso: promover e facilitar o reuso de produtos de trabalho de software novos ou existentes Desenvolvimento de estratégia de reuso Identificação de atividades relacionadas Estabelecimento de infra-estrutura de apoio (rede de computadores, repositórios e gestão de configuração)

Dimensão de capacidade de processo Estabelece uma escala de capacidade de processo Seis níveis crescentes Roteiro claro para orientar a melhoria de um processo Medida de capacidade – atributos de processo

Dimensão de capacidade de processo – descrição dos atributos de processo

Dimensão de capacidade de processo – Níveis Nível 0: processo incompleto Processo não implementado Processo não gera os produtos esperados Não há atributos de processo

Dimensão de capacidade de processo – Níveis Nível 1: processo executado Processo consegue alcançar os objetivos de alguma forma Processo gera os produtos esperados Atributo: PA 1.1  atributo de execução de processo: transformação de produtos de entrada em produtos de saída e os resultados esperados do processo são alcançados

Dimensão de capacidade de processo – Níveis Nível 2: processo gerenciado Processo executado de modo planejado, controlado, acompanhado, verificado e corrigido Atributos: PA 2.1  atributo de execução de processo: mede até que ponto o processo é gerenciado para produzir os produtos que satisfazem ao seu objetivo Características: objetivos do processo em termos de qualidade, prazo e uso de recursos identificados, atribuição de responsabilidade pelo produto de trabalho feita, execução do processo é gerenciada

Dimensão de capacidade de processo – Níveis Nível 2: processo gerenciado Atributos: PA 2.2  atributo de gestão dos produtos de trabalho: mede até que ponto os produtos de trabalho são documentados, controlados e verificados Características: requisitos dos produtos de trabalho documentados, requisitos para documentação e controle de produtos de trabalho definidos, dependências entre produtos de trabalho estão definidas, os produtos de trabalho têm suas mudanças controladas e são distribuídos em baselines, os produtos são verificados

Dimensão de capacidade de processo – Níveis Nível 3: processo estabelecido Processo executado e gerenciado, é definido com base em princípios de engenharia de software Atributos: PA 3.1  atributo de definição de processo: mede até que ponto o processo é definido com base em um processo padronizado Características: existe um processo padronizado na empresa, no qual as adaptações podem ser feitas; o processo é executado conforme um processo padronizado ou adaptado de acordo com orientações para adaptações; dados históricos do processo são coletados para auxiliar na compreensão do comportamento estatístico do processo; a experiência acumulada é usada para refinar o processo

Dimensão de capacidade de processo – Níveis Nível 3: processo estabelecido Atributos: PA 3.2  atributo de recursos de processo: mede até que ponto o processo faz uso de recursos humanos e materiais para ser executado com sucesso Características: os papéis, responsabilidades e competências necessárias para execução do processo são identificados e documentados; a infra-estrutura necessária para a execução do processo é identificada e documentada; os recursos necessários são alocados e utilizados na execução do processo

Dimensão de capacidade de processo – Níveis Nível 4: processo previsível Processo executado, gerenciado e definido, é executado dentro de limites quantitativos bem definidos Atributos: PA 4.1  atributo de medida: mede até que ponto métricas e objetivos de processo/produto são usados para assegurar que a execução do processo é efetiva, alcançando os objetivos de negócio da empresa Características:métricas são identificadas e coletas; as tendências observadas são analisadas; a capacidade de processo é medida

Dimensão de capacidade de processo – Níveis Nível 4: processo previsível Atributos: PA 4.2  atributo de controle de processo: mede até que ponto o processo é controlado por intermédio da coleta, análise e uso de medidas para servir de base para ações corretivas, quando necessário Características: técnicas de medida são estabelecidas; características de produto e processo são medidas e usadas como insumo para permitir o controle de processo dentro de limites de variabilidade; o processo é gerenciado de forma quantitativa

Dimensão de capacidade de processo – Níveis Nível 5: processo em otimização Processo executado, gerenciado, definido e executado dentro de limites quantitativos, pode ser mudado e evoluído de maneira dinâmica e sob controle Atributos: PA 5.1  atributo de mudança de processo: mede até que ponto mudanças na definição, gerência e execução do processo são controladas Características: impacto de mudança versus objetivos do processo e de seus produtos é avaliado; mudanças realizadas de forma controlada e prevenida; eficácia das mudanças é medida em relação ao planejado

Dimensão de capacidade de processo – Níveis Nível 5: processo em otimização Atributos: PA 5.2  atributo de melhoria contínua: mede até que ponto as mudanças de processo contribuem para melhoria contínua Características: metas de melhoria de processo são estabelecidas conforme objetivos de negócio; possíveis fontes de risco e de problemas são identificadas; estratégia de melhoria contínua é estabelecida

Mecanismos de Pontuação Baseia-se na verificação do grau de satisfação dos atributos de processo Escala ordenada de quatro valores: N (not achieved) ou não atendido: 0% a 15% P (partially achieved) ou parcialmente atendido: 16% a 50% L (largely achieved) ou largamente atendido: 51% a 85% F (fully achieved) ou totalmente atendido: 86% a 100%

Nível de capacidade Processo pontuado em determinado nível se todos os atributos de processo dos níveis inferiores estiverem totalmente atendidos e que os atributos de processo desse nível sejam pelo menos largamente atendidos

Nível de capacidade Exemplo: PA 1.1 – F PA 3.2 – P PA 2.1 – F PA 4.1 – L PA 2.2 – L PA 4.2 – L PA 3.1 – F PA 5.1 – N Qual o nível desse processo?

Perfil de nível de capacidade por projeto

Perfil de nível de capacidade por projeto Situação dos processos ENG1.1, ENG 1.2, ENG 1.3 e ENG 1.4 em vários projetos de uma organização 40% dos projetos têm o processo em ENG 1.3 no nível 2 20% dos projetos têm o processo em ENG 1.4 no nível 1, 70% no nível 2 e 10% no nível 3

Evoluções recentes Foram detectados alguns problemas no TR (Technical Report) Nova estrutura Prevê a redução do número de partes de nove para cinco Parte 1: conceitos e vocabulário Parte 2: realização de uma avaliação Parte 3: guia para a realização de uma avaliação Parte 4 guia para a utilização dos resultados de uma avaliação Parte 5 um modelo-exemplo para avaliação Remoção da dimensão de processos