Upload
natalia-oliveira
View
134
Download
1
Embed Size (px)
Citation preview
Qualidade de SoftwareProf. Natália Oliveira M.Sc
Ementa
Conceitos sobre Qualidade
Qualidade do Produto
Qualidade do Processo
Garantida da Qualidade X Controle da Qualidade
Conceitos sobre Qualidade de Software
Prevenção X Detecção
Modelos e Padrões da Qualidade de Software
Como definir Qualidade ?
Qualidade é um termo que pode ter diferentes interpretações
Existem muitas definições de qualidade propostas na literatura
com diferentes pontos de vista
Visão popular pode ser diferente do seu uso profissional
Como definir Qualidade?
1. Qualidade é um termo que pode ter diferentes interpretações
2. Existem muitas definições de qualidade de software propostas na
literatura com diferentes pontos de vista
3. Visão popular pode ser diferente do seu uso profissional.
Exemplo: Carro
O que um determinado produto
apresenta para considerarmos que
o mesmo tem qualidade?
Exemplo: Carro
Diversos aspectos são levados em conta
No caso de um automóvel, fatores como
conforto, segurança, desempenho, beleza
e $$ têm estreita relação com a qualidade
Conceito de Qualidade
Segundo a atual norma brasileira sobre o assunto (NBR ISO 8402), qualidade é:
“A totalidade das características de uma entidade
que lhe confere a capacidade de satisfazer
às necessidades explícitas e implícitas”
Conceito de Qualidade
Entidade - pode ser um bem ou um serviço
Necessidades Explícitas - são as próprias condições e objetivos propostos
pelo produtor
Necessidades Implícitas - incluem as diferenças entre os usuários, a evolução
no tempo, as implicações éticas, as questões de segurança e outras visõessubjetivas.
Para avaliar a qualidade de um produto, você deve fazer uma lista destas
necessidades e analisar cada uma destas necessidades.
Conceito de Qualidade
Qualidade é estar em conformidade com os requisitos dos clientes
Qualidade é antecipar e satisfazer os desejos dos clientes
Qualidade é escrever tudo o que se deve fazer e fazer tudo o que foi escrito
Controle de Qualidade
Pela definição da ISO (Organização Internacional de Padronização),
controle de qualidade é “a atividade e técnica operacional que é
utilizada para satisfazer os requisitos de qualidade”
O Controle da Qualidade é realizado através de:
Inspeções
Revisões
Testes
Certificação da Qualidade
Não basta que a qualidade exista, ela deve ser reconhecida pelo cliente
Deve existir uma certificação oficial emitida com base em um padrão
Exemplos de certificação:
Selo SIF de qualidade de produtos alimentícios
Selo ABIC de qualidade do café
Classificação da rede hoteleira
Organizações Normalizadoras
ISO - Organização Internacional de Padronização
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.
Custo da Qualidade
Custos de Falhas e Correção
Custos de refazer atividades devido a erros na execução do processo ouno produto
Custos da Prevenção
Atividades de planejamento e implementação de sistemas da qualidade
Custos de Avaliação/Certificação
Verificações no processo de produção
.
Qualidade do Produto
Funcionalidade, confiabilidade, usabilidade, eficiência, manutenibilidade e
portabilidade (ISO 9126 e NBR 13596)
Fatores da Qualidade do Produto
Qualidade 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
A qualidade do processo corresponde ao nível utilizado na
implementação de um processo aceitável
Esse processo inclui medições e critérios de qualidade
Características do Processo
Facilidade de compreensão
Visibilidade
Facilidade de manutenção
Aceitabilidade
Robustez
Rapidez
Ciclo de aprimoramento do processo
Garantia da Qualidade X Controle da
Qualidade
Garantia da Qualidade – são os processos que estão destinados a
previnir eventuais defeitos
Controle da Qualidade – são as medições locais para detectar e
reparar todos os defeitos ainda remanescentes
Garantia da Qualidade X Controle da
Qualidade
Evolução nos Conceitos de Qualidade
Os avanços tecnológicos e a crescente preocupação na
eliminação de defeitos, aumento na produtividade e redução de
custos motivaram o surgimento de modelos de qualidade para o
processo de manufatura
Na década de de 1960, começaram a surgir critérios, modelos e
técnicas para a garantia da qualidade no processo de
produção.
TQC – Total Quality Control
Modelo desenvolvido no Japão
Desenvolvido para implementar a melhoria contínua da
qualidade
Baseia-se na participação de todos os setores da empresa e de
todos os empregados no estudo e condução do controle daqualidade
TQC – Total Quality Control
Princípios básicos:
Produzir e fornecer produtos e/ou serviços que atendam concretamente àsnecessidades do cliente
Garantir a sobrevivência da empresa através do lucro contínuo, adquirido pelodomínio da qualidade
Identificar o problema mais crítico e solucioná-lo pela mais alta prioridade
Falar, raciocinar e decidir com dados e com base em fatos
Gerenciar a organização ao longo do processo e não por resultados
Reduzir metodicamente as distorções através do isolamento de suas causasfundamentais
Não permitir a venda de produtos defeituosos
Não repetir erros
Definir e garantir a execução da visão e estratégia da alta direção da empresa
TQM – Total Quality Management
É uma abordagem para sucesso em longo prazo
É medida através da satisfação do cliente e baseada na
participação de todos os membros da organização
Foca a melhoria de processos, produtos, serviços e cultura
organizacional e considera qualidade de um processo comoresponsabilidade do “dono” do processo
TQM – Total Quality Management
Gurus da Qualidade
Armand Feigenbaum
W.Edwards Deming
Joseph M. Juran
Karou Ishikawa
Philip Crosby
Tom Peters
Armand Feigenbaum
Definiu TQM como um sistema efetivo que integra a qualidade do
desenvolvimento, qualidade de manutenção, e esforços de
melhoria da qualidade de vários grupos em uma organização
Joseph M. Juran
Preocupou-se com o impacto nos trabalhadores individuais e no
envolvimento e motivação da força de trabalho nas atividades
de melhoria da qualidade
W.Edwards Deming
Considerado no Japão o “pai” do controle da qualidade
Afirmou que qualidade inicia com o alto nível gerencial e é uma
atividade estratégica. Enfatiza a necessidade dos métodos
estatísticos, participação, educação e proposta de melhoria
Karou Ishikawa
Baseando seu trabalho nos de Deming, Juran e Feigenbaum,
Ishikawa criou os conceitos de círculos da qualidade e diagramas
de causa-e-efeito
Considerou a participação do trabalhador como a chave do
sucesso da implementação do TQM
Philip Crosby
Definiu 4 certezas para o Gerenciamento da Qualidade:
Qualidade significa atendimento aos requisitos
Qualidade vem através de prevenção
Padrão para desempenho da qualidade e “defeito zero”
A medida de qualidade é o preço da não-conformidade
Tom Peters
Focou no atendimento às expectativas do cliente
Qualidade 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 se desgasta.
Software é invisível. Sua representação em grafos e diagramas não é precisa.
Não há um acordo entre os profissionais sobre o que é qualidade de software.
Problemas no Desenvolvimento de
Software
Problemas no Desenvolvimento de
Software
Problemas no Desenvolvimento de
Software
Qualidade de Software - Motivação
Empresas que desenvolvem software de qualidade são maiscompetitivas
Empresas que utilizam software de alta qualidade, podemoferecer um melhor serviço a um preço mais competitivo
A qualidade de software está diretamente relacionada a umgerenciamento rigoroso de requisitos, uma gerência efetiva deprojetos e em um processo de desenvolvimento bem definido,gerenciado e em melhoria contínua
Definição de Qualidade de Software
“Conjunto de características a serem
satisfeitas em um determinado grau,
de modo que o software satisfaça às
necessidades de seus usuários”
Atores da Qualidade de Software
Prevenção X Detecção
Técnicas de Prevenção
Treinamento
Planejamento
Modelagem
Uso de lições aprendidas
Melhoria de processo
Técnicas de Detecção
Análise de código
Teste e simulação
Auditorias
Verificações e validações
Planejamento da Qualidade de
Software
Compreende em identificar quais padrões são relevantes para o
projeto e a determinação de como satisfazé-los
Esse processo deve ser executado em paraledo ao planejamento
do projeto
Garantia da Qualidade de Software
É um conjunto de atividades planejadas e implementadas com base no
sistema da qualidade da organização
As atividades são focadas na prevenção de defeitos e problemas, que
podem surgir nos produtos
Modelos e Padrões de Qualidade de
Sotware
Com o crescimento do setor de software, vários modelos e padrões têm
sido propostos ao longo dos últimos anos
Alguns conceitos fundamentais são importantes de serem entendidos.
Política Padrão
Guia Modelo
ISO
International Organization for Standardization (ISO) é uma
organização não-governamental, fundada em 1947, com sede
em Genebra – Suíça
Foi motivada pela necessidade de referências internacionais para
regulamentar obrigações contratuais entre fornecedores e
compradores, que
São normas relacionadas à qualidade
ISO
9000 – Padrões de qualidade gerais para qualquer tipo de
organização
9001 – Mais específica: processo de qualidade nas organizações
que projetam, desenvolvem e mantêm produtos
Norma ISO9001:2000
É modelo base para auditorias de certificação da família ISO9000
Uma certificação ISO9000, no Brasil, é conduzida por uma
empresa acreditada pelo INMETRO
Isso significa que a empresa foi avaliada e julgada por um
organismo certificador, pertencente ao Sistema Brasileiro de
Certificação, segundo aquela norma
Normas ISO9000 para suporte ao desenvol
vimento de software
Normas e Modelos de Qualidade de
Software
Produto
ISO 9126 - Norma para qualidade de produtos de software
ISO 14598 - Guias para avaliação de produtos de softwareProcesso
ISO 12207 - Processos de ciclo de vida do software.
ISO 90003:2004 - Diretrizes para aplicação da norma ISO 9001 ao desenvolvimento,
fornecimento e manutenção de software.
ISO 15504 (SPICE) - Projeto da ISO/IEC para avaliação dos processos de desenvolvimento de software.
CMMI - Capability Maturity Model Integrated. Modelo do SEI que estende o CMM para avaliação de processos de software.
mps.BR - Modelo Brasileiro de qualidade de processo de software, baseado nas normas ISO 12207 e 15504, e no modelo CMMI.
Modelos do Software Engineering Institute (SEI)
Instituto americano
Contribuiu para o fortalecimento da área de qualidade desoftware
Definiu modelos internacionais focados no processo de software
CMM – Capability Maturity Model
Modelo largamente adotado pela comunidade de software
internacional
Modelo focado na capacidade organizacional e seu
desenvolvimento
Foi motivado por uma solicitação do Departamento de Defesados Estados Unidos, que precisava de um instrumento de
avaliação dos fornecedores contratados pelo próprio
Departamento.
CMM – Capability Maturity Model
O CMM categoriza as organizações em 5 níveis de maturidade
CMM – Capability Maturity Model
Cada nível é considerado como pré-requisito do nível seguinte
Não é possível “pular” níveis
Cada nível se apoia nas competências que a organização
desenvolveu no nível anterior
CMM – Capability Maturity Model
CMM – Capability Maturity Model
CMM – Capability Maturity Model
CMM – Capability Maturity Model
CMM – Capability Maturity Model
CMM – Capability Maturity Model
O CMM foi um dos modelos de qualidade mais adotados pelas
indústrias de software brasileiro, juntamente com a norma ISO9001
Foi descontinuado e substituído pelo CMMI
CMMI – Capability Maturity Model
Integration
Consolida um framework de modelos
Onde integra e evolui os modelos do CMM
SPICE
Objetivo – mortalidade de trabalhos de padronização
É 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
SPICE
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
Documentos 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
MPS.Br
Criado pela parcerias de universidades, Softex e apoio do
governo
Acrônimo de “Melhoria de Processo de Software Brasileiro”
Possui um modelo de referência inspirado no CMMI
Implementação mais gradual (7 níveis)
Níveis de Maturidade - MPS.Br
G [Parcialmente Gerenciado]
F [Gerenciado]
E [Parcialmente Definido]
D [Largamente Definido]
C [Definido]
B [Gerenciado Quantitativamente]
A [Em Otimização]
Níveis MPS.br / CMMI
Ferramentas
ARM – Nasa – Fornece medidas que podem ser usadas para
avaliar a qualidade de um documento de requisitos de software
Quality Tools Cookbok – Fornece descrições úteis de ferramentas
de gestão de qualidade
Quality Tools and Templates – Descreve uma ampla gama deferramentas e métodos úteis para a questão de qualidade
Considerações Finais
Importância da Qualidade de Software e do Produto de uma
Empresa vai além da maturidade e responsabilidade em manter
tal maturidade
Valorização do Produto e Software é um investimento no conforto
do cliente e da empresa
Buscar a Qualidade em um processo de desenvolvimento é aprincipal atividade dos gerentes e desenvolvedores