3_Qualidade de software novo
Transcrição
3_Qualidade de software novo
Produto de Software Qualidade de Software Qualidade de produto de software A totalidade das características que sustenta sua habilidade em satisfazer necessidades declaradas ou implícitas. ISO 8402: 1986 Um produto de software compreende os programas e procedimentos de computador e a documentação e dados associados, que foram projetados para serem liberados para o usuário [ISO /IEC 12207-1]. Qualidade de software (Pressman) Conformidade com requisitos funcionais e de desempenho explicitamente declarados, padrões de desenvolvimento explicitamente documentados e características implícitas, que são esperadas em todo software desenvolvido profissionalmente. 1 Qualidade de software (Pressman) Conformidade com requisitos funcionais e de desempenho explicitamente declarados, padrões de desenvolvimento explicitamente documentados e características implícitas, que são esperadas em todo software desenvolvido profissionalmente. Qualidade de software (Pressman) Conformidade com requisitos funcionais e de desempenho explicitamente declarados, padrões de desenvolvimento explicitamente documentados e características implícitas, que são esperadas em todo software desenvolvido profissionalmente. Base a partir da qual a qualidade é medida Propostas Qualidade de software (Pressman) Conformidade com requisitos funcionais e de desempenho explicitamente declarados, padrões de desenvolvimento explicitamente documentados e características implícitas, que são esperadas em todo software desenvolvido profissionalmente. Requisitos que frequentemente não são mencionados mas são importantes (facilidade de uso, manutenibilidade) Conjunto de critérios de desenvolvimento que guia o modo pelo qual o software é construído Gerais Processo Produto NBR ISO 9000:2005 – define principios e vocabulário NBR ISO 9001:2000 – define exigências para sistema de gerência de qualidade NBR ISO 9004:2000 – apresenta linha diretivas para o melhoramento do desempenho da empresa ISO/IEC 12207 - 95 – Processo de ciclo de vida do software CMMI – Modelo de capacidade de maturação para software ISO/IEC 15504 – Modelo de melhoramento e avaliação do Processo MPS-BR McCall (1977) , FURPS e Usabilidade (Nielsen) ISO/IEC 25000:2005 (projeto SQUARE)introdução geral ISO/IEC 2501n:2005 evolução da ISO/IEC 9126 – Qualidade do produto ISO/IEC 2504n: 2005 evolução da ISO/IEC 14598 – Guia de Avaliação 2 Modelo de McCall – 1977 Fatores e critérios Modelo da HP (FURPS) Manutenibilidade Flexibilidade Testabilidade Portabilidade Reusabilidade Interoperabilidade Revisão Transição Baseado no Modelo de McCall FURPS Corretude Confiabilidade Operação Usabilidade Functionality (Funcionalidade) Usability (Usabilidade) Reliability (Confiabilidade) Performance (Desempenho) Supportability (Suportabilidade) Eficiência Integridade Usabilidade Dez princípios heurísticos de Nielsen - USABILIDADE Nielsen, Jakob; LORANGER, Hoa. Usabilidade na Web. Rio de Janeiro. Elsevier, 2007. Manter o usuário sempre informado sobre as ações e dar orientações de procedimentos a cada situação O site deve falar a linguagem do usuário, utilizando palavras, frases e conceitos familiares, apresentando as informações em ordem natural e lógica Dar ao usuário informações que ele possa fazer ou desfazer ações Oferecer ao usuário um padrão de navegação em todas as páginas A partir de um projeto cuidadoso, deve-se minimizar a ocorrência de erros 3 Dez princípios heurísticos de Nielsen - USABILIDADE Nielsen, Jakob; LORANGER, Hoa. Usabilidade na Web. Rio de Janeiro. Elsevier, 2007. Objetos, ações e opções visíveis auxiliam o usuário a localizar o que deseja, mesmo na navegação de uma página a outra Projetar a interface de forma a atenter tanto os usuários experientes como os novatos Informações apresentadas (textos e elementos gráficos) devem ser relevantes e relacionados diretamente ao assunto, o conceito do site As mensagens de erro devem ser claras e objetivas (não use códigos) e, além de indicar o problema, precisam sugerir uma solução Oferecer ferramentas de ajuda e documentação que auxiliem a busca de informações (busca por palavras ou mata do site, por exemplo) Norma ISO/IEC 2501n (Futura) NBR 13596 (ISO 9126) (Atual) ISO 9126 NBR 13596 Norma NBR 13596 (ISO/IEC 9126) – Exemplo FUNCIONALIDADE - Satisfaz as necessidades? SUBCARACTERÍSTICA / PERGUNTA CHAVE Adequação: Propõe-se a fazer o que é apropriado? Acurácia: Faz o que foi proposto de forma correta? Interoperabilidade: É capaz de interagir com os sistemas especificados? Conformidade: Está de acordo com as normas, leis, etc.? Segurança de Acesso: Evita acesso não autorizado a programas e dados? Tradução da Norma ISO/IEC 9126 Publicada em agosto de 1996. Projeto SQuare – ISO 2501n (futuro) Seis características Inicio 1985 – publicação 1991 Funcionalidade, Confiabilidade, Usabilidade, Eficiência, Manutenibilidade, Portabilidade Cada característica, por sua vez, é dividido em algumas subcaracterísticas. Pacote de Software Produto de software que envolve um conjunto completo e documentado de programas fornecidos a diversos usuários para uma aplicação ou função genérica. Também conhecido como “software de prateleira”. 4 Norma NBR 12119 – Qualidade de Pacotes de Software Norma NBR 12119 - publicada em 1996 Trata da avaliação de pacotes de software Está organizada em duas partes Descrição do produto Documentação do usuário Programas e dados Instruções para Teste Complexidade dos produtos de software Software é invisível, portanto sua representação em grafos e diagrama não é precisa nem suficiente A engenharia de software ainda não está madura Não há consenso entre os profissionais sobre o que é qualidade Requisitos gerais sobre o conteúdo da descrição do produto; Identificações e indicações; Declarações sobre: Pré-requisitos de teste Atividades de teste Registros de teste Relatório de teste Dificultadores para a Qualidade Descrição do produto Requisitos de Qualidade Norma NBR 12119 – Exemplo Funcionalidade; Confiabilidade; Usabilidade; Premissas da Qualidade Deve estar inserida já nas primeiras fases do ciclo de vida do desenvolvimento de software Envolvimento de todas as pessoas (desde a alta administração até os técnicos) Recursos financeiros e humanos Treinamento e comunicação Planejar e estimar prazos 5 Exercícios Elabore uma forma de comparar dois programas para saber qual deles tem mais qualidade A engenharia de software foi criada para resolver os problemas da crise de software, ou seja, para que os softwares produzidos tivessem qualidade a um preço e prazo razoaveis e que pudessem ser corretamente planejados. Mas os fatores que levaram os pesquisadores a denominarem o termo “crise de software” estão ainda presentes. Discuta se o termo crise é adequado e quais as principais conquistas dos ultimos trinta anos da área. 6