Qualidade de Software



Documentos relacionados
Introdução à Qualidade de Software. Profº Aldo Rocha

Conceitos Fundamentais de Qualidade de Software

Qualidade de Software

Qualidade e Teste de Software. QTS - Norma ISO (NBR13596) 1

A definição do escopo trata-se de um processo onde é realizada uma descrição detalhada do projeto e do produto a ser desenvolvido;

Gerência de Projetos Prof. Dr. Sandro Ronaldo Bezerra Oliveira

Qualidade de Software

ITIL v3 - Operação de Serviço - Parte 1

Gerenciamento de Qualidade. Paulo C. Masiero Cap SMVL

Aula 2 Revisão 1. Ciclo de Vida. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW. Processo de Desenvolvimento de SW

3 Qualidade de Software

ISO/IEC Avaliação da conformidade Declaração de conformidade do fornecedor Parte 2: Documentação de apoio

ISO/IEC Avaliação da conformidade Declaração de conformidade do fornecedor Parte 1: Requisitos gerais

TRANSIÇÃO DAS CERTIFICAÇÕES DOS SISTEMAS DE GESTÃO DA QUALIDADE E SISTEMAS DE GESTÃO AMBIENTAL, PARA AS VERSÕES 2015 DAS NORMAS.

Qualidade de Software

LISTA DE VERIFICAÇAO DO SISTEMA DE GESTAO DA QUALIDADE

QUALIFICAÇÃO E CERTIFICAÇÃO DE PESSOAL EM CORROSÃO E PROTEÇÃO

ESTUDO DE VIABILIDADE. Santander, Victor - Unioeste Aula de Luiz Eduardo Guarino de Vasconcelos

Introdução. Gerência de Projetos de Software. Sumário. Sistemas de Informação para Processos Produtivos

Observações. Referência Título / Campo de Aplicação Emissor Data de adoção

Observações. Referência Título / Campo de Aplicação Emissor Data de adoção

Porque estudar Gestão de Projetos?

QUALIDADE DE PRODUTO ISO 9126

Engenharia de Software II

DESENVOLVENDO O SISTEMA

Gerenciamento de Projetos Modulo IX Qualidade

Gerência de Projetos e EVTE. Fabiana Costa Guedes

4. SISTEMAS DE APOIO À DECISÃO

Professor: Curso: Disciplina: Aula 4-5-6

Atividades da Engenharia de Software ATIVIDADES DE APOIO. Atividades da Engenharia de Software. Atividades da Engenharia de Software

Gerenciamento de Requisitos

Engenharia de Software II

Apresentação do Manual de Gestão de IDI

Projeto de Desenvolvimento de Software. Apresentação (Ementa) e Introdução

Todos nossos cursos são preparados por mestres e profissionais reconhecidos no mercado, com larga e comprovada experiência em suas áreas de atuação.

Requisitos de Software

QUALIDADE DE SOFTWARE

ENG 2332 CONSTRUÇÃO CIVIL I

da Qualidade ISO 9001: 2000

Planejamento de Projeto Gestão de Projetos

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas

Segurança e Saúde dos Trabalhadores

NORMA NBR ISO 9001:2008

PMBoK Comentários das Provas TRE-PR 2009

Gerenciamento da Integração (PMBoK 5ª ed.)

Ciência da Computação ENGENHARIA DE SOFTWARE. Análise dos Riscos

INTRODUÇÃO A PROJETOS

Leslier Soares Corrêa Estácio de Sá / Facitec Abril/Maio 2015

Gerenciamento de integração de projeto

Engenharia de Software III

DIMENSÃO DE CONSTRUÍDO

Sistemas de Informação Gerencial

QUALIDADE DE SOFTWARE

FTAD Formação Técnica em Administração de Empresas. Módulo: Gestão da Qualidade. Profa. Maria do Carmo Calado

c. Técnica de Estrutura de Controle Teste do Caminho Básico

A NECESSIDADE DE UMA NOVA VISÃO DO PROJETO NOS CURSOS DE ENGENHARIA CIVIL, FRENTE À NOVA REALIDADE DO SETOR EM BUSCA DA QUALIDADE

Processo de Implementação de um Sistema de Gestão da Qualidade

MQ-1 Revisão: 06 Data: 20/04/2007 Página 1

AFETA A SAÚDE DAS PESSOAS

Iris Trindade Chacon Chefe da Difiq

Gerenciamento de Projetos Modulo II Clico de Vida e Organização

Gerência de Projetos

A NORMA ISO 14001: PANORAMA ATUAL E POSSÍVEIS CLÁUSULAS

RELATÓRIO. Participantes

Disciplina: Gerenciamento de Projetos e Práticas de Integração. Gerenciamento de Projetos e Práticas de Integração.

UNEMAT SISTEMA DE INFORMAÇÃO (SI) Professora: Priscila Pelegrini

GESTÃO DA QUALIDADE. Palavras-chave: Qualidade. Gestão da Qualidade. Definições da Qualidade.

Plano de Carreira e Desenvolvimento

Processos de gerenciamento de projetos em um projeto

ENGENHARIA DE SOFTWARE I

Questionário de Avaliação de Maturidade Setorial: Modelo PRADO-MMGP

GARANTIA DA QUALIDADE DE SOFTWARE

Profa. Dra. Ana Paula Gonçalves Serra

GESTÃO DE QUALIDADE EM SERVIÇOS NAS MICRO E PEQUENAS EMPRESAS DO RAMO DE SOFTWARE: GARANTIA DE QUALIDADE MPS.BR

QUALIDADE DE SOFTWARE

Metodologia de Desenvolvimento de Software. Prof. M.Sc. Sílvio Bacalá Jr

Planejamento - 7. Planejamento do Gerenciamento do Risco Identificação dos riscos. Mauricio Lyra, PMP

Qualidade de Software

Unidade I Conceitos BásicosB. Conceitos BásicosB

CAPÍTULO 25 COERÊNCIA REGULATÓRIA

Copyright Proibida Reprodução. Prof. Éder Clementino dos Santos

Roteiro SENAC. Análise de Riscos. Planejamento do Gerenciamento de Riscos. Planejamento do Gerenciamento de Riscos

PROCEDIMENTO ESTRUTURA: 1-Objetivo: 2- Campo de Aplicação: 3- Documento de Referência: 4- Definições e Siglas: 5- Descrição do Procedimento:

PCP 001 Tanques de Armazenamento Subterrâneo de Combustíveis.

ASPECTOS CONCEITUAIS OBJETIVOS planejamento tomada de decisão

Transcrição:

Qualidade de Software Conceitos, estudo, normas Giuliano Prado de Morais Giglio profgiuliano@yahoo.com.br

Objetivos Definir Qualidade Definir Qualidade no contexto de Software Relacionar Qualidade de Processo a Qualidade de Produto Software Citar as principais normas e padrões processo Essa será nossa agenda...

O que é Qualidade? O que um determinado produto apresenta para considerarmos que o mesmo tem qualidade? Ex.: Carro Qualidade é um conceito relativo. Diversos aspectos são levados em conta. No caso de um automóvel, fatores como conforto, segurança, desempenho, beleza e custo têm estreita relação com a qualidade.

Qualidade de Software Software não é um produto físico Segundo Pressman [5], qualidade de software está relacionado a: conformidade com requisitos funcionais e de desempenho explicitamente declarados; Conformidade com características implícitas, que normalmente são esperadas em todo software; Adoção de normas de desenvolvimento explicitamente documentadas. Analisando cada item...

O que é Qualidade? Qualidade está fortemente relacionada à conformidade com os requisitos. O que é conformidade em relação a requisitos? observado x especificado. Pode haver problemas na observação. Pode haver problemas na especificação.

Conformidade com Requisitos Funcionais e Desempenho Estes requisitos formam a base pela qual a qualidade é medida. A falta de conformidade com estes requisitos significa falta de qualidade.

Conformidade com Requisitos Implícitos Um software de qualidade deve ser*: Correto Confiável Eficiente Integro Fácil de Usar Manutenível Flexível Testável Portável Reutilizável Interoperável *definidos na norma ISO/IEC 9126.

O que é Qualidade? Qualidade diz respeito à satisfação do cliente. Requisitos são especificados por pessoas e com o objetivo de satisfazer outras pessoas. Uma especificação depende das escolhas feitas (clientes alvo). Pode haver problemas na especificação.

Breve Histórico da Qualidade Relatos Históricos de 4.000 anos atrás no Egito. Marco Importante: Revolução Industrial 1920: Controle Estatístico da Produção 1940: Surgimento de vários organismos ligados à qualidade ASQC (American Society for Quality Control) ABNT (Associação Brasileira de Normas Técnicas) ISO (International Standardization Organization) Ainda década de 1940: Japão destaca-se. Década de 1970: Qualidade de Software

O que é Qualidade de Software? Conferência da NATO (1968) Crise de Software Problemas detectados: 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. Passados 40 anos, o que mudou?

O que é Qualidade de Software? Qualidade em geral: é um conceito relativo. está fortemente relacionada à conformidade com requisitos. diz respeito à satisfação do cliente. Como isso se manifesta em software?

Desenvolvimento de Software O aspecto não repetitivo do desenvolvimento de software torna essa atividade difícil e, em boa medida, imprevisível. Delimitar o escopo de um sistema não é trivial. A volatilidade dos requisitos é lugar comum no desenvolvimento de software.

Fatores que afetam o Desenvolvimento de Software e influenciam a Qualidade Tamanho e complexidade do software; Número de pessoas envolvidas no projeto; Métodos, técnicas e ferramentas utilizadas; Custo x benefício do sistema; Custos associados à existência de erros; Custos associados à detecção e remoção de erros; etc.

O que é Processo de Software? Processos de Software devem estabelecer: atividades a serem realizadas durante o processo, sua estrutura e organização (decomposição e precedência), incluindo a definição de um modelo de ciclo de vida quando pertinente (ex.: processo de desenvolvimento); artefatos requeridos e produzidos por cada uma das atividades do processo; procedimentos (métodos, técnicas, roteiros e padrões) a serem adotados na realização das atividades; recursos necessários (humanos, hardware e software) para a realização das atividades.

Qualidade do Processo de Software Um bom processo não garante que os produtos produzidos são de boa qualidade, mas é um indicativo de que a organização é capaz de produzir bons produtos.

Qualidade de Software Logo, sob o ponto vista de qualidade de software, a questão é: Como satisfazer, de forma adequada, os requisitos do usuário? Em outras palavras Como obter produto software de qualidade?

Motivação para a busca da Qualidade do Processo de Software Aumento da qualidade do produto. Diminuição do retrabalho. Maior produtividade. Redução do tempo para atender o mercado (time to market). Maior competitividade. Maior precisão nas estimativas.

Como definir um processo? Apoio de Normas e Modelos de Qualidade de Processos de Software.

Normas e Organismos Normativos Normas internacionais de qualidade são criadas no trabalho voluntário de especialistas do mundo todo. Essas normas tornaram-se a base para especificar produtos, organizar o fornecimento de serviços e até mesmo para a elaboração de legislação em vários países.

Padrões de Facto Muitas vezes padrões surgem espontaneamente, a partir de uma necessidade ou como uma solução amplamente adotada quando comparada a outras alternativas. Padrões de facto são padrões aplicados na prática, mas que não foram formalizados como um regulamento. Podem ser criados involuntariamente ou por razões comerciais.

Padrões de Jure São criados de maneira formal, regulamentada. São escritos seguindo regulamentos e aprovados por instituições reconhecidas publicamente como capacitadas para tal (ex., ISO, IEEE etc).

Uso de Padrões Adequação x Certificação. Adequação: deve preceder a certificação e consiste em colocar em prática, total ou parcialmente, aquilo que é proposto no padrão. Certificação: Envolve a participação de um organismo ou empresa externa que possa atestar que a empresa candidata segue efetivamente o padrão.

Conclusão Qualidade de Produto = Qualidade de Processo A questão chave agora é: COMO GARANTIR A QUALIDADE DO PROCESSO? Através da Grupo de Garantia de Qualidade de Software (SQA).

Grupo de Garantia de Qualidade de Software (SQA) Missão: Auxiliar a equipe de software a conseguir um produto final de alta qualidade. Composição: Engenheiros de Software; Gerentes de Projeto; Clientes; Usuários finais; Usuários indiretos; Líder do grupo de SQA.

Grupo de Garantia de Qualidade de Software (SQA) Principais Atribuições: Preparação de um plano SQA; Participação na escolha do processo; Verificar se o processo está sendo mesmo seguido; Auditar os artefatos gerados durante as fases do processo; Registrar não-conformidades; Acompanhar a resolução das não conformidades. Como isso éfeito?

Dinâmica de Trabalho do Grupo SQA Como é Feita esta Verificação? Fonte: [2] 26/20

Revisões Técnicas Formais (RTF) O que é RTF é uma atividade de garantia de qualidade de software. Objetivo Descobrir erros durante as fases do processo. Benefício Descobrir antecipadamente os erros, de forma que eles não se propaguem para o passo seguinte do processo, aumentando a qualidade do produto final. Como é realizada?

O Processo de RTF [2] sugere a seguinte dinâmica de RTF:

Principais Normas e Padrões de Processo ISO/IEC 12207 Contém um conjunto de processos, atividades e tarefas projetado para ser adaptado de acordo com cada projeto de software. ISO/IEC 15504 Apresenta uma estrutura para Avaliação (e Melhoria) de Processo. ISO/IEC 15504 Usada para demonstrar capacidade de atender aos requisitos do cliente, os regulamentares e os da própria organização. MPS.BR (nível F), CMMI.

Qualidade e Processos Relacionados Documentação Gerência de Configuração de Software Qualidade de Software Verificação e Validação

Qualidade e Processos Relacionados Documentação Gerência de Configuração de Software Qualidade de Software Verificação e Validação

Documentação e Gerência de Configuração Artefatos registram a evolução do software para que sejam criadas as bases para o desenvolvimento, utilização e manutenção efetivos. Artefatos devem retratar fielmente o software, de modo que as atividades de avaliação e modificação possam ser realizadas sem maiores transtornos. Artefatos evidenciam a evolução do projeto. Mas é muito importante registrar modificações que ocorrem nos mesmos, de modo a se ter um histórico da evolução, o que é feito por meio da Gerência de Configuração de Software (GCS).

Gerência de Configuração Permite manter o controle da evolução dos artefatos de software, além de ajudar a cumprir metas de garantia da qualidade. Envolve, dentre outros: a identificação de itens de configuração de software, controle de alterações, registro e apresentação da situação dos itens e das solicitações de alteração, garantia da consistência dos itens alterados, controle de versão, armazenamento, manipulação e distribuição de itens.

Qualidade e Processos Relacionados Documentação Gerência de Configuração de Software Qualidade de Software Verificação e Validação

Verificação e Validação Verificação: assegurar que o software, ou determinada função do mesmo, está sendo desenvolvido corretamente, o que inclui verificar se os métodos e processos estão sendo aplicados adequadamente. Validação: assegurar que o software que está sendo desenvolvido é o software correto.

Análise Estática e Análise Dinâmica Análise Estática: não envolve a execução propriamente dita do produto. Pode e deve ser aplicada em qualquer artefato intermediário. Ex.: Revisões técnicas, inspeção de código. Análise Dinâmica: envolve a execução do produto. Ex.: Testes.

Conclusão Satisfação do cliente está relacionada a qualidade do produto software; Qualidade do produto está relacionada a qualidade do processo; A qualidade do processo é difícil de ser alcançada; Revisões Técnicas Formais ajudam neste aspecto.

Leituras e Referências [1] Falbo, R. Introdução a Qualidade de Software. Tópicos Especiais Qualidade de Software. Notas de Aula, 2007. [2] Filho, W. Engenharia de Software. 2ª Edição. LTC, 2005; [3] LUCENA, F. N. Processo de Desenvolvimento de Software. Notas de Aula, 2003, disponível em http://www.inf.ufg.br/~fabio/. [4] Oliveira, J. Garantia da Qualidade de Software. Notas de Aula. [5] Pressman, R. Engenharia de Software. 6ª Edição. MacGraw-Hill, 2006. [6] Souza, A. Introdução à Qualidade de Software. MBA em Gestão de Software. Notas de Aula, 2008.