ISO/IEC 14598-4 Filipa Silva, nº 14324 Vítor Gouveia, nº 12815 ISO/IEC 14598-4 1 Introdução A norma que vamos apresentar é a quarta parte da norma ISO/IEC 14598. A norma ISO/IEC 14598 está dividida em seis partes e fornece métodos para medição e avaliação da qualidade do software. A nossa norma foi preparada pelo Joint Technical Commitee ISO/IEC JTC 1, Information Technology, Subcommittee SC 7, Software engineering em 1999, e veio para permitir avaliar a qualidade de produtos de software durante o processo da sua aquisição ou ajudar na decisão da reutilização de produtos ou componentes já existentes. ISO/IEC 14598-4 2 Para que a avaliação seja possível, a norma dispõe de requisitos, recomendações e guidelines. A construção da norma veio no seguimento de um aumento da necessidade de software para os sistemas cada vez mais complexos. O comércio de produtos COTS está a acelerar e a rápida evolução da engenharia de software reduz a confiança nos produtos custom. O desenvolvimento da abordagem object-oriented veio também reduzir os requisitos, aumentar a qualidade e a reutilização de software. ISO/IEC 14598-4 3 Esta norma destina-se a gestores de projectos, engenheiros de sistemas, programadores e equipas de manutenção de software, utilizadores finais que planeiam adquirir um produto de software e fornecedores que oferecem os produtos. Os produtos a serem avaliados por esta norma podem ser para integração em sistemas grandes como componentes ou para serem usados sozinhos. Eles podem ser classificados como: • Produtos comerciais “off-the-shelf”(COTS) • Produtos de software existentes que foram desenvolvidos ou adquiridos para outras aplicações • Produtos de software custom ou modificações a produtos já existentes. ISO/IEC 14598-4 4 Estrutura da norma Esta norma está organizada segundo uma estrutura bem definida. • Introdução, scope e referencias • Definição de vocabulário • Considerações gerais na avaliação do produto de software • Avaliação durante o processo de aquisição de produtos COTS • Avaliação durante a aquisição de produtos “custom” e modificações a software existente • Anexos ISO/IEC 14598-4 5 Referências ISO/IEC 14598-4 6 Avaliação do produto de software • Correlação entre o processo de avaliação e o processo de aquisição As actividades do processo de aquisição estão associadas com as actividades do processo de avaliação, em geral. O comprador deve definir o processo de avaliação e o processo de aquisição que vai ser seguido na avaliação de requisitos. Para grandes sistemas em desenvolvimento, as actividades acima descritas devem ser integradas com outras actividades de desenvolvimento e integração e identificadas no plano de medições do projecto. ISO/IEC 14598-4 7 O processo de aquisição deve passar pelas seguintes fases: • Inicio: identificação dos requisitos de software para o produto a ser adquirido, o plano de aquisição e a estratégia de aceitação e seus critérios. • Preparação do pedido de projecto: especificação e documentação dos requisitos de aquisição. • Preparação e actualização do contrato: selecção de fornecedores, preparação, negociação e controlo de alterações ao contrato. • Monitorização dos fornecedores: actividades de avaliação feitas durante a execução do contrato levando à aceitação e entrega do produto. • Aceitação e finalização: actividades levadas a cabo durante a aceitação e entrega do produto final. ISO/IEC 14598-4 8 • Inputs para o processo de avaliação Requisitos de sistema: O ponto de começo para a determinação dos requisitos da avaliação para o software começa com todos os requisitos de sistema. Os requisitos de sistema identificam os utilizadores, os seus objectivos, tarefas e características, o ambiente no qual o software vai ser usado, e outros requisitos funcionais do produto. As operações de desenho durante o desenvolvimento do ciclo de vida do sistema levam a decisões de comprar ou reutilizar um produto COTS. Se o produto for para integrar num sistema grande, os requisitos de software devem ser definidos para cada item da configuração do sistema. Requisitos ao nível da integridade: Se o software for critico, os requisitos ao nível da integridade devem ser estabelecidos e documentados antes da aquisição e avaliação. ISO/IEC 14598-4 9 Especificação de requisitos de software: Os requisitos de software devem ser definidos usando um modelo de qualidade apropriado e bem definido. Os requisitos devem ser definidos em termos de métricas externas que se relacionam directamente com as necessidades do utilizador e que devem ser documentadas numa especificação de requisitos. A especificação de requisitos pode depois formar a base dos requisitos para a aquisição usados no processo de avaliação e aquisição. Avaliação executada por terceiros: o âmbito do processo de avaliação pode ser reduzido se tivermos acesso aos resultados de actividades de avaliação realizadas por terceiros, desde que os resultados sejam de confiança. No entanto, isto pode levantar custo de tempo e dinheiro para obter e interpretar esses resultados, afectando a praticabilidade deste método. ISO/IEC 14598-4 10 • Tailoring O processo de avaliação pode ser aplicado a um vasto leque de requisitos de aquisição, requisitos de integridade e objectivos do avaliador. No entanto, o processo de avaliação deve ser flexível para se adaptar às características únicas de cada aplicação, evitando trabalho desnecessário. O nível de integridade do software determina o rigor e a formalidade do processo de software, ou seja, quanto maior o nível de integridade, maior deve ser o rigor e o número de actividades e tarefas associadas ao processo de aquisição. ISO/IEC 14598-4 11 Avaliação durante a aquisição de produtos COTS O processo de avaliação genérico para produtos de software consiste em quatro passos, que estão especificamente implementados e refinados para focar a avaliação da qualidade de um produto durante a aquisição de COTS. ISO/IEC 14598-4 12 Passo 1:Definição de requisitos de avaliação Inputs: Requisitos de sistema/software. Tarefas chave: Especificação de objectivos, propósito e âmbito. Especificação do rigor da avaliação. Identificação dos inputs para a avaliação. Identificação do processo de aquisição a ser seguido e como os requisitos de inputs da avaliação são para ser comunicados ao fornecedor. Resultados: Especificação dos requisitos de avaliação ISO/IEC 14598-4 13 Passo 2: Especificação da avaliação Inputs: requisitos de avaliação. Tarefas chave: Selecção de métricas que se correlacionam com as características do produto de software. Estabelecimento de níveis de classificação. Selecção do conjunto mais eficaz de métodos de avaliação. Estabelecimento de procedimentos para sumariar os resultados da avaliação de diferentes características de qualidade e outros aspectos que contribuem para a avaliação da qualidade de um produto de software num ambiente particular. Resultados: Especificação da avaliação ISO/IEC 14598-4 14 Passo 3: Desenho da avaliação Inputs: especificação da avaliação. Tarefas chave: Preparação de um plano de avaliação descrevendo métodos e o calendário da avaliação. Identificação de pontos chave entre as actividades de avaliação e as actividades de aquisição. Resultados: Plano da avaliação ISO/IEC 14598-4 15 Passo 4: Execução da avaliação Inputs: plano da avaliação. Tarefas chave: Execução das actividades de avaliação seleccionadas e análise e registo dos resultados para determinação da viabilidade do produto de software. Análise do impacto das deficiências encontradas e das opções que regulam o uso do produto. Esboçar conclusões sobre a aceitabilidade do produto e a ultima decisão de comprar ou não comprar. Resultados: Registos da avaliação e resultados. ISO/IEC 14598-4 16 Avaliação durante a aquisição de software “custom” e modificações a software existente. Neste ponto, o processo de avaliação genérico foi adaptado para a aquisição de software feito à medida (custom) ou para modificações a software existente. ISO/IEC 14598-4 17 • Passo 1: o passo 1 definido para o caso anterior também se aplica neste caso. Os requisitos de avaliação formam a base dos requisitos de aquisição que vão constituir parte do pedido de proposta feita a fornecedores pré seleccionados. Para modificações a software existente, a avaliação tem de ser focada primeiramente nas partes do software que vão ser alteradas e nas suas interfaces. Os fornecedores vão ser pré seleccionados através de avaliações preliminares que avaliam as suas qualificações (exemplo, capacidade, programa de qualidade,...). • Passo 2: o passo 2 definido para o caso anterior também se aplica neste caso. No entanto, são necessárias medidas adicionais como parte do processo de desenvolvimento do produtor, para prever a qualidade final do produto baseada em medidas de qualidade. ISO/IEC 14598-4 18 • Passo 3: o passo 3 definido para o caso anterior também se aplica neste caso com algumas considerações adicionais. Seleccionar o fornecedor durante a proposta pode requerer que este actualize o processo de engenharia de software e de manutenção. As actividade de avaliação necessárias passam a fazer parte do processo de execução do fornecedor. Estes requisitos estão especificados no plano de qualidade ou de desenvolvimento que o produtor deve seguir. O comprador vai monitorizar a execução do plano do produtor e estabelecer os requisitos para o plano em acordo contratual. • Passo 4: também o passo 4 definido anteriormente se aplica a este caso, excepto que a avaliação é levada a cabo pelo fornecedor e monitorizada pelo comprador de acordo com o plano estabelecido. Antes da entrega do produto é necessário um teste positivo para a aceitação do mesmo. ISO/IEC 14598-4 19 Notas: • O nível de detalhe e finalização da especificação dos requisitos de avaliação afecta directamente a o nível de finalização da avaliação. • Uma avaliação baseada apenas em requisitos preliminares não pode ser considerada uma avaliação completa. • A avaliação da especificação deve ser documentada para que possa ser repetida por qualquer pessoa qualificada de modo a obter resultados idênticos. ISO/IEC 14598-4 20 ISO/IEC 14598-4 21 ISO/IEC 14598-4 22 Perguntas 09-06-2006 ISO/IEC 14598-4 23