engenharia de software – ufscar 2010 – andré l zanon

38
Engenharia de Software Qualidade de Software Uma abordagem conceitual André Luis Zanon São Carlos SP – UFSCAR 2010 Engenharia de Software – UFSCAR 2010 – André L Zanon

Upload: hilda-warren

Post on 15-Mar-2016

20 views

Category:

Documents


2 download

DESCRIPTION

Engenharia de Software Qualidade de Software Uma abordagem conceitual André Luis Zanon São Carlos SP – UFSCAR 2010. Engenharia de Software – UFSCAR 2010 – André L Zanon. Um paralelo com Sistema de Gestão da Qualidade. Engenharia de Software – UFSCAR 2010 – André L Zanon. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software

Qualidade de SoftwareUma abordagem conceitual

André Luis ZanonSão Carlos SP – UFSCAR

2010

Engenharia de Software – UFSCAR 2010 – André L Zanon

Page 2: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

Um paralelo com Sistema de Gestão da Qualidade

Page 3: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

Um Sistema de Gestão da Qualidade exige:

Procedimentos e métodos de processos Controles e medições Atendimento às especificações (declaradas ou

não declaradas) Registros Técnicas para identificação de falhas e

tratamento de desvios Processos mapeados Responsabilidades definidas Comunicação eficiente (interna e externa)

Page 4: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

Procedimentos e métodos

Procedimentos e métodos bem elaborados garantem um processo eficiente

Page 5: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

Controles e medições

Controles e medições adequados ajudam a identificar falhas nos processos e caracterizam a eficiência do SGQ

Page 6: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

Especificações (Requisitos)Conhecer as especificações declaradas e

perceber as especificações não declaradas garantem a satisfação do cliente (usuário)

“em se tratando de Sistemas de Informação, o usuário final tem uma influência preponderante na avaliação da qualidade do software”

Page 7: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

Registros

Registrar as ocorrências conformes e não- conformes permite dimensionar a qualidade funcional do SGQ

Page 8: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

Técnicas para identificação de falhas

A utilização de ferramentas e técnicas para identificação de causas de problemas nos processos, ajudam a evitar reincidência de falhas

Page 9: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

Processos mapeados

Conhecer completamente o processo, identificando as entradas, fluxos e saídas, permite definir os recursos necessários e responsabilidades para a execução das tarefas envolvidas nos processos

Page 10: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

Responsabilidades

Atribuir bem as responsabilidades, garante bons resultados nas tarefas executadas

Page 11: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

Comunicação

Possuir um canal eficiente de comunicação, garante a integridade da informação

Page 12: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

Qualidade de Software

Como qualquer outro produto, o software precisa possuir garantias de que foi ou está sendo produzido e mantido de forma adequada

Page 13: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

Qualidade de SoftwareDe acordo com a norma ISO/IEC 9126, fatores que

definem a qualidade do software Funcionalidade (o que faz, segurança, etc) Confiabilidade (maturidade, tolerância a falhas, etc) Usabilidade (facilidade de utilização) Eficiência (tempo de resposta e utilização de

recursos) Manutenibilidade (possível de corrigir, adaptar, etc) Portabilidade (utilização em diferentes plataformas)

Page 14: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

MétricasA intangibilidade e a variedade de funções

consideradas no software, dificultam as medições.

Entretanto, medir e comparar é uma necessidade fundamental para avaliar a performance de um produto.

Page 15: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

MétricasMétodo GQM (Goal-Question-Metric): Estabelece objetivos explícitos de

medição da atividade ou processo

Questões chaves cujas respostas permitem alcançar os objetivos

Métricas bem formuladas que auxiliam nas respostas das questões

Page 16: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

MétricasTamanho:

O tamanho do software pode ser um indicador de várias características: maior complexidade, maior tempo para codificação, etc.

Page 17: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

MétricasPontos por função:

Considera as funções criadas no sistema. Pode ser aplicada na descrição arquitetural do projeto. Independe da tecnologia aplicada no projeto

Page 18: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

MétricasComplexidade estrutural:

Avalia o numero de componentes aplicados na construção do software. Pode ser aplicada a partir dos diagramas UML

Page 19: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

MétricasBaseada em fluxo de dados:

Mede a complexidade baseada no volume de informação processado pelos componentes do software

Page 20: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

MétricasAcoplamento e coesão:

Medem o grau de dependência entre os componentes de um programa, podendo ser sub-rotinas, objetos ou módulos.

Page 21: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

ModelosCMMI (Capability Maturity Model

Integration):

Modelo de capacitação de processo para desenvolvimento de software

Permite conhecer e aprimorar processos de desenvolvimento de software

Page 22: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

ModelosCMMI (Capability Maturity Model Integration): O nível de maturidade é definido em cinco

etapas:

InicialProcessos caóticos

GerenciadoProcessos

controlados

DefinidoProcessos

padronizados

Gerenciado quantitativamente

Processos medidos

OtimizadoProcessos

melhorados continuamente

Page 23: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

ModelosCMMI (Capability Maturity Model Integration) Nível 1:

Processos são caóticos

Não existem padrões ou não são seguidos

O planejamento é deficiente e geralmente prazos e custos não são cumpridos

Page 24: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

ModelosCMMI (Capability Maturity Model Integration) Nível 2:

Os processos são bem definidos e planejados

A gerência de projetos passa a ter um papel efetivo

Page 25: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

ModelosCMMI (Capability Maturity Model Integration) Nível 3:

Os processos são bem identificados

A padronização é permanente

Page 26: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

ModelosCMMI (Capability Maturity Model Integration) Nível 4:

Há uma evolução para tratamentos quantitativos dos processos

Métricas passam a ser adotadas

A produtividade e qualidade passam a ser controladas

Page 27: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

ModelosCMMI (Capability Maturity Model Integration) Nível 5:

Prevalece o conceito de melhoria contínua nos processos

As ações passam a ser pró-ativas para que processos sejam melhorados

Page 28: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

ModelosMPS-BR (Melhoria de Processo de Software Brasileiro):

Criado para a melhoria do processo de desenvolvimento de software em empresas o brasileiras

Os níveis de maturidade variam de A (avançado) a G (básico)

Page 29: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

ModelosMPS-BR (Melhoria de Processo de Software Brasileiro):Nível G – Parcialmente gerenciadoNível F – GerenciadoNível E – Parcialmente definidoNível D – Largamente definidoNível C – DefinidoNível B – Gerenciado quantitativamenteNível A – Em otimização

Page 30: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

Gestão da Qualidade do Software

Garantia da qualidade consiste de um conjunto de funções para auditar e relatar que avalia a efetividade e completeza das atividades de controle da qualidade [Pressman, 2006].

Page 31: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

Gestão da Qualidade do SoftwareGestão de custos da qualidade: Prevenção: planejamento, revisões equipamentos de testes e treinamento

Avaliação: relacionados ao entendimento operacional e calibração

Falhas: custos relacionados com falhas do sistema

Page 32: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

Gestão da Qualidade do SoftwareGarantia da Qualidade de Software - SAQ (Software Quality Assunrace): Plano de projeto: desenvolvido na fase de planejamento sendo revisado e

auditado pelas partes Descrição do processo de software: visa a satisfação da política empresarial,

obedecendo à padrões internos e externamente impostos, por exemplo, ISO 9001

Page 33: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

Gestão da Qualidade do SoftwareGarantia da Qualidade de Software - SAQ (Software Quality Assunrace): Satisfação do processo definido: garante o cumprimento de

procedimentos estabelecidos e verifica se correções foram feitas Auditoria de processos: verifica processos, registra e acompanha desvios

e relata aos responsáveis pelo projeto

Page 34: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

Gestão da Qualidade do SoftwareGarantia da Qualidade de Software - SAQ (Software Quality Assunrace): Documentação de desvios: garante que desvios sejam registrados e

acompanha as disposições de tratamento Registro de não-satisfação: registra e relata e acompanha os itens que não

atendem ao padrão exigido

Page 35: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

Gestão da Qualidade do SoftwareGarantia da Qualidade de Software - SAQ (Software Quality

Assunrace): Mudanças: coordena o controle de gestão de mudanças Métricas: auxilia na coleta e análise das métricas do software

Page 36: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

Gestão da Qualidade do SoftwareRevisões de Técnicas Formais garante:

Identificar erros do software Satisfação dos requisitos Satisfação dos padrões estabelecidos Padronização no desenvolvimento Viabilizar a administração do projeto

Page 37: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

ConclusãoA qualidade do software pode ser alcançada seguindo: conceitos gerenciais,

rigor na escolha e aplicação de modelos, métodos e métricas.

Todos estes procedimentos muito bem definidos, contribuem para a eficiência do Sistema de Gestão da Qualidade do Software.

Page 38: Engenharia de Software – UFSCAR 2010 – André L Zanon

Engenharia de Software – UFSCAR 2010 – André L Zanon

Referências BibliográficasKOSCIANSKY, A. e SOARES, M.S.,”Qualidade de Software”,

Novatec, 2007

PRESSMAN, R.S., “Engenharia de Software”. McGraw Hill, 2006.