qualidade de software prof a. inês ap. gasparotto boaventura 1. semestre/2001 qualidade de software...

39
Qualidade de Software Qualidade de Software Engenharia de Software Prof Prof a a . Inês Ap. Gasparotto Boaventura . Inês Ap. Gasparotto Boaventura 1. Semestre/2001 1. Semestre/2001

Upload: eduarda-macario

Post on 07-Apr-2016

216 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Qualidade de SoftwareQualidade de Software

Engenharia de Software ProfProfaa. Inês Ap. Gasparotto Boaventura. Inês Ap. Gasparotto Boaventura

1. Semestre/20011. Semestre/2001

Page 2: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

IntroduçãoIntrodução

• QualidadeQualidade é um dos principais objetivos da Engenharia de Software.

• Muitos métodos, técnicas e ferramentas são desenvolvidas para apoiar a produção com qualidade.

• “Tem-se dado grande importância ao processo como forma de se garantir um software de melhor qualidade.”

Page 3: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

QualidadeQualidade

Termo que pode ser definido de várias formas, causando mal-entendidos:

1. Qualidade não tem um único sentido;

2. Para cada conceito existem vários níveis de abstração;

3. Visão popular pode ser diferente do seu uso profissional.

Page 4: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Qualidade: Visão PopularQualidade: Visão Popular

• termo indefinível.

• pode ser sentida, discutida, julgada, mas não pode ser medida;

• luxo, classe e elegância. Produtos caros e complexos têm melhor nível de qualidade. Confiabilidade e o número de reparos efetuados não são considerados.

Page 5: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Qualidade: Definições SimplesQualidade: Definições Simples

• Qualidade é estar em conformidade com os requisitos do cliente.

• Qualidade é antecipar e satisfazer os requisitos dos clientes.

• Qualidade é escrever tudo o que se deve fazer e fazer tudo o que foi escrito.

Page 6: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Qualidade: Visão ProfissionalQualidade: Visão Profissional

DefiniçõesDefinições

Crosby: “Conformidade aos Requisitos”

Juran: “Conveniência para Uso”

Requisitos devem ser claramente definidos e não podem ser mal-interpretados.Não conformidade = ausência de qualidade.

• Considera os requisitos e a expectativa do cliente.• Um produto deve ter elementos que satisfaçam as diversas maneiras com que os clientes o utilizarão. • Parâmetros da conveniência para uso: Qualidade de Projeto e de Conformidade.

As duas definições são similares embora a segunda As duas definições são similares embora a segunda dê mais ênfase às expectativas do usuário.dê mais ênfase às expectativas do usuário.

Page 7: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Qualidade: Definição segundo NBR 8402Qualidade: Definição segundo NBR 8402

A totalidade das características de uma entidade que lhe confere a capacidade de satisfazer as necessidades explícitas e implícitas.

• sabor• aparência• temperatura• rapidez no serviço• preço• higiene• valor nutricional

Qualidade :

Ex: Qualidade de um prato de comida está relacionado com a satisfação das necessidades:

Page 8: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Qualidade : Certificação de QualidadeQualidade : Certificação de Qualidade

A qualidade não basta existir, ela deve ser reconhecida pelo cliente.

A certificação de qualidade oficial é emitida com base em um padrão.

Ex. Certificados O selo do SIF O selo da ABIC A classificação em estrelas dos hotéis Os certificados de qualidade da série ISO 9000

(padrão de qualidade) .

Page 9: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Qualidade : Organizações NormalizadorasQualidade : Organizações Normalizadoras

ISO - International Organization for Standardization IEEE - Instituto de Engenharia Elétrica e Eletrônica ABNT - Associação Brasileira de Normas Técnicas

Para a emissão de certificado, é preciso a realização de todo um processo de avaliação e julgamento de acordo com uma determinada norma.INMETRO - orgão do governo responsável pelo credenciamento das instituições que realizam a certificação.

Page 10: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Evolução dos Conceitos de Qualidade Evolução dos Conceitos de Qualidade

1900 - Inspeção pós-produção - avalia o produto final. 1940 - Controle estatístico da produção. 1950 - Avaliação do procedimento de produção. 1960 - Educação das pessoas. 1970 - Otimização dos processos. 1980 - Projeto robusto - avaliação do processo. 1990 - Engenharia Simultânea - avalia a própria

concepção do produto.

Page 11: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Qualidade aplicada ao SoftwareQualidade aplicada ao Software

Mito: Criar programas é uma arte que não pode seguir regras, normas ou padrões.

Causas: Produtos de software são complexos. Software não tem produção em série. Custo está no projeto e desenvolvimento. Software não se desgasta. Software é invisível. Sua representação em grafos e diagramas não é precisa.A Engenharia de Software ainda não está madura, é uma tecnologia em evolução.Não há um acordo entre os profissionais sobre o que é qualidade de software.

Page 12: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Qualidade de SoftwareQualidade de Software

Perspectiva Histórica da Engenharia de Software: anos 60 - Era Funcional anos 70 - Era do Método anos 80 - Era do Custo anos 90 e depois - Era da Qualidade

Qualidade não é um fator de vantagem no mercado, mas é uma necessidadenecessidade para a garantia da competitividade.

Page 13: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Qualidade de Software - Qualidade de Software - atividades para garantia atividades para garantia de qualidade de produtos de softwarede qualidade de produtos de software

Software Quality Assurance: padrão sistemático e planejado de ações que são exigidas para garantir a qualidade de software. Essas ações englobam:

Aplicações de métodos técnicos Realizações de revisões técnicas formais Atividade de teste de software Aplicação de padrões e procedimentos formais Processo de controle de mudanças Mecanismos de medição

Page 14: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Qualidade de Software - Qualidade de Software - técnicas aplicadas ao técnicas aplicadas ao processo de desenvolvimentoprocesso de desenvolvimento

Planejamento de qualidade Melhoria no processo e controle de qualidade Gerenciamento de qualidade no processo Análise de dados sobre a satisfação do cliente

Page 15: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Definição de Qualidade de SoftwareDefinição de Qualidade de Software

“Conformidade aos requisitos de desempenho e de funcionalidade que foram explicitamente

definidos, aos padrões de desenvolvimento explicitamente documentados e às

características implícitas que são esperadas por todo software desenvolvido por profissionais.”

Page 16: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Visões sobre a importância da qualidade do produto e Visões sobre a importância da qualidade do produto e do processodo processo

• Visão que aborda a qualidade do produtoqualidade do produto– Funcionalidade, confiabilidade, usabilidade, eficiência,

manutenibilidade e portabilidade (ISO 9126 e NBR 13596).

• Visão que aborda a qualidade do processoqualidade do processo– Dos requisitos do usuário à entrega do produto final,

existe um processo de desenvolvimento complexo e dividido em fases, que pode comprometer a qualidade do software.

Mesmo diante de divergências, o fato é que o processo influi nas características finais do software.

Page 17: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Principais Normas Nacionais e Internacionais na Área Principais Normas Nacionais e Internacionais na Área de Softwarede Software

NORMA

ISO 9126 Características da qualidade deprodutos de software

NBR 13596 Versão brasileira da ISO 9126

ISO 14598 Guias para avaliação de produtos desoftware, baseados na ISO 9126

ISO 12119 Características de qualidade de pacotes desoftware (software de prateleiras)

ISO 12207 Norma para a qualidade do processo dedesenvolvimento de software.

NBR ISO 9001 Modelo para garantia de qualidade emprojeto, desenvolvimento, intalação eassistência técnica (processo)

Page 18: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Principais Normas Nacionais e Internacionais na Área Principais Normas Nacionais e Internacionais na Área de Softwarede Software

NORMA

CMM Modelo da SEI para avaliação da qualidadedo processo de desenvolvimento desoftware. Não é uma norma ISO, mas émuito bem aceita no mercado.

SPICEISO 15504

Projeto da ISO/IEC para avaliação deprocesso de desenvolvimento de software.Ainda não é uma norma oficial ISO, mas oprocesso está em andamento.

ISO

Page 19: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Qualidade de Produtos de SoftwareQualidade de Produtos de Software

• O que é qualidade de software?• Que padrões utilizar? Parece difícil ... • Muito se tem pensado sobre isso:

– ISO/IEC 9126 - publicada em 1991.– NBR 13596 - publicada em agosto de 1996

Listam um conjunto de características que devem ser verificadas em um software para que ele seja considerado um software de qualidade

Page 20: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Qualidade de Produtos de Software - Qualidade de Produtos de Software - NBR 13596NBR 13596

Característica Subcaracterísticas Pergunta chave para asubcaracterística

Funcionalidade(satisfaz asnecessidades?)

Adequação

Acurácia

Interoperabilidade

Segurança de acesso

Conformidade

Propõe-se a fazer o que éapropriado?Faz o que propôs de maneiracorreta?Interage com os sistemasespecificados?Evita acesso não autorizado adados?Está de acordo com as normas,leis, etc.

Confiabilidade(É imune afalhas?)

Maturidade

Tolerância a falhasRecuperabilidade

Com que frequência apresentafalhas?Ocorrendo falhas, como reage?É capaz de recuperar dados emcaso de falhas?

Usabilidade(É fácil de usar?)

Inteligibilidade

ApreensibilidadeOperacionalidade

É fácil entender o conceito e aaplicação?É fácil aprender a usar?É fácil operar e controlar

Page 21: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Qualidade de Produtos de Software - Qualidade de Produtos de Software - NBR 13596NBR 13596

Característica Subcaracterísticas Pergunta chave para asubcaracterística

Eficiência(Rápido e enxuto)

Tempo

Recursos

Qual o tempo de resposta,velocid. de execução?Quanto recurso usa? Durantequanto tempo?

Manutenibilidade(É fácil demodificar?)

Analisabilidade

ModificabilidadeEstabilidade

Testabilidade

É fácil encontrar uma falha,quando ocorre?È fácil modificar e adaptar?Há grande risco quando se fazalterações?É fácil testar quando se fazalterações?

Portabilidade(É fácil de usar emoutro ambiente?)

Adaptabilidade

Capacidade para serinstaladoConformidade

Capacidade parasubstituir

É fácil adaptar a outrosambientes?É fácill instalar em outrosambientes?Está de acordo com padrões deportabilidade?É fácil usar para substituir outrosistema?

Page 22: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Qualidade de Produto de Software - Qualidade de Produto de Software - NBR 13596NBR 13596

Como aplicar a norma ISO 9126/ NBR 13560?• Para avaliar um software segundo a norma deve-se tentar

atribuir valores (notas ou conceitos) a cada uma das subcaracterísticas.

Fato: É difícil aplicar a norma sem se estar familiarizado com o processo de avaliação de software.

Guias para a avaliação da qualidade - descrevem, detalhadamente todos os passos para se avaliar um software.

Page 23: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Qualidade de Processo de SoftwareQualidade de Processo de Software

Processo de Software = conjunto de ferramentas, métodos e práticas usadas para produzir um software.

• Para melhorar a qualidade no desenvolvimento precisa-se de modelos de processos para a descrição precisa e formal das atividades do ciclo de vida do software.

• Modelo de Processo é representado por um conjunto seqüencial de atividades, objetivos, transformações e eventos que encapsulam estratégias para o cumprimento da evolução do software

Page 24: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Gerência de Processo de SoftwareGerência de Processo de Software

• A gerência de processo objetiva a geração de produtos de acordo com o planejado e, ao mesmo tempo, melhorar a capacidade de produzir software com mais qualidade.

• Melhor capacidade de lidar com o software:Passo 1. Compreender o estado atual do processo;Passo 2. Desenvolver uma visão do processo desejado;Passo 3. Estabelecer ações para a melhoria do processo;Passo 4. Gerar um plano para acompanhar estas ações;Passo 5. Compreender os recursos para execução do plano;Passo 6. Recomeçar a partir do Passo 1.

• Para a evolução do processo de software é necessário ter uma maneira para medí-lo.

Page 25: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Modelos para a Avaliação do Processo de SoftwareModelos para a Avaliação do Processo de Software

• Modelo Capability Maturity Model (CMM)• ISO 9000-3• Projeto SPICE• Modelo PSP (Personal Software Process)• Projeto SQUID, etc

Page 26: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

ISO 9000-3ISO 9000-3

• Guia para a aplicação da ISO 9001 para o desenvolvimento, fornecimento e manutenção de software, criado em 1993.

• Especifica requisitos mínimos para assegurar a qualidade de produtos e serviços, não definindo modelos ou impondo sistemas de qualidade.

Page 27: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

ISO 9000-3ISO 9000-3 Atividades do Ciclo de Vida

• Agrupa as atividades do ciclo de vida em 9 categorias:análise crítica do contratoespecificação dos requisitos do compradorplanejamento do desenvolvimentoplanejamento da qualidadeprojeto e implementaçãoensaios e validaçãoaceitaçãocópia, entrega e instalaçãomanutenção

Page 28: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

ISO 9000-3ISO 9000-3 Atividades de Suporte

• Estão organizadas em 9 itens: gestão de configuração controle de documentos registros da qualidade medição regras, práticas e convenções ferramentas e técnicas aquisição produto de software incluído treinamento

Page 29: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

SPICE - IntroduçãoSPICE - Introdução

• Motivação– Mortalidade dos trabalhos de padronização

• SPICE (Software Process Improvement and Capability dEtermination)

• Organização– 4 Centros Técnicos– Conselho Administrativo– Organizações privadas e estatais

Page 30: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

SPICE - O que é ?SPICE - O que é ?

• É um conjunto de documentos• Consiste de um framework de avaliação

– Facilita o auto-julgamento– Desperta consciência do contexto– Produz um perfil do processo– Direciona a adequação das atividades– Apropriado para organizações de diversos

tamanhos

Page 31: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

SPICE - AplicaçãoSPICE - Aplicação

• Aplicado para organizações envolvidas com qualquer atividade relacionada ás atividades de computação

• A Avaliação examina o processo e determina a efetividade deste

• Resultados podem usados para– Auto-Avaliação– Melhoria do processo

Page 32: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Documentos do SPICEDocumentos do SPICE

• O SPICE é composto por 9 partes:

parte 1: Conceitos e Guia Introdutório parte 2: Modelo de Gerenciamento de Processo parte 3: Avaliação do Processo parte 4: Guia para Condução de uma Avaliação parte 5: Construção, Seleção e Uso das Ferramentas de

Avaliação parte 6: Qualificação e Treinamento dos Avaliadores parte 7: Guia para o Processo de Melhoria parte 8: Guia para Orientação da Determinação da

Capacidade do Processo parte 9: Dicionários

Page 33: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Aspectos ISO 9000-3 CMM (SEI) SPICEAbordagem Verificação de

conformidadede processos apadrõesdocumentados.

Classificação das organizaçõesem níveis de maturidadecrescente.

Avaliação dosprocessos com oobjetivo dedeterminar acapacitação daorganização epropor melhoria.

Meta/Objetivo

Certificar aorganização deacordo com ospadrõesestabelecidos.

Determinar a capacitação daempresa e apoiar sua evoluçãode acordo com os 5 níveis.

Determinar acapacitação daorganização eapoiar sua evoluçãode acordo com osobjetivos daorganização.

EmpresasAlvo

Organizaçõesque necessitamde umacertificação.

Organizações de grande porteque necessitam de umacertificação.

Organizações emgeral.

Quadro ComparativoQuadro Comparativo

Page 34: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Quadro ComparativoQuadro Comparativo

Aspectos ISO 9000-3 CMM(SEI)

SPICE

Definiçõesde Processos

Não estabeleceprocessos,(estabelece asatividades a sercumpridas, comvisão deestrutura, ciclode vida esuporte).

Estabelece18 processosorganizadosem 5 níveis.

Estabelece35processosorganizadosem 5categorias.

Flexibilidade Não admiteadaptação.

Não admiteadaptação.

Adaptávelaosobjetivos daorganização.

Instrumentode Avaliaçãode nível decapacitação

Check list. Questionário. Forneceorientaçõespara montarquestionário.

Page 35: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Aspectos ISO 9000-3 CMM (SEI) SPICEInspiraçãoeInfluência

Normas militaresamericanas,canadenses,sistemas dequalidade doReino Unido.

Princípios deShewart, Deming,Juran, Crosby.

TQM, PDCA,CMM,TRILLIUM,MalcolmBaldrige,Bootstrap.

Benefícios Difusão extensa;Reconhecimentodo valor dacertificação.

Estabelecimentode um roteiro paraa melhoriacontínua.

Expansão eflexibilizaçãodos modeloscitados.

Limitações Risco de secolocar aCertificaçãocomo objetivoprincipal.Ausência deapoio à melhoriacontínua. Focoexclusivo noprocesso.

Poucaconsideração àdiversidade dasorganizações.Dificuldade deaplicação empequenasorganizações.Foco exclusivo noprocesso.

Dificuldade deaplicaçãodevido àgrandequantidade deinformações.Foco exclusivono processo.

Page 36: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

ConclusõesConclusões

• Dos métodos de avaliação de processo apresentados, alguns estão estabelecidos no mercado (CMM), e outros apresentam projetos ambiciosos a nível mundial (SPICE).

• Dentre estes, existem modelos que além de avaliar o processo de desenvolvimento propõem algum mecanismo para melhoria do processo.

Page 37: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

ConclusõesConclusões

• Não existe um modelo ideal de avaliação de qualidade que seja aplicável indistintamente às organizações, abrangendo os diversos objetivos que elas tem em relação a qualidade.

• A qualidade de software não é garantida somente pela qualidade de processo, mas também pela garantia de qualidade do produto final.

• A maior preocupação deve ser sempre a satisfação do usuário final.

Page 38: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

Alguns endereços na Web:• http://www.sei.cmu.edu/cmm/cmm.html• http://www.ISO_online.com

Page 39: Qualidade de Software Prof a. Inês Ap. Gasparotto Boaventura 1. Semestre/2001 Qualidade de Software Engenharia de Software Prof a. Inês Ap. Gasparotto

fimfim