Você está na página 1de 48

UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCINCIAS, LETRAS E CINCIAS EXATAS DEPARTAMENTO DE CINCIAS DE COMPUTAO E ESTATSTICA

Gerenciamento de Qualidade
Engenharia de Software 2o. Semestre de 2005

Slide 1

Gerenciamento de Qualidade
q

Gerenciar a qualidade tanto do processo como do produto de software

Slide 2

Tpicos
q q q q

Garantia e padres de qualidade Planejamento de qualidade Controle de qualidade Medio e mtricas de software

Slide 3

Gerenciamento da qualidade de software


q

Preocupa-se em garantir que o nvel exigido de qualidade do produto de software seja atingido Envolve definir procedimentos e padres de qualidade que devem ser seguidos Devem ajudar a desenvolver uma cultura de qualidade onde qualidade deve ser vista como responsabilidade de todos.

Slide 4

O que qualidade?
q

Classicamente, a noo de qualidade a de que o produto desenvolvido deve cumprir com suas especificaes Para sistemas de software, existem problemas:
O desenvolvedor tambm possui requisitos de qualidade (por ex. facilidade de manuteno) Alguns requisitos de qualidade so difceis de serem especificados de forma no ambgua. (Ex. facilidade de manuteno). Especificaes de software so usualmente incompletas e inconsistentes.

Slide 5

O compromisso com a qualidade


q

No se pode esperar por uma especificao perfeita antes de implantar procedimentos de gerenciamento de qualidade. Deve-se implantar procedimentos para melhorar a qualidade dentro das restries impostas por uma especificao imperfeita. O gerenciamento de qualidade no se preocupa somente em reduzir defeitos, se preocupa defeitos tambm com outras caractersticas de qualidade do produto.
Slide 6

Atividades do gerenciamento de qualidade


q

Garantia de qualidade
Estabelecer uma estrutura de procedimentos e de padres organizacionais para qualidade. Seleo e ajustes de procedimentos e de padres de qualidade para um projeto especfico. Garantir que os procedimentos e padres esto sendo seguidos pela equipe de desenvolvimento de software.

Planejamento de qualidade

Controle de qualidade

O gerenciamento de qualidade deve ser uma atividade separada do gerenciamento de projeto, de modo que a qualidade no seja comprometida.
Slide 7

Gerenciamento de qualidade e desenvolvimento de software


Processo de desenvolvimento de software

Processo de gerenciamento de qualidade

Padres e procedimentos

Plano de qualidade

Relatrios de reviso De qualidade

Slide 8

ISO 9000
q

Padro internacional para o gerenciamento de qualidade. Aplicvel a uma gama de organizaes, desde a industria de manufatura at as indstrias de servios. ISO 9001 aplicvel a organizaes que projetam, desenvolvem e do manuteno a produtos ISO 9001 um modelo genrico de um processo de qualidade. Deve ser instanciado por cada organizao.

Slide 9

ISO 9001 reas cobertas


Responsabilidade de gerenciamento
Controle de produto que no esto em conformidade Manuseio, armazenamento, embalagem e entrega Produtos fornecidos para o comprador Equipamentos de inspeo e teste Reviso do contrato Controle de documento Auditorias internas de qualidade Prestao de servios

Sistema de qualidade
Controle de projeto Compras Identificao e facilidade de rastreamento do produto Status de inspeo e teste Ao corretiva Registros de qualidade Treinamento Tcnicas estatsticas

Slide 10

Certificao ISO 9000


q

Os procedimentos de garantia de qualidade devem ser documentados em um manual de qualidade organizacional Instituies independentes podem certificar que o processo de qualidade de uma organizao, segundo o manual, est em conformidade com a ISSO 9001 Cada vez mais, os clientes procuram a certificao da ISO 9000 em fornecedores, como indicativo do nvel de seriedade com que consideram a qualidade.

Slide 11

Garantia e padres de qualidade


q

Padres so a chave para gerenciamento de qualidade efetivos. Podem ser internacionais, nacionais, organizacionais ou padres de projeto. Padres de produto so os padres que se aplicam ao produto de software em desenvolvimento. Ex: estilo de programao, etc. Padres de processo definem os processos a serem seguidos durante o desenvolvimento de software. Ex. definies de especificao, processos de projeto e validao, e documentos que devem ser gerados

Slide 12

Importncia dos padres


q

Encapsulam as melhores prticas evitam a repetio de erros passados. Infra estrutura para o processo de garantia de qualidade envolve a verificao de conformidade com os padres Ajudam em termos de continuidade todos os engenheiros de uma organizao adotam as mesmas prticas o esforo de aprendizado reduzido.
Slide 13

Padres de produto e de processo


Padres de produto
Formulrio de reviso de projeto Estrutura do documento de requisitos Modelo de cabealho de procedimento Estilo de programao em Java Modelo do plano de projeto Formulrio de pedido de mudana

Padres de processo
Conduta de reviso de projeto Submisso de documentos a CM (gerenciamento de configurao) Processo de liberao de verso Processo de aprovao do plano de projeto Processo de controle de mudana Processo de registro de teste

Slide 14

Qualidade de produto e de processo


q

A qualidade de um produto desenvolvido diretamente influenciado pela qualidade do processo de produo. Particularmente importante em desenvolvimento de software, uma vez que difcil avaliar atributos de qualidade do produto sem utilizar o software por um perodo longo. Contudo, a relao entre a qualidade de processo e do produto em produo complexa a modificao do processo nem sempre conduz melhoria da qualidade.

Slide 15

Qualidade baseada em processo


q

Ligao direta entre o processo e produto em produtos manufaturados. Mais complexo em software pois:
A aplicao de habilidades individuais e experincias particularmente importante no desenvolvimento de software. Fatores externos, tais como novidade de uma aplicao ou presso comercial para a liberao rpida de um produto, podem afetar o produto.

Slide 16

Qualidade baseada no processo


Desenvolva O produto Avalie a qualidade Do produto

Defina o processo

no Melhore o processo Qualidade OK?

sim

Padronize o processo

Slide 17

Atividades de gerenciamento de qualidade de processo


q

Definio de padres de processo, como por exemplo: como conduzir revises, quando devem ocorrer, etc. Monitorar o processo de desenvolvimento, a fim de assegurar que os padres esto sendo seguidos. Relatar o processo de software para a gerncia de projeto e para o comprador do software.

Slide 18

Planejamento de qualidade
q

Um plano de qualidade deve estabelecer as qualidades desejadas para o produto e como essas qualidades devem ser avaliadas. Deve definir o processo de garantia de qualidade. Deve selecionar os padres organizacionais apropriados a um determinado produto e processo de desenvolvimento e, se necessrio, definir novos padres.
Slide 19

Estrutura do plano de qualidade


q q q q q

Introduo sobre o produto Planos para o produto Descries de processo Metas de qualidade Riscos e gerenciamento dos riscos. Planos de qualidade devem ser documentos sucintos.
Slide 20

Atributos de qualidade do software


Segurana Proteo Confiabilidade Capacidade de recuperao Robustez Facilidade de compreenso Testabilidade Facilidade de adaptao Modularidade Complexidade Portabilidade Facilidade de uso Facilidade de reuso Eficincia Facilidade de aprendizado

Slide 21

Controle de qualidade
q

Supervisionar o processo de desenvolvimento de software para garantir que os procedimentos e os padres de garantia de qualidade seja seguidos. Duas abordagens para o controle de qualidade
Revises de qualidade Avaliao automtica de software e medio quantitativa de alguns atributos de software

Slide 22

Revises de qualidade
q

O principal mtodo de validar a qualidade de um processo ou de um produto. Revisores examinam partes ou todo o processo ou o sistema e sua documentao para encontrar potenciais problemas. Existem diferentes tipos de revises com diferentes objetivos
Inspees para a remoo de defeitos (produto) Revises para avaliar o progresso (produto e processo) Revises de qualidade (produto e padres)

Slide 23

Tipos de revises
Tipo de reviso
Inspees de projeto ou programa

Objetivo
Detectar erros detalhados nos requisitos, nos projetos ou no cdigo. A reviso deve ser orientada por uma lista de possveis erros, Fornecer informaes gerncia sobre o progresso geral do projeto. Essa uma reviso de processo e de produto, e se preocupa com custos, planos e prazos. Realizar uma anlise tcnica dos componentes ou da documentao do produto, a fim de encontrar inconsistncias entre a especificao e o projeto, cdigo ou documentao dos componentes e garantir que os padres de qualidade foram seguidos

Revises de progresso

Revises de qualidade

Slide 24

Medio e mtricas de software


q

Medio de software se preocupa em obter um valor numrico para alguns atributos de um produto ou de um processo de software. Permite comparaes objetivas entre tcnicas e processos. Algumas organizaes introduziram programas de medies, porm o uso sistemtico de medies ainda no comum. Existem poucos padres nesta rea.

Slide 25

Mtrica de Software
q

Qualquer tipo de medio que se refira a um sistema de software, processo ou documentao relacionada
Linhas de cdigo em um programa, nmero de pessoas-dia necessrio para desenvolver um componente, nmero de defeitos relatados em um produto de software fornecido, etc.

q q

Permite que o sofware e o processo de desenvolvimento de software sejam quantificados Medidas do processo de software ou produto Podem ser usadas para estimar atributos do produto (mtricas preditivas) ou controlar o processo de software (mtricas de controle).
Slide 26

Mtricas preditivas e de controle


Processo de software Produtos de software

Medies de controle

Medies preditivas

Decises de gerenciamento

Slide 27

Suposies para medidas


q q

Uma propriedade do software pode ser medida Existe um relacionamento entre o que podemos medir e o que queremos saber. Esse relacionamento pode ser formalizado e validado. Pode ser difcil relacionar o que pode ser medido com os atributos de qualidade desejados.

Slide 28

Relao entre atributos internos e externos de software


Nmero de parmetros de procedimento
Manutenibilidade

Complexidade ciclomtica
Confiabilidade

Tamanho do programa em Linhas de cdigo


Portabilidade

Nmero de mensagens de erro


Facilidade de uso

Extenso do manual do usurio

Slide 29

O processo de medio
q

Um processo de medio pode ser parte de um processo de controle de qualidade. Dados coletados durante esse processo devem ser mantidos como um recurso organizacional (dados histricos) Uma vez estabelecido um banco de dados de medio, comparaes entre projetos podem ser efetuadas e mtricas especficas podem ser aprimoradas.
Slide 30

Mtricas de produto
q q

Mtricas devem predizer a qualidade do produto Classes de mtricas de produto


Mtricas dinmica coletadas por medies feitas de um programa em execuo Mtricas estticas coletadas por medies feitas das representaes do sistema (projeto, programa, documentao) Mtricas dinmicas ajudam a avaliar a eficincia e confiabilidade; mtricas estticas ajudam a avaliar a complexidade, facilidade de compreenso e facilidade de manuteno.

Slide 31

Mtricas estticas e dinmicas


q

Mtricas dinmicas esto intimamente relacionadas com os atributos de qualidade do software


relativamente fcil medir o tempo de resposta de um sistema (atributo de performance) ou nmero de falhas (atributo de confiabilidade)

Mtricas estticas tem um relacionamento indireto com atributos de qualidade


preciso derivar um relacionamento entre essas mtricas e propriedades como complexidade, legibilidade e facilidade de manuteno.

Slide 32

Mtricas de produto de software


Mtricas de software
Tamanho do cdigo Complexidade ciclomtica

Descrio
Medida do tamanho de um programa. Medida da complexidade de controle de um programa. Pode estar relacionada com a facilidade de compreenso. Fan-in - Medida do nmero de funes que chamam outra funo. Fan-out o nmero de funes que so chamada pela funo. Mede o comprimento das variveis. Quanto maior, mais compreensvel o programa. Ifs de muita profundidade so de difcil compreenso e levam a erros

Fan-in/Fan-out

Extenso dos identificadores

Profundidade de declaraes condicionais aninhadas

Slide 33

Mtricas de software orientado a objetos


Mtricas de software
Profundidade da rvore de herana Mtodo de Fan-in/Fan-out

Descrio
Quanto mais profunda, mais complexo o projeto. Idem ao software convencional. Devese fazer uma distino entre as chamadas de outros mtodos dentro do objeto e chamadas de mtodos externos. Nmero de mtodos em uma classe ponderados pela complexidade de cada mtodo. Um alto valor para essa mtrica indica que a superclasse utilizada pode no ser uma classe principal apropriada para a subclasse.

Mtodos ponderados por classes

Nmero de operaes sobrepostas (overloading)

Slide 34

Anlise de medies
q

A dificuldade est em compreender o que as medidas significam


A anlise dos dados coletados bastante difcil

Profissionais da rea de estatstica podem oferecer ajuda valiosa. A Anlise dos dados deve levar em conta as circunstncias locais.

Slide 35

Melhoria de processo
q q

Entender os processos existentes Introduzir alteraes no processo para atingir objetivos organizacionais que, geralmente, so melhorar a qualidade do produto, reduzir os custos e o tempo de desenvolvimento A maioria da literatura relacionada a melhoria de processo tem se concentrado na reduo de defeitos. Isso reflete a grande preocupao da indstria em relao a qualidade de seus produtos. Outros atributos do processo podem ser o alvo de melhorias.

Slide 36

Atributos de processo
Caractersticas de processo Descrio
Facilidade de compreenso At que ponto o processo est explicitamente definido e com que facilidade de pode compreender a definio do processo? As atividades de processo culminam em resultados ntidos, de modo que o processo do processo seja externamente visvel? At que ponto as atividades do processo podem ser apoiadas por ferramentas CASE? O processo est projetado de tal maneira que seus erros sejam evitados ou identificados antes que resultem em erros no produto? O processo pode continuar , mesmo que surjam problemas inesperados? O processo pode evoluir para refletir melhorias de processo identificadas? Com que rapidez pode ser concludo o processo de entrega de um sistema? Slide 37

Visibilidade

Facilidade de suporte Confiabilidade

Robustez Facilidade de manuteno Rapidez

Estgios de melhoria de processo


q

Anlise de processo
Analisar e modelar (quantitativamente, se possvel) processos existentes Identificar gargalos relativos a qualidade, ao prazo e ao custo Modificar o processo para remover os gargalos identificados Treinar o pessoal envolvidos em novas propostas de processo Descobrir pequenos problemas e propor modificaes no processo
Slide 38

Identificao de melhoria

Introduo de mudan de processo

Treinamento em mudanas de processo

Ajuste de mudanas

Qualidade de processo e de produto


q

q q

A qualidade de processo e qualidade de produto esto intimamente relacionados Um bom processo geralmente produz bons produtos Em algumas classes produtos manufaturados, o processo o principal determinante da qualidade do produto Para atividades baseadas em projeto, outros fatores tambm esto envolvidos, em especial a habilidade dos projetistas.

Slide 39

Principais fatores da qualidade de produtos de software


Tecnologia de desenvolvimento

Qualidade do processo

Qualidade do produto

Qualidade do pessoal

Custo, tempo e cronograma

Slide 40

O Intituto de Engenharia de Software (SEI)


q

Fundado pelo Dept. de Defesa dos EUA, junto Universidade Carnegie Mellon A misso a transferncia de tecnologia de software, para capacitao das organizaes que recebem fundos do DoD para grandes projetos de defesa. Modelo de maturidade foi proposto em meados da dcada de 80, e refinado no incio da dcada de 90. O resultado desse trabalho tem tido grande influncia na melhoria do processo de software

Slide 41

O Modelo de Maturidade de Capacitao da SEI


Nvel 5 Otimizao Nvel 4 Gerenciado

Nvel 3 Definido Nvel 2 Repetvel

Nvel 1 Inicial
Slide 42

Nveis do modelo de maturidae


q

Inicial
Essencialmente no controlado Procedimentos de gerenciamento de produto definidos e usados Procedimentos e estratgias de gerenciamento de projeto definidos e usados Estratgias de gerenciamento de qualidade definidas e usadas. Estratgias de melhoria do processo definidas e usadas

Repetvel

Definido

Gerenciado

Otimizao

Slide 43

reas-chave de processo
Definido

Otimizao
Gerenciamento da mudana de processo Gerenciamento da mudana de tecnologia Preveno de defeitos

Gerenciado
Gerenciamento da qualidade de sotware Gerenciamento do processo quantitativo Reviso por pares Coordenao entre grupos Engenharia de produto de software Gerenciamento de software integrado Programa de Treinamento Definio de processo as organizao Foco em processo da organizao

Repetvel
Gerenciamento de configurao de software Garantia de qualidade de software Gerenciamento de contrato de software Acompanhamento e superviso do projeto de software Planejamento de projeto de software Gerenciamento de requisitos

Inicial

Problemas com o modelo da SEI


q

O enfoque em gerenciamento de projeto em vez de gerenciamento de produto Ignora o uso de tecnologias como por exemplo a prototipao. No incorpora a anlise de risco como uma rea chave de processo. No define o seu domnio de aplicabilidade

Slide 45

CMM e ISO 9000


q

Existe uma clara correlao entre os processos chave e o padro ISO 9000. O CMM mais detalhado e prescritivo e inclui uma estrutura de melhoria de processo. Em geral, as organizaes cuja maturidade de processo classificada no Nvel 2 ou 3 provavelmente so compatveis com a ISO 9000.

Slide 46

Pontos chave
q

q q

Gerenciamento de qualidade de software tem como objetivo garantir que o software est de acordo com os padres propostos. Procedimentos de garantia de qualidade devem ser documentados em um manual de qualidade organizacional. organizacional Padres de software reuni as melhores prticas Reviso a abordagem mais utilizada para avaliar a qualidade de software.

Slide 47

Pontos chave
q

Medies de software so informaes coletadas sobre o processo de software e o produto de software. Medidas de qualidade do produto devem ser usadas para identificar componentes potencialmente problemticos. No existe um padro universalmente aceito sobre mtricas de software.

Slide 48

Você também pode gostar