SlideShare uma empresa Scribd logo
1 de 47
Qualidade do Software
Wagner Zaparoli
wzaparoli@gmail.com
Qualidade do Software 2
Agenda
• Parte 1 – Conceitos Gerais
•Conceito de Qualidade de Software.
• Visões da Qualidade.
• Variáveis da Qualidade.
• Processo de Software.
• Modelos de Processos.
• Parte 2 – Guia de Avaliação
• Qualidade nas Fases do Processo.
• Qualidade na Gestão.
Qualidade do Software 3
Parte1 – Conceitos Gerais
Qualidade do Software 4
Conjunto de atributos de software que devem
ser satisfeitos de modo que o software atenda
às necessidades dos usuários.
O que é Qualidade de Software?
Relacionada aos requisitos
Relacionada à falta de conformidade
Pode ser medida, controlada e gerenciada
Qualidade do Software 5
Diferentes Visões da Qualidade
Usuário
Facilidade de uso, Desempenho,
Confiabilidade dos Resultados,
Preço do Software, etc...
Desenvolvedor
Taxa de Defeitos, Facilidade de
Manutenção e Conformidade em
relação aos Requisitos dos
Usuários, etc...
Organização
Cumprimento de Prazo, Boa
Previsão de Custo, Boa
Produtividade
Qualidade do Software 6
Drops da Qualidade
Eficácia
Produtividade
Segurança
Satisfação
Adequação
Acurácia
Interoperabili-
dade
Conformidade
Inteligibilida-
de
Apreendibili-
dade
Operacionali-
dade
Atratividade
Maturidade
Tolerância a
falhas
Recuperabili-
dade
Manutenabili-
dade
Testabilidade
EstabilidadeModificabi-
lidade
Analisabili-
dade
Qualidade do Software 7
Quadro Resumo da Qualidade*
Qualidade em Uso
Funcionalidade
Usabilidade
Confiabilidade
Eficiência
Manutenabilidade
Portabilidade
* ISO 9126
Qualidade do Software 8
O software deve ser capaz de permitir que usuários
atinjam com eficácia, produtividade, segurança e
satisfação metas específicas
Qualidade em Uso
Quadro Resumo da Qualidade
Qualidade do Software 9
Confiabilidade
O software deve manter um nível de desempenho
quando usado em condições específicas
Quadro Resumo da Qualidade
Qualidade do Software 10
Funcionalidade
O software deve prover funções que atendam
necessidades explícitas e implícitas, quando utilizado
sob condições específicas
Quadro Resumo da Qualidade
Qualidade do Software 11
Portabilidade
Quando for o caso, o software deve ser transferível de
um ambiente para outro especificado
Quadro Resumo da Qualidade
Qualidade do Software 12
Eficiência
O software deve apresentar desempenho apropriado,
relativo à quantidade de recursos usados, sob
condições especificadas
Quadro Resumo da Qualidade
Qualidade do Software 13
Usabilidade
O software deve ser capaz de ser compreendido,
apreendido e operado pelo usuário alvo
Quadro Resumo da Qualidade
Qualidade do Software 14
Manutenabilidade
O software deve permitir modificações como correções,
melhorias ou adaptações, devido a mudanças no
ambiente e nos seus requisitos ou especificações
funcionais
Quadro Resumo da Qualidade
Qualidade do Software 15
SoftwareProcesso
Qualidade de
Software
Qualidade do
Processo
Software como Resultado
Conjunto de atividades, métodos, práticas e
tecnologias que as pessoas utilizam para
desenvolver e manter software e produtos
relacionados
Qualidade do Software 16
Processo de Software - Definição
• Ad hoc – Improvisado
• Fortemente dependente dos profissionais
• Indisciplinado
Qualidade do Software 17
Processo de Software - Imaturo
• Pouca produtividade
• Qualidade de difícil previsão
• Alto custo de manutenção
• Risco na adoção de novas tecnologias
• Processo conhecido por todos
• Apoio visível da alta administração
• Auditagem da fidelidade ao processo
• Medidas do produto e do processo
• Adoção disciplinada de tecnologias
Qualidade do Software 18
Processo de Software - Maduro
• Papéis e responsabilidades claramente definidos
• Acompanhamento da qualidade do produto e da
satisfação do cliente
• Expectativas para custos, cronograma, funcionalidade e
qualidade do produto é usualmente alcançado
Sem Controle
• Improvisado
• Não Seguido
• Depende dos profissionais
• Baixa visão do progresso e
da qualidade
• Arriscado do ponto de vista
de uso de novas tecnologias
Qualidade do Software 19
Processo de Software – Dimensão Controle
Com Controle
• Coerente; o trabalho é
efetivamente concluído
• Apoio da alta administração.
• Permite a medição do produto
e do processo
• Uso disciplinado da
tecnologia
Benefícios
• Linguagem comum
• Processos e procedimentos
desenvolvidos com sugestões da
comunidade de software
• Estrutura para se priorizar as
ações
• Auxilia comparações com
diversas organizações
Qualidade do Software 20
Processo de Software – Modelos de Qualidade
Riscos
• Modelos são simplificações
• Modelos podem não ser
abrangentes
• Interpretações e adaptações
• Bom senso e visão
Qualidade do Software 21
Processo de Software – Modelos de Qualidade
Qualidade do Software 22
Processo de Software – Modelos de Qualidade
• Framework que descreve os elementos chaves de um
processo de software eficaz.
• Um caminho de melhoramento evolucionário (5 níveis de
maturidade) para as organizações mudarem de um
processo imaturo para um processo maduro e disciplinado.
Qualidade do Software 23
Processo de Software – Modelos de Qualidade
• Designa um grupo de normas técnicas que estabelecem
um modelo de gestão da qualidade para organizações em
geral.
• ISO/IEC 9126 é uma norma ISO para qualidade de
produto de software baseado em três componentes:
Processo, Produto e Qualidade em Uso.
Qualidade do Software 24
Processo de Software – Modelos de Qualidade
• Modelo brasileiro de referência para melhoria do processo
de software baseado nos padrões ISO.
• Possui 7 níveis de maturidade onde são analisados os
processos fundamentais, os processos organizacionais, e
os processos de apoio.
Qualidade do Software 25
Parte2 – Guia de Avaliação
Qualidade do Software 26
Procedimentos Gerenciais
Procedimentos
Operacionais
Processo
A
T
I
V
I
D
A
D
E
S
R
E
S
P
O
N
S
Á
V
É
I
S
E
N
T
R
E
G
Á
V
E
I
S
P
O
L
Í
T
I
C
A
S
S
E
G
U
R
A
N
Ç
A
P
O
L
Í
T
I
C
A
S
A
R
Q
U
I
T
E
T
U
R
A
I
S
POLÍTICAS DE DADOS
DIRETRIZES LEGAIS
P
M
B
O
K
C
M
M
I
/
I
S
O
I
T
I
L
Pós-desenvolvimentoPós-desenvolvimento
DesenvolvimentoDesenvolvimento
Pré-desenvolvimentoPré-desenvolvimento
Qualidade do Software 27
Processo Padrão de Desenvolvimento
Estudo Preliminar
ProjetoAnáliseConcepção
ConstruçãoTeste/Docum. Homologação Implantação
Planejamento
Manutenção
G
E
S
T
Ã
O
Qualidade do Software 28
Resultado do Processo
Software
Qualidade do Software 29
Qualidade no Pré-desenvolvimento
Estudo Preliminar
• As necessidades funcionais estão identificadas e entendidas por todos os
participantes do processo?
• As necessidades não funcionais (software, hardware, infra-estrutura, etc.)
estão identificadas e entendidas por todos os participantes do processo?
• As necessidades de recursos humanos foram estimadas de acordo com as
necessidades identificadas acima?
• O tempo de esforço foi estimado de acordo com as necessidades
identificadas acima?
• Os potenciais riscos foram claramente identificados, conjuntamente com as
respectivas ações de mitigação e planos contingenciais?
• Os benefícios do projeto foram relacionados?
• O custo foi estimado e está em consonância com os itens anteriores?
• A análise da relação custo/benefício foi realizada?
• O cliente e demais participantes aprovaram o projeto e estão de acordo com
as informações contidas neste estudo?
• Se aprovado o projeto, existem ressalvas que impactam a sua continuidade?
Qualidade do Software 30
Qualidade no Desenvolvimento
Planejamento
• Os membros da equipe estão definidos?
• O papel de cada membro está claramente entendido?
• O cronograma do projeto foi elaborado, contendo as
atividades, tempo de realização e responsável pela
realização?
• O ambiente de desenvolvimento foi definido,
disponibilizado e testado de acordo com as
informações contidas no estudo preliminar aprovado?
Qualidade do Software 31
Qualidade no Desenvolvimento
Concepção
• Os requisitos foram especificados de acordo com os padrões
estabelecidos em metodologia vigente?
• Os requisitos estão sincronizados com as necessidades funcionais
e não funcionais definidas no estudo preliminar?
• O modelo de dados conceitual foi elaborado e está em
conformidade com os requisitos especificados?
• O modelo conceitual da arquitetura foi elaborado e está em
conformidade com os requisitos especificados?
• Os requisitos foram inspecionados por uma equipe de qualidade?
• O usuário aprovou formalmente os requisitos e demais artefatos da
etapa?
Qualidade do Software 32
Qualidade no Desenvolvimento
Análise
• O diagrama de casos de uso foi elaborado de acordo com os padrões estabelecidos
em metodologia vigente?
• Os casos de uso de negócio foram especificados de acordo com os padrões
estabelecidos em metodologia vigente?
• Os casos de uso de negócio estão relacionados a um ou mais requisitos?
• As integrações foram especificadas de acordo com os padrões estabelecidos em
metodologia vigente?
• O tratamento de erros foi elaborado de acordo com os padrões estabelecidos em
metodologia vigente e atende às funcionalidades mapeadas nos casos de uso?
• O modelo de dados lógico foi elaborado de acordo com os padrões estabelecidos
em metodologia vigente e atende às funcionalidades mapeadas nos casos de uso?
• O diagrama de classes foi elaborado de acordo com os padrões estabelecidos em
metodologia vigente e atende às funcionalidades mapeadas nos casos de uso?
• Os artefatos dessa etapa foram inspecionados por uma equipe de qualidade?
• O usuário aprovou formalmente os artefatos da etapa?
Qualidade do Software 33
Qualidade no Desenvolvimento
Projeto
• As classes foram especificadas de acordo com os padrões estabelecidos em
metodologia vigente?
• Os métodos e atributos foram especificados de acordo com os padrões
estabelecidos em metodologia vigente e estão em conformidade com a especificação
das classes?
• O modelo de dados físico foi elaborado de acordo com os padrões estabelecidos em
metodologia vigente e atende às funcionalidades mapeadas nos casos de uso?
• A arquitetura foi especificada de acordo com os padrões estabelecidos em
metodologia vigente e atende às funcionalidades e demais características mapeadas
nos artefatos já produzidos (em especial os requisitos)?
• A especificação de telas e relatórios foi elaborada de acordo com os padrões
estabelecidos em metodologia vigente e atende às funcionalidades mapeadas nos
casos de uso?
• O testes de construção foram elaborados de acordo com os padrões estabelecidos
em metodologia vigente e atendem às funcionalidades mapeadas nos casos de uso?
• Os artefatos dessa etapa foram inspecionados por uma equipe de qualidade?
• O usuário aprovou formalmente os artefatos da etapa?
Qualidade do Software 34
Qualidade no Desenvolvimento
Construção
• A estrutura física do banco de dados foi criada e testada?
• A carga inicial para testes foi realizada e testada?
• Os componentes de negócio foram construídos e testados
adequadamente?
• O testes de integração/sistema foram elaborados de acordo
com os padrões estabelecidos em metodologia vigente e
atendem às funcionalidades mapeadas nos requisitos?
• Os artefatos dessa etapa foram inspecionados por uma
equipe de qualidade?
Qualidade do Software 35
Qualidade no Desenvolvimento
Testes/Docum.
• Os testes de integração/sistema foram executados
adequadamente?
• Os manuais (documentação) foram elaborados e
disponibilizados aos usuários e demais participantes?
• Os testes de homologação foram elaborados de acordo com
os padrões estabelecidos em metodologia vigente e atendem
às funcionalidades mapeadas nos requisitos e casos de uso?
• Os artefatos dessa etapa foram inspecionados por uma
equipe de qualidade?
Qualidade do Software 36
Qualidade no Desenvolvimento
Homologação
• Os testes de homologação foram executados
adequadamente?
• O teste de aceitação foi realizado adequadamente?
• O plano de implantação foi elaborado de acordo com os
padrões estabelecidos em metodologia vigente?
• O treinamento foi realizado adequadamente?
• A infra-estrutura de produção foi preparada
adequadamente?
• Os artefatos dessa etapa foram inspecionados por uma
equipe de qualidade?
Qualidade do Software 37
Qualidade no Desenvolvimento
Implantação
• As rotinas de produção foram montadas adequadamente?
• As cargas devidas foram realizadas?
• A inspeção das cargas foi realizada por equipe de
qualidade?
• Os testes de produção foram realizados adequadamente?
• O aceite final foi formalizado?
• O formulário de “lições aprendidas” foi preenchido?
• A acompanhamento da produção foi ou está sendo
realizado?
Qualidade do Software 38
Qualidade no Pós-desenvolvimento
Manutenção
• Os requisitos de manutenção foram elicitados?
• As necessidades, riscos e impactos foram definidos
adequadamente?
• O estudo de viabilidade foi realizado?
• A execução manutenção foi planejada?
• A execução da manutenção foi realizada?
• Os testes de manutenção foram realizados?
• Os testes de aceitação foram realizados?
• O produto foi colocar em produção?
• A acompanhamento da produção foi ou está sendo
realizado?
Qualidade do Software 39
Qualidade na Gestão
INICIAÇÃO
EXECUÇÃO
FINALIZAÇÃO
SUPORTE
ADMINISTRAÇÃO
Desenvolvimento do
Projeto
Apoio ao
Desenvolvimento
Qualidade do Software 40
Atividades de Controle do Progresso
• O que deve ser feito (objetivos do projeto);
• Como deve ser feito (ferramentas, atividades, padrões, etc.);
• Quem deve fazer (responsável pela execução das atividades);
• Quando deve ser feito (posicionamento na sequência do projeto);
• Que resultados são esperados (produtos a serem gerados);
• Quais indicadores e medições a serem verificados e realizados;
• Quais os pontos de controle/inspeção;
• Quais critérios de entrada para cada atividade;
• Quais critérios de saída para cada atividade;
• Qual o relacionamento entre as atividades (para frente e para trás).
Qualidade do Software 41
Atividades de Controle de Testes/Homologação
• Testes
• Planejar os testes;
• Elaborar os casos de testes;
• Executar os casos de testes;
• Registrar os testes;
• Homologação
• Planejar a homologação (datas, recursos, responsáveis envolvidos, etc.);
• Comunicar aos envolvidos sobre o início do processo com antecedência;
• Monitorar o andamento do processo e comunicar possíveis desvios e respectivo
término;
Qualidade do Software 42
Atividades de Controle de Entrega
• Entrega dos artefatos para inspeção;
• Entrega dos artefatos para validação do cliente;
• Entrega do produto para homologação;
• Entrega do produto para aceitação (cliente);
• Entrega do produto para produção.
Qualidade do Software 43
Atividades de Controle do Escopo
• Escopo do Produto: trata das funcionalidades que
caracterizam os produtos ou serviços oferecidos pela
implementação de um projeto;
• Escopo do Projeto: trata do trabalho e dos artefatos criados
para contemplar as funcionalidades dos produtos/serviços.
Qualidade do Software 44
Atividades de Controle de Riscos
• Identificação e Análise: tem como objetivo conhecer os riscos e tratá-los de acordo com as
necessidades do projeto;
• Processo:
• Definição da probabilidade da ocorrência do risco e respectivos impactos;
• Definição da estratégia de mitigação do risco;
• Definição do plano de contingência do risco;
• Reavaliação dos Riscos: tem como objetivo identificar novos riscos e revisar o escopo dos
riscos já identificados no transcorrer do projeto;
• Monitoramento dos Riscos: tem por objetivo antever a ocorrência de um risco ou identificar a
sua ocorrência tão logo aconteça.
Qualidade do Software 45
Atividades de Controle de Recursos/Custos
• Recurso: qualquer necessidade de um projeto relacionada à infra-estrutura, software, hardware,
recursos humanos e documentais.
• Custo: todo investimento ou despesa que a companhia terá durante o ciclo de vida de um projeto.
• Monitoramento
Motivos
• Mudanças de escopo ocorridas durante o desenvolvimento.
• Estimativas superdimensionadas ou sub-dimensionadas.
• Perda do escopo (alta rotatividade da equipe, terceiro não cumpriu o prazo, má gestão, infra-
estrutura não disponível, etc.).
Atividades
• Identificar o mais cedo possível prováveis causas.
• Analisar impactos na ocorrência de um ou mais motivos.
• Pensar nas soluções e comunicar os responsáveis e parceiros.
• Na necessidade, elaborar e submeter à aprovação um Paper complementar.
Qualidade do Software 46
Sugestões Bibliográficas
Paulk, M. et All; The Capapability Maturity Model: Guidelines for Improving the Software Process;
Software Engineering Institute/CMU; Addison-Wesley, 1995.
• Sanders, J.; Curran, E.; Software Quality; Addison-Wesley, 1994.
• Paulk M. et All; Techinical Report/CMU/SEI-93-TR-025; Key Pratices of the Capability Maturity
Model for Software, Version 1.1; Software Engineering Institute/CMU, 1993.
• Santos, A. D.; CMM – Capability Maturity Model; Apostila: Faculdade de Engenharia
Elétrica/UNICAMP, 2000.
• Paula Filho, W. P.; Engenharia de Software: Fundamentos, Métodos e Padrões; LTC Editora,
2001.
• Sommerville, I.; Software Engineering, 6th Edition, Adison-Wesley, 2001.
• Couto, A. B.; CMMI – Integração dos Modelos de Capacitação e Maturidade de Sistemas; Editora
Ciência Moderna, 2007.
• IEEE Computer Society; Swebok – Guide to the Software Engineering Body of Knowledge; USA,
2004.
Wagner Zaparoli
wzaparoli@gmail.com
Qualidade do Software

Mais conteúdo relacionado

Mais procurados

Gerenciamento de projetos, MPS.BR e qualidade em software
Gerenciamento de projetos, MPS.BR e qualidade em softwareGerenciamento de projetos, MPS.BR e qualidade em software
Gerenciamento de projetos, MPS.BR e qualidade em software
elliando dias
 
Mps br final - mps
Mps br final - mpsMps br final - mps
Mps br final - mps
Edvaldo Cruz
 
Gerenciamento de Qualidade
Gerenciamento de QualidadeGerenciamento de Qualidade
Gerenciamento de Qualidade
elliando dias
 
5 IEP - Engenharia da Qualidade
5 IEP - Engenharia da Qualidade5 IEP - Engenharia da Qualidade
5 IEP - Engenharia da Qualidade
Marcel Gois
 

Mais procurados (20)

Qualidade de software - Gestão de Projetos de Software - BSI
Qualidade de software - Gestão de Projetos de Software - BSIQualidade de software - Gestão de Projetos de Software - BSI
Qualidade de software - Gestão de Projetos de Software - BSI
 
A Importância dos Sistemas de Qualidade para o Desenvolvimento de Software da...
A Importância dos Sistemas de Qualidade para o Desenvolvimento de Software da...A Importância dos Sistemas de Qualidade para o Desenvolvimento de Software da...
A Importância dos Sistemas de Qualidade para o Desenvolvimento de Software da...
 
O Modelo mps.Br
O Modelo mps.BrO Modelo mps.Br
O Modelo mps.Br
 
Slides MPS-BR
Slides MPS-BRSlides MPS-BR
Slides MPS-BR
 
Gerencia da qualidade
Gerencia da qualidadeGerencia da qualidade
Gerencia da qualidade
 
Processo de Melhoria Contínua: PDCA
Processo de Melhoria Contínua: PDCAProcesso de Melhoria Contínua: PDCA
Processo de Melhoria Contínua: PDCA
 
Gerenciamento de projetos, MPS.BR e qualidade em software
Gerenciamento de projetos, MPS.BR e qualidade em softwareGerenciamento de projetos, MPS.BR e qualidade em software
Gerenciamento de projetos, MPS.BR e qualidade em software
 
Qualidade de software
Qualidade de softwareQualidade de software
Qualidade de software
 
Mps br final - mps
Mps br final - mpsMps br final - mps
Mps br final - mps
 
Gerenciamento De Qualidade Do Projeto
Gerenciamento De Qualidade Do ProjetoGerenciamento De Qualidade Do Projeto
Gerenciamento De Qualidade Do Projeto
 
Qualidade
QualidadeQualidade
Qualidade
 
Como melhorar a Qualidade da Obra?
Como melhorar a Qualidade da Obra?Como melhorar a Qualidade da Obra?
Como melhorar a Qualidade da Obra?
 
Avaliação do nível de serviço na Construção Civil
Avaliação do nível de serviço na Construção CivilAvaliação do nível de serviço na Construção Civil
Avaliação do nível de serviço na Construção Civil
 
Gerenciamento de Qualidade
Gerenciamento de QualidadeGerenciamento de Qualidade
Gerenciamento de Qualidade
 
Introdução à Qualidade de Software
Introdução à Qualidade de SoftwareIntrodução à Qualidade de Software
Introdução à Qualidade de Software
 
5 IEP - Engenharia da Qualidade
5 IEP - Engenharia da Qualidade5 IEP - Engenharia da Qualidade
5 IEP - Engenharia da Qualidade
 
Plano+de+gerenciamento+da+qualidade
Plano+de+gerenciamento+da+qualidadePlano+de+gerenciamento+da+qualidade
Plano+de+gerenciamento+da+qualidade
 
Mpsbr
MpsbrMpsbr
Mpsbr
 
Mps br
Mps brMps br
Mps br
 
CMMI
CMMICMMI
CMMI
 

Semelhante a Qualidade do Software

Apres. eng. de software
Apres. eng. de softwareApres. eng. de software
Apres. eng. de software
William Gomes
 
Processos De Software Ana Regina
Processos De Software Ana ReginaProcessos De Software Ana Regina
Processos De Software Ana Regina
Cristina Cerdeiral
 
T@rget trust curso de introdução ao processo de teste de software
T@rget trust   curso de introdução ao processo de teste de softwareT@rget trust   curso de introdução ao processo de teste de software
T@rget trust curso de introdução ao processo de teste de software
Targettrust
 
T@rget trust curso de introdução ao processo de teste de software
T@rget trust   curso de introdução ao processo de teste de softwareT@rget trust   curso de introdução ao processo de teste de software
T@rget trust curso de introdução ao processo de teste de software
Targettrust
 

Semelhante a Qualidade do Software (20)

Projeto de Gerenciamento De Qualidade.pdf
Projeto de Gerenciamento De Qualidade.pdfProjeto de Gerenciamento De Qualidade.pdf
Projeto de Gerenciamento De Qualidade.pdf
 
Apres. eng. de software
Apres. eng. de softwareApres. eng. de software
Apres. eng. de software
 
Processos De Software Ana Regina
Processos De Software Ana ReginaProcessos De Software Ana Regina
Processos De Software Ana Regina
 
2 engenharia de software
2   engenharia de software2   engenharia de software
2 engenharia de software
 
3. apresentacao rp tec com 2018 gustavo bernardes
3. apresentacao rp tec com 2018 gustavo bernardes3. apresentacao rp tec com 2018 gustavo bernardes
3. apresentacao rp tec com 2018 gustavo bernardes
 
CMM – Capability Maturity Model
CMM – Capability Maturity Model CMM – Capability Maturity Model
CMM – Capability Maturity Model
 
Qualidade de software, muito além dos testes - RP Tec Com - 2018
Qualidade de software, muito além dos testes - RP Tec Com - 2018 Qualidade de software, muito além dos testes - RP Tec Com - 2018
Qualidade de software, muito além dos testes - RP Tec Com - 2018
 
Qualidade e Teste de Software
Qualidade e Teste de SoftwareQualidade e Teste de Software
Qualidade e Teste de Software
 
Qualidade de Software: MPS.BR
Qualidade de Software: MPS.BRQualidade de Software: MPS.BR
Qualidade de Software: MPS.BR
 
Gerenciamento da Qualidade de Software 2.pptx
Gerenciamento da Qualidade de Software 2.pptxGerenciamento da Qualidade de Software 2.pptx
Gerenciamento da Qualidade de Software 2.pptx
 
Qualidade de Software
Qualidade de SoftwareQualidade de Software
Qualidade de Software
 
Introdução a Engenharia de Software - Prof.ª Cristiane Fidelix
Introdução a Engenharia de Software - Prof.ª Cristiane FidelixIntrodução a Engenharia de Software - Prof.ª Cristiane Fidelix
Introdução a Engenharia de Software - Prof.ª Cristiane Fidelix
 
qualidade.ppt
qualidade.pptqualidade.ppt
qualidade.ppt
 
qualidade.ppt
qualidade.pptqualidade.ppt
qualidade.ppt
 
qualidade.ppt
qualidade.pptqualidade.ppt
qualidade.ppt
 
Apresentação qualidade og day
Apresentação qualidade og dayApresentação qualidade og day
Apresentação qualidade og day
 
Qualidade de Software - OpenGEO Day2010
Qualidade de Software - OpenGEO Day2010Qualidade de Software - OpenGEO Day2010
Qualidade de Software - OpenGEO Day2010
 
T@rget trust curso de introdução ao processo de teste de software
T@rget trust   curso de introdução ao processo de teste de softwareT@rget trust   curso de introdução ao processo de teste de software
T@rget trust curso de introdução ao processo de teste de software
 
T@rget trust curso de introdução ao processo de teste de software
T@rget trust   curso de introdução ao processo de teste de softwareT@rget trust   curso de introdução ao processo de teste de software
T@rget trust curso de introdução ao processo de teste de software
 
Áreas de Conhecimento da Engenharia de Software
Áreas de Conhecimento da Engenharia de SoftwareÁreas de Conhecimento da Engenharia de Software
Áreas de Conhecimento da Engenharia de Software
 

Mais de Wagner Zaparoli (11)

Early Warning Systems For Epidemic
Early Warning Systems For EpidemicEarly Warning Systems For Epidemic
Early Warning Systems For Epidemic
 
Transformações_Corporativas
Transformações_CorporativasTransformações_Corporativas
Transformações_Corporativas
 
Técnicas_Implementação
Técnicas_ImplementaçãoTécnicas_Implementação
Técnicas_Implementação
 
Checklist para Avaliação da Documentação.PDF
Checklist para Avaliação da Documentação.PDFChecklist para Avaliação da Documentação.PDF
Checklist para Avaliação da Documentação.PDF
 
Padrões_Desenvolvimento
Padrões_DesenvolvimentoPadrões_Desenvolvimento
Padrões_Desenvolvimento
 
Gerência de Configuração
Gerência de ConfiguraçãoGerência de Configuração
Gerência de Configuração
 
Manutenção de Software
Manutenção de SoftwareManutenção de Software
Manutenção de Software
 
Teste de Software
Teste de SoftwareTeste de Software
Teste de Software
 
Ciclo de Vida
Ciclo de VidaCiclo de Vida
Ciclo de Vida
 
Projeto de Software
Projeto de SoftwareProjeto de Software
Projeto de Software
 
Gerenciamento_Projetos
Gerenciamento_ProjetosGerenciamento_Projetos
Gerenciamento_Projetos
 

Qualidade do Software

  • 1. Qualidade do Software Wagner Zaparoli wzaparoli@gmail.com
  • 2. Qualidade do Software 2 Agenda • Parte 1 – Conceitos Gerais •Conceito de Qualidade de Software. • Visões da Qualidade. • Variáveis da Qualidade. • Processo de Software. • Modelos de Processos. • Parte 2 – Guia de Avaliação • Qualidade nas Fases do Processo. • Qualidade na Gestão.
  • 3. Qualidade do Software 3 Parte1 – Conceitos Gerais
  • 4. Qualidade do Software 4 Conjunto de atributos de software que devem ser satisfeitos de modo que o software atenda às necessidades dos usuários. O que é Qualidade de Software? Relacionada aos requisitos Relacionada à falta de conformidade Pode ser medida, controlada e gerenciada
  • 5. Qualidade do Software 5 Diferentes Visões da Qualidade Usuário Facilidade de uso, Desempenho, Confiabilidade dos Resultados, Preço do Software, etc... Desenvolvedor Taxa de Defeitos, Facilidade de Manutenção e Conformidade em relação aos Requisitos dos Usuários, etc... Organização Cumprimento de Prazo, Boa Previsão de Custo, Boa Produtividade
  • 6. Qualidade do Software 6 Drops da Qualidade Eficácia Produtividade Segurança Satisfação Adequação Acurácia Interoperabili- dade Conformidade Inteligibilida- de Apreendibili- dade Operacionali- dade Atratividade Maturidade Tolerância a falhas Recuperabili- dade Manutenabili- dade Testabilidade EstabilidadeModificabi- lidade Analisabili- dade
  • 7. Qualidade do Software 7 Quadro Resumo da Qualidade* Qualidade em Uso Funcionalidade Usabilidade Confiabilidade Eficiência Manutenabilidade Portabilidade * ISO 9126
  • 8. Qualidade do Software 8 O software deve ser capaz de permitir que usuários atinjam com eficácia, produtividade, segurança e satisfação metas específicas Qualidade em Uso Quadro Resumo da Qualidade
  • 9. Qualidade do Software 9 Confiabilidade O software deve manter um nível de desempenho quando usado em condições específicas Quadro Resumo da Qualidade
  • 10. Qualidade do Software 10 Funcionalidade O software deve prover funções que atendam necessidades explícitas e implícitas, quando utilizado sob condições específicas Quadro Resumo da Qualidade
  • 11. Qualidade do Software 11 Portabilidade Quando for o caso, o software deve ser transferível de um ambiente para outro especificado Quadro Resumo da Qualidade
  • 12. Qualidade do Software 12 Eficiência O software deve apresentar desempenho apropriado, relativo à quantidade de recursos usados, sob condições especificadas Quadro Resumo da Qualidade
  • 13. Qualidade do Software 13 Usabilidade O software deve ser capaz de ser compreendido, apreendido e operado pelo usuário alvo Quadro Resumo da Qualidade
  • 14. Qualidade do Software 14 Manutenabilidade O software deve permitir modificações como correções, melhorias ou adaptações, devido a mudanças no ambiente e nos seus requisitos ou especificações funcionais Quadro Resumo da Qualidade
  • 15. Qualidade do Software 15 SoftwareProcesso Qualidade de Software Qualidade do Processo Software como Resultado
  • 16. Conjunto de atividades, métodos, práticas e tecnologias que as pessoas utilizam para desenvolver e manter software e produtos relacionados Qualidade do Software 16 Processo de Software - Definição
  • 17. • Ad hoc – Improvisado • Fortemente dependente dos profissionais • Indisciplinado Qualidade do Software 17 Processo de Software - Imaturo • Pouca produtividade • Qualidade de difícil previsão • Alto custo de manutenção • Risco na adoção de novas tecnologias
  • 18. • Processo conhecido por todos • Apoio visível da alta administração • Auditagem da fidelidade ao processo • Medidas do produto e do processo • Adoção disciplinada de tecnologias Qualidade do Software 18 Processo de Software - Maduro • Papéis e responsabilidades claramente definidos • Acompanhamento da qualidade do produto e da satisfação do cliente • Expectativas para custos, cronograma, funcionalidade e qualidade do produto é usualmente alcançado
  • 19. Sem Controle • Improvisado • Não Seguido • Depende dos profissionais • Baixa visão do progresso e da qualidade • Arriscado do ponto de vista de uso de novas tecnologias Qualidade do Software 19 Processo de Software – Dimensão Controle Com Controle • Coerente; o trabalho é efetivamente concluído • Apoio da alta administração. • Permite a medição do produto e do processo • Uso disciplinado da tecnologia
  • 20. Benefícios • Linguagem comum • Processos e procedimentos desenvolvidos com sugestões da comunidade de software • Estrutura para se priorizar as ações • Auxilia comparações com diversas organizações Qualidade do Software 20 Processo de Software – Modelos de Qualidade Riscos • Modelos são simplificações • Modelos podem não ser abrangentes • Interpretações e adaptações • Bom senso e visão
  • 21. Qualidade do Software 21 Processo de Software – Modelos de Qualidade
  • 22. Qualidade do Software 22 Processo de Software – Modelos de Qualidade • Framework que descreve os elementos chaves de um processo de software eficaz. • Um caminho de melhoramento evolucionário (5 níveis de maturidade) para as organizações mudarem de um processo imaturo para um processo maduro e disciplinado.
  • 23. Qualidade do Software 23 Processo de Software – Modelos de Qualidade • Designa um grupo de normas técnicas que estabelecem um modelo de gestão da qualidade para organizações em geral. • ISO/IEC 9126 é uma norma ISO para qualidade de produto de software baseado em três componentes: Processo, Produto e Qualidade em Uso.
  • 24. Qualidade do Software 24 Processo de Software – Modelos de Qualidade • Modelo brasileiro de referência para melhoria do processo de software baseado nos padrões ISO. • Possui 7 níveis de maturidade onde são analisados os processos fundamentais, os processos organizacionais, e os processos de apoio.
  • 25. Qualidade do Software 25 Parte2 – Guia de Avaliação
  • 26. Qualidade do Software 26 Procedimentos Gerenciais Procedimentos Operacionais Processo A T I V I D A D E S R E S P O N S Á V É I S E N T R E G Á V E I S P O L Í T I C A S S E G U R A N Ç A P O L Í T I C A S A R Q U I T E T U R A I S POLÍTICAS DE DADOS DIRETRIZES LEGAIS P M B O K C M M I / I S O I T I L
  • 27. Pós-desenvolvimentoPós-desenvolvimento DesenvolvimentoDesenvolvimento Pré-desenvolvimentoPré-desenvolvimento Qualidade do Software 27 Processo Padrão de Desenvolvimento Estudo Preliminar ProjetoAnáliseConcepção ConstruçãoTeste/Docum. Homologação Implantação Planejamento Manutenção G E S T Ã O
  • 28. Qualidade do Software 28 Resultado do Processo Software
  • 29. Qualidade do Software 29 Qualidade no Pré-desenvolvimento Estudo Preliminar • As necessidades funcionais estão identificadas e entendidas por todos os participantes do processo? • As necessidades não funcionais (software, hardware, infra-estrutura, etc.) estão identificadas e entendidas por todos os participantes do processo? • As necessidades de recursos humanos foram estimadas de acordo com as necessidades identificadas acima? • O tempo de esforço foi estimado de acordo com as necessidades identificadas acima? • Os potenciais riscos foram claramente identificados, conjuntamente com as respectivas ações de mitigação e planos contingenciais? • Os benefícios do projeto foram relacionados? • O custo foi estimado e está em consonância com os itens anteriores? • A análise da relação custo/benefício foi realizada? • O cliente e demais participantes aprovaram o projeto e estão de acordo com as informações contidas neste estudo? • Se aprovado o projeto, existem ressalvas que impactam a sua continuidade?
  • 30. Qualidade do Software 30 Qualidade no Desenvolvimento Planejamento • Os membros da equipe estão definidos? • O papel de cada membro está claramente entendido? • O cronograma do projeto foi elaborado, contendo as atividades, tempo de realização e responsável pela realização? • O ambiente de desenvolvimento foi definido, disponibilizado e testado de acordo com as informações contidas no estudo preliminar aprovado?
  • 31. Qualidade do Software 31 Qualidade no Desenvolvimento Concepção • Os requisitos foram especificados de acordo com os padrões estabelecidos em metodologia vigente? • Os requisitos estão sincronizados com as necessidades funcionais e não funcionais definidas no estudo preliminar? • O modelo de dados conceitual foi elaborado e está em conformidade com os requisitos especificados? • O modelo conceitual da arquitetura foi elaborado e está em conformidade com os requisitos especificados? • Os requisitos foram inspecionados por uma equipe de qualidade? • O usuário aprovou formalmente os requisitos e demais artefatos da etapa?
  • 32. Qualidade do Software 32 Qualidade no Desenvolvimento Análise • O diagrama de casos de uso foi elaborado de acordo com os padrões estabelecidos em metodologia vigente? • Os casos de uso de negócio foram especificados de acordo com os padrões estabelecidos em metodologia vigente? • Os casos de uso de negócio estão relacionados a um ou mais requisitos? • As integrações foram especificadas de acordo com os padrões estabelecidos em metodologia vigente? • O tratamento de erros foi elaborado de acordo com os padrões estabelecidos em metodologia vigente e atende às funcionalidades mapeadas nos casos de uso? • O modelo de dados lógico foi elaborado de acordo com os padrões estabelecidos em metodologia vigente e atende às funcionalidades mapeadas nos casos de uso? • O diagrama de classes foi elaborado de acordo com os padrões estabelecidos em metodologia vigente e atende às funcionalidades mapeadas nos casos de uso? • Os artefatos dessa etapa foram inspecionados por uma equipe de qualidade? • O usuário aprovou formalmente os artefatos da etapa?
  • 33. Qualidade do Software 33 Qualidade no Desenvolvimento Projeto • As classes foram especificadas de acordo com os padrões estabelecidos em metodologia vigente? • Os métodos e atributos foram especificados de acordo com os padrões estabelecidos em metodologia vigente e estão em conformidade com a especificação das classes? • O modelo de dados físico foi elaborado de acordo com os padrões estabelecidos em metodologia vigente e atende às funcionalidades mapeadas nos casos de uso? • A arquitetura foi especificada de acordo com os padrões estabelecidos em metodologia vigente e atende às funcionalidades e demais características mapeadas nos artefatos já produzidos (em especial os requisitos)? • A especificação de telas e relatórios foi elaborada de acordo com os padrões estabelecidos em metodologia vigente e atende às funcionalidades mapeadas nos casos de uso? • O testes de construção foram elaborados de acordo com os padrões estabelecidos em metodologia vigente e atendem às funcionalidades mapeadas nos casos de uso? • Os artefatos dessa etapa foram inspecionados por uma equipe de qualidade? • O usuário aprovou formalmente os artefatos da etapa?
  • 34. Qualidade do Software 34 Qualidade no Desenvolvimento Construção • A estrutura física do banco de dados foi criada e testada? • A carga inicial para testes foi realizada e testada? • Os componentes de negócio foram construídos e testados adequadamente? • O testes de integração/sistema foram elaborados de acordo com os padrões estabelecidos em metodologia vigente e atendem às funcionalidades mapeadas nos requisitos? • Os artefatos dessa etapa foram inspecionados por uma equipe de qualidade?
  • 35. Qualidade do Software 35 Qualidade no Desenvolvimento Testes/Docum. • Os testes de integração/sistema foram executados adequadamente? • Os manuais (documentação) foram elaborados e disponibilizados aos usuários e demais participantes? • Os testes de homologação foram elaborados de acordo com os padrões estabelecidos em metodologia vigente e atendem às funcionalidades mapeadas nos requisitos e casos de uso? • Os artefatos dessa etapa foram inspecionados por uma equipe de qualidade?
  • 36. Qualidade do Software 36 Qualidade no Desenvolvimento Homologação • Os testes de homologação foram executados adequadamente? • O teste de aceitação foi realizado adequadamente? • O plano de implantação foi elaborado de acordo com os padrões estabelecidos em metodologia vigente? • O treinamento foi realizado adequadamente? • A infra-estrutura de produção foi preparada adequadamente? • Os artefatos dessa etapa foram inspecionados por uma equipe de qualidade?
  • 37. Qualidade do Software 37 Qualidade no Desenvolvimento Implantação • As rotinas de produção foram montadas adequadamente? • As cargas devidas foram realizadas? • A inspeção das cargas foi realizada por equipe de qualidade? • Os testes de produção foram realizados adequadamente? • O aceite final foi formalizado? • O formulário de “lições aprendidas” foi preenchido? • A acompanhamento da produção foi ou está sendo realizado?
  • 38. Qualidade do Software 38 Qualidade no Pós-desenvolvimento Manutenção • Os requisitos de manutenção foram elicitados? • As necessidades, riscos e impactos foram definidos adequadamente? • O estudo de viabilidade foi realizado? • A execução manutenção foi planejada? • A execução da manutenção foi realizada? • Os testes de manutenção foram realizados? • Os testes de aceitação foram realizados? • O produto foi colocar em produção? • A acompanhamento da produção foi ou está sendo realizado?
  • 39. Qualidade do Software 39 Qualidade na Gestão INICIAÇÃO EXECUÇÃO FINALIZAÇÃO SUPORTE ADMINISTRAÇÃO Desenvolvimento do Projeto Apoio ao Desenvolvimento
  • 40. Qualidade do Software 40 Atividades de Controle do Progresso • O que deve ser feito (objetivos do projeto); • Como deve ser feito (ferramentas, atividades, padrões, etc.); • Quem deve fazer (responsável pela execução das atividades); • Quando deve ser feito (posicionamento na sequência do projeto); • Que resultados são esperados (produtos a serem gerados); • Quais indicadores e medições a serem verificados e realizados; • Quais os pontos de controle/inspeção; • Quais critérios de entrada para cada atividade; • Quais critérios de saída para cada atividade; • Qual o relacionamento entre as atividades (para frente e para trás).
  • 41. Qualidade do Software 41 Atividades de Controle de Testes/Homologação • Testes • Planejar os testes; • Elaborar os casos de testes; • Executar os casos de testes; • Registrar os testes; • Homologação • Planejar a homologação (datas, recursos, responsáveis envolvidos, etc.); • Comunicar aos envolvidos sobre o início do processo com antecedência; • Monitorar o andamento do processo e comunicar possíveis desvios e respectivo término;
  • 42. Qualidade do Software 42 Atividades de Controle de Entrega • Entrega dos artefatos para inspeção; • Entrega dos artefatos para validação do cliente; • Entrega do produto para homologação; • Entrega do produto para aceitação (cliente); • Entrega do produto para produção.
  • 43. Qualidade do Software 43 Atividades de Controle do Escopo • Escopo do Produto: trata das funcionalidades que caracterizam os produtos ou serviços oferecidos pela implementação de um projeto; • Escopo do Projeto: trata do trabalho e dos artefatos criados para contemplar as funcionalidades dos produtos/serviços.
  • 44. Qualidade do Software 44 Atividades de Controle de Riscos • Identificação e Análise: tem como objetivo conhecer os riscos e tratá-los de acordo com as necessidades do projeto; • Processo: • Definição da probabilidade da ocorrência do risco e respectivos impactos; • Definição da estratégia de mitigação do risco; • Definição do plano de contingência do risco; • Reavaliação dos Riscos: tem como objetivo identificar novos riscos e revisar o escopo dos riscos já identificados no transcorrer do projeto; • Monitoramento dos Riscos: tem por objetivo antever a ocorrência de um risco ou identificar a sua ocorrência tão logo aconteça.
  • 45. Qualidade do Software 45 Atividades de Controle de Recursos/Custos • Recurso: qualquer necessidade de um projeto relacionada à infra-estrutura, software, hardware, recursos humanos e documentais. • Custo: todo investimento ou despesa que a companhia terá durante o ciclo de vida de um projeto. • Monitoramento Motivos • Mudanças de escopo ocorridas durante o desenvolvimento. • Estimativas superdimensionadas ou sub-dimensionadas. • Perda do escopo (alta rotatividade da equipe, terceiro não cumpriu o prazo, má gestão, infra- estrutura não disponível, etc.). Atividades • Identificar o mais cedo possível prováveis causas. • Analisar impactos na ocorrência de um ou mais motivos. • Pensar nas soluções e comunicar os responsáveis e parceiros. • Na necessidade, elaborar e submeter à aprovação um Paper complementar.
  • 46. Qualidade do Software 46 Sugestões Bibliográficas Paulk, M. et All; The Capapability Maturity Model: Guidelines for Improving the Software Process; Software Engineering Institute/CMU; Addison-Wesley, 1995. • Sanders, J.; Curran, E.; Software Quality; Addison-Wesley, 1994. • Paulk M. et All; Techinical Report/CMU/SEI-93-TR-025; Key Pratices of the Capability Maturity Model for Software, Version 1.1; Software Engineering Institute/CMU, 1993. • Santos, A. D.; CMM – Capability Maturity Model; Apostila: Faculdade de Engenharia Elétrica/UNICAMP, 2000. • Paula Filho, W. P.; Engenharia de Software: Fundamentos, Métodos e Padrões; LTC Editora, 2001. • Sommerville, I.; Software Engineering, 6th Edition, Adison-Wesley, 2001. • Couto, A. B.; CMMI – Integração dos Modelos de Capacitação e Maturidade de Sistemas; Editora Ciência Moderna, 2007. • IEEE Computer Society; Swebok – Guide to the Software Engineering Body of Knowledge; USA, 2004.