SlideShare uma empresa Scribd logo
1 de 31
Baixar para ler offline
Qualidade de Software
Álvaro Oliveira1
; Bruno Neves2
1 - antonioalvarooliveira@gmail.com
2- fbrunoneves@gmail.com
UNIVERSIDADE ESTADUAL DO CEARÁ – UECE
PRÓ-REITORIA DE PÓS-GRADUAÇÃO E PESQUISA - PROPGPq
CENTRO DE CIÊNCIAS E TECNOLOGIA – CCT
Mestrado Acadêmico em Ciência da Computação - MACC
Engenharia de Software
Prof. Dr. Paulo Henrique Mendes Maia
Crise de Software
● Foram descobetos no ano de 1960;
● No desenvolvimento de um grande sistema;
● Continuaram a incomodar durante todo o seculo xx.
2
Crise do Software - Problemas
● Cronogramas não observados.
● Projetos abandonados.
● Módulos que não operam corretamente quando combinados.
● Programas que não fazem exatamente o que era esperado.
● Sistemas tão difíceis de usar que são descartados.
● Sistemas que simplesmente param de funcionar.
3
E hoje?
4
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.
5
Exemplo: Carro
O que um determinado produto
apresenta para considerarmos
que o mesmo tem qualidade?
6
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.
7
Normas e Modelos para Qualidade
● ISO 9126 - Norma para qualidade de produtos de software
● ISO 12119 - Norma para qualidade de pacotes de software
● ISO 12207 - Processos de ciclo de vida do software.
● NBR ISO 9003:2004 -Diretrizes para aplicação da norma ISO 9001
ao desenvolvimento, fornecimento e manutenção de software.
● CMMI- Capability Maturity Model Integration. Modelo do SEI que
estende o CMM para avaliação de processos de software.
8
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”
9
Qualidade de Software - Motivação
● O principal objetivo da Engenharia de Software (ES) é ajudar a produzir
software de qualidade;
● Empresas que desenvolvem software de qualidade são mais
competitivas;
● Empresas que utilizam software de alta qualidade podem, em geral,
oferecer um melhor serviço a um preço mais competitivo.
10
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”
11
Princípios Básicos da Qualidade
12
Redução de custo da
Qualidade
Satisfação do cliente
Controle do projeto
Melhoria continua dos
processos
O que o Cliente Deseja?
● Atendimento aos requisitos especificados
● Defeito zero
● Alto desempenho
● Baixo custo
● Desenvolvimento rápido
● Facilidade de uso
● Eficiência nos serviços associados
● Inovação
13
Gerenciamento da qualidade
● Nível organizacional
○ Framework;
○ Padrões de processos organizacionais;
○ Definir os processos de desenvolvimento de software;
■ Incluindo os requisitos de sistema, projeto e código.
● Nível de projeto
○ Aplicação de processos de qualidades;
○ Saídas conformes aos padrões do projeto;
○ Estabelecimento do plano de qualidade.
14
Plano de qualidade
● Introdução ao produto
● Planos de produto
● Descrições de processo
● Metas de Qualidade
● Riscos e Gerenciamentos de riscos
15
Deve estabelecer as qualidades desejadas para o software e
descrever como elas devem ser avaliadas.
Importante Saber
16
Plano de qualidade, você
deve tentar mantê-los o mais
breve possível.
Garantia X Controle
Qualidade
17
Garantia da Qualidade
● Tenta produzir software com uma baixa taxa de defeitos;
● Natureza proativa (Estar no controle)
● Definição de procedimentos, padrões, treinamentos.
● Gerência e melhoria de processo.
18
Controle da Qualidade
● Evita que produtos defeituosos sejam entregues aos
clientes;
● Natureza reativa (Estar sob controle)
● Objetiva monitoração de processo, e detecção e correção
de defeitos.
● Ex: Inspeções, ensaios e testes.
19
Revisões e Inspeções
● Atividades de controle de qualidade que examinam software e sua
documentação em busca de possíveis erros ou inconformidades com os
padrões previamente escolhidos.
20
Isto envolve:
● Examinar o software:
○ Sua documentação;
○ os registros do processo para descobrir erros e omissões;
○ verificar se os padrões de qualidade foram seguidos
O Processo de Revisão
Divide-se em Três: Atividades pré-revisão, Reunião de Revisão e
Atividades pós-revisão.
21
Inspeções de Programa
● As inspeções de programa são'revisões em pares'em que os membros da
equipe colaboram para encontrar bugs no programa que está sendo
desenvolvido.
● As inspeções podem fazer parte dos processos de verificação e validação
de software.
● Elas complementam os testes.
● Se usa um checklist de erros comuns de programação para ajudar na
busca por bugs.
22
Um checklist de inspeção
23
Medições e métricas
Fonte: Sommerville,9ª Edição
24
99 % é bom?
● Visão Clássica de Qualidade
● Equivale a 3,8 sigma.
O que isso significa?
Supondo que 5 mil cirurgias sejam realizadas num hospital por semana.
50 operações por semana seriam incorretas !
25
99% é bom?
Tabela de Conversão do Nível SIGMA
Porcentagem de Acerto Defeitos por Milhão de
Oportunidades (DPMO)
SIGMA
31% 690.000 1 sigma
69,2% 308.537 2 sigma
93,3% 66.807 3 sigma
99,4% 6.210 4 sigma
99,977% 233 5 sigma
99,99966% 3,4 6 sigma
26
Histórico do Seis SIGMA
Criado em 1980 pela Motorola
Popularizou-se por ser utilizado com sucesso em empresas como a General
Eletric e a Allied Signal.
Sigma é uma letra grega que é usada para representar o desvio padrão da
média. Quanto maior o desvio padrão, maior a imprevisibilidade.
27
O que é o Seis SIGMA?
Conjunto de práticas para otimizar o desempenho dos processos, eliminando
os defeitos e colocando-os em consonância com o padrão da empresa.
Sua escala é usada para medir o nível de qualidade de um processo através
de uma relação entre o número de defeitos por milhão e o nível SIGMA.
O objetivo é chegar próximo de “zero” defeito.
28
Seis SIGMA e o DMAIC
● D - Definir (Define)
○ define-se com precisão o escopo do projeto
● M- Medir (Measure)
○ determina-se a localização ou foco do problema
● A- Analisar (Analyze)
○ determinam-se as causas de cada problema prioritário
● I - Melhorar (Improve)
○ propõem-se, avaliam-se e implementam-se soluções para cada problema prioritário
● C - Controlar (Control)
○ garante-se que o alcance da meta seja mantido no longo prazo
29
O reino perdido
30
Eventos sobre Qualidade de Software
1. International Quality Software Conference - QSIC
2. Simpósio Brasileiro de Qualidade de Software – SBQS
31

Mais conteúdo relacionado

Mais procurados

Qualidade de Software - Introdução
Qualidade de Software - Introdução Qualidade de Software - Introdução
Qualidade de Software - Introdução Elaine Cecília Gatto
 
Testes de Software
Testes de SoftwareTestes de Software
Testes de SoftwareCapgemini
 
Engenharia de Software - Conceitos e Modelos de Desenvolvimento
Engenharia de Software - Conceitos e Modelos de Desenvolvimento Engenharia de Software - Conceitos e Modelos de Desenvolvimento
Engenharia de Software - Conceitos e Modelos de Desenvolvimento Sérgio Souza Costa
 
Conceitos de básicos de qualidade de software
Conceitos de básicos de qualidade de softwareConceitos de básicos de qualidade de software
Conceitos de básicos de qualidade de softwareRonney Moreira de Castro
 
Qualidade de Software: Modelos e normas
Qualidade de Software: Modelos e normasQualidade de Software: Modelos e normas
Qualidade de Software: Modelos e normasAlex Camargo
 
Introdução à Qualidade de Software
Introdução à Qualidade de SoftwareIntrodução à Qualidade de Software
Introdução à Qualidade de SoftwareCloves da Rocha
 
Fatores de Qualidade de MacCall e ISO/IEC 9126
Fatores de Qualidade de MacCall e ISO/IEC 9126Fatores de Qualidade de MacCall e ISO/IEC 9126
Fatores de Qualidade de MacCall e ISO/IEC 9126Elaine Cecília Gatto
 
Aula 1 - Introdução a Engenharia de Software
Aula 1 -  Introdução a Engenharia de SoftwareAula 1 -  Introdução a Engenharia de Software
Aula 1 - Introdução a Engenharia de SoftwareLeinylson Fontinele
 
Introducao a Arquitetura de Software
Introducao a Arquitetura de SoftwareIntroducao a Arquitetura de Software
Introducao a Arquitetura de SoftwareUFPA
 
Metodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de SoftwareMetodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de SoftwareÁlvaro Farias Pinheiro
 
Analise de Requisitos
Analise de RequisitosAnalise de Requisitos
Analise de Requisitoselliando dias
 

Mais procurados (20)

Qualidade de Software - Introdução
Qualidade de Software - Introdução Qualidade de Software - Introdução
Qualidade de Software - Introdução
 
Testes de Software
Testes de SoftwareTestes de Software
Testes de Software
 
Engenharia de Software - Conceitos e Modelos de Desenvolvimento
Engenharia de Software - Conceitos e Modelos de Desenvolvimento Engenharia de Software - Conceitos e Modelos de Desenvolvimento
Engenharia de Software - Conceitos e Modelos de Desenvolvimento
 
Modelos de Engenharia de Software
Modelos de Engenharia de SoftwareModelos de Engenharia de Software
Modelos de Engenharia de Software
 
Aula 2 - Processos de Software
Aula 2 - Processos de SoftwareAula 2 - Processos de Software
Aula 2 - Processos de Software
 
Conceitos de básicos de qualidade de software
Conceitos de básicos de qualidade de softwareConceitos de básicos de qualidade de software
Conceitos de básicos de qualidade de software
 
Teste de Software - Introdução
Teste de Software - IntroduçãoTeste de Software - Introdução
Teste de Software - Introdução
 
Teste de Software
Teste de SoftwareTeste de Software
Teste de Software
 
Qualidade de Software: Modelos e normas
Qualidade de Software: Modelos e normasQualidade de Software: Modelos e normas
Qualidade de Software: Modelos e normas
 
Fundamentos da Engenharia de Software
Fundamentos da Engenharia de SoftwareFundamentos da Engenharia de Software
Fundamentos da Engenharia de Software
 
Introdução à Qualidade de Software
Introdução à Qualidade de SoftwareIntrodução à Qualidade de Software
Introdução à Qualidade de Software
 
Aula - Metodologias Ágeis
Aula - Metodologias ÁgeisAula - Metodologias Ágeis
Aula - Metodologias Ágeis
 
Engenharia de software
Engenharia de softwareEngenharia de software
Engenharia de software
 
Teste de software
Teste de softwareTeste de software
Teste de software
 
Fatores de Qualidade de MacCall e ISO/IEC 9126
Fatores de Qualidade de MacCall e ISO/IEC 9126Fatores de Qualidade de MacCall e ISO/IEC 9126
Fatores de Qualidade de MacCall e ISO/IEC 9126
 
Aula 1 - Introdução a Engenharia de Software
Aula 1 -  Introdução a Engenharia de SoftwareAula 1 -  Introdução a Engenharia de Software
Aula 1 - Introdução a Engenharia de Software
 
Aula 7 - Modelagem de Software
Aula 7 - Modelagem de SoftwareAula 7 - Modelagem de Software
Aula 7 - Modelagem de Software
 
Introducao a Arquitetura de Software
Introducao a Arquitetura de SoftwareIntroducao a Arquitetura de Software
Introducao a Arquitetura de Software
 
Metodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de SoftwareMetodologias de Desenvolvimento de Software
Metodologias de Desenvolvimento de Software
 
Analise de Requisitos
Analise de RequisitosAnalise de Requisitos
Analise de Requisitos
 

Destaque

Tratamento de exceções
Tratamento de exceçõesTratamento de exceções
Tratamento de exceçõesAlvaro Oliveira
 
Clean code - Qualidade em desenvolvimento de Software
Clean code - Qualidade em desenvolvimento de SoftwareClean code - Qualidade em desenvolvimento de Software
Clean code - Qualidade em desenvolvimento de SoftwareGabriel Felipe Soares
 
Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...
Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...
Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...Roberto Pepato
 
Padrao de projeto iterator
Padrao de projeto iteratorPadrao de projeto iterator
Padrao de projeto iteratorAlvaro Oliveira
 
Introdução a estruturas de dados em python
Introdução a estruturas de dados em pythonIntrodução a estruturas de dados em python
Introdução a estruturas de dados em pythonAlvaro Oliveira
 
Banco de questões qualidade de software
Banco de questões qualidade de softwareBanco de questões qualidade de software
Banco de questões qualidade de softwareBruno Nascimento
 
MPS.BR - Melhoria do processo de Software Brasileiro
MPS.BR - Melhoria do processo de Software BrasileiroMPS.BR - Melhoria do processo de Software Brasileiro
MPS.BR - Melhoria do processo de Software BrasileiroPaulo Henrique de Sousa
 
Cherrypy - um framework para desenvolvimento rápido de aplicações web
Cherrypy - um framework para desenvolvimento rápido de aplicações webCherrypy - um framework para desenvolvimento rápido de aplicações web
Cherrypy - um framework para desenvolvimento rápido de aplicações webAlvaro Oliveira
 
Melhorando a qualidade do software com testes de ponta a-ponta
Melhorando a qualidade do software com testes de ponta a-pontaMelhorando a qualidade do software com testes de ponta a-ponta
Melhorando a qualidade do software com testes de ponta a-pontaGuilherme Cardoso
 
ISO 9126 - Qualidade de Software
ISO 9126 - Qualidade de SoftwareISO 9126 - Qualidade de Software
ISO 9126 - Qualidade de SoftwareFelipe Cabral
 
[slides] Gestão da TI (2015: 2º semestre)
[slides] Gestão da TI (2015: 2º semestre)[slides] Gestão da TI (2015: 2º semestre)
[slides] Gestão da TI (2015: 2º semestre)Alessandro Almeida
 
Servidores de E-mail: Qmail, Sendmail e Postfix
Servidores de E-mail: Qmail, Sendmail e PostfixServidores de E-mail: Qmail, Sendmail e Postfix
Servidores de E-mail: Qmail, Sendmail e PostfixAlvaro Oliveira
 
Programando para web com python - Introdução a Python
Programando para web com python - Introdução a PythonProgramando para web com python - Introdução a Python
Programando para web com python - Introdução a PythonAlvaro Oliveira
 

Destaque (16)

Tratamento de exceções
Tratamento de exceçõesTratamento de exceções
Tratamento de exceções
 
Brisa Qualidade e Testes de software
Brisa   Qualidade e Testes de softwareBrisa   Qualidade e Testes de software
Brisa Qualidade e Testes de software
 
Clean code - Qualidade em desenvolvimento de Software
Clean code - Qualidade em desenvolvimento de SoftwareClean code - Qualidade em desenvolvimento de Software
Clean code - Qualidade em desenvolvimento de Software
 
Qualidade de código
Qualidade de códigoQualidade de código
Qualidade de código
 
Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...
Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...
Continuous Inspection - Uma abordagem efetiva para melhoria contínua da quali...
 
Padrao de projeto iterator
Padrao de projeto iteratorPadrao de projeto iterator
Padrao de projeto iterator
 
Introdução a estruturas de dados em python
Introdução a estruturas de dados em pythonIntrodução a estruturas de dados em python
Introdução a estruturas de dados em python
 
Processamento paralelo
Processamento paraleloProcessamento paralelo
Processamento paralelo
 
Banco de questões qualidade de software
Banco de questões qualidade de softwareBanco de questões qualidade de software
Banco de questões qualidade de software
 
MPS.BR - Melhoria do processo de Software Brasileiro
MPS.BR - Melhoria do processo de Software BrasileiroMPS.BR - Melhoria do processo de Software Brasileiro
MPS.BR - Melhoria do processo de Software Brasileiro
 
Cherrypy - um framework para desenvolvimento rápido de aplicações web
Cherrypy - um framework para desenvolvimento rápido de aplicações webCherrypy - um framework para desenvolvimento rápido de aplicações web
Cherrypy - um framework para desenvolvimento rápido de aplicações web
 
Melhorando a qualidade do software com testes de ponta a-ponta
Melhorando a qualidade do software com testes de ponta a-pontaMelhorando a qualidade do software com testes de ponta a-ponta
Melhorando a qualidade do software com testes de ponta a-ponta
 
ISO 9126 - Qualidade de Software
ISO 9126 - Qualidade de SoftwareISO 9126 - Qualidade de Software
ISO 9126 - Qualidade de Software
 
[slides] Gestão da TI (2015: 2º semestre)
[slides] Gestão da TI (2015: 2º semestre)[slides] Gestão da TI (2015: 2º semestre)
[slides] Gestão da TI (2015: 2º semestre)
 
Servidores de E-mail: Qmail, Sendmail e Postfix
Servidores de E-mail: Qmail, Sendmail e PostfixServidores de E-mail: Qmail, Sendmail e Postfix
Servidores de E-mail: Qmail, Sendmail e Postfix
 
Programando para web com python - Introdução a Python
Programando para web com python - Introdução a PythonProgramando para web com python - Introdução a Python
Programando para web com python - Introdução a Python
 

Semelhante a Qualidade de software

Conceitos e fundamentos sobre testes de software e garantia da qualidade
Conceitos e fundamentos sobre testes de software e garantia da qualidadeConceitos e fundamentos sobre testes de software e garantia da qualidade
Conceitos e fundamentos sobre testes de software e garantia da qualidaderzauza
 
Qualidade de Software
Qualidade de SoftwareQualidade de Software
Qualidade de SoftwareRafael Silva
 
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.pptxRoberto Nunes
 
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 bernardesMatheus de Lara Calache
 
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 Gustavo Bernardes
 
Gerenciamento PDS
Gerenciamento PDSGerenciamento PDS
Gerenciamento PDSFatec Jales
 
Aula 01 qs - 6 sigma
Aula 01   qs - 6 sigmaAula 01   qs - 6 sigma
Aula 01 qs - 6 sigmaJunior Gomes
 
1 Qss
1 Qss1 Qss
1 Qsslcbj
 
O Processo de Desenvolvimento de Software
O Processo de Desenvolvimento de SoftwareO Processo de Desenvolvimento de Software
O Processo de Desenvolvimento de SoftwareCamilo de Melo
 
Apresentação qualidade og day
Apresentação qualidade og dayApresentação qualidade og day
Apresentação qualidade og dayRafael Silva
 
Qualidade de Software - OpenGEO Day2010
Qualidade de Software - OpenGEO Day2010Qualidade de Software - OpenGEO Day2010
Qualidade de Software - OpenGEO Day2010Raphael Reis
 

Semelhante a Qualidade de software (20)

Qualidade de software
Qualidade de softwareQualidade de software
Qualidade de software
 
Conceitos e fundamentos sobre testes de software e garantia da qualidade
Conceitos e fundamentos sobre testes de software e garantia da qualidadeConceitos e fundamentos sobre testes de software e garantia da qualidade
Conceitos e fundamentos sobre testes de software e garantia da qualidade
 
Qualidade de Software
Qualidade de SoftwareQualidade de Software
Qualidade de Software
 
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
 
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
 
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
 
Xpmg
XpmgXpmg
Xpmg
 
Analise aula2
Analise aula2Analise aula2
Analise aula2
 
Qualidade de Software
Qualidade de SoftwareQualidade de Software
Qualidade de Software
 
Dba Testes Gerentes B2
Dba Testes Gerentes B2Dba Testes Gerentes B2
Dba Testes Gerentes B2
 
Teste de Software
Teste de SoftwareTeste de Software
Teste de Software
 
Gerenciamento PDS
Gerenciamento PDSGerenciamento PDS
Gerenciamento PDS
 
Aula 01 qs - 6 sigma
Aula 01   qs - 6 sigmaAula 01   qs - 6 sigma
Aula 01 qs - 6 sigma
 
1 Qss
1 Qss1 Qss
1 Qss
 
XPMS
XPMSXPMS
XPMS
 
O Processo de Desenvolvimento de Software
O Processo de Desenvolvimento de SoftwareO Processo de Desenvolvimento de Software
O Processo de Desenvolvimento de Software
 
Trabalho de 6 sigmas administração da produção 2
Trabalho de 6 sigmas   administração da produção 2Trabalho de 6 sigmas   administração da produção 2
Trabalho de 6 sigmas administração da produção 2
 
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
 
Mini aula análise de requisitos
Mini aula análise de requisitosMini aula análise de requisitos
Mini aula análise de requisitos
 

Qualidade de software

  • 1. Qualidade de Software Álvaro Oliveira1 ; Bruno Neves2 1 - antonioalvarooliveira@gmail.com 2- fbrunoneves@gmail.com UNIVERSIDADE ESTADUAL DO CEARÁ – UECE PRÓ-REITORIA DE PÓS-GRADUAÇÃO E PESQUISA - PROPGPq CENTRO DE CIÊNCIAS E TECNOLOGIA – CCT Mestrado Acadêmico em Ciência da Computação - MACC Engenharia de Software Prof. Dr. Paulo Henrique Mendes Maia
  • 2. Crise de Software ● Foram descobetos no ano de 1960; ● No desenvolvimento de um grande sistema; ● Continuaram a incomodar durante todo o seculo xx. 2
  • 3. Crise do Software - Problemas ● Cronogramas não observados. ● Projetos abandonados. ● Módulos que não operam corretamente quando combinados. ● Programas que não fazem exatamente o que era esperado. ● Sistemas tão difíceis de usar que são descartados. ● Sistemas que simplesmente param de funcionar. 3
  • 5. 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. 5
  • 6. Exemplo: Carro O que um determinado produto apresenta para considerarmos que o mesmo tem qualidade? 6
  • 7. 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. 7
  • 8. Normas e Modelos para Qualidade ● ISO 9126 - Norma para qualidade de produtos de software ● ISO 12119 - Norma para qualidade de pacotes de software ● ISO 12207 - Processos de ciclo de vida do software. ● NBR ISO 9003:2004 -Diretrizes para aplicação da norma ISO 9001 ao desenvolvimento, fornecimento e manutenção de software. ● CMMI- Capability Maturity Model Integration. Modelo do SEI que estende o CMM para avaliação de processos de software. 8
  • 9. 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” 9
  • 10. Qualidade de Software - Motivação ● O principal objetivo da Engenharia de Software (ES) é ajudar a produzir software de qualidade; ● Empresas que desenvolvem software de qualidade são mais competitivas; ● Empresas que utilizam software de alta qualidade podem, em geral, oferecer um melhor serviço a um preço mais competitivo. 10
  • 11. 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” 11
  • 12. Princípios Básicos da Qualidade 12 Redução de custo da Qualidade Satisfação do cliente Controle do projeto Melhoria continua dos processos
  • 13. O que o Cliente Deseja? ● Atendimento aos requisitos especificados ● Defeito zero ● Alto desempenho ● Baixo custo ● Desenvolvimento rápido ● Facilidade de uso ● Eficiência nos serviços associados ● Inovação 13
  • 14. Gerenciamento da qualidade ● Nível organizacional ○ Framework; ○ Padrões de processos organizacionais; ○ Definir os processos de desenvolvimento de software; ■ Incluindo os requisitos de sistema, projeto e código. ● Nível de projeto ○ Aplicação de processos de qualidades; ○ Saídas conformes aos padrões do projeto; ○ Estabelecimento do plano de qualidade. 14
  • 15. Plano de qualidade ● Introdução ao produto ● Planos de produto ● Descrições de processo ● Metas de Qualidade ● Riscos e Gerenciamentos de riscos 15 Deve estabelecer as qualidades desejadas para o software e descrever como elas devem ser avaliadas.
  • 16. Importante Saber 16 Plano de qualidade, você deve tentar mantê-los o mais breve possível.
  • 18. Garantia da Qualidade ● Tenta produzir software com uma baixa taxa de defeitos; ● Natureza proativa (Estar no controle) ● Definição de procedimentos, padrões, treinamentos. ● Gerência e melhoria de processo. 18
  • 19. Controle da Qualidade ● Evita que produtos defeituosos sejam entregues aos clientes; ● Natureza reativa (Estar sob controle) ● Objetiva monitoração de processo, e detecção e correção de defeitos. ● Ex: Inspeções, ensaios e testes. 19
  • 20. Revisões e Inspeções ● Atividades de controle de qualidade que examinam software e sua documentação em busca de possíveis erros ou inconformidades com os padrões previamente escolhidos. 20 Isto envolve: ● Examinar o software: ○ Sua documentação; ○ os registros do processo para descobrir erros e omissões; ○ verificar se os padrões de qualidade foram seguidos
  • 21. O Processo de Revisão Divide-se em Três: Atividades pré-revisão, Reunião de Revisão e Atividades pós-revisão. 21
  • 22. Inspeções de Programa ● As inspeções de programa são'revisões em pares'em que os membros da equipe colaboram para encontrar bugs no programa que está sendo desenvolvido. ● As inspeções podem fazer parte dos processos de verificação e validação de software. ● Elas complementam os testes. ● Se usa um checklist de erros comuns de programação para ajudar na busca por bugs. 22
  • 23. Um checklist de inspeção 23
  • 24. Medições e métricas Fonte: Sommerville,9ª Edição 24
  • 25. 99 % é bom? ● Visão Clássica de Qualidade ● Equivale a 3,8 sigma. O que isso significa? Supondo que 5 mil cirurgias sejam realizadas num hospital por semana. 50 operações por semana seriam incorretas ! 25
  • 26. 99% é bom? Tabela de Conversão do Nível SIGMA Porcentagem de Acerto Defeitos por Milhão de Oportunidades (DPMO) SIGMA 31% 690.000 1 sigma 69,2% 308.537 2 sigma 93,3% 66.807 3 sigma 99,4% 6.210 4 sigma 99,977% 233 5 sigma 99,99966% 3,4 6 sigma 26
  • 27. Histórico do Seis SIGMA Criado em 1980 pela Motorola Popularizou-se por ser utilizado com sucesso em empresas como a General Eletric e a Allied Signal. Sigma é uma letra grega que é usada para representar o desvio padrão da média. Quanto maior o desvio padrão, maior a imprevisibilidade. 27
  • 28. O que é o Seis SIGMA? Conjunto de práticas para otimizar o desempenho dos processos, eliminando os defeitos e colocando-os em consonância com o padrão da empresa. Sua escala é usada para medir o nível de qualidade de um processo através de uma relação entre o número de defeitos por milhão e o nível SIGMA. O objetivo é chegar próximo de “zero” defeito. 28
  • 29. Seis SIGMA e o DMAIC ● D - Definir (Define) ○ define-se com precisão o escopo do projeto ● M- Medir (Measure) ○ determina-se a localização ou foco do problema ● A- Analisar (Analyze) ○ determinam-se as causas de cada problema prioritário ● I - Melhorar (Improve) ○ propõem-se, avaliam-se e implementam-se soluções para cada problema prioritário ● C - Controlar (Control) ○ garante-se que o alcance da meta seja mantido no longo prazo 29
  • 31. Eventos sobre Qualidade de Software 1. International Quality Software Conference - QSIC 2. Simpósio Brasileiro de Qualidade de Software – SBQS 31