ISO/IEC 15504 (SPICE) Prof. Alexandre Vasconcelos ([email protected]) 1/39 Projeto SPICE e ISO/IEC 15504 • Norma ISO/IEC 15504 (desenvolvida pela ISO e pelo IEC, com o apoio do projeto SPICE - Software Process Improvement and Capability dEtermination) • Padrão Internacional para Avaliação de Processos de Software • Tem como modelo de referência de Processo a Norma ISO/IEC 12207 2/39 Objetivos • Determinar a capacidade dos processos de uma empresa • Orientar a empresa para uma melhoria contínua de seus processos 3/39 Benefícios • Para Indústria de Software – Fornecedores de software submetem-se a apenas um esquema de avaliação de software – Organizações de desenvolvimento de software têm uma ferramenta para iniciar e manter um processo contínuo de melhoria • Para os Compradores de Software – Permite determinar a capacidade dos fornecedores de software e avaliar os riscos na seleção de um fornecedor sobre outro 4/39 Histórico • Janeiro de 1992: estudo da ISO sobre as necessidades e os requisitos de um padrão internacional para avaliação de processos de SW; • 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. 5/39 Propósito de Uso • Auto-compreensão do estado de processos de software • Auto-determinação de adequabilidade de processos para determinados (classe de) requisitos • Determinação da adequabilidade dos processos de uma organização (fornecedora) no atendimento a um (uma classe de) contrato particular 6/39 Requisitos para uma avaliação • Uma avaliação de processo para ser conforme com a 15504, tem que satisfazer três requisitos básicos: – ser verificada por um avaliador competente – ter como referência um modelo de avaliação de processo compatível (ex. 15504-5) – ser realizada seguindo um processo compatível 7/39 15504 - Hoje • Cobre todos os aspectos da Qualidade do Processo de Software e tem sido elaborada num esforço de centros técnicos espalhados pelo mundo (EUA, Canadá, América Latina, Europa, Pacífico Norte e Pacífico Sul) • Um grupo de estudos da ABNT tem participando do processo de desenvolvimento, além de trabalhar nas versões da norma para o português http://www.sqi.gu.edu.au/spice/ 8/39 Composição da Norma • 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, apresenta os Requisitos para uma avaliação compatível com a 15504 • 15504-3: Guia sobre Executando uma Avaliação (Guidance on performing an assessment) Informativo - Publicação 2004, apresenta um Exemplo de um processo de avaliação • 15504-4: Guia sobre Utilização do Resultado de Avaliação (Guidance on using assessment results) Informativo - Publicação 2004, apresenta um Guia para orientação na melhoria de processos • 15504-5: Um Exemplo de Modelo de Avaliação de Processo (An exemplar process assessment model) Informativo - Publicação 2005, apresenta um Modelo de capacidade para a Engenharia de Software com base nos processos da ISO 12207 9/39 Visões da 15504 • Framework ISO/IEC 15504-2: Estrutura e requisitos para modelos de capacidade de processo e métodos de avaliação de processo Para entidades desenvolvedoras de modelos e métodos • Modelo ISO/IEC 15504-5: Exemplo de um modelo, no caso para software (com base na ISO/IEC 12207) Para organizações intensivas em software Salviano, Clenio F., 2006 10/39 Modelo de Processo da ISO 15504 • A arquitetura dos modelos é denominada de arquitetura contínua, com duas dimensões: – dimensão de processo (relacionada a “o que fazer”, organizada em processos específicos); nível de – dimensão de capacidades capacidade de de processo (relacionada ao processos “quão bem fazer qualquer coisa”, organizada em níveis de capacidade pa pb ... pn processos genéricos). . • A 15504-5 define um exemplo de um modelo compatível com a 15504-2: denominado de ISO/IEC 15504-5, e representa um conjunto de melhores práticas para a engenharia de software. 11/39 ISO/IEC 15504-2 níveis de capacidade e requisitos para: métodos de avaliação de processo modelos para avaliação de processo 15504-5 FAA Software iCMM CMMI SE/SW RAPID OO SPICE QuickLocus SPICE 4Space Automotive SPICE MARES SCAMPI 15504 MPE MR- ... MPS MA-MPS ... Relação de modelos para avaliação de processo e métodos de avaliação de processo. Salviano, Clênio Figueiredo - 2006 12/39 Processos15504-5: Dimensão de Processos 13/39 48 processos que estão organizados em 3 categorias de processo e 10 grupos de processo 14/39 15/39 Exemplo: Processo de Aquisição - The Acquisition Process Group (ACQ) • • • • Identificação: ACQ.1 Nome: Preparação para aquisição (Acquisition preparation ) Propósito: estabelecer as necessidades e objetivos da aquisição e comunicá-los aos potenciais fornecedores. Resultados: – – – – – • R1 - o conceito ou a necessidade de aquisição, desenvolvimento ou melhoria é estabelecido; R2 - os requisitos de aquisição necessários, definindo as necessidades do projeto, são definidos e validados; R3 - os requisitos conhecidos do cliente são definidos e validados; R4 - uma estratégia de aquisição é desenvolvida; e R5 - os critérios de seleção do fornecedor são definidos. Práticas Base: – – – – – – ACQ.1.BP1: Establish the need. Establish a need to acquire, develop, or enhance a system, software product or service. [Outcome: 1] ACQ.1.BP2: Define the requirements. Identify the customer/stakeholder requirements for a system and/or software product or service. [Outcomes: 2, 3] ACQ.1.BP3: Review requirements. Analyze and validate the defined requirements against the identified needs. Validate the requirements to reduce risk of misunderstanding by the potential suppliers. [Outcome: 3] ACQ.1.BP4: Develop acquisition strategy. Develop a strategy for the acquisition of the product according to the acquisition needs. [Outcome: 4] Note 1: The strategy may include reference to the life cycle model, schedule and selection criteria. 16/39 ACQ.1 .... 15504-2: Dimensão de Capacidades 17/39 Nível 5 : Nível 4 : Nível 3 : Nível 2 : Nível 1 : Nível 0 : Processo Otimizando Processo Previsível Processo Estabelecido Processo Gerenciado Processo Executado Processo Incompleto 18/39 Nível 0 - Incompleto • Existe uma falha geral na satisfação do propósito do processo • Existem poucos (ou difíceis de serem identificados) produtos de trabalho ou resultados de processos 19/39 Nível 1 - Executado • O propósito do processo é geralmente alcançado – talvez de uma forma não planejada e acompanhada • As pessoas da organização reconhecem que uma ação deve ser executada e quando isto deve ser feito • Existem produtos de trabalho para o processo e eles evidenciam a satisfação do propósito do processo 20/39 Nível 2 - Gerenciado • O processo produz produtos de trabalho de acordo com procedimentos específicos – Processo planejado e acompanhado • Os produtos de trabalho estão conforme os padrões e requisitos especificados • A execução do processo passa a construir produtos de trabalho que satisfazem os requisitos de qualidade especificados, dentro do cronograma de tempo e dos recursos necessários 21/39 Nível 3 - Estabelecido • O processo é executado e gerenciado utilizando um processo definido • A implantação de um processo usa uma versão customizada e aprovada de um processo padrão • O processo utiliza um processo padrão que é capaz de atingir seus resultados definidos 22/39 Nível 4 - Previsível • O processo definido é executado consistentemente na prática, dentro de limites de controle definidos • Medições detalhadas de desempenho são coletadas e analisadas • A qualidade dos produtos é conhecida de forma quantitativa • O processo passa a ser executado consistentemente dentro de limites definidos para atingir seus resultados 23/39 Nível 5 - Otimizando • O desempenho do processo é continuamente melhorado • O processo consegue repetibilidade em atingir suas metas de negócio definidas • Otimização contínua do processo envolve experiências de ideias e tecnologias inovadoras 24/39 Avaliação de Processo com a ISO 15504 • A 15504-2 define os requisitos para uma avaliação compatível com a 15504. • inclui os principais elementos de um processo de avaliação de processo. 25/39 Elementos de um processo de avaliação de processo Modelo de Referência de Processo (compatível) Framework de Medição • Níveis de Capacidade • Atributos de Processo • Escala de Medição • Processos • Objetivos e Resultados Modelo de Avaliação de Processo (compatível) • Escopo • Indicadores • Mapeamento • Tradução ENTRADA . Identificação do patrocinador . Objetivo e escopo . Restrições . Equipe de avaliação PROCESSO DE AVALIAÇÃO Planejamento Coleta de dados Validação dos dados Pontuação dos atributos de processo Representação dos resultados SAIDA . Identificação das evidências . Processo utilizado . Perfil dos processos avaliados Papéis e responsabilidades . Patrocinador . Avaliador Competente . Avaliadores 26/39 Requisitos para uma avaliação compatível com a 15504: 27/39 Pontuação de Atributo de Processo • Um valor tem que ser atribuído a cada atributo de processo, baseado nos dados validados. • composta pelos seguintes valores: – “N”: o atributo não foi atingido pelo processo; – “P”: o atributo foi atingindo apenas parcialmente pelo processo; – “L”: o atributo foi atingido largamente pelo processo; e – “F”: o atributo foi atingido completamente (em inglês, fully) pelo processo. Para estar em um nível de capacidade, um processo tem que ter notas “L” ou “F” nos atributos do nível e “F” em todos os atributos dos níveis anteriores. 28/39 Exemplos de Pontuação de Atributos de Processo Pontuação dos atributos Nível 1 Atributo 1.1 2 3 2.1 2.2 3.1 3.2 Proc.1: F L F P P Proc.2: F F L F F 4 5 4.1 4.2 5.1 5.2 Nível de capacidade do processo P N -- -- ..... 2 ..... P P N N ..... 2 ..... Proc.3: P P N N N -- -- -- -- ..... 0 ..... Proc.4: F F F P P N N ..... 3 ..... Proc.5: F P L P N -- -- -- -- ..... 1 ..... Proc.6: F F F P P ..... 4 ..... F L F F F L 29/39 Melhoria de Processo (ISO 15504) • 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 30/39 Melhoria de Processo ISO/IEC 15504-4 8 - Monitorar desempenho 7 - Matem melhoria 6 - Confirmar melhoria 1 - Examinar necessidades da organização 2 - Inicia processo de melhoria 5 -Implementa melhoria 3 - Avalia Processo 4 - Planeja Melhoria 31/39 Utilização da ISO/IEC 15504 Quem Porque Como Quando Organizações de software O que fazer para melhorar o processo de software •Guia para Gerenciar o processo e práticas •Guia de referência •Documentos de treinamento Durante o desenvolvimento ou revisão do processo de software Avaliadores do Processo Determinar como as organizações gerenciam processos de software e seus resultados Lista de Verificação Antes e durante a avaliação do processo de software 32/39 Processo É sujeito a Identifica mudanças no Identifica aplicabilidade Avaliação do Processo Leva a Melhoria do Processo Leva a Pode levar a Determinação da Capacitação 33/39 Comparação com outros Modelos 34/39 ASPECTOS ABORDADOS ISO 9001/9000-3 ISO/IEC 12207 OBJETIVOS Certificar a empresa de acordo com o contrato de fornecimento do software. sim Verificação do acordo de processos a padrões documentados Estabelece um entendimento para todos os processos envolvidos com software. NORMA ABORDAGEM ORGANIZAÇÃO ALVO Empresa que precisa de uma certificação ÓRGÃO DE DESENVOLVIMENTO ISO sim É apresentado o conceito dos processos para aquisição, fornecimento, operação e manutenção de software. Empresa em geral ISO CMM I SPICE /ISO 15504 Motivar a capacitação Motivar a da organização de capacitação, acordo com níveis promover melhoria e estabelecidos. ter o conhecimento para avaliar os processos. não sim Avaliação dos Avaliação dos processos e processos da enquadramento da empresa em relação empresa em um dos a níveis de níveis de maturidade. ccapacidade. Empresa que Empresa em geral necessita da comprovação formal de sua capacidade. SEI – Software ISO/IEC Engineering Institute 35/39 Conclusão • É um Modelo para definir modelos de avaliação Não pressupõe modelos de ciclo de vida de software, tecnologias de software ou metodologias de desenvolvimento • 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 36/39 Referências • Software Process Improvement and Capability dEtermination • http://www.sqi.gu.edu.au/spice/ • Melhoria e Avaliação de Processo com ISO/IEC 15504 (SPICE) e CMMI, Texto acadêmico – UFLA • César, Ana Cristina Freitas César. Aplicando Padrões de Qualidade no Sistema de Referência Bibliográfica, Texto acadêmico – FIP • http://www.isospice.com/articles/15/4/TR15504/Page4.html 37/39 Referências • http://en.wikipedia.org/wiki/ISO_15504 • http://www.isospice.typepad.com/isospice_pt_is15504/ • Lima,Geovane Nogueira . SPICE/ ISO 15504 • Apresentação • Costa, Keilla . SPICE • Apresentação • Salviano, Clenio F. 15504MPE - Desenvolvendo um Método para Avaliação de Processos de Software em MPEs Utilizando a ISO/IEC 15504, 2003. • Salviano, Clenio F. Novidades dos modelos do CMMI, SPICE/ISO 15504 e MPS-BR, 2006. 38/39 Referências • Salviano, Clênio Figueiredo. Livro: Melhoria e Avaliação de Processo de Software com o Modelo ISO/IEC 15504-5: 2006 • Fernandes, Jorge H.C. SPICE e ISO 15504, 2004 • Cortês, Mário L. Modelo de Qualidade de SW, 2004 39/39