AVALIAÇÃO DE PROCESSOS IFbaiano (Campus: Catu/BA) Estudantes: Everton, Maludiane, Ruama, Rubens. Professora: Eneida Rios Curso: ADS Disciplina: Qualidade de Software o que é? Histórico Visão Geral Utilidade Aplicabilidade Composição Modelos de Referência 1.Dimensão do processo 2.Dimensão da capacidade Melhoria de Processos Considerações Finais A ISO/IEC 15504, também conhecida como SPICE, é a norma ISO/IEC que define uma estrutura para a avaliação e melhoria de processos de engenharia de software, e prescreve práticas básicas que devem ser realizadas para que se atinjam certos níveis de maturidade. Ela é uma evolução da ISO/IEC 12207, mas possui níveis de capacidade para cada processo assim como o CMMI. 1993-1994: Criação do projeto SPICE e elaboração da versão inicial; Realização de trials - Fase 1 (35 avaliações); 1996: Versão PDTR (Previous Draft Technical Report); 1997: Versão DTR, Trials - Fase 2 (70 avaliações); 1998: Versão TR2, Início dos Trials - Fase 3; 1999-2003: Transformação em Norma ISO/IEC 15504. Em outubro de 2003, a Norma ISO/IEC 15504 (SPICE) para a avaliação de processos de software foi oficialmente publicada pela ISO. Framework: Define requisitos para Avaliação de Processo; Na prática, é utilizado com Modelo de Referência para Melhoria de Processo. Avaliação em 2 Contextos: Melhoria Contínua •Entender o estado dos processos •Avaliação identifica oportunidades de melhoria •Foca na melhoria de processo ISO/IEC 15504 Determinação da Capacidade •Determinar a adequação dos processos •Geralmente realizada para uma organização interessada em contratar a organização avaliada como fornecedor •Avaliar o estado dos processos de software. •Determinar a adequação dos processos de software a requisitos. •Melhorar os processos de software. •Determinar a capacidade dos processos de software. Obtenção de software: Determinar a capacidade atual ou potencial dos processos de software de um fornecedor. Fornecimento de software: Determinar a capacidade atual ou potencial dos processos de software do próprio fornecedor. Definir áreas e prioridades para melhoria dos processos de software. 15504-1: Conceitos e Vocabulário (Concepts and Vocabulary) Normativo - Publicação 2004 15504-2: Executando uma Avaliação (Performing an Assessment) Normativo - Publicação 2003 15504-3: Guia sobre Executando uma Avaliação (Guidance on performing an assessment) Informativo - Publicação 2004 15504-4: Guia sobre Utilização do Resultado de Avaliação (Guidance on using assessment results) Informativo - Publicação 2004 15504-5: Um Exemplo de Modelo de Avaliação de Processo (An exemplar process assessment model) Informativo - Publicação 2005 MODELO BIDIMENSIONAL Dimensão do Processo Objetivos essenciais e tangíveis do processo. Aquelas relacionadas a “o que fazer”, organizadas em processos específicos Dimensão da Capacidade Conjunto de atributos do processo agrupados em níveis de capacidade. ISO 15504-5 (Modelo de Processos) Aquelas relacionadas ao “quão bem fazer qualquer coisa que seja feita”, organizadas em níveis de capacidade genéricos. O modelo é dividido em três processos Processos Primários: categorias de Engenharia de Software e de Relação Cliente-Fornecedor Processos de Apoio: categoria de processos de Apoio Processos Organizacionais: Organizacionais categorias de processos de Gestão e Os processos são divididos em cinco categorias CUS : Cliente-Fornecedor (Customer-Supplier) ENG : Engenharia de Software (Engineering) SUP : Apoio (Support) MAN: Gestão (Management) ORG : Organizacionais (Organization) Relacionamento entre Categorias e Processos: Processos Primários CATEGORIA: CLIENTE-FORNECEDOR (CUS) CUS.1 Processo de Aquisição Objetivo: a obtenção de um produto ou serviço que satisfaça às necessidades expressas pelo cliente. Possui quatro subprocessos ou componentes: •CUS 1.1: Preparação da aquisição •CUS 1.2: Seleção do fornecedor •CUS 1.3: Monitoração do fornecedor •CUS 1.4: Aceitação CUS.2: O Processo de Fornecimento Objetivo: o fornecimento de software para o cliente de modo a satisfazer às suas necessidades. CUS.3: O Processo de Elicitação de Requisitos Objetivo: coletar, processar, controlar e acompanhar os requisitos do cliente. CUS.4: O Processo de Operação Objetivo: fazer operar o produto de software no ambiente de software e hardware para o qual ele foi desenvolvido e fornecer suporte para o usuário final. Subprocessos: CUS 4.1: Processo de uso operacional CUS 4.2: Processo de suporte ao usuário CATEGORIA: ENGENHARIA DE SOFTWARE (ENG) ENG.1 – Construção ENG 1.1: análise de requisitos de sistema Contempla a análise de requisitos funcionais e não funcionais do sistema e alocação . ENG 1.2: análise de requisitos de software Contempla a análise de requisitos do software, seu impacto, controle, mudanças, contra o projeto e comunicação com os desenvolvedores. ENG 1.3: projeto de software Contempla o projeto do software e as definições de interfaces e módulos, de forma consistente com os requisitos. ENG 1.4: construção de software Contempla a construção (codificação) do software de acordo com o projeto. ENG 1.5: integração de software Contempla a integração dos módulos do software e sua verificação de acordo com o projeto. ENG 1.6: teste de software Contempla o teste de software para verificação de atendimento aos requisitos funcionais (inclui regressão). ENG 1.7: integração e teste de sistema Contempla a integração e teste de sistema. ENG.2: Manutenção de Software Objetivo: gerenciar modificações, migrações e desativações de software e de sistema, a pedido do cliente. Processos de Apoio CATEGORIA: APOIO (SUP) SUP.1: Documentação Objetivo: desenvolver e manter documentos que registrem informações produzidos por um outro processo ou atividade. SUP.2: Gestão de configuração Objetivo: estabelecer e manter a integridade de todos os produtos de trabalho de algum processo ou do projeto. SUP.3: Garantia da qualidade Objetivo: assegurar que os produtos de trabalho e atividades de um processo ou projeto estejam de acordo com os requisitos especificados e satisfaçam os planos e regras estabelecidas. SUP.5: Validação Objetivo: confirmar que estão satisfeitos os requisitos para o uso pretendido de cada produto de trabalho ou serviço resultado de um processo. SUP.6: Revisão conjunta Objetivo: permitir ao cliente a visibilidade do andamento do desenvolvimento quando comparado ao especificado no contrato. SUP.7: Auditoria Objetivo: determinar, de forma independente, a conformidade de produtos identificados e atividades com planos, requisitos e com o contrato. SUP.8: Resolução de problemas Objetivo: assegurar que todos os problemas encontrados sejam analisados, resolvidos (ação corretiva) e que tendências sejam observadas visando o planejamento e execução de ações preventivas. Processos Organizacionais CATEGORIA: GESTÃO(MAN) MAN.1: Gestão Objetivo: organizar, monitorar e controlar a execução de qualquer processo ou função dentro da organização, desde o seu início, visando garantir que sejam satisfeitos os seus objetivos, assim como os objetivos de negócio da organização. MAN.2: Gestão de Projeto Objetivo: 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. MAN.3: Gestão da Qualidade Objetivo: monitorar a qualidade dos produtos e serviços do projeto e garantir que o cliente esteja satisfeito, estabelecendo o foco apropriado de monitoração nos níveis organizacionais e de projeto. MAN.4 Gestão de Risco Objetivo: identificar, analisar, priorizar e monitorar riscos continuamente, desenvolvendo planos de contingência para os mais críticos CATEGORIA: ORGANIZACIONAIS(ORG) ORG.1: Processo de Alinhamento Gerencial Objetivo: assegurar que a visão da empresa e sua missão sejam compreendidas por todos. ORG.2: Processo de Melhoria Objetivo: estabelecer, medir, controlar e aperfeiçoar os processos do ciclo de vida de software. Subprocessos: ORG.2.1: Processo para o estabelecimento de processos ORG.2.2: Processo para a avaliação de processos ORG.2.3: Processo de melhoria de processos ORG.3: Processo de Gestão de Recursos Humanos Objetivo: prover para a organização indivíduos capacitados para exercer os seus papéis, como indivíduos e em grupo. ORG.4: Processo de Infraestrutura Objetivo: manter a forma estável e confiável a infraestrutura necessária para apoiar a execução de outros processos. ORG.5: Processo de Medida Objetivo: 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. ORG.6: Processo de Reuso Objetivo: promover e facilitar o reuso de produtos de trabalho de software novos ou existentes. Em uma organização vários processos podem ter níveis de capacidade variáveis A 15504 define 6 níveis de capacidade Sequenciais e cumulativos Os níveis podem ser usados: Para avaliar como uma organização está realizando um determinado processo. Como guia para a melhoria. Cada nível de capacidade é descrito basicamente por um nome, definição e atributos. Níveis deDE Capacidade: NÍVEIS CAPACIDADE Otimizando Métrica para avaliação e roteiro para melhoria, ... Previsível Estabelecido Gerenciado Executado Incompleto 1 0 Processo não existe ou geralmente falha Processo atinge os objetivos, porem sem padrão de qualidade e sem controle de prazos e custos Processo planejado e acompanhando, e satisfaz requisitos definidos de: qualidade, prazo, e custos, e seus produtos de trabalho são gerenciados 4 3 2 Processo executado e gerenciado com uma adaptação de um processo padrão definido, eficaz e eficiente 5 Processo executado dentro de limites de controle definidos e com medições detalhadas e analisadas Processo melhorado continuamente de forma disciplinada ... baseados na capacidade do processo Níveis de Capacidade e Atributos de Processo Nível 0: Nível 1: Nível 2: Nível 3: Nível 4: Nível 5: Processo Incompleto VISÃO GERAL (não tem atributos) Processo Executado PA 1.1: Atributo de Execução de Processo Processo Gerenciado PA 2.1: Atributo da Gerência de Execução PA 2.2: Atributo de Gerência de Produto de Trabalho Processo Estabelecido PA 3.1: Atributo de Definição de Processo PA 3.2: Atributo de Implementação de Processo Processo Previsível PA 4.1: Atributo de Medição de Processo PA 4.2: Atributo de Controle de Processo Processo em Otimização PA 5.1: Atributo de Inovação de Processo PA 5.2: Atributo de Otimização do Processo ATRIBUTOS DOS PROCESSOS PA 1.1: O processo atinge os objetivos esperados. PA 2.1: Objetivos do processo são identificados e sua execução é planejada. PA 2.2: Produtos do processo são identificados e documentados, requisitos para eles são definidos e revisões e ajustes são efetuados conforme necessário. PA 3.1: Um processo padrão é definido para a organização. PA 3.2: Os elementos identificados em PA 3.1 são posto em prática. PA 4.1:Estabelecem-se objetivos quantitativos, bem como as medições a serem realizadas e a frequência de sua aplicação. Os resultados são coletados, analisados e publicados na organização. PA 4.2: Estabelecem-se limites de variação para as medidas e ações corretivas para tratar as causas de desvios em relação a esses limites. PA 5.1:Objetivos de melhoria são estabelecidos. Oportunidades de melhoria são identificadas. PA 5.2:O desempenho do processo é medido e o impacto das melhorias propostas é comparado com os objetivos esperados. A implementação de mudanças é gerenciada. AVALIAÇÃO DOS ATRIBUTOS DOS PROCESSOS N Não atingido P Parcialmente atingido L Largamente atingido T OU F Totalmente atingido 0a 15% Existe pouca ou nenhuma evidência de que o atributo de processo seja alcançado. 16 a 50% Existe evidência de uma abordagem significativa para atingir o atributo, mas alguns aspectos (tais como resultados) são ainda imprevisíveis. 51 a 85% O desempenho do processo pode variar em algumas áreas . 86 a 100% Não há nenhuma falta ou falha significativa. Avaliação de Processo (ISO 15504-2 e ISO 15504-3) Exemplos de Pontuação de atributos de Processos Pontuação dos atributos Nível 1 Atributo 1.1 2 3 4 5 Nível de capacidade do processo 2.1 2.2 3.1 3.2 4.1 4.2 5.1 5.2 Proc.1: F L F P P P N -- -- ..... 2 ..... Proc.2: F F L F F P P N N ..... 2 ..... Proc.3: P P N N N -- -- -- -- ..... 0 ..... Proc.4: F F F F L P P N N ..... 3 ..... Proc.5: F P L P N -- -- -- -- ..... 1 ..... Proc.6: F F F F F F L P P ..... 4 ..... A ISO/IEC 15504-4 descreve um guia para orientação da melhoria de processo, tendo como referência um modelo de processo e como uma das etapas a realização de uma avaliação de processo . •Não pressupõe modelos de ciclo de vida de software, tecnologias de software ou metodologias de desenvolvimento. •O ISO/IEC 15504 não define um método explícito de avaliação, define os requisitos para o Método de Avaliação de Processos. •Na prática, uma avaliação de processos de software é conduzida utilizando o Modelo de Avaliação de Processos e não o Modelo de Referência de Processos.