311
INPE-11550-TDI/958 UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM UM AMBIENTE DE ENGENHARIA DE SOFTWARE CENTRADO EM PROCESSO Carlos Henrique Netto Lahoz Dissertação de Mestrado do Curso de Pós-Graduação em Computação Aplicada, orientada pelo Dr. Nilson Sant’Anna, aprovada em 19 de março de 2004. INPE São José dos Campos 2004

UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

  • Upload
    lyque

  • View
    213

  • Download
    0

Embed Size (px)

Citation preview

Page 1: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

INPE-11550-TDI/958

UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM UM AMBIENTE DE ENGENHARIA DE SOFTWARE

CENTRADO EM PROCESSO

Carlos Henrique Netto Lahoz

Dissertação de Mestrado do Curso de Pós-Graduação em Computação Aplicada, orientada pelo Dr. Nilson Sant’Anna, aprovada em 19 de março de 2004.

INPE São José dos Campos

2004

Page 2: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

681.3.06 : 658.56 LAHOZ, C. H. N. Uma abordagem para a gerência da qualidade em um ambiente de engenharia de software centrado em processo / C. H. N. Lahoz. – São José dos Campos: INPE, 2004. 307p. – (INPE-11550-TDI/958). 1.Engenharia de software. 2.Ambientes de engenharia de software. 3.Processo. 4.Padronização. 5.Modelos. 6.Qualidade. I.Título.

Page 3: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade
Page 4: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade
Page 5: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

“É preciso forjar a sua arte da espada com treinamentos de mil dias; depois,

poli-la com treinamentos de dez mil dias”.

MIYAMOTO MUSASHI

Page 6: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade
Page 7: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

AGRADECIMENTOS

Agradeço a minhas meninas Mira, Beatriz e Patrícia pelo amor e paciência

durante as inúmeras horas que passei trabalhando longe delas.

Agradeço a colega Martha Abdala pelos artigos, trabalhos e discussões que

fizemos juntos, durante o caminho de realização do mestrado.

Agradeço ao amigo Carlos Moura pelas participações em trabalhos, pela

amizade e pelos comentários valiosos feitos à respeito dessa dissertação.

Agradeço a analista Roberta Panzera pelo inestimável auxílio na

implementação do protótipo apresentado nesta dissertação.

Agradeço ao meu orientador Nilson Sant’Anna por me conceder esta

oportunidade e por acreditar no meu potencial profissional.

Agradeço aos professores, colegas e amigos que, de alguma forma,

contribuíram com minhas pesquisas e na formação deste trabalho.

Agradeço a meus pais e em especial a Deus por estar aqui, pleno de minhas

funções e realizador.

Page 8: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade
Page 9: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

RESUMO

No contexto atual da engenharia de software aplicada ao Programa Espacial Brasileiro, a necessidade de construir produtos em tempo hábil, com poucos recursos e com qualidade durante seu desenvolvimento é uma realidade inquestionável. Tanto o sistema de controle de satélites, sob responsabilidade do Instituto Nacional de Pesquisas Espaciais (INPE), como o software de bordo do Veículo Lançador de Satélites (VLS), sob responsabilidade do Instituto de Aeronáutica e Espaço (IAE) são exemplos típicos de projetos de engenharia de software que necessitam alcançar alto nível de qualidade e confiabilidade nos produtos desenvolvidos e alta produtividade de desenvolvimento. Planejar, executar e acompanhar as atividades referentes à qualidade, através de processos bem definidos e fazendo uso de ambientes que suportem sua modelagem e execução, mostra-se um caminho fortemente indicado para promover as boas práticas de engenharia de software nestas organizações. Este trabalho de dissertação de mestrado visa definir e modelar os processos da gerência da qualidade em um ambiente de desenvolvimento de projetos de software que fornece suporte eficiente e integrado a processos e que permite melhorias evolutivas da qualidade com relação a aspectos de gestão da qualidade e do controle dos produtos gerados durante o desenvolvimento de software.

Page 10: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade
Page 11: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

AN APPROACH FOR QUALITY MANAGEMENT IN A PROCESS-CENTERED SOFTWARE ENGINEERING ENVIRONMENT

ABSTRACT

Nowadays in the software engineering applied to the Brazilian Space Progam the necessity to construct products in short time, with low resources and high quality during its development is an unquestioned reality. The development of the satellites control system under responsibility of National Institute for Space Research (INPE) as well as the development of the Satellite Launch Vehicle (VLS) on board software under responsibility of Aeronautics and Space Institute (IAE) are typical examples of software engineering projects that need to reach high level of quality and safety in the developed products and high productivity of development. Planning, executing and following the activities refered to quality, with well defined processes and using an environment that supports process modeling and execution, are indicated ways to promote good practices of software engineering in these organizations. This dissertation aims to define and model the quality management processes in a software project development environment that provides efficient and integrated support to processes and allows evolutive improvements of the quality regarding to aspects of quality management and control of the products generated during the software development.

Page 12: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade
Page 13: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

SUMÁRIO

Pág.LISTA DE FIGURAS............................................................................................ 17 LISTA DE TABELAS............................................................................................ 21 CAPÍTULO 1 – INTRODUÇÃO............................................................................ 23 1.1 – Objetivo....................................................................................................... 26 1.2 – Motivação.................................................................................................... 27 1.3 – Organização do Trabalho............................................................................ 30 CAPÍTULO 2 –A GERÊNCIA DA QUALIDADE DE SOFTWARE.......................... 31 2.1 – Conceitos Importantes................................................................................ 33 2.1.1 – Qualidade................................................................................................. 33 2.1.2 – Qualidade de Produto.............................................................................. 34 2.1.3 – Qualidade de Processo............................................................................ 37 2.2 – A Gestão da Qualidade de Software........................................................... 38 2.2.1 – A Qualidade e Sua Gestão no Projeto..................................................... 39 2.2.2 – A Qualidade e Suas Responsabilidades no Projeto................................ 41 2.2.3 – A Qualidade e o Papel dos Envolvidos.................................................... 42 2.2.3.1 – O Gerente da Qualidade....................................................................... 43 2.2.3.2 – O Gerente de Projeto............................................................................ 44 2.2.3.3 – O Gerente da Configuração.................................................................. 44 2.2.3.4 – O Usuário ou Cliente............................................................................. 45 2.2.3.5 – O Analista da Qualidade....................................................................... 4 2.2.3.6 – O Testador............................................................................................ 46 2.2.3.7 – O Revisor.............................................................................................. 47 2.2.3.8 – O Auditor............................................................................................... 48 2.2.4 – A Qualidade e o Ciclo de Vida do Software............................................. 49 2.2.5 – A Qualidade e os Produtos de Software...... ........................................... 5

Jefferson
CAPÍTULO 2 –A GERÊNCIA DA QUALIDADE DE SOFTWARE..........................
Jefferson
CAPÍTULO 2 –A GERÊNCIA DA QUALIDADE DE SOFTWARE
Jefferson
5
Jefferson
0
Page 14: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

2.2.5.1 – As Categorias de Produto..................................................................... 5 2.2.6 – A Qualidade e os Marcos de Projeto....................................................... 53 2.2.7 – A Qualidade e os Padrões....................................................................... 54 2.2.7.1 – Áreas de Aplicações de Padrões.......................................................... 5 2.2.8 – A Qualidade e Métricas de Software........................................................ 5 2.2.8.1 – Categorias de Métricas......................................................................... 2.2.9 – A Qualidade e a Documentação.............................................................. 2.2.10 – A Qualidade e a Estruturação de Sua Gerência....................................2.2.10.1 – A Garantia da Qualidade..................................................................... 61 2.2.10.2 – O Planejamento da Qualidade............................................................ 2.2.10.3 – O Controle da Qualidade...................................................................... CAPÍTULO 3 – PADRÃO DE PROCESSO, LINGUAGEM DE MODELAGEM E O AMBIENTE CENTRADO EM PROCESSO........................................................ 65 3.1 – O Padrão ISO/IEC15504............................................................................. 66 3.1.1 – O Padrão ISO/IEC12207 e o 15504......................................................... 71 3.1.2 – O Modelo de Referência CMMI e o 15504............................................... 76 3.2 – A Linguagem de Modelagem de Processo................................................. 81 3.2.1 – Classificação das PMLs........................................................................... 82 3.2.2 – Elementos da Modelagem de Processo.................................................. 84 3.2.3 – Arquitetura da Modelagem....................................................................... 86 3.2.4 – O SPEM – Meta-modelo de Engenharia de Processo de Software......... 88 3.2.4.1 – Elementos da Linguagem SPEM.......................................................... 89 3.2.4.2 – A notação SPEM................................................................................... 92 3.3 – O Ambiente Centrado em Processo........................................................... 95 3.3.1 – O e-WebProject - Ambiente Integrado para Gestão de Projetos de Software............................................................................................................... 97 3.3.2 – Arquitetura Lógica do Ambiente............................................................... 98 3.3.3 – A arquitetura física................................................................................... 99 3.3.4 – Ciclo de Vida do Processo no Ambiente.................................................. 101 3.3.4.1 – A Fase de Planejamento e Definição do Processo............................... 102

Jefferson
1
Jefferson
4
Jefferson
6
Jefferson
57
Jefferson
59
Jefferson
60
Jefferson
61
Jefferson
61
Page 15: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

3.3.4.2 – A Fase de Execução e Acompanhamento do Processo....................... 104 3.3.4.3 – A Fase de Avaliação e Proposta de Melhoria do Processo.................. 106 3.3.5 – O Serviço de Coordenação de Processos de Software........................... 107 3.3.6 – As Gerências no e-WebProject............................................................... 108 3.3.6.1 – A Gerência da Qualidade no e-WebProject......................................... 109 CAPÍTULO 4–OS MODELOS DE PROCESSO DA GERÊNCIA DA QUALIDADE 113 4.1 – O Escopo dos Processos da Qualidade..................................................... 4.2 – A Estratégia para a Definição e Modelagem dos Processos da Qualidade 119 4.2.1 – Papéis e Responsabilidades nos Processos da Qualidade..................... 120 4.2.2 – Principais Atividades nos Processos da Qualidade................................. 121 4.2.3 – Padrão e Notação Utilizados na Modelagem dos Processos.................. 4.3 – A Modelagem dos Processos da Qualidade................................................ 124 4.3.1 – Pacote Gerenciamento da Qualidade...................................................... 125 4.3.1.1 – Objetivos e Requisitos Básicos do Pacote............................................ 125 4.3.1.2 – Papéis, Responsabilidades e Produtos Envolvidos no Pacote............. 129 4.3.1.3 – Atividades do Pacote............................................................................ 132 4.3.1.3.1 – Pacote Estabelecimento do Sistema de Gerenciamento da Qualidade............................................................................................................. 133 4.3.1.3.2 – Pacote Definição dos Objetivos da Qualidade................................... 135 4.3.1.3.3 – Pacote Definição da Estratégia Geral da Qualidade......................... 136 4.3.1.3.4 – Pacote Estabelecimento dos Padrões de Produto............................. 137 4.3.1.3.5 – Pacote de Definição da Política de Documentação........................... 139 4.3.1.3.6 – Pacote de Definição da Estratégia de Medições da Qualidade........... 141 4.3.1.3.7 – Pacote de Avaliação dos Objetivos da Qualidade............................. 143 4.3.1.3.8 – Pacote Política de Tratamento de Não-Conformidades..................... 145 4.3.1.3.9 – Pacote Definição da Política de Divulgação de Resultados da Qualidade............................................................................................................. 147 4.3.2 – Pacote Garantia da Qualidade................................................................. 149 4.3.2.1 – Objetivos e Requisitos Básicos do Pacote............................................ 149

Jefferson
116
Jefferson
122
Page 16: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

4.3.2.2 – Papéis, Responsabilidades e Produtos Envolvidos no Pacote............. 153 4.3.2.3 – Atividades do Pacote............................................................................ 157 4.3.2.3.1 – Pacote Definição da Estratégia da Qualidade em Projeto................. 158 4.3.2.3.2 – Pacote Definição dos Registros da Qualidade no Projeto................... 160 4.3.2.3.3 – Pacote Seleções de Padrões para o Projeto....................................... 161 4.3.2.3.4 – Pacote Seleção de Documentação...................................................... 163 4.3.2.3.5 – Pacote Definição da Política de Verificação e Validação no Projeto... 165 4.3.2.3.6 – Pacote Definição da Política de Revisão Conjunta e Auditoria no Projeto.................................................................................................................... 167 4.3.2.3.7 – Pacote de Extração dos Registros da Qualidade................................ 169 4.3.2.3.8 – Pacote de Identificação das Não-Conformidades............................... 170 4.3.3 – Processo Controle da Qualidade............................................................... 172 4.3.3.1 – Objetivos e Requisitos Básicos do Processo.......................................... 172 4.3.3.2 – Papéis, Responsabilidades e Produtos Envolvidos no Pacote.............. 175 4.3.3.3 – Atividades do Pacote.............................................................................. 182 4.3.3.3.1 – Pacote Verificação............................................................................... 182 4.3.3.3.2 – Pacote Validação................................................................................. 4.3.3.3.3 – Pacote Revisão Conjunta.................................................................... 4.3.3.3.4 – Pacote Auditoria................................................................................... 4.3.3.3.5 – Pacote Comunicação dos Resultados................................................. 4.3.4 – Pacote Qualidade de Produto.................................................................... 4.3.4.1 – Objetivos e Requisitos Básicos do Pacote............................................. 4.3.4.2 – Papéis, Responsabilidades e Produtos Envolvidos no Pacote.............. 4.3.4.3 – Atividades do Pacote.............................................................................. 212 4.3.4.3.1 – Pacote Usabilidade..............................................................................4.3.4.3.2 – Pacote Avaliação de Produto.............................................................. CAPÍTULO 5 – A IMPLEMENTAÇÃO DE UM PROTÓTIPO NO AMBIENTE INTEGRADO.......................................................................................................... 217 5.1 – Os Requisitos do Protótipo Garantia de Produto.......................................... 218 5.1.1 – Caso de Uso Definir Papéis da Qualidade na Avaliação........................... 221

Jefferson
187
Jefferson
193
Jefferson
199
Jefferson
204
Jefferson
206
Jefferson
206
Jefferson
209
Jefferson
212
Jefferson
214
Page 17: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

5.1.2 – Caso de Uso Definir Política de Avaliação de Produto.............................. 221 5.1.3 – Caso de Uso Encaminhar Produtos para Controle.................................... 223 5.1.4 – Atividades Avaliar Produtos....................................................................... 224 5.2 – Os Recursos do Ambiente Necessários para os Processos........................ 227 5.2.1 – Os Recursos da Camada de Armazenamento e Acesso.......................... 227 5.2.2 – Os Recursos da Camada de Serviços....................................................... 228 5.2.3 – Os Recursos da Camada de Interação com o Usuário............................. 233 CAPÍTULO 6 – CONCLUSÕES............................................................................. 235 6.1 – Histórico........................................................................................................ 236 6.2 – Os Resultados Obtidos com os Trabalhos................................................... 239 6.2.1 – Os Resultados Obtidos com a Abordagem de Padrões............................ 240 6.2.2 – Os Resultados Obtidos com a Utilização da Modelagem.......................... 242 6.2.3 – Os Resultados Obtidos com a Utilização do Ambiente Integrado............. 245 6.3 – Benefícios e Recomendações do Trabalho.................................................. 247 6.3.1 – Benefícios da Abordagem.......................................................................... 248 6.3.2 – A Avaliação de Processo........................................................................... 249 6.3.3 – A Melhoria de Processo............................................................................. 251 REFERÊNCIAS BIBLIOGRÁFICAS...................................................................... 253 BIBLIOGRAFIA COMPLEMENTAR.................................................................... 265 APÊNDICE A – DIMENSÃO DE PROCESSO E DE CAPACIDA DO PADRÃO ISO/IEC 15504..................................................................................................... APÊNDICE B – TABELA DE PRODUTOS x PROCESSOS SUPORTE............. APÊNDICE C – TELAS DO PROTÓTIPO QUALITY MANAGEMENT– QM.......

Jefferson
267
Jefferson
285
Jefferson
289
Page 18: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade
Page 19: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

LISTA DE FIGURAS

Pág.1.1 – Empresas que investiram em Programas de Qualidade............................ 25 1.2 – Conhecimento de Normas da Qualidade de Processo (Brasil).................. 28 2.1 – Um modelo de Sistema de Desenvolvimento de Software......................... 40 2.2 – Papéis dos envolvidos com a qualidade..................................................... 43 3.1 – Categorias de Processos da ISO/IEC15504.............................................. 68 3.2 – Níveis de Capacidade da ISO/IEC 15504.................................................. 69 3.3 – Áreas de processos para os Níveis 0,1 e 2 da ISO/IEC15504................... 70 3.4 – Áreas de processos para os Níveis 3,4 e 5 da ISO/IEC15504................... 70 3.5 – Classificação dos Processos da ISO/IEC12207......................................... 73 3.6 – Elementos e Relacionamentos de um Modelo de Processo...................... 86 3.7 – Níveis de abstração da modelagem de processos..................................... 87 3.8 – A camada conceitual do Ambiente e-WebProject...................................... 100 3.9 – Arquitetura 3 camadas para aplicações Web............................................. 100 3.10 – Ciclo de vida do processo Auditar Produto............................................... 102 3.11 – A fase de planejamento............................................................................ 103 3.12 – Os estados de um processo quando na etapa de Execução................... 106 4.1 – Os processos da Qualidade....................................................................... 117 4.2 – Meta-modelo do Processo de Qualidade de Software............................... 119 4.3 – Pacote Gerenciamento da Qualidade......................................................... 128 4.4 – Os produtos envolvidos com o Gerente da Qualidade no pacote Gerenciamento da Qualidade.............................................................................. 129 4.5 – Os produtos envolvidos com o Analista da Qualidade no pacote Gerenciamento da Qualidade.............................................................................. 131 4.6 – O Pacote Estabelecimento do Sistema de Gerenciamento da Qualidade 134 4.7 – O Pacote Definição dos Objetivos da Qualidade........................................ 135 4.8 – O Pacote Definição da Estratégia Geral da Qualidade.............................. 136 4.9 – O Pacote Estabelecimento dos Padrões de Produto................................. 138 4.10 – O Pacote Definição da Política de Documentação................................... 140 4.11 – O Pacote Definição da Estratégia de Medições da Qualidade................. 142 4.12 – O Pacote Avaliação dos Objetivos da Qualidade..................................... 144

Page 20: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

4.13 – O Pacote Política de Tratamento de Não-Conformidades....................... 146 4.14 – O Pacote Definição da Política de Divulgação de Resultados da Qualidade............................................................................................................ 148 4.15 – Pacote Garantia da Qualidade................................................................. 152 4.16 – Os produtos envolvidos com o Gerente da Qualidade no pacote Garantia da Qualidade........................................................................................ 154 4.17 – Os produtos envolvidos com o Analista da Qualidade no pacote Garantia da Qualidade......................................................................................... 156 4.18 – Pacote Definição da Estratégia de Garantia da Qualidade em Projeto.... 159 4.19 – Pacote Definição dos Registros da Qualidade no Projeto........................ 160 4.20 – Pacote Seleção de Padrões para o Projeto.............................................. 162 4.21 – Pacote Seleção da Documentação.......................................................... 164 4.22 – Pacote Definição da Política de Verificação e Validação no Projeto........ 166 4.23 – Pacote Definição da Política de Revisão Conjunta e Auditoria no Projeto................................................................................................................. 168 4.24 – Pacote Extração dos Registros da Qualidade.......................................... 169 4.25 – Pacote Identificação de Não-Conformidade............................................. 171 4.26 – Pacote Controle da Qualidade.................................................................. 175 4.27 – Os produtos envolvidos com o Gerente da Qualidade no pacote Controle da Qualidade........................................................................................ 176 4.28 – Os produtos envolvidos com o Revisor no pacote Controle da Qualidade............................................................................................................ 178 4.29 – Os produtos envolvidos com o Testador no pacote Controle da Qualidade............................................................................................................ 180 4.30 – Os produtos envolvidos com o Auditor no pacote Controle da Qualidade............................................................................................................ 181 4.31 – Pacote Verificação.................................................................................... 183 4.32 – Diagrama de caso de uso Verificar Produto............................................. 184 4.33 – Diagrama de atividades Conduzir Verificação......................................... 187 4.34 – Pacote Validação...................................................................................... 189 4.35 – Diagrama de caso de uso Validar Produto............................................... 190 4.36 – Diagrama de atividades Conduzir Validação............................................ 193

Page 21: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

4.37 – Pacote Revisão Conjunta......................................................................... 195 4.38 – Diagrama de caso de uso Revisar Produto/Processo.............................. 196 4.39 – Diagrama de atividades Conduzir Revisão Conjunta............................... 199 4.40 – Pacote Auditoria....................................................................................... 201 4.41 – Diagrama de caso de uso Auditar Produto/Processo............................... 202 4.42 – Diagrama de atividades Conduzir Auditoria............................................. 204 4.43 – Pacote Comunicação dos Resultados..................................................... 205 4.44 – Diagrama de caso de uso Comunicar Resultados................................... 206 5.45 – Pacote Qualidade de Produto.................................................................. 209 4.46 – Os produtos envolvidos com o Gerente da Qualidade no pacote Qualidade de Produto.......................................................................................... 210 4.47 – Os produtos envolvidos com o Analista da Qualidade no pacote Qualidade de Produto.......................................................................................... 211 4.48 – Os produtos envolvidos com o Revisor no pacote Qualidade de Produto................................................................................................................ 212 4.49 – Pacote Usabilidade................................................................................... 214 4.50 – Pacote Avaliação de Produto................................................................... 216 5.1 – Diagrama de Contexto da Garantia de Produto......................................... 220 5.2 – Caso de uso Definir Papéis da Qualidade na Avaliação............................ 221 5.3 – Caso de uso Definir Política de Avaliação de Produto............................... 222 5.4 – Caso de uso Encaminhar Produtos para Controle..................................... 224 5.5 – Diagrama de atividades Avaliar Produto.................................................... 226 C.1 – Tela de acesso ao protótipo QM................................................................ 287 C.2 – Tela de trabalho do usuário....................................................................... 288 C.3 – Tela de acesso às atividades do Time da Qualidade................................ 289 C.4 – Tela inicial da atividade Quality Planning................................................... 290 C.5 – Tela referente à lista de projetos instanciados........................................... 291 C.6 – Tela referente à definição dos papéis da qualidade no projeto................. 292 C.7 – Tela referente à opção de padrões de projeto........................................... 293 C.8 – Tela referente à opção de política de Verificação e Validação.................. 294 C.9 – Tela inicial da atividade de Garantia de Produto....................................... 295 C.10 – Tela de acompanhamento dos produtos encaminhados......................... 296

Page 22: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

C.11 – Tela de encaminhamento de Produtos.................................................... 297 C.12 – Tela de acompanhamento dos produtos mudando o status para “Encaminhado a Qualidade”................................................................................ 298 C.13 – Tela inicial da atividade de Garantia da Qualidade.................................. 299 C.14 – Tela de avaliação de produto (visão Gerente da Qualidade)................... 300 C.15 – Tela de acompanhamento dos produtos mudando o status para “Encaminhado ao Revisor”.................................................................................. 301 C.16 – Tela inicial da atividade de Controle da Qualidade.................................. 302 C.17 – Tela de avaliação de produto (visão do Revisor da Qualidade).............. 303 C.18 – Tela de acompanhamento dos produtos mudando o status para “ Revisado”............................................................................................................. 304 C.19 – Tela de acompanhamento dos produtos mudando o status.................... 305 C.20 – Formulário de Encaminhamento de Produto........................................... 306 C.21 – Formulário de Avaliação de Produto........................................................ 307

Page 23: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

LISTA DE TABELAS

Pág.2.1 – Classificação de Produto de Trabalho........................................................ 53 3.1 – Compatibilidade entre o ISO/IEC 15504 e o 12207.................................... 75 3.2 – O processo CMMI Garantia da Qualidade de Processo e Produto e os processos Suporte do 15504............................................................................... 81 3.3 – Principais ícones e estereótipos do SPEM................................................. 95 6.1 – Tabela de Relacionamento entre Processos e seus Atributos................... 242 B.1 – Produtos da categoria Organizacional relacionados aos processos da Qualidade............................................................................................................ 283 B.2 – Produtos da categoria Projeto relacionados aos processos da Qualidade 284 B.3 – Produtos da categoria Registros relacionados aos processos da Qualidade............................................................................................................ 285

Page 24: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade
Page 25: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

23

CAPÍTULO 1

INTRODUÇÃO

É de senso comum hoje que a gestão da qualidade e o desenvolvimento de

software são atividades fortemente relacionadas. A necessidade de construção

de projetos que combinem entre si múltiplos requisitos, envolvendo equipes

heterogêneas de trabalho, gerando produtos materiais e não-materiais, um

mercado tecnológico extremamente competitivo e solicitações cada vez mais

sofisticadas dos clientes e usuários geram uma interdependência entre as

atividades de desenvolvimento de software e do gerenciamento de sua

qualidade. Além desse contexto, em uma economia altamente globalizada e

usuária da tecnologia da informação, a imposição de padrões de produção

internacionais, as exigências quanto à qualidade dos produtos e as

expectativas dos clientes tendem cada vez mais a crescer.

Outro consenso para a maioria dos especialistas de software é que a qualidade

do processo de software é tão importante como a qualidade do produto. Nos

anos 90, um dos grandes temas discutidos na área foi voltado para a pesquisa

da modelagem e melhoria do processo de software. Abordagens importantes,

como as normas da ISO 9000 (ISO9000, 2000), o ISO/IEC 12207

(ISO/IEC12207, 1995), o modelo Capability Maturity Model for Software (CMM-

SW, 1993) e o Software Process Improvement and Capability dEtermination

(SPICE) (SPICE, 1995), sugerem que, melhorando o processo de software,

pode-se melhorar a qualidade dos produtos (Pfleeger, 1998). Versões mais

atuais desses padrões, como o ISO/IEC 15504 (ISO/IEC15504-5, 2003), o

12207 (ISO/IEC12207, 2001) e o Capability Maturity Model Integration (CMMI)

(CMMI, 2002), reforçam ainda mais esta visão e a deste trabalho. A previsão

de Curtis (Curtis, 2000) de que as organizações, para a sua manutenção no

mercado, serão pressionadas para o uso de processos de produção de

software de qualidade, dentro de prazos cada vez menores e orçamentos

confiáveis e reduzidos, começa a se concretizar. Este tipo de tendência

Page 26: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

24

fortalece ainda mais a necessidade de uso de processos bem-definidos e de

qualidade em organizações fabricantes de software.

Atualmente, no contexto da engenharia de software aplicada ao setor

tecnológico aeroespacial brasileiro, a necessidade de construir os produtos em

tempo hábil na maioria das vezes com poucos recursos e sem poder perder a

qualidade durante seu desenvolvimento é fato constante. No que se refere a

projetos científicos da área espacial, nota-se uma especial atenção a estes

requisitos de qualidade nas áreas de telecomunicações, meio-ambiente e

observação da Terra (Meira et al., 1999). O desenvolvimento do Sistema de

Controle de Satélites (SICS), de responsabilidade do Instituto Nacional de

Pesquisas Espaciais (INPE), bem como o desenvolvimento do Software

Aplicativo de Bordo (SOAB) do Veículo Lançador de Satélites (VLS), de

responsabilidade do Instituto de Aeronáutica e Espaço (IAE), são exemplos

típicos de projetos de engenharia de software que necessitam alcançar alta

qualidade e confiabilidade nos produtos desenvolvidos e alta produtividade de

desenvolvimento. Em acréscimo a isto, existe a necessidade contínua de

preocupação com a melhoria das técnicas utilizadas no desenvolvimento

propriamente dito, bem como com relação a aspectos de gestão de projetos, de

gestão da qualidade e de controle dos produtos gerados durante o

desenvolvimento.

Fica patente a necessidade de se estabelecerem princípios básicos de

engenharia para desenvolver software de qualificação espacial, de maneira

sistemática e econômica, visando um produto confiável e eficiente, devendo

para isto contemplar-se a especialização das atividades técnicas para sua

construção, um suporte automatizado para essas atividades e procedimentos

para ligar as técnicas às ferramentas (Moura et al., 2003).

Obviamente, muitos esforços estão sendo feitos na direção da regulamentação

e da melhoria da qualidade e da produtividade de software, como no contexto

da nova Lei de Tecnologia da Informação (Nascimento, 2002). Esta lei

Page 27: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

25

estabelece uma política de qualidade de software que abrange a melhoria da

qualidade em processo e produto, propondo a reciclagem e atualização de

profissionais de desenvolvimento de software, a capacitação de empresas em

níveis de qualidade de padrão internacional e, conseqüentemente, sua

qualificação e certificação. A Figura 1.1 apresenta o resultado de uma pesquisa

sobre a melhoria da qualidade e produtividade no contexto desta nova Lei,

onde se observa que apenas 24% de um total de 415 empresas pesquisadas

em 2001 tinham um plano de qualidade total ou similar implantado na

organização.

18

26

11

24

1995 1997 1999 2001

Programa de qualidade total ou similar (415 empresas pesquisadas no Brasil)

em %

FIGURA 1.1 - Empresas que investiram em Programas de Qualidade.

FONTE: Nascimento (2002).

No contexto da gestão da qualidade para apoio ao desenvolvimento de

produtos de software dentro de organizações de pesquisa, como o INPE e o

IAE, devem ser implantados, além de procedimentos e padrões de qualidade,

uma cultura sobre sua necessidade e importância. Com isso, todos os

envolvidos na criação deste tipo de produto comprometem-se com o alcance

desses requisitos de qualidade, com o mais alto nível possível e dentro de

Page 28: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

26

metas de tempo e custos estabelecidos, e com excelência tanto nos produtos

em si, como nos processos que auxiliaram seu desenvolvimento.

Fica patente, também, a contribuição de outros fatores para alcançar níveis de

qualidade satisfatórios, já que a qualidade de software não está embutida

somente nos produtos e nos seus processos, mas sim desde o começo de sua

criação, por meio da capacidade das pessoas que os criam, da tecnologia

utilizada e de uma disciplina gerencial que supervisione o processo (Yordon,

1995).

1.1 - Objetivo

Esta dissertação de mestrado, intitulada “Uma Abordagem para a Gerência da

Qualidade em um Ambiente de Engenharia de Software Centrado em

Processo” tem como objetivo principal identificar, definir e modelar as práticas

que a gestão da qualidade deve incorporar ao quotidiano de uma organização

desenvolvedora de software, principalmente do setor espacial. Acredita-se que,

definindo e modelando processos da qualidade que auxiliem os processos de

desenvolvimento de software, será possível obter um nível de maturidade

maior para as atividades da qualidade em projetos de software da área

espacial brasileira, obtendo assim, ganhos consideráveis de produtividade,

confiabilidade e qualidade de produto e de processo. Ao se definir as atividades

fundamentais da gerência da qualidade em um ambiente de desenvolvimento

integrado, será possível determinar, de maneira inequívoca, o nível de

qualidade dos produtos resultantes. A qualidade e a melhoria destes processos

passam a serem vistos, então, como um pré-requisito e um fator condicionante

da qualidade do produto (Rocha et al., 2001).

Desta forma, há necessidade de se planejar, executar e acompanhar os

processos e as atividades referentes à garantia da qualidade, principalmente

no que tange às características de qualidade dos produtos intermediários e de

Page 29: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

27

seu processo de desenvolvimento (Troster e Tian, 1995). Para isto, é

necessário o uso de práticas da qualidade em ambientes que ofereçam suporte

eficiente e integrado aos processos de engenharia de software, tenham visão

adequada a de objetos, sejam organizados em áreas de negócio, dêem apoio

às gerências estabelecidas no projeto, permitam padrões evolutivos de

qualidade e utilizem conceitos de trabalho cooperativo (Sant’Anna, 2000).

1.2 - Motivação

Uma dificuldade ainda existente no setor de desenvolvimento de software para

aplicações espaciais no Brasil é que após a definição de quais procedimentos e

produtos serão implantados e controlados pela qualidade, haja a garantia que

todos os envolvidos no projeto estejam efetivamente comprometidos com o

cumprimento dos procedimentos e com a geração desses produtos ao longo do

tempo. A gerência da qualidade deve ser capaz, dentro deste escopo, de

fornecer resultados quantitativos e qualitativos referentes aos produtos e

processos, que sejam compreensíveis e confiáveis para a gerência geral ou

para outros envolvidos, permitindo assim analisar, conduzir e divulgar o

desenvolvimento da qualidade de produto (e de processo) dentro das

exigências e dos padrões para aplicações espaciais.

É também importante assegurar que os métodos e tecnologias utilizados

apóiem, avaliem e melhorem as atividades de desenvolvimento e manutenção

de software, e que se estabeleçam níveis mínimos de qualidade dos produtos e

se definam procedimentos e padrões a serem usados durante todo o seu

desenvolvimento.

A pesquisa "Qualidade e Produtividade no Setor de Software Brasileiro - 2001",

realizada pela Secretaria de Política de Informática do Ministério da Ciência e

Tecnologia (MCT/Sepin, 2001), propõe-se a acompanhar e divulgar a evolução

da qualidade nas empresas de software no Brasil. Nesta última edição, que

Page 30: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

28

envolveu 446 empresas, (Figura 1.2), verifica-se que, apesar de a maioria

delas conhecerem normas e modelos da qualidade dos processos, apenas a

minoria os aplica em sua organização.

Os diversos modelos de processo de desenvolvimento de software surgidos

nos últimos anos, como o padrão 12207, o padrão 15504 e o modelo de

referência CMMI, prescrevem processos para o desenvolvimento e

manutenção de software, através da determinação de um conjunto de

atividades essenciais que devem ser completadas para se obter este produto.

FIGURA 1.2 - Conhecimento de Normas da Qualidade de Processo (Brasil)

FONTE: MCT/Sepin (2001).

O padrão 15504, por exemplo, define uma estrutura para avaliação e melhoria

de processos de engenharia de software e define práticas básicas que devem

ser realizadas para que se atinjam certos níveis de maturidade.

Estes modelos representam o processo de software sob a perspectiva

funcional, mas não apresentam procedimentos definidos, como por exemplo, a

seqüência de atividades básicas que o processo deve realizar. Esta tarefa fica

a cargo da organização que implementa os processos sugeridos pelo padrão.

Page 31: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

29

A possibilidade de se definir e modelar os processos da qualidade para

aplicação de software em projetos do setor espacial brasileiro, expressos em

uma linguagem de processo adequada, aliada a um suporte computacional

automatizado em ambientes de engenharia de software foi a principal

motivação deste trabalho.

Para isto, foi realizado um estudo sobre a definição e modelagem de processos

da garantia da qualidade para futura implantação em Ambientes de Engenharia

de Software Centrado em Processos, ambientes conhecidos como PSEEs

(Process-Centered Software Engineering Environments). Como ponto de

partida para a definição destes processos, foi utilizado o padrão ISO/IEC 15504

(ISO/IEC15504-5, 2003) e escolhida a linguagem de modelagem de processos

Software Process Engineering Metamodel (SPEM) (SPEM, 2002) para

expressá-los. Uma vez definidos, os processos serão implementados em um

ambiente PSEE e oferecidos como serviços que poderão ser adaptados às

necessidades da organização que utilizar este ambiente. Como modelo de

ambiente PSEE, foi utilizado o Ambiente Integrado para Desenvolvimento e

Gestão de Projetos de Software, o e-Webproject®. O e-WebProject é um

produto registrado pela Sistemas de Engenharia de Software (SESIS), projeto

oriundo de tese de doutorado do INPE (Sant’Anna, 2000), cujo

desenvolvimento é apoiado pelo Programa de Capacitação de Recursos

Humanos (RHAE) do Conselho Nacional de Desenvolvimento Científico e

Tecnológico (CNPq), fundação vinculada ao Ministério da Ciência e Tecnologia

(MCT) para o apoio à pesquisa brasileira. Atualmente, o e-WebProject, ainda

em fase de desenvolvimento, possui uma estrutura organizacional e uma série

de serviços que permitirão que os modelos de processos da qualidade sejam

rapidamente incorporados e executados no Ambiente Integrado, facilitando as

atividades de gestão e desenvolvimento de projetos de engenharia de software.

Page 32: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

30

1.3 – Organização do Trabalho

No Capítulo 2 é apresentada a gerência da qualidade de software, onde são

definidos conceitos básicos de assuntos relacionados com a qualidade, sob o

ponto de vista de diversos autores e sob a luz desta abordagem. São

abordadas também, atribuições específicas e outros assuntos referentes à

gerência da qualidade de software.

No Capítulo 3 são descritos os recursos técnicos necessários para o

desenvolvimento do trabalho, como o padrão ISO/IEC 15504 e seus processos

da qualidade, bem como o relacionamento com o padrão ISO/IEC 12207 e o

modelo de referência CMMI. É apresentada a definição de linguagem de

modelagem de processo, e em particular o SPEM, e a definição de ambientes

PSSE, com ênfase no Ambiente Integrado e-WebProject.

No Capítulo 4 são apresentados os processos da Qualidade propostos para o

Ambiente Integrado. São definidos e modelados os processos da qualidade,

divididos nos sub processos: Gerenciamento da Qualidade, Garantia da

Qualidade, Qualidade de Produto e Controle da Qualidade, utilizando para

representação gráfica a linguagem de modelagem SPEM.

No Capítulo 5 são definidos os requisitos mínimos para a implementação de

um protótipo para aplicação de processos da GQ no Ambiente Integrado e-

WebProject, e também quais serviços o Ambiente deve prover para que os

processos da qualidade sejam implantados com sucesso e de maneira a

alcançar seus objetivos.

No Capítulo 6 são apresentadas as considerações finais desta dissertação,

descrevendo um breve histórico sobre a condução do trabalho, apresentando

os resultados decorrentes da utilização dos modelos de processos e da

implementação do protótipo, bem como os benefícios identificados e as

melhorias que ainda devem ser realizadas com trabalhos futuros.

Page 33: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

31

CAPÍTULO 2

A GERÊNCIA DA QUALIDADE DE SOFTWARE

A implementação de conceitos de qualidade de produto tornou-se foco dos

negócios no Japão no início dos anos 50 (Juran, 1992), produzindo resultados

positivamente significativos na indústria daquele país. Muitos especialistas

norte-americanos, naquela época, foram convidados a observar esses

resultados e relataram em muitos de seus trabalhos o que estava acontecendo

com a indústria do Japão naquela época.

As organizações de software dirigiram seus esforços para essas abordagens

de gerenciamento da qualidade total, no intuito de ultrapassar a chamada crise

do software, que tinha se abatido no mundo a partir dos anos 60. Nos anos

seguintes um grande número de definições originou-se dos especialistas da

qualidade, como Kaoru Ishikawa, Joseph M. Juran, Lennart Sandholm, W.

Edwards Deming, e Philip Crosby. Muitos deles ainda têm-se dedicado, nos

últimos 30 anos, à consultoria, pesquisa, ensino e publicações de trabalhos

sobre a melhoria da qualidade (Wheeler e Duggins, 1998).

No fim dos anos 80, a indústria começou a procurar por especialistas em

métodos e técnicas de melhoria da qualidade. Nessa mesma época a rede

norte-americana NBC produziu um documentário chamado “Se o Japão pode,

porque nós não?” introduzindo uma atenção mundial a demanda premente da

qualidade em um contexto de competição global. Esse programa abordava a

teoria de Edward Deming sobre melhoria da qualidade, enfatizando sua filosofia

que acreditava que melhoria da qualidade poderia significar melhoria da

produtividade, custos menores e satisfação do cliente.

Toda esta evolução teve seu auge nos anos 90, que se caracterizaram como

os da era da qualidade.

Page 34: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

32

Já as primeiras importantes contribuições da pesquisa na área de processos de

software foram iniciadas, nos anos 60 e 70, visando a aumentar a

conscientização da comunidade envolvida com software sobre a complexidade

no seu desenvolvimento. Pesquisadores e praticantes tinham percebido que

desenvolver software não é apenas a criação efetiva de linguagens de

programas e ferramentas, e sim um esforço feito de forma coletiva, e de modo

criativo.

Como uma disciplina autônoma, a área de processo de software começou nos

anos 80 através de uma série de workshops e eventos, em particular, o

International Software Process Workshop. Ao longo dos anos, novos eventos e

jornais foram criados, como o European Workshop on Software Process

Technology e o jornal Software Process - Improvement and Practice.

Importantes instituições organizaram-se nos Estados Unidos e na Europa para

estudar processos de software. O Software Engineering Institute (SEI) em

Pittsburgh, USA, e o European Software Institute (ESI) em Bilbao, Espanha.

Também organizações normalizadoras centraram importantes esforços em

processo de software. Por exemplo, a International Organization for

Standardization (ISO), conjuntamente com a International Electrotechnical

Commission (IEC), criaram dois importantes padrões: o 12207 (ISO/IEC12207,

1995), que define as atividades do ciclo de vida do software, e o 15504

(ISO/IEC15504-1, 1998) que determina a capacidade do processo de software

(Fuggetta, 2000).

Uma outra área decorrente da de processo de software, e que vem obtendo

interesse atualmente na engenharia de software, é a de construção de

ambientes para a modelagem, execução, simulação e evolução de processos

de desenvolvimento de software. Os processos de software são caracterizados

por um grande número de pessoas envolvidas, um cronograma apertado, com

muitas tarefas especializadas, realizados muitas vezes de forma distribuída. Os

estudos sobre ambientes de modelagem de processos visam a melhorar a

Page 35: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

33

percepção do processo como um todo por parte dos envolvidos, de forma a

adequar e orientar a sua função em um projeto de software.

Na seção 2.1 são descritos alguns conceitos importantes relacionados à

qualidade, necessários para o entendimento deste trabalho, sob a ótica de

pesquisadores consagrados e de normas internacionais utilizadas pela

comunidade da área de engenharia de software. Na seção 2.2, tópicos

específicos sobre a qualidade, do ponto de vista gerencial e de projeto, são

detalhados. Procurou-se direcionar os conceitos abordados para o foco do

estudo em questão, sem perder a visão geral e abrangente do seu significado.

2.1 - Conceitos Importantes

Alguns tópicos importantes utilizados no desenvolvimento desta dissertação

são aqui definidos para harmonizar conceitos relacionados ao trabalho. O

significado de cada conceito não se restringe ao descrito nesta seção, mas o

objetivo é produzir um conjunto de definições que possibilite o melhor

entendimento do trabalho e a clareza dos assuntos abordados.

2.1.1 – Qualidade

Qualidade possui significados diversos para diferentes pessoas, em um

contexto altamente dependente. Portanto, não é trivial definir, nem tampouco

haver medidas simples de qualidade aceitáveis para todos. Para estimar ou

melhorar a qualidade de software numa organização, deve-se definir as

características de qualidade, nas quais se está interessado e, então, decidir

como serão medidas (Kitchenham et al., 1996).

Page 36: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

34

O conceito de qualidade de software não pode ser definido de um modo

simples. Classicamente a noção de qualidade foi a do desenvolvimento de

produtos conforme o especificado (Crosby, 1980).

Software de alta qualidade deve possuir características que atendam às

necessidades de usuários, desenvolvedores e mantenedores (Pfleeger, 1991).

Qualidade de software pode ser definida como o conjunto das adequações aos

requisitos funcionais e de desempenho, documentação inteligível dos padrões

de desenvolvimento e características implícitas esperadas por todos os seus

profissionais (Pressman, 1992).

Qualidade é a totalidade de características de uma entidade, que lhe confere a

capacidade de satisfazer suas necessidades explícitas e implícitas.

Necessidades explícitas são aquelas expressas na definição de requisitos

proposta pelo produtor. Esses requisitos definem as condições em que os

produtos devem ser utilizados e seus objetivos. A necessidades implícitas são

aquelas que, embora não expressas nos documentos do produtor, são

necessárias para o usuário. Estão englobados nesta classe tanto os requisitos

que não precisam ser declarados por serem óbvios, como aqueles requisitos

que não são percebidos como necessários durante o desenvolvimento do

produto, mas que pela gravidade de suas conseqüências devem ser atendidos

(ABNT8402, 1997).

2.1.2 – Qualidade de Produto

Produto de software pode ser definido como resultado de um conjunto de

atividades inter-relacionadas ou interativas que transforma insumos (entrada)

em produtos (saídas) e tem como objetivo principal alcançar uma qualidade

necessária e suficiente para o seu uso, quando for entregue e realmente usado

pelos usuários (ISO/IEC9126, 1991).

Page 37: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

35

No desenvolvimento de software o produto é a agregação de muitos artefatos,

com características executáveis e não executáveis. Com as seguintes

(Jacobson et al., 1999) características:

Executáveis (o código propriamente dito).

Não executáveis (diagramas como casos de uso, manuais, descrição

de testes, planos, modelos e vários outros recursos documentais).

Quando se deseja um produto de software de alta qualidade, deve-se

assegurar que cada uma de suas partes constituintes possua alta qualidade.

Portanto, os resultados intermediários, no processo de produção, devem ser

imediatamente examinados após sua conclusão, de maneira a garantir que

erros e inadequações no produto sejam detectados o mais cedo possível, pois

a qualidade final do produto é uma função de todas as fases anteriores de seu

ciclo de desenvolvimento (Humphrey, 1995).

A qualidade de produto de software é resultante das atividades realizadas no

processo de desenvolvimento do mesmo. Avaliar a qualidade de um produto de

software é verificar, através de técnicas e atividades operacionais, quanto os

requisitos são atendidos. Podemos classificar como requisitos básicos de

qualidade de produto a funcionalidade, confiabilidade, usabilidade, eficiência,

manutenabilidade e portabilidade. Tais requisitos, de uma maneira geral, são a

expressão das necessidades, explicitados em termos qualitativos ou

quantitativos, e têm por objetivo definir as características de um software, a fim

de permitir a verificação de seu atendimento (ISO9126, 1991).

As características que devem ser verificadas em um software, para que ele

seja considerado um produto de qualidade, é dividido em seis grandes grupos,

cada um dividido em sub-características (ISO9126, 1991):

Page 38: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

36

Funcionalidade (adequação, acurácia, interoperabilidade,

conformidade e segurança de acesso).

Confiabilidade (maturidade, tolerância a falhas e recuperabilidade).

Usabilidade (inteligibilidade, apreensabilidade e operacionalidade).

Eficiência (tempo e recursos).

Manutenibilidade (analisabilidade, modificabilidade, estabilidade e

testabilidade).

Portabilidade (adaptabilidade, capacidade para ser instalado,

conformidade e capacidade para substituir).

Qualidade de produto é a qualidade do produto que foi produzido pelo

processo. Dentro do enfoque das características executáveis, a qualidade do

produto é determinada pela sua avaliação, medindo e registrando as

dimensões desta qualidade. São basicamente em três dimensões (Jacobson et

al., 1999):

Confiabilidade (código resiste à falha durante a execução).

Funcionalidade (código executável atende ao caso de uso

especificado).

Executabilidade (o código executa e responde em tempo e de

maneira aceitável e contínua quando em operação).

Dentro do enfoque das características não executáveis, a qualidade do produto

é determinada pelo seu propósito, objetivo e estrutura, e é avaliado de modo a

atender (Jacobson et al., 1999):

Page 39: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

37

Consistência interna (entre os artefatos como a linguagem usada,

terminologia, semântica, etc).

Conformidade (a guias, padrões e requisitos contratuais).

Podemos identificar quatro fatores que afetam a qualidade dos produtos de

software (Sommerville, 2001): tecnologia de desenvolvimento, qualidade dos

processos, qualidade das pessoas e custos (tempo e cronograma).

2.1.3 – Qualidade de Processo

O processo de software é uma seqüência de estágios para desenvolver ou

manter o software, apresentando estruturas técnicas e de gerenciamento para

o uso de métodos e ferramentas, e incluindo pessoas para as tarefas do

sistema (Humphrey, 1995).

O processo ou um conjunto de processos, utilizados por uma organização ou

projeto para: planejar, gerenciar, executar, monitorar, controlar e melhorar as

atividades relacionadas à construção de software (SPICE, 1995).

Um conjunto de atividades inter-relacionadas, que transformam entradas em

saídas (ISO/IEC12207, 1995).

Processo de software é um conjunto parcialmente ordenado de atividades,

responsável pelo gerenciamento, desenvolvimento e manutenção de sistemas

de software (Acuña et al., 2000).

Conjunto de atividades, métodos, práticas e transformações que as pessoas

empregam para desenvolver e manter software e os produtos associados (por

exemplo, planos de projeto, documentos de projeto/design, código, casos de

teste, manual do usuário) (CTBrasil, 1999).

Page 40: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

38

2.2 – A Gestão da Qualidade de Software

De modo mais específico, o papel da qualidade nos projetos de software,

dentro de uma organização, é garantir que os requisitos de qualidade de um

produto e de um processo sejam alcançados. Para isto, o responsável pela

qualidade se envolve com a definição de procedimentos e padrões que devem

ser usados durante o desenvolvimento do software e o exame constante de

que estes estão sendo seguidos por todos os envolvidos. Além disso, deve-se

desenvolver uma cultura da qualidade na organização, através da qual cada

responsável pelo desenvolvimento de produto é levado a se comprometer em

alcançar um alto nível de qualidade durante o desenvolvimento (Sommerville,

2001).

Uma atividade importante da qualidade em um projeto de software é a

definição e inclusão, na estrutura organizacional, das pessoas que realizarão

as atividades da qualidade: o chamado Time da Qualidade. Estes responsáveis

têm como papel a definição dos produtos da qualidade, a avaliação dos

produtos do projeto, a realização das auditorias da qualidade, a produção dos

registros da qualidade, o encaminhamento das não conformidades, entre

outras atividades. O Gerente da Qualidade deve ter uma visão do ambiente de

modo a entender o contexto do projeto dentro do contexto do negócio,

definindo qual será o controle e as responsabilidades da qualidade e como ela

deve interagir com o restante dos membros do projeto. Pode também,

identificar outros envolvidos com a qualidade na organização, definindo e

detalhando seus processos, sugerindo padrões, facilitando a modelagem,

gerenciando os relacionamentos externos à organização, dentre outras

atividades (Unhelkar, 2002)

Sommerville identifica quatro fatores que diretamente se relacionam com a

qualidade dos produtos de software: tecnologia de desenvolvimento; qualidade

dos processos; recursos humanos (qualidade das pessoas); e outros recursos

(orçamento, tempo e cronograma). No que tange a qualidade dos processos,

Page 41: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

39

principal abordagem deste trabalho, estamos nos referindo ao grau de

satisfação e eficiência do processo ou um conjunto de processos, utilizados por

uma organização ou projeto para: planejar, gerenciar, executar, monitorar,

controlar e melhorar as atividades relacionadas à construção de software

(SPICE, 1995). Aspectos importantes sobre como a qualidade está inserida no

contexto das organizações produtoras de software são apresentados nas

seções a seguir.

2.2.1 – A Qualidade e sua Gestão no Projeto

Segundo Leite (Rocha et al., 2001), a visão atual de construção de software

agrega processos onde normas, procedimentos e gerência são bem definidos

para garantir a qualidade dos produtos. Bem diferente da visão tradicional de

processo de produção, onde a construção está centrada em fases e produtos.

Nesta nova visão, o papel da gerência passa a ser visto como um aspecto

técnico e estratégico, não somente como um aspecto exterior ao conhecimento

da engenharia de software. Leite cita que, para entender que o processo de

produção de software é composto por diferentes subsistemas (Freeman, 1987),

é importante entender o processo de produção de uma maneira mais ampla.

Page 42: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

40

FIGURA 2.1 – Um modelo de Sistema de Desenvolvimento de Software.

FONTE adaptada de Ross (1977).

É necessária que a escolha dos métodos a serem utilizados no processo de

produção seja uma escolha gerencial ligada à qualidade, porque a qualidade

resultante será função dos métodos de produção escolhidos e seguidos. É

também importante que não se esqueça que a produção de software é um

processo que envolve, como parte fundamental, seres humanos. As

tecnologias de construção de software, nas quais se incluem as tecnologias de

gerenciamento, têm por objetivo automatizar ao máximo a construção de

software, mas ainda são fortemente dependentes da qualidade das equipes

envolvidas.

A qualidade deve estar presente não só nos produtos produzidos, como

também nos processos utilizados para gerar esses produtos de

desenvolvimento (Humphrey, 1995) (Jacobson et al., 1999). Neste caso os

Page 43: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

41

processos de qualidade, ou de auditoria, são processos que se aplicam tanto

aos produtos, como aos próprios processos (uma meta aplicação dos

processos de qualidade). Mediante esta visão, aplicada ao modelo de Ross

(Ross, 1977) da Figura 2.1, para assegurar a qualidade dos produtos e dos

processos, a responsabilidade recai sobre o subsistema GERÊNCIA, que

necessita dispor de MÉTODOS e FERRAMENTAS compatíveis com a

qualidade desejada. A ação eficiente na função de garantir esta qualidade

exige conhecimento técnico sobre os MÉTODOS e FERRAMENTAS, além do

conhecimento de gerência para lidar com PESSOAL. Como base para qualquer

processo de gerência, deve existir um sistema de retroalimentação que forneça

ao subsistema GERÊNCIA as informações sobre o funcionamento do processo

para que eventuais problemas possam vir a serem corrigidos. Também é

necessário organizar as informações coletadas através de métricas, para que

se possa conhecer melhor os produtos produzidos, bem como os processos

utilizados na sua produção. A responsabilidade do armazenamento e da

distribuição dessas informações é do subsistema INFORMAÇÃO.

2.2.2 – A Qualidade e suas Responsabilidades no Projeto

Dentro deste aspecto de qualidade de produto e de processo, a gestão da

qualidade de software atua como uma atividade “guarda-chuva”, que é aplicada

ao longo de todo o processo de engenharia de software, podendo, segundo a

visão de Pressman (Pressman, 1995) abranger (1) a definição de métodos e

ferramentas para o desenvolvimento do produto; (2) revisões e técnicas formais

de avaliação que são aplicadas durante todo o ciclo de vida do produto; (3)

controle dos produtos, sua documentação e suas mudanças; (4) procedimentos

para a garantia e adequação aos padrões de desenvolvimento, quando

aplicáveis; (5) mecanismos de medição e divulgação. Além destas atividades,

podemos acrescentar a (6) criação de uma abordagem cultural da qualidade na

organização (Zulmer, 1989).

Page 44: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

42

2.2.3 - A Qualidade e o Papel dos Envolvidos

Algumas das responsabilidades dos envolvidos no processo do gerenciamento

da qualidade são planejadas nas fases iniciais de um projeto, ou pré-

estabelecidas na estrutura organizacional da empresa de modo a, em linhas

gerais, identificar as expectativas dos usuários quanto ao produto a ser

desenvolvido, definir os padrões e procedimentos a serem usados no projeto,

revisar produtos e processos, solucionar problemas e propor melhorias no

projeto. Adicionado a isto, há uma tarefa preliminar muito importante que é

conseguir reunir as pessoas certas para o trabalho da qualidade. Os principais

papéis identificados no processo do gerenciamento da qualidade, segundo

Unhelkar (Unhelkar, 2002), são o do (1) Gerente da Qualidade, que organiza e

gerencia as funções da qualidade, incluindo a criação do ambiente da

qualidade; o do (2) Usuário, Clientes, gerentes e engenheiros de software

envolvidos no projeto, ligados diretamente às expectativas relacionadas com a

qualidade, aos quais os produtos e processos estão relacionados; o do (3)

Time da Qualidade: Analista, Revisor, Testador e Auditor são os principais

papéis, dentre outros, que cuidam das funções da qualidade; o de (4) outros

envolvidos: Gerente de Projeto, Gerente da Configuração, ou outras gerências

e os desenvolvedores, que poderão estar mais intensamente ligados à

qualidade dependendo da fase do ciclo de vida ou da atividade ao qual seu

produto ou processo estiver relacionado. A Figura 2.2 mostra os papéis mais

diretamente envolvidos com a qualidade.

Page 45: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

43

Cliente

Gerenteda

Qualidade

Gerente da

Configuração

Analistada

Qualidade

Testador

Gerente de

Projeto

Revisor

Auditor

FIGURA 2.2 - Papéis dos envolvidos com a qualidade

FONTE adaptada de Unhelkar (2002).

Os envolvidos possuem papéis bem definidos nas atividades e tarefas do

projeto, com regras próprias e atribuições bem distintas no seu relacionamento

com a gestão da qualidade. Podem também ser inter-relacionados com os

outros papéis e ter denominações diferentes, dependendo da estrutura da

organização à qual pertencem.

2.2.3.1 – O Gerente da Qualidade

O Gerente da Qualidade é função derivada do Gerente do Projeto, mas com o

foco nos aspectos da qualidade. Requer um acesso independente às

atividades e produtos do projeto, provendo retorno do andamento destas

atividades às outras gerências. Organiza as inspeções, revisões e auditorias

Page 46: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

44

dos produtos gerados durante o desenvolvimento do projeto, como também

direciona esforços na identificação de fatores como a qualidade do ambiente de

trabalho, a comunicação e os aspectos motivacionais no projeto. Estes fatores

tornam as atividades da gerência da qualidade muito próximas das de projeto.

2.2.3.2 – O Gerente de Projeto

O Gerente de Projeto é o papel do principal responsável pela condução do

desenvolvimento do software e de seus produtos relacionados, e pela

execução do processo de engenharia no projeto. Ele pode não agir diretamente

na confecção dos produtos, mas provê suporte para o ajuste fino do processo,

e pode ser o intermediário entre o Gerente da Qualidade e os membros da

equipe de engenharia, os desenvolvedores.

2.3.3.3 – O Gerente da Configuração

O Gerente da Configuração tem como principais atividades (Hass, 2002) a

identificação, o armazenamento, o controle de modificação e relato da situação

dos produtos de um projeto de software. A avaliação da configuração, o

gerenciamento da liberação e entrega dos produtos, bem como a manutenção

de cópias do código e da documentação por toda a vida do produto de software

também são atribuições dessa gerência. A atividade de auditoria ou avaliação

da configuração, incluída em algumas definições de atribuição da configuração

pode ser vista também como uma área de atividade da garantia da qualidade,

já que utiliza técnicas e métodos da garantia da qualidade, como revisões e

testes, além das informações da configuração na forma de relatórios de

situação.

Page 47: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

45

2.3.3.4 – O Usuário ou Cliente

Apesar de a primeira responsabilidade do papel do Usuário estar relacionada

com o trabalho do Analista de Negócios, o Usuário é também importante para a

Qualidade. A primeira explicação para este fato é que o Cliente faz parte do

processo de testes de aceitação. Como este papel pode estar ligado

diretamente a confecção de Casos de Uso, diagramas de Atividades,

diagramas de Classes, ele pode também ajudar a criar um conjunto abrangente

de casos de teste endereçado ao plano de testes do projeto. Com esse

subsídio do Cliente é possível também aprimorar as futuras sessões de

treinamento do usuário ao final do projeto. Obviamente que a formulação dos

testes de aceitação não podem depender somente da visão do Cliente, mas

sim agregados a visão do Testador, que acrescentará testes técnicos

funcionais, testando as condições de contorno, condições de funcionamento

anormal e falhas no sistema, por exemplo.

Os membros da equipe de engenharia, os desenvolvedores, desempenham o

papel, de Usuários da qualidade, auxiliando na execução do processo. Isto

pode acontecer quando o desenvolvedor for um Autor de Produto (ou

processo), ou estiver ligado diretamente ao produto ou ao processo

instanciado. Ele pode, por exemplo, ser o Encaminhador de Produtos do

desenvolvimento do trabalho ao Analista da Qualidade, para sua devida

revisão, verificando e validando estes produtos de forma a obter o aceite da

qualidade. Poderá ser consultado sobre os produtos do projeto, desde a sua

alocação (nas primeiras fases do projeto) até a sua entrega (validação e aceite

do produto).

2.2.3.5 O Analista da Qualidade

O Analista da Qualidade executa todas as funções elementares da atividade da

qualidade no projeto. O nome Analista da Qualidade é comumente usado por

qualquer envolvido responsável pela qualidade de um produto a ser entregue.

Isto requer que o Analista da Qualidade seja capaz de entender o objeto a ser

Page 48: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

46

manipulado pela qualidade, as atividades e as tarefas do processo e seja

capaz de dominar e utilizar a tecnologia empregada no projeto.

Preferencialmente, o Analista da Qualidade deve ser alguém que já tenha feito

alguma modelagem e trabalhos relacionados a processo em algum outro

projeto. A experiência prévia em criar modelos e trabalhar com processos pode

prover maior facilidade durante as atividades da qualidade como, inspeções,

revisões e auditorias realizadas durante o projeto.

Em muitas organizações o Analista da Qualidade trabalha muito próximo ao

Analista de Negócios, identificando, capturando, documentando e analisando

os requisitos. Também é seu papel certificar-se de que os aspectos mais

necessários do processo de qualidade foram executados.

Esse tipo de analista deve fazer uma verificação independente e robusta do

processo, bem como do produto do projeto. Dependendo do tamanho e do tipo

de projeto, bem como da estrutura organizacional, um Analista da Qualidade

pode se envolver em todos os níveis do desenvolvimento, ou ser solicitado

mais intensivamente só na fase de validação e entrega de produto.

2.2.3.6 – O Testador

O Testador é responsável pelo controle da qualidade do produto. Isto inclui,

mas não se limita, aos testes de produtos de software. Por exemplo, um

Testador cria um projeto de testes e os casos de teste, depois conduz os testes

e registra os resultados. Um grande auxílio que o Testador pode obter é a

colaboração de alguém da equipe de engenharia (quando ele mesmo não já

não é dela). Muitas vezes os programadores negligenciam este tipo de

atividade, acreditando que não existem erros possíveis de serem observados

após o desenvolvimento. Os scripts e os programas de teste devem atender

aos requisitos originalmente estabelecidos, e devem atender a três principais

Page 49: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

47

visões: a de funcionalidade, a de tecnologia e a de arquitetura do sistema.

Ferramentas automáticas podem ser usadas para sua descrição, execução e

relato.

2.2.3.7 – O Revisor

O Revisor também é responsável pelo controle da qualidade do produto Este

papel está ligado principalmente a garantir que foram verificadas sintaxe,

semântica e estética dos produtos a serem entregues (um diagrama ou código,

ou documento). O Revisor pode executar diversos tipos de verificação: (1) de

do contrato: onde se observa se o fornecedor possui capacidade para

satisfazer os requisitos, se esses são coerentes, englobam todas as

necessidades do cliente, etc.; (2) de processo: onde se observa a adequação

do planejamento e do cronograma do projeto, o cumprimento das tarefas e dos

marcos estabelecidos no contrato, etc.; (3) de requisitos: onde se observa se

os requisitos do software em relação aos requisitos do sistema são coerentes,

factíveis e testáveis, etc.; (4) de projeto: onde se observa se o projeto está

correto e coerente com os requisitos, se ele implementa apropriadamente as

seqüências de eventos, entradas e saídas, requisitos de segurança, etc.; (5) de

código: onde se observa se o código está de acordo com os requisitos

funcionais e não funcionais, se é testável e correto, se atende aos padrões e

requisitos de codificação, etc.; (6) de integração: onde se observa se as

unidades e os componentes de código, bem como os itens de hardware e

software foram integrados completa e corretamente, de acordo com um plano

de integração; (7) de documentação: onde se observa se a documentação

está adequada, completa, coerente, produzida no tempo estabelecido e se a

gestão de configuração desses produtos segue os procedimentos

especificados.

O Revisor pode também atuar como uma espécie de intermediário nas revisões

conjuntas entre clientes e desenvolvedores, no interesse de uniformizar

Page 50: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

48

conhecimento ou padronizar procedimentos. Dependendo da organização este

papel varia de atribuição.

2.2.3.8 – O Auditor

A atividade principal do Auditor é realizar um exame sistemático e

independente, para determinar se as atividades da qualidade e de configuração

estão de acordo com as disposições planejadas, se estas foram

implementadas com eficácia e se são adequadas à consecução dos objetivos

do projeto (ABNT8402, 1997).

As auditorias planejadas são aquelas definidas no Plano de Desenvolvimento

de Software do projeto. Exemplos destas auditorias são as de configuração

Funcional (para verificar se todos os requisitos foram atendidos) e de

configuração Física (para verificar que o software e sua documentação estão

completos e prontos para a entrega). Uma vez alcançada uma determinada

configuração de projeto (marco ou baseline) a ser auditada, prevista no Plano

de Desenvolvimento, a auditoria deverá ser realizada.

A atividade do Auditor pode estar também fortemente relacionada com o

controle da configuração do software, auxiliando a identificação e registro das

solicitações de modificações; analisando e avaliando as modificações;

aprovando ou desaprovando a solicitação, e na implementação, verificação e

liberação (release) do item de software modificado. Um procedimento de

auditoria deve existir de modo que cada modificação, com seu motivo e

autorização, possa ser controlada.

Page 51: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

49

Uma das limitações da automação de processos, segundo Sommerville

(Sommerville, 2001) é a imensa diversidade de processos de desenvolvimento

de software. Não há um processo ideal e diferentes organizações têm

desenvolvido abordagens de diferentes níveis de complexidade. Processos

foram desenvolvidos para explorar a capacidade das pessoas na organização e

nas características específicas do sistema que está sendo construído. Modelos

como o de desenvolvimento cascata e o evolucionário são ainda os utilizados

para desenvolvimento da maioria dos sistemas. Já o modelo informal foi usado

com sucesso em alguns projetos (Mills et al., 1987) (Linger, 1994), mas ainda

são poucas as organizações que fazem uso deste modelo. O desenvolvimento

baseado em reuso talvez seja o modelo que mais tem influenciado os projetos

de software do século 21 (Sommerville, 2001). A idéia de construção de

projetos baseados em componentes, no modelo de reuso, é essencial para o

desenvolvimento de software rápido. Podemos também citar como modelos de

desenvolvimento de software os processos iterativos, como o incremental e o

espiral, que são ditos processos híbridos de desenvolvimento. Estes modelos

surgiram a partir das limitações da abordagem em cascata, e preconizam que o

desenvolvimento do software possa ser administrado numa série de

incrementos, onde poderia haver uma série de ciclos de vida em cascata para

cada incremento (Yordon, 1995).

Entretanto, mesmo com os muitos diferentes tipos de processo de

desenvolvimento de software, existem as atividades fundamentais que são

comuns a todos os processos. São elas:

Especificação de software: atividade que engloba a definição da

funcionalidade do software e suas restrições de operação;

Implementação e projeto de software: atividade que engloba a

especificação do software a ser produzido e a construção do produto;

Validação do software: atividade que engloba a validação do software

com a garantia de que ele faz o que o cliente (contrato) quer;

Jefferson
2.2.4 - A Qualidade e o Ciclo de Vida do Software
Page 52: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

50

Evolução/manutenção de software: atividade que engloba o

desenvolvimento do software de modo a atender as mudanças

solicitadas pelo cliente.

Segundo esta visão, o gerenciamento da qualidade é implementado através de

todos os fluxos de trabalho (workflows), fases, e iterações do processo de

desenvolvimento de software. Na atividade de Especificação de software, o

gerenciamento da qualidade engloba a análise dos requisitos do conjunto de

produtos, para verificar consistência (entre padrões de artefatos e outros

produtos), clareza (clara comunicação entre os envolvidos e workers) e

precisão (nível de detalhe e acurácia apropriados). Na atividade de

Implementação e projeto de software a qualidade engloba a consistência do

modelo de projeto, sua tradução para os requisitos do produto, sua tradução

para a implementação e a verificação dos produtos em relação aos padrões de

projeto. Na atividade de Validação de software, a qualidade está envolvida

com a avaliação dos produtos de código fonte /executável contra os requisitos,

projeto e teste. Na atividade Evolução/ manutenção de software, a

qualidade, junto com o controle da configuração engloba a tradução da

solicitação de mudança em requisito do produto, a tradução para a

implementação e o encaminhamento para as outras atividades de ciclo de vida

pelas quais o produto deverá passar.

2.2.5 - A Qualidade e os Produtos de Software

Produto de software é o conjunto de programas, procedimentos e

possivelmente documentação e dados associados (ISO/IEC12207, 1995), que

são usados potencialmente como entradas e saídas de um processo

organizacional implementado (ISO/IEC15504-2, 1998).

Page 53: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

51

Produtos do trabalho são os artefatos finais ou intermediários que são

produzidos e utilizados durante o desenvolvimento de um software, para

capturar e exprimir informações de projeto (Jacobson et al., 1999). Um artefato

pode ser (1) um documento, como o documento de estratégia de negócios ou o

documento de arquitetura de software, (2) um modelo, como um modelo de

caso de uso ou de projeto, (3) um elemento de um modelo, como uma classe

de um modelo ou (4) o código, incluindo programas fontes e código executável.

Modelos e elementos de modelos estão associados com relatórios, que

extraem informações sobre estes modelos de forma automatizada ou não. Um

relatório representa também um produto ou um conjunto de produtos. Para se

fazer o desenvolvimento gerencial de um sistema de software completo, os

produtos devem ser organizados em conjuntos que correspondam à fase ou ao

fluxo de trabalho correspondente a ele. Muitos produtos podem ser usados em

mais de uma fase, mas o produto vai sempre pertencer a fase em que foi

primeiramente produzido.

Isto quer dizer, que os produtos do trabalho possuem um ciclo de vida, que

consiste do ponto que se inicia sua concepção até o ponto em que é finalizado

o produto e disponibilizado para uso. Entretanto, como uma organização pode

produzir múltiplos produtos para múltiplos clientes, a descrição de ciclo de vida

de produto pode não ser adequada. Portanto, a organização pode definir um

conjunto de produtos aprovados dentro do modelo de ciclo de vida, sendo que

os modelos podem ser facilmente encontrados na literatura e devem ser

adaptados para uso na organização.

2.2.5.1 - As Categorias de Produto

Os produtos desenvolvidos durante as fases do ciclo de vida do software

podem ser categorizados de diversas maneiras. O mais importante é se

caracterizar (ou categorizar) o mesmo de modo a ser possível identificar,

Page 54: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

52

acompanhar e manipular esses produtos no momento necessário à sua

utilização e de forma confiável. Atualmente, os produtos de um projeto são

utilizados como suporte a avaliações de maturidade de uma organização em

termos de capacidade, provendo evidências sobre um processo em particular,

ou sobre uma organização como um todo. Obviamente que uma metodologia

ou um julgamento mais apurado do avaliador é necessário para garantir o

contexto em que o processo é utilizado (domínio da aplicação, proposta do

negócio, metodologia de desenvolvimento, tamanho da organização, etc.)

quando se obtém esse tipo de informação (ISO/IEC15504-1, 1998).

Uma das formas de se caracterizar produto de software é através de três

principais categorias: organizacional, de projeto e de registro (ISO/IEC15504-5,

1998). A Tabela 2.1 mostra os principais produtos associados a estas

categorias.

TABELA 2.1 Classificação de Produto de Trabalho. Número

Categoria número Classificação

1 Organizacional

1.1 Política 1.2 Procedimento 1.3 Padrão 1.4 Estratégia

2 Projeto 2.1 Plano 2.2 Requisito 2.3 Projeto 2.4 Implementação 2.5 Produto 2.6 Entrega

3 Registro 3.1 Relatório 3.2 Registro 3.3 Medida 3.4 Dado

FONTE: ISO/IEC 15504-5 (1998).

Page 55: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

53

No Apêndice B é apresentada uma tabela de produtos (adaptada do padrão

15504) classificados por categorias e relacionados aos processos da Garantia

da Qualidade do grupo Suporte.

2.2.6 - A Qualidade e os Marcos de Projeto

Outro fundamento importante, quando se trata do processo de gerenciamento e

construção de software, é de que cada dia mais o gerenciamento está baseado

no conceito de evolução (Leite, 1997), ou seja, sempre se está modificando

algum software já existente. Acredita-se que para lidar com evolução

constante, é fundamental utilizar o conceito de configuração base (baseline)

oriunda da área de configuração de sistemas. Uma baseline é uma espécie de

referencial que utilizamos durante o processo de construção/evolução de

software que deve servir como uma âncora, para que se possam gerir os

produtos e as mudanças de uma forma organizada.

Para que cada item da construção do software que se deseje efetivamente

controlado, é necessário o estabelecimento de pontos bem definidos dentro do

processo. Essas linhas de referência podem ocorrer ao final de cada uma das

fases de um processo de desenvolvimento, ou de algum outro modo definido

pela gerência. Os marcos são gerados para se prover o controle progressivo

das informações de projeto (código e documentação associada) descritos nos

vários itens projetados para o sistema. Nesses pontos estabelecidos, esses

itens devem ser identificados, analisados, revisados, corrigidos, aprovados e

armazenados em um local com algum tipo de controle de acesso. Este local

geralmente é chamado de repositório dos itens de configuração.

A gerência responsável pela gestão dos itens, ou produtos do trabalho, é a

Gerência da Configuração (GCS). O papel da GCS é identificar os chamados

itens de configuração, controlar suas modificações e versões durante todo o

seu ciclo de desenvolvimento e manutenção, ajudar a estabelecer os marcos

de projeto e configuração (junto às outras gerências), relatar a todos os

Page 56: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

54

envolvidos o andamento dos produtos e das suas alterações. O papel da

Gerência da Qualidade (GQ) neste processo é realizar as revisões de

avaliação necessárias para que os produtos possam ser encaminhados para a

GCS, com o status revisado. As duas gerências atuam de forma muito próxima

durante todo o ciclo de vida do produto. Na visão da qualidade, pode-se

perceber este relacionamento estreito através do encaminhamento dos

produtos revisados para o controle de configuração, no acompanhamento dos

produtos que sofreram modificações ou da situação geral dos produtos em

relação aos marcos estabelecidos.

2.2.7 – A Qualidade e os Padrões

Uma das mais importantes e significantes contribuições da qualidade é no uso

adequado de padrões. O uso de padrões pode ser um recurso importante na

denominação dos produtos, no formato de diagramas, nos modelos de

documentos e na escolha dos produtos a serem entregues nas diversas fases

do desenvolvimento. Padrões não são entidades únicas aplicadas em todo o

projeto. Existem diferentes padrões nas diferentes áreas de um projeto e

diferentes fontes de padrões para a mesma área de um projeto.

2.2.7.1 – Áreas de Aplicações de Padrões

Um projeto baseado em padrões geralmente usa esses modelos em uma

grande variedade de áreas do ciclo de desenvolvimento do software. Por

exemplo, podem-se adotar padrões na modelagem do software, nos seus

processos, na modelagem da base de dados, na escolha da linguagem, na

qualidade e no modelo de gerenciamento do projeto.

Padrões de Modelagem: esses padrões ditam as notações, diagramas e

outros produtos associados para criar modelos no projeto do software.

Page 57: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

55

No caso da Unified Modeling Language (UML), por exemplo, o padrão

provê vários tipos de modelos para os diagramas de um projeto de

software: ela é aceita em uma grande variedade de projetos e possui o

selo da ISO. Outras alternativas para padronização utilizam, por

exemplo, o Diagrama de Fluxo de Dados, Diagrama de Entidade–

Relacionamento entre outros.

Padrões de Processo: esses padrões ditam a maneira como o processo

é instanciado e desenvolvido em um projeto ou na organização como um

todo. Processos precisam de uma notação formal aceitável, descrita e

especificada em um formato, e seu desenvolvimento deve ser associado

com treinamento e suporte. Isto inclui a descrição formal das atividades

e tarefas, descrição do papel de cada responsável pelas tarefas no

processo, e modelos (templates) para os produtos resultantes. O CMM é

um exemplo de modelo de processo que provê medidas para revelar a

maturidade dos processos de software na organização ou em um projeto

em particular.

Padrões de Base de Dados: apesar de as ferramentas disponíveis

promoverem uma visão individual de seus padrões, o modelo relacional

beneficia e abrange grande parte dos padrões que seguem com o uso

de diagramas de Entidade-Relacionamento, bem como o uso de

normalização de tabelas relacionais. Para projetos de datawarehouse

(Kimball et al., 1998) pode-se considerar dois padrões: base de dados

de nomes de objeto e base de dados de nome e localização de arquivos

físicos.

Padrões de Linguagem: atualmente, projetos de software tendem a

colocar diversas linguagens juntas no seu desenvolvimento. Por

exemplo, uma aplicação servidora escrita em C++ e a aplicação cliente

rodando a linguagem JAVA. Com essa variedade e mistura de

linguagens, é importante seguir padrões de codificação. Seguindo

Page 58: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

56

padrões bem definidos para essas diversas linguagens, é possível que

programadores em diferentes ambientes de desenvolvimento leiam e

façam manutenção de código de forma mais legível e fácil.

Naturalmente, padrões de linguagem devem ser adotados nas fases

iniciais de projeto, onde nomes de classes, atributos, operações fazem

parte dessas definições.

Padrões de Qualidade: padrões da qualidade podem, por exemplo,

descrever o ambiente da qualidade na organização (NBRISO9001,

2000), sugerir padrões para processos do ciclo de vida do software

(ISO/IEC12207, 2001) e podem relacionar-se com outros padrões.

Provêem modelos e gabaritos para documentos relacionados ao

gerenciamento da qualidade (plano da qualidade, por exemplo) e suas

necessidades específicas para a organização do trabalho entre os

envolvidos.

Padrões de Gerenciamento: podem ser derivados de padrões como o do

Project Management Institute (PMI). Esse tipo de padrão atua de forma

muito estreita com os padrões de processo, pois na prática, a criação e

padronização de um processo iterativo e incremental, por exemplo, é de

execução e responsabilidade do gerenciamento do projeto, atividade

ditada por padrões de gerenciamento.

2.2.8 – A Qualidade e Métricas de Software

O gerenciamento de um projeto de software agrega processos de tomada de

decisão, onde métricas podem ser úteis para fornecer uma base de

identificação de procedimentos que não estejam em conformidade com os

alvos pretendidos, bem como elas podem ser usadas como medidas de

atributos de projeto, auxiliando na elaboração de novas soluções que levem à

melhoria da qualidade (Yu e Lamb, 1995). Muitos autores têm trabalhado na

Page 59: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

57

teoria das medições para métricas de software (Fenton e Pfleeger, 1997)

(Kitchenham et al., 1996) (Fenton, 1994) (Ambriola et al., 1994), e aplicado

métricas para controlar e estimar o desenvolvimento formal do software.

O primeiro passo para se elaborar um plano de medidas dentro de um projeto,

é fazer uma pesquisa, baseada em métricas, formulando os objetivos (em

forma de alvos) a serem alcançados: Qual é o propósito da pesquisa? Quem

usará as medidas e para que fim? Assim, os alvos podem ser refinados em

questões mais específicas, identificando-se métricas que forneçam respostas

quantitativas a estas questões.

2.2.8.1 – Categorias de Métricas

As principais categorias de métricas de qualidade são divididas nos seguintes

grupos:

Objetivas/Subjetivas: as objetivas são facilmente quantificadas e

medidas através de expressões numéricas ou representações gráficas

dessas expressões. As subjetivas são medidas relativas baseadas em

estimativas pessoais ou de grupo, sendo obtidas por termos lingüísticos

como alto, médio, baixo (Moller e Paulish, 1993).

Absolutas/Relativas: as absolutas são tipicamente invariantes para a

medição de novos itens, enquanto que as métricas relativas não.

Explícitas/Derivadas: as explícitas (ou diretas) quantificam um fator

observado em um único produto, enquanto as derivadas (ou indiretas)

envolvem medidas de um ou mais atributos relacionados a um produto

(Fenton, 1994) (Pressman, 1992).

Dinâmicas/Estáticas: as dinâmicas possuem uma dimensão temporal,

enquanto as estáticas permanecem invariáveis no tempo.

Page 60: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

58

Preditivas/Explanatórias: as métricas preditivas (ou a priori) podem ser

obtidas ou geradas previamente, para realizar prognósticos do valor de

uma propriedade do sistema, que somente se tornará diretamente

observável em um estágio posterior a seu desenvolvimento

(Ponnambalam et al., 1996), enquanto as explanatórias (de resultado,

descritivas ou a posteriori) são geradas depois do fato ocorrido,

baseadas em dados coletados, indicando, simplesmente, o estado atual

do produto.

Existem, também, as métricas de produto (Ponnambalam et al., 1996)

(Bertolino e Strigini, 1996) (McCabe, 1976) e as métricas de processo (Moller e

Paulish, 1993). As métricas de produto indicam objetivamente as

características mensuráveis do produto de software, tal como tamanho,

complexidade, acoplamento. As métricas de processo medem aspectos de

desenvolvimento e manutenção e são, geralmente, usadas para caracterizar os

custos dessas atividades, como, por exemplo, quão efetivo é o processo de

remoção de defeitos.

Ponnambalam (Ponnambalam et al., 1996) considera, também, métricas de

projeto, como sendo da mesma importância que as métricas de produto e de

processos. Essa categoria de métrica mensura características de projeto e sua

execução como, por exemplo, o custo, o cronograma e o número de

desenvolvedores de software.

Munson (Munson, 1995) sugere, além das métricas de processo e de produto,

métricas de pessoal e de ambiente. As métricas de pessoal consideram os

recursos humanos, ao longo do processo de desenvolvimento. As métricas de

ambiente quantificam as circunstâncias físicas, que se referem à organização.

Na concepção de Moller e Paulish (Moller.e Paulish, 1993), as métricas podem

ser classificadas, ainda, em métricas globais e métricas de fase. Métricas

globais são indicadores de alto nível, que se disseminam ao longo do processo

de desenvolvimento do software, fornecendo direcionamentos para os

Page 61: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

59

gerentes. Métricas de fase são indicadores somente para fases específicas do

processo de desenvolvimento do produto de software.

A qualidade de software é geralmente expressa em função de diversas

métricas de software, onde diferentes índices (Coleman et al., 1994) medem

diferentes aspectos de qualidade (Ponnambalam et al., 1996) (Oman et al.,

1994). Na prática, com o processo de medição, deseja-se saber se um bom

software é um bom negócio (Kitchenham et al., 1996).

2.2.9 - A Qualidade e a Documentação

Segundo Sanches (Sanches, 2001) a documentação de software é uma

atividade fundamental da qualidade no processo de desenvolvimento de

software. Cabe à documentação registrar a evolução do software, para que

sejam criadas as bases necessárias para uma melhor utilização e manutenção

do software.

Pela quantidade de atividades realizadas no desenvolvimento do software,

estima-se que cerca de 20% a 30% de todo o tempo empregado é dedicado à

elaboração de sua documentação (Parnas et al., 1994). Este valor torna

significativo, em termos de planejamento de projeto, o treinamento, o tempo e

os recursos humanos que devem ser alocados para esta atividade.

Sanches afirma também que, neste período, podem ser produzidos vários

documentos, retratando particularidades do projeto do software, ou do seu ciclo

de vida. Em acréscimo a isto, a documentação relacionada com o

desenvolvimento como contratos, documentos de sistema (que não o do

software), relatórios técnicos, descrição de procedimentos e de estratégias do

negócio, entre outros documentos, são manipulados pelos envolvidos no

projeto e devem ser, de alguma forma, controlados.

Page 62: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

60

É importante que o documento do projeto de desenvolvimento de software

retrate fielmente o modo como as atividades de avaliação e modificação dos

produtos serão realizadas, procurando causar o menor impacto possível no

andamento do projeto. Muitos benefícios são obtidos a partir de uma

documentação cuidadosamente elaborada, tais como (Sanches, 2001):

Redução do tempo e do esforço despendido no desenvolvimento do

software.

Facilidade e maior eficiência no manuseio do software por parte dos

usuários.

Facilidade de localização das informações e melhor compreensão das

estruturas do software (Phoha, 1997).

2.2.10 - A Qualidade e a Estruturação de sua Gerência

O gerenciamento da qualidade de software diz respeito à garantia de que o

software tem um baixo número de defeitos e que o mesmo alcança os padrões

de manutenibilidade, confiabilidade, portabilidade, entre outros requisitos que

foram definidos no projeto. As atividades de gerenciamento da qualidade

incluem a garantia da qualidade, que define os padrões organizacionais para o

desenvolvimento de projetos de software, o planejamento da qualidade, que

define a estratégia da qualidade em um projeto e o controle da qualidade, que

verifica se o software atende esses padrões definidos. Portanto, a qualidade

pode ser estruturada, dentro de uma gerência, englobando três principais

atividades: garantia da qualidade, planejamento da qualidade e controle da

qualidade.

Page 63: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

61

A garantia da qualidade consiste no estabelecimento de procedimentos e

padrões organizacionais, que levam a um software de alta qualidade e que

deverão ser aplicados no processo de desenvolvimento do software ou no

produto de software. Como padronização de produto pode-se citar, por

exemplo, a criação de um formulário de revisão de projeto, ou uma política para

a documentação de projeto, uma padronização para código em projetos, um

formato do plano de desenvolvimento ou de um formulário de requisição de

mudanças. Como padronização de processo pode-se citar os passos para a

condução da revisão/auditoria de projeto, o procedimento para a submissão de

documentos a uma gerência de configuração, o processo de controle de

mudanças, o processo de registro de teste, entre outros.

2.2.10.2 - O Planejamento da Qualidade

O planejamento define o conjunto de qualidades desejáveis aos produtos de

um projeto e também como estas qualidades devem ser verificadas. Envolve

também a seleção dos padrões organizacionais que serão apropriados a um

projeto (processo e produto) em particular. Essa atividade consiste

basicamente da adequação das políticas de revisões e auditorias ao projeto, da

seleção e adoção de padrões, da definição das atividades de subcontratados

(caso houver) no projeto, da definição dos papéis da qualidade no projeto, dos

meios de armazenamento dos produtos a serem gerados, da política de

controle da configuração e das modificações (quando for da atribuição da

qualidade), entre outras atividades.

2.2.10.3 – O Controle da Qualidade

O controle da qualidade é o processo que garante que os procedimentos e

padrões estão sendo seguidos durante o desenvolvimento de um software. Isto

Jefferson
2.2.10.1 - A Garantia da Qualidade
Page 64: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

62

é feito através de verificações, validações, auditorias e revisões conjuntas. A

verificação assegura que um produto do trabalho, ou parte dele, durante o

desenvolvimento do software, está sendo implementado corretamente ou que

os métodos e processos de desenvolvimento estão sendo aplicados

corretamente. A validação assegura que o software que está sendo

desenvolvido é o software correto, de acordo com os requisitos do usuário. A

revisão conjunta geralmente é empregada para se estabelecer um

entendimento comum entre as partes envolvidas. E a auditoria é empregada

para verificar se todos os requisitos foram atendidos, verificando o software e

sua documentação está completo e pronto para a entrega. O controle da

qualidade se propõe, também, a monitorar os resultados específicos do projeto

para determinar se eles estão de acordo com os padrões de qualidade

relevantes e, no caso da identificação de não-conformidades, durante a

execução de seus processos, e a agir de forma a encaminhar para tratamento

os desvios apresentados. São os chamados processos fundamentais da

qualidade.

Page 65: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

63

Page 66: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

64

Page 67: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

65

CAPÍTULO 3

PADRÃO DE PROCESSO, LINGUAGEM DE MODELAGEM E O

AMBIENTE CENTRADO EM PROCESSO

Através do estudo de padrões é possível aprimorar as práticas de engenharia

de software, de modo a permitir alcançar melhores índices de qualidade e

confiabilidade nos produtos desenvolvidos e maior produtividade de

desenvolvimento. O padrão International Organization of

Standardization/International Electrotechnical Commission (ISO/IEC) 15504

(ISO/IEC15504-2, 2003), derivado do modelo de maturidade organizacional do

Software Process Improvement and Capability dEtermination (SPICE) (SPICE,

1995), se propõe a avaliar projetos e organizações de forma a verificar o nível

em que estas se encontram, em termos de maturidade dos processos

utilizados e das práticas organizacionais no desenvolvimento de projetos de

software. Já o padrão da ISO/IEC 12207 (ISO/IEC12207, 2001) descreve

processos para desenvolvimento e manutenção de software, fornecendo um

conjunto essencial de atividades que deverão ser completadas para obter um

produto de software. Finalmente, o modelo Capability Maturity Model

Integration (CMMI) (CMMI, 2002), que é um framework para avaliação e

melhoria de processo disponível para o desenvolvimento de produtos e

serviços, é patrocinado pelo Departamento de Defesa norte-americano, por

entidades do governo e da indústria, bem como pelo Software Engineering

Institute (SEI). Ele acomoda múltiplas disciplinas e é flexível tanto para verificar

o nível de maturidade dos processos, como para verificar o nível de maturidade

da organização em geral. Na seção 3.1 são identificados os processos desses

padrões relacionados com a qualidade, enfocando principalmente sua

compatibilidade com o padrão 15504, referência utilizada neste trabalho.

Após análise de quais são os processos básicos da qualidade mais adequados

para uma organização, ambiente ou projeto de desenvolvimento de software,

Page 68: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

66

uma linguagem de modelagem de processo deve ser utilizada para definir e

representar os processos a serem implantados em um ambiente de engenharia

de software. Na seção 3.2 é apresentado o Software Process Engineering

Metamodel (SPEM) (SPEM, 2002) que, através de seus diagramas com

notação gráfica, permite representar de forma precisa e compreensível as

várias características ou elementos do processo de software para a

implantação e a execução em um ambiente de engenharia de software

centrado em processo. Na seção 3.3 é definido mais detalhadamente o

conceito de Ambientes de Engenharia de Software Centrados no Processo, os

chamados PSEEs, (Process-centered Software Engineering Environments),

que servem de apoio à implantação e à execução de processos de software. É

apresentado o Ambiente Integrado para Apoio ao Desenvolvimento e Gestão

de Projetos de Software, e-WebProject (Sant’Anna, 2000), que foi utilizado

como escopo para a abordagem proposta, e que se propõe a dar suporte à

descrição e à execução desses processos de modo a auxiliar e controlar todas

as atividades envolvidas na produção e manutenção de um projeto de software.

3.1 – O Padrão ISO/IEC 15504

Em 1992, a ISO realizou um estudo chamado “Necessidades e exigências para

uma norma de avaliação de processo de software”, cujo resultado originou, em

janeiro de 1993, o projeto SPICE. Este projeto foi desenvolvido dentro do

subcomitê de engenharia de software, JTC/SC7, em elaboração conjunta pela

ISO e pelo IEC, que tinham como objetivo definir um framework para avaliação

de processos de engenharia de software e da organização de projeto e de

negócio. A última versão do SPICE como Relatório Técnico (TR-Technical

Report) foi aprovada em 1998, e a publicação do padrão ISO/IEC 15504, Parte

2, ocorreu em 30 de outubro de 2003.

O 15504 (ISO/IEC15504-5, 2003) possui um conjunto de documentos que

endereçam avaliação de processo, assessoria de treinamento e competência,

Page 69: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

67

determinação da capacidade e melhoria de processo. Ele organiza e classifica

as práticas de engenharia de software em duas dimensões: de processo

(através de suas categorias) versus capacidade (através de seus níveis). No

Apêndice A podem se analisar as duas dimensões, de processo e de

capacidade, a partir de uma compilação reduzida, extraída da versão

Committeed Draft (CD) de 3 de Outubro de 2003. O contexto em que o padrão

atua é no de melhoria contínua e na determinação de capacidade, avaliando e

identificando as oportunidades de melhoria, bem como os riscos no emprego

de fornecedores (Salviano, 2003). Na dimensão de processo, o 15504 abrange

as categorias de processos Primários (ou Fundamentais), Organizacionais e de

Suporte, e dentro de cada categoria, grupos específicos de atuação, como

pode ser visto na Figura 3.1.

Na dimensão de capacidade, este modelo visa também avaliar a capacidade

da organização em cada processo, permitindo assim sua melhoria. Cada um

dos processos deve ser classificado em níveis (incompleto, executado,

gerenciado, estabelecido, previsível e otimizado).

Os processos e suas categorias estão contidos em um modelo de referência.

Este modelo de referência serve de base para o processo de avaliação como

um conjunto padronizado de processos fundamentais, que orientam para uma

boa engenharia de software.

Page 70: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

68

FIGURA 3.1 - Categorias de Processos do ISO/IEC15504.

FONTE: ISO/IEC15504-5 (2003).

Processos do Ciclo de Vida PRIMÁRIOS

Processos do Ciclo de Vida de SUPORTE

AQUISIÇÃO(ACQ)

1) Preparação da aquisição 2) Seleção do fornecedor 3) Monitoração do fornecedor 4) Aceitação pelo cliente

FORNECIMENTO (SPL)

1) Proposição do fornecedor 2) Acordo do contrato 3) Liberação do software 4) Suporte à aceitação do software

ENGENHARIA (ENG)

01) Elicitação dos requisitos 02) Análise dos requisitos do sistema 03) Projeto de arquitetura do sistema 04) Análise de requisitos de software 05) Projeto de software 06) Construção do software 07) Integração do software 08) Teste do software 09) Instalação do software 10) Integração do sistema 11) Teste do sistema 12) Manutenção do sistema e do software

OPERAÇÃO (OPE) 1) Suporte ao cliente 2) Uso operacional

GERENCIAMENTO (MAN) 1) Alinhamento organizacional 2) Gerência da organização 3) Gerência de projeto 4) Gerência da qualidade 5) Gerência de risco 6) Medidas

Processos do Ciclo de Vida ORGANIZACIONAIS

MELHORIA DE PROCESSO (PIM) 1) Estabelecimento do processo 2) Avaliação do processo 3) Melhoria do processo

RECURSOS E INFRA-ESTRUTURA (RIN)

1) Gerência de recursos humanos 2) Treinamento 3) Gerência do conhecimento 4) Infra-estrutura

REUSO (REU) 1) Gerência de bens 2) Gerência do programa de reuso 3) Engenharia do domínio

CONTROLE DE CONFIGURAÇÃO (CFG) 1) Documentação 2) Gerência de configuração 3) Gerência de problemas 4) Gerência das solicitações da modificação

QUALIDADE DO PRODUTO (PRO) 1) Usabilidade 2) Avaliação de produto

GARANTIA DA QUALIDADE (QUA)

1) Garantia da qualidade 2) Verificação 3) Validação 4) Revisão conjunta 5) Auditoria

Page 71: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

69

O nível de capacidade pode ser definido como um conjunto de práticas que

trabalham de forma conjunta para prover um maior ganho na capacidade de

execução de um processo. Cada nível estipula um ganho maior de capacidade

de execução do processo, constituindo um modo racional de melhoria da

capacidade de qualquer processo definido no 15504. São ao todo seis níveis

de capacidade descritos de forma simplificada na Figura 3.2.

FIGURA 3.2 – Níveis de Capacidade da ISO/IEC 15504.

FONTE: Salviano (2003).

A dimensão de capacidade é expressa no modelo de avaliação de processo em

termos de atributos de processo, PAs (Process Atributes), que são agrupados

em níveis de capacidade. PAs são características do processo que podem ser

avaliadas em uma escala de realização, provendo uma medida para a

capacidade do processo. Elas são aplicadas em todos os processos, e cada

PA descreve uma face de toda a capacidade de gerenciamento e melhoria que

todo processo busca.

O resultado de uma avaliação é um perfil da instituição em forma de matriz,

onde se têm os processos nas linhas e os níveis de capacitação nas colunas. A

Figura 3.3 exemplifica os atributos de processo necessários para os níveis

Page 72: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

70

Incompleto, Executado e Gerenciado, de forma a poder atender as exigências

de cada capacidade.

FIGURA 3.3 - Atributos de processo para os Níveis 0, 1 e 2 do ISO/IEC15504.

FONTE: Moura et al. (2003).

A Figura 3.4 exemplifica os atributos de processo necessárias para os níveis

Estabelecido, Previsível e Otimizado, de forma a poder atender as exigências

de cada capacidade.

FIGURA 3.4 - Atributos de processo para os Níveis 3, 4 e 5 do ISO/IEC15504.

FONTE: Moura et al. (2003).

Incompleto

Executado

Gerenciado

(0) Falha em obter qualquer caracterização de processoPA: nenhum

(1) Proposta de processo alcançada, mas semplanejamento ou capacidade de rastreamentoPA1.1 Realização do processo

(2) Produto gerado dentro do tempo e doorçamento planejado, sem processo padrão

PA2.1 Gerenciamento realizadoPA2.2 Gerenciamento do produto do trabalho

Estabelecido

Previsível

Otimizado

(3) Processo é definido e segue princípios de engenharia desoftwarePA3.1 Definição do processoPA3.2 Recursos do processo

(4) Processo é controlado e medido, provendoentendimento quantitativoPA4.1 Medição do processoPA4.2 Controle do processo

(5) Processo segue os objetivos do negócio eé constantemente analisado / otimizadoPA5.1 Mudança do processoPA5.2 Melhoria contínua

Page 73: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

71

Segundo a visão da gestão da qualidade deste estudo, as atividades da

qualidade estão presentes em toda a estrutura de uma organização produtora

de software. No padrão 15504 a categoria de Gerenciamento (MAN) consiste

dos processos que contêm práticas de natureza genérica, que podem ser

usadas por gerentes de projeto ou de processos de um ciclo de vida de

software. Dentre as diversas categorias, identifica-se no grupo Gerenciamento,

o processo Gerenciamento da Qualidade (MAN.4), que tem o propósito de

monitorar a qualidade dos produtos ou serviços e garantir a satisfação do

cliente. Este processo propõe o estabelecimento de um foco para o

monitoramento da qualidade de produto e processo, tanto no projeto como na

organização. Podem-se identificar também, na categoria Suporte (SUP), o

grupo Garantia da Qualidade (QUA), que contém os processos voltados para

as atividades da gestão da qualidade. A categoria SUP consiste dos processos

que podem ser aplicados por qualquer dos outros processos, inclusive do

próprio Suporte, nos vários pontos do ciclo de vida do software. Os processos

da categoria SUP Documentação (CFG.1 do grupo de Controle da

Configuração) e todos os processos do grupo QUA, Garantia da Qualidade

(QUA.1), Verificação (QUA.2), de Validação (QUA.3), de Revisão Conjunta

(QUA.4) e de Auditoria (QUA.5), bem como os processos Usabilidade (PRO.1)

e Avaliação de Produto (PRO.2) do grupo Qualidade de Produto, no

entendimento deste estudo, fazem parte do gerenciamento da qualidade.

3.1.1 – O Padrão ISO/IEC 12207 e o 15504

O padrão internacional ou modelo de referência ISO/IEC 12207 (ISO/IEC,

2001) – Tecnologia da Informação – Processos de Ciclo de Vida de Software é

usado como referência em muitos países, inclusive no Brasil, para alcançar um

patamar competitivo de qualidade e produtividade internacional. Tem como

principal objetivo auxiliar os envolvidos na produção de software a definir seus

papéis, por meio de processos bem definidos, e assim proporcionar, às

Page 74: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

72

organizações que o utilizam, um melhor entendimento das atividades a serem

executadas nas operações que envolvem, de alguma forma, o software.

Tem como principal objetivo fornecer uma estrutura única para que o

adquirente, o fornecedor, o desenvolvedor, o mantenedor, o operador, os

gerentes e os técnicos envolvidos com o desenvolvimento de software utilizem

uma linguagem comum, que é estabelecida na forma de processos bem

definidos.

Sua estrutura foi concebida de maneira a ser flexível, modular e adaptável às

necessidades das organizações. Para isto, ele está fundamentado em dois

princípios básicos: modularidade e responsabilidade. Modularidade, no sentido

de processos com mínimo acoplamento e máxima coesão. Responsabilidade,

no sentido de estabelecer um responsável único por processo, facilitando a

aplicação do padrão em projetos onde várias pessoas podem estar legalmente

envolvidas.

Agrupa as atividades que podem ser executadas durante o ciclo de vida em

processos Primários, ou Fundamentais, de Suporte, e Organizacionais,

conforme ilustrado na Figura 3.5. Os processos Fundamentais atendem ao

contrato entre fornecedor e adquirente, à execução do desenvolvimento, à

operação e à manutenção de produtos de software durante o seu ciclo de

desenvolvimento. Os processo de Suporte auxiliam e contribuem para o

sucesso e a qualidade do projeto de software. Os processos Organizacionais

são empregados por uma organização para estabelecer e implementar uma

estrutura constituída pelos processos do ciclo de vida e pelo pessoal envolvido

no seu desenvolvimento. Cada processo é dividido em um conjunto de

atividades, e cada atividade, em um conjunto de tarefas. Os processos de

Suporte e Organizacionais devem existir independentemente da organização e

do projeto que está sendo executado.

Page 75: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

73

FIGURA 3.5 – Classificação dos Processos do ISO/IEC12207.

FONTE traduzida: SEPT (2004).

Os processos Fundamentais são instanciados de acordo com a situação.

Esses processos, atividades e tarefas podem ser adaptados de acordo com as

características de um projeto de software.

PROCESSOS PRIMÁRIOS

PROCESSOS de SUPORTE

PROCESSOS ORGANIZACIONAIS

DOCUMENTAÇÃO

GERENCIAMENTO DA CONFIGURAÇÃO

GARANTIA DA QUALIDADE

VERIFICAÇÃO

RESOLUÇÃO DE PROBLEMA

USABILIDADE

AVALIAÇÃO DE PRODUTO

VALIDAÇÃO

REVISÃO CONJUNTA

AUDITORIA

OPERAÇÃO MANUTENÇÃO

AQUISIÇÃO FORNECIMENTO

DESENVOLVIMENTO

GERENCIAMENTO DE BENS

GERENCIAMENTO DE REUSO

ENGENHARIA DE DOMÍNIO

MELHORIA RECURSOS HUMANOS

GERENCIAMENTO INFRA-ESTRUTURA

Documento 12207

Page 76: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

74

Enquanto o padrão ISO/IEC 15504 define uma estrutura para avaliação e

melhoria dos processos de engenharia de software, o 12207 preocupa-se com

os próprios processos. Ambos baseiam-se num modelo muito semelhante, de

modo que uma abordagem baseada no 12207 está alinhada ao 15504.

Segundo o 12207, os processos Fundamentais são responsáveis pela geração

dos produtos de software, constituindo o ciclo de vida de software propriamente

dito. Atendem ao início, à contratação entre o adquirente (organização que

adquire um sistema ou produto de software, podendo ser também representada

pelo comprador, cliente, proprietário ou usuário) e o fornecedor (organização

que fornece o sistema, serviço ou produto contratado). O desenvolvimento é o

processo-chave dos processos Fundamentais, incorporando as atividades que

vão desde a análise de requisitos até a implantação do software. Ao todo, este

grupo de processo é representado pelos processos de aquisição, fornecimento,

desenvolvimento, operação e manutenção.

Os processos de Suporte têm como objetivo auxiliar outros processos, visando

principalmente à qualidade e ao sucesso do projeto. É representado pelos

processos de documentação, gerenciamento da configuração, garantia da

qualidade, verificação, validação, revisão conjunta, auditoria, resolução de

problema, usabilidade e avaliação de produto.

Os processos Organizacionais têm como objetivo garantir e melhorar os

processos dentro da organização. É representado pelos processos de

gerenciamento, infra-estrutura, melhoria, recursos humanos, gerenciamento de

bens, gerenciamento do programa de reuso e de engenharia de domínio.

No 12207, pode-se entender que, dentre todos os processos, os relacionados

com as atividades da qualidade é o processo Gerenciamento da Qualidade que

é um dos processos de Gerenciamento do ciclo de vida Organizacional. Ele

tem o propósito de alcançar a satisfação do cliente através da monitoração da

qualidade dos produtos ou serviços no nível organizacional ou de projeto, para

garantir que seus requisitos sejam atendidos. Os processos Documentação,

Page 77: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

75

Garantia da Qualidade, Verificação, Validação, Revisão Conjunta e Auditoria do

ciclo de vida Apoio têm suas funções atribuídas às atividades da qualidade.

Para a maioria dos processos do 12207 atualizados no Amendment 1, existe

uma correspondência com o 15504. Na versão 2003 do 15504, se faz

referência explícita o 12207, informando que, em alguns casos, o escopo do

modelo de referência é adaptado, de modo que uma avaliação de processo

baseado em um padrão 15504, ao ser aplicada em uma avaliação baseada no

12207, obtenha os mesmos resultados. A compatibilidade entre os processos

da qualidade do 15504 e do 12207 podem ser ilustradas na Tabela 3.1.

TABELA 3.1 - Compatibilidade entre a ISO/IEC 15504 e a 12207.

Identificação Processo 15504 Processo 12207 AMD 1

QUA.1 Garantia da Qualidade Anexo F; § F.2.3

QUA.2 Verificação Anexo F; § F.2.4

QUA.3 Validação Anexo F; § F.2.5

QUA.4 Revisão Conjunta Anexo F; § F.2.6

QUA.5 Auditoria Anexo F; § F.2.7

CFG.1 Documentação Anexo F; § F.2.1

MAN.4 Gerenciamento Qualidade Anexo F; § F.3.1.4.

FONTE: ISO/IEC15504-5 (2003).

Pode-se concluir que tanto o 12207 como o 15504 incluem as atividades do

gerenciamento da qualidade nos seus processos de forma compatível, com

modelos muito semelhantes, de modo que uma abordagem baseada no 12207

está alinhada ao 15504.

Page 78: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

76

O projeto Capability Maturity Model Integration (CMMI) (CMMI, 2002) tem por

objetivo desenvolver um produto integrado de suporte ao processo e a melhoria

de produto tanto para a engenharia de sistemas Systems Engineering

Capability Model (SECM), como para a engenharia de software Capability

Maturity Model for Software (SW-CMM), como para também a integração do

desenvolvimento de produto Integrated Product Development Capability

Maturity Model (IPD-CMM).

O CMMI é patrocinado pelo Department of Defense (DoD) norte-americano e

pela National Defense Industrial Association (NDIA), com colaborações da

indústria, governo e pelo SEI norte-americano. Pode ser um modelo de

maturidade não somente para engenheiros de sistema e de software, mas

também para sistemas de desenvolvimento integrado de processo e produto,

os Integrated Product and Process Development (IPPD), engenharia de

sistemas e de software com fornecedores, os SS (Supplier Sourcing) e de

engenharia que integre IPPD e SS (Rout, 2002).

Pretende também reduzir o custo da implementação dos modelos de processo

base através de:

Eliminação de inconsistências, redução de duplicações.

Melhoria da clareza e entendimento.

Utilização de terminologia comum e estilo consistente.

Estabelecimento de regras de construção uniforme.

Manutenção de componentes comuns.

Sensibilidade às implicações dos esforços legados.

Além de integrar os diversos modelos CMMs existentes, como o SW-CMM, ele

pretende garantir compatibilidade com o ISO/IEC15504, através da sua visão

Jefferson
3.1.2 – O Modelo de Referência CMMI e o 15504
Page 79: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

77

contínua de modelo, composto por áreas de processos universais e

fundamentais.

Possui dois modos de visão:

Continuos: semelhante ao 15504, com Áreas de Processo (Process

Areas) independentes do nível de maturidade.

Staged: abordagem semelhante ao SW-CMM, com novas Áreas de

Processo e alterações nas existentes.

O modelo Continuos é composto por áreas de processos universais e

fundamentais. Outra dimensão é composta por uma métrica para a avaliação

da capacidade de cada processo em uma organização. O exemplo mais

conhecido de modelo contínuo é o 15504. Na visão Continuos, qualquer área

de processo pode ter nível de capacidade entre 0 e 5 (Incompleto, Realizado,

Gerenciado, Definido, Quantitativamente Gerenciado e Otimizado). Para isso,

utiliza-se de dois tipos de objetivos e práticas:

Objetivos Genéricos, GGs (Generic Goals) e Práticas Genéricas GPs

(Generic Practices), associadas aos níveis e dissociadas das áreas de

processo.

Objetivos Específicos, SGs (Specific Goals) e Práticas Específicas, SPs

(Specific Practices), associadas às áreas de processo e dissociadas dos

níveis.

O SW-CMM, desenvolvido pelo SEI, é o exemplo mais conhecido dos modelos

Staged. O SW-CMM define cinco níveis seqüenciais de maturidade e as áreas

de processo para os níveis 2, 3, 4 e 5. Deste modo, para uma organização

estar com o seu processo de desenvolvimento e manutenção de software no

nível 3, este processo tem que satisfazer, caso apropriado, as áreas de

processo definidas nos níveis 2 e 3.

Page 80: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

78

As áreas de processo, semelhante às categorias de processo da ISO/IEC

12207, são construídas em blocos. Cada objetivo específico possui um número

específico de práticas, que quando realizadas alcançarão um objetivo

específico:

Prática de Gerenciamento do Processo: Foco no Processo Organizacional;

Definição do Processo Organizacional; Treinamento Organizacional;

Gerenciamento Quantitativo da Qualidade e do Processo; Realização do

Processo Organizacional; Análise Causal e Resolução; Inovação Tecnológica

do Processo Organizacional; e Disponibilização do Processo de Inovação.

Prática de Gerenciamento do Projeto: Planejamento de Projeto; Monitoração e

Controle de Projeto; Gerenciamento de Acordo com Fornecedor;

Gerenciamento de Integração do Projeto; Gerenciamento de Risco; e

Gerenciamento Quantitativo de Projeto.

Prática de Engenharia: Gerenciamento de Requisitos; Desenvolvimento de

Requisitos; Soluções Técnicas; Integração do Produto; Verificação; e

Validação.

Prática de Suporte: Gerenciamento da Configuração; Garantia da Qualidade do

Produto e do Processo; Medições e Análises; Análise de Decisão e

Resoluções; e Análise Causal e Resoluções.

Como prática genérica para o nível 1 é estabelecida somente uma:

GP 1.1 Realizar práticas bases.

Como práticas genéricas para o nível 2, é proposto (Côrtes, 2001):

Page 81: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

79

GP2.1 Estabelecer uma política organizacional para o planejamento e

execução do processo.

GP2.2 Planejar o processo.

GP2.3 Prover os recursos necessários para a execução do processo.

GP2.4 Definir e atribuir responsabilidades.

GP2.5 Providenciar o treinamento necessário para as pessoas

executarem o processo.

GP2.6 Gerenciar configurações e versões de produtos de trabalho

selecionados.

GP2.7 Monitorar e controlar a execução do processo.

GP2.8 Verificar a conformidade da execução do processo e dos

produtos de trabalho a procedimentos e padrões.

GP2.9 Submeter à análise gerencial os resultados e atividades do

processo.

Como prática genérica para o nível 3 é proposto:

GP3.1 Estabelecimento de um processo definido.

GP3.2 Coleta de informações de melhoria.

Como prática genérica para o nível 4 é proposto:

GP4.1 Estabelecimento de objetivos quantitativos para o processo.

GP4.2 Realização de subprocessos de forma estabilizada.

Como prática genérica para o nível 5 é proposto:

Page 82: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

80

GP5.1 Garantia de melhoria contínua do processo.

GP5.2 Identificação da verdadeira causa de problemas.

Uma análise da representação do CMMI já foi realizada pelo Software Quality

Institute (SQI), a pedido do governo australiano, em 2001 (Rout et al., 2001),

com o intuito de avaliar sua compatibilidade com o modelo 15504

(ISO/IEC15504-2, 1998). O Departamento de Defesa australiano tinha

interesse em gerenciar a aquisição de software através de organizações

maduras em projetos (e processos) de engenharia de software. O estudo

concluiu que os elementos mais significantes do modelo CMMI tinham sido

endereçados com sucesso no padrão 15504. O exercício desse trabalho

proveu fundamentos para o desenvolvimento de um mecanismo de tradução,

para permitir que os resultados das avaliações baseadas no CMMI resultassem

num perfil de processo 15504. A Tabela 3.2 mostra, de forma simplificada,

como exemplo, os SGs e os SPs de um dos processos do CMMI, o da Garantia

da Qualidade de Processo e Produto em relação aos processos Suporte do

15504 (atualizado para a versão 2003).

Page 83: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

81

Garantia da Qualidade de Processo e Produto

Suporte

Objetivos e Práticas Específicas CMMI (SG/SP)

ISO/IEC15504

SG 1 Avaliar Processos e Produtos do trabalho Objetivamente

QUA.1 QUA.2 QUA.3 QUA.5

SP 1.1-1 Avaliar Processos Objetivamente.

QUA.1 QUA.5

SP 1.2-1 Avaliar Produtos do Trabalho e Serviços Objetivamente.

QUA.1 QUA.2 QUA.3 QUA.5

SG 2 Prover Visão Objetiva QUA.1 QUA.4 QUA.5 CFG.3

SP 2.1-1 Comunicar e Garantir a Solução de Não-conformidades.

QUA.4 QUA.5 CFG.3

FONTE adaptada de Rout et al. (2001).

3.2 - A Linguagem de Modelagem de Processo

Processo é o principal elemento de um ambiente de desenvolvimento de

software. Como a qualidade dos produtos de software está diretamente ligada

à qualidade dos processos utilizados para seu desenvolvimento, há

necessidade de se formalizar os processos pelos quais são desenvolvidos

esses produtos. A modelagem de processos constitui-se num recurso

importante para se obter tal formalização. Para tal, um modelo deve

primeiramente ser construído para especificar como a atividade de engenharia

de software será conduzida, quais os papéis e tarefas envolvidos, os recursos

consumidos, as ferramentas utilizadas, os produtos desenvolvidos, bem como

os mecanismos de comunicação entre as tarefas e os papéis. Linguagens de

Jefferson
TABELA 3.2 - O processo CMMI Garantia da Qualidade de Processo e Produto e os processos Suporte do 15504.
Page 84: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

82

Modelagens de Processos, as chamadas Process Modelling Languages

(PMLs), são usadas para expressar esses modelos.

3.2.1 - Classificação das PMLs

Existem vários tipos diferentes de PMLs, utilizadas com propósitos diversos

(Zamli e Lee, 2001). Podem ser classificadas considerando-se, por exemplo, o

suporte à execução como critério. As linguagens podem ser executáveis,

quando permitem que o modelo do processo especificado seja executado,

possibilitando a condução ativa ou até mesmo o controle de um processo de

software; ou não-executáveis, quando provê em construções que permitem

somente a especificação de um processo de software, não sua execução. A

maioria das PMLs nesta categoria são derivadas de linguagens que já estão

em uso em outras áreas da engenharia, e tipicamente provêem construções

que permitem somente a especificação de um processo de software.

Seguindo uma similaridade com o ciclo de vida do desenvolvimento de

software, uma classificação pode ser obtida pela identificação das partes do

ciclo de vida do processo que a PML suporta, tendo-se assim Linguagens de

Especificação de Processos, Linguagens de Projeto de Processos e

Linguagens de Implementação de Processos.

Uma visão mais operacional das PMLs sugere uma classificação baseada na

execução (enactement) do modelo de processo especificado em uma PML, já

que um processo de software só pode orientar, fazer cumprir e automatizar

atividades da engenharia de software através de sua execução. Assim,

segundo o suporte à execução do processo, uma PML pode ser:

Não-executável: quando suporta somente o entendimento do processo

e não sua execução. A maioria das PMLs desta categoria são derivadas

Page 85: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

83

de linguagem já usadas em outras áreas da engenharia e fornecem

construtores que possibilitam apenas a especificação do processo.

• Simulada: permite a simulação em alto nível de um modelo de

processo, que normalmente ajuda no projeto de novos processos de

software, mas não fornece uma orientação mais detalhada ou controle

do processo de software.

• Executável: permite que o modelo de processo especificado seja

executado para orientar de maneira ativa ou até mesmo controlar um

processo de software.

Como representantes desta última categoria, podem-se destacar as linguagens

E3 (Environment for Experimenting and Envolving Software Processes)

(Jaccheri et al., 1998), (Jaccheri et al., 1999) e PROMENADE (Process-

oriented Modelling and Enactment of Software Developments) (Franch e Ribó,

1999).

A PML E3 oferece um conjunto de entidades básicas (tarefas, papéis,

ferramentas e artefatos) e relacionamentos envolvidos em processos de

software. Estas entidades podem ser adequadas às necessidades particulares

do modelador por meio do uso de herança.

A PML PROMENADE, assim como a E3, tem suas raízes baseadas em

metodologias orientadas a objetos. O meta-modelo PROMENADE apresenta

elementos comuns como meta-tarefas, meta-documentos, etc., está sendo

desenvolvido com base na extensão do meta-modelo UML como classes

prédefinidas.

Page 86: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

84

As diversas abordagens de modelagem de processos apresentam diferentes

elementos de um processo. Segundo diversos autores (Acuña e Ferré, 2001)

(Fuggetta, 2000) (Conradi et al., 1994) (Feiler e Humphrey 1993) (Benali e

Derniane, 1992) (Finkelstein et al., 1994), verifica-se a existência de alguns

elementos comuns que devem ser estruturados em um modelo de processo:

• Agentes ou atores: entidades que executam um processo. Podem ser

divididos em dois grupos: a) atores humanos, que são pessoas que

desenvolvem software ou estão envolvidas no processo de software e

encontram-se, provavelmente, organizadas em equipes; b) atores

sistemas ou ferramentas de sistema, que são software de computador

ou componentes de hardware. Um ator é caracterizado pelas

propriedades dos seus papéis e de suas disponibilidades e pode

desempenhar vários papéis, que são compostos de um conjunto

consistente de atividades. Um papel pode ser arbitrado a vários atores

cooperativos.

• Papéis: descrevem um conjunto de responsabilidades de agentes ou

grupos, os direitos e as habilidades requeridas para realizar uma

atividade específica do processo de software. São uma associação

entre agentes e atividades em termos de definição do conjunto de

responsabilidades executadas pelos agentes.

• Atividade: é o estágio de um processo que produz mudanças de estado

externamente visíveis no produto de software. Uma atividade pode ter

uma entrada, uma saída e alguns resultados intermediários chamados

genericamente de produtos. Inclui e implementa procedimentos, regras,

políticas e objetivos para gerar e modificar um conjunto de artefatos.

Pode ser realizada por um agente humano ou por uma ferramenta,

dividida em outras atividades mais elementares. Pode também ser

organizada em redes com dimensão horizontal (encadeadas) e vertical

(decomposta). É associada a papéis, outras atividades e artefatos.

Jefferson
3.2.2 - Elementos da Modelagem de Processo
Page 87: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

85

• Artefato ou Produto: é o (sub)produto e a matéria-prima de um

processo. Um artefato produzido por um processo pode ser usado

depois como matéria-prima para si mesmo ou para outros processos, de

modo a produzir outros artefatos. Um artefato ou produto de software é

desenvolvido e mantido dentro de um processo. Um artefato pode ter

uma longa duração. Podem existir diferentes artefatos, à medida que o

processo de software se desenvolve. Os (sub)produtos podem ser

criados, acessados ou modificados durante a atividade do processo. Um

conjunto de artefatos de software que será entregue para um usuário é

chamado produto de software. Portanto, um relacionamento "composto

de" pode aparecer entre produtos, atividades e papéis.

Na Figura 3.6 mostram-se esses elementos e seus relacionamentos. Ainda

existem outros elementos possíveis, como eventos, projeto/organização, área

de trabalho (workspace), usuário, modelo de cooperação.

Page 88: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

86

FIGURA 3.6 - Elementos e Relacionamentos de um Modelo de Processo.

FONTE: Acuña e Ferre (2001).

3.2.3 - Arquitetura da Modelagem

Um modelo está no primeiro nível de abstração acima dos itens de interesse

para o modelador. Já um meta-modelo está no segundo nível de abstração

para um modelador, e tem os próprios construtores de modelagem como seus

itens de interesse. Portanto, um meta-modelo deve ser construído de acordo

com um conjunto de regras restrito, que na maioria dos casos é derivado de

uma versão de atributo de entidade-relacionamento ou modelagem orientada a

objetos. Existem sempre três níveis de abstração para qualquer contexto de

modelagem. Há o próprio modelo (nível M1), há instâncias do modelo (nível

M0), e há um conjunto de construtores/regras para a construção do modelo

(nível M2). Existem também os meta meta-modelos (nível M3), que são como

um terceiro nível de abstração para um modelador. Um bom exemplo de nível 3

é o MOF (Meta Object Facility), que define um meta meta-modelo (também

chamado de modelo MOF) simples e com semântica suficiente para descrever

meta-modelos em vários domínios, sendo o foco inicial meta-modelos de

análise e projetos OO. Um meta meta-modelo é na verdade uma linguagem

que cria/define um meta-modelo, uma linguagem em que um meta-modelo

pode ser expresso. A integração entre meta-modelos se dá pelas interfaces

ATIVIDADE

PRODUTOATOR

PAPEL

Composto_de

Executa Saídas Entradas

Composto_de

Composto_de

Executa

Page 89: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

87

também providas pelo MOF, sendo necessária para a integração de

ferramentas e aplicações (pelas diversas fases do ciclo de vida), utilizando uma

semântica comum. A Figura 3.7 mostra a arquitetura em 4 camadas de

modelagem definida pela OMG (Object Management Group), envolvendo os

níveis de abstração de modelagem. A OMG é uma organização internacional,

fundada em 1989, que promove a teoria e a prática da tecnologia da orientação

a objetos no desenvolvimento de software.

FIGURA 3.7 - Níveis de abstração da modelagem de processos. FONTE: SPEM (2002).

M3 MOF. Meta Object Facility

M2

M1

M0

Ex: UML, UMP, SPEM. Metamodelo de Processo . Esta camada serve como um template para o nível M1

Ex: RUP, Open. Esta camada inclui processos genéricos bem como a adequação específica destes processos em um dado projeto.

Um processo executável – isto é um processo de produção do mundo real – como ele é executado

Page 90: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

88

3.2.4 - O SPEM – Meta-modelo de Engenharia de Processo de Software

O Software Process Engineering Metamodel (SPEM) é um meta-modelo que

pode ser usado para descrever um processo concreto ou uma família de

processos de desenvolvimento de software relacionados. A execução do

processo (enactment) não está no escopo deste modelo, o que o coloca,

portanto, na classe das linguagens de modelagem de processo não-

executáveis.

A linguagem SPEM foi desenvolvida pelo Grupo de Gerenciamento de Objetos,

a OMG, para tentar suprir a necessidade de um padrão para as técnicas de

modelagem de processo surgidas nos últimos anos. Define o conjunto mínimo

de elementos de modelagem necessários para descrever qualquer processo de

desenvolvimento de software, utilizando uma abordagem orientada a objetos e

a Unified Modeling Language (UML). A UML é uma linguagem gráfica para

modelagem de sistemas discretos, de maior aplicabilidade na área de projeto

de software orientado a objetos.

Além de ser definido como um meta-modelo, o SPEM é também definido como

um perfil da UML. Um perfil contém uma ou mais extensões relacionadas da

semântica padrão da UML, para adaptá-la a um domínio ou propósito

particular. Esta extensão é feita através de mecanismos conhecidos como

estereótipos, valores atribuídos e restrições. Um estereótipo, por exemplo,

estende o vocabulário da UML, permitindo a criação de novos blocos de

construção derivados dos já existentes.

Um fator que favorece a escolha do SPEM para a definição de processos é que

ele tanto define capacidades de modelagem dedicadas ao domínio do processo

de software, quanto se beneficia da expressividade da UML. Assim,

desenvolvedores de software que estejam familiarizados com a UML podem

reutilizar seus conhecimentos de modelagem de software no domínio da

modelagem de processos de software.

Page 91: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

89

O SPEM foi construído a partir do pacote SPEM_Foundations, que é baseado

em um subconjunto da UML 1.4, e do pacote SPEM_Extensions, que adiciona

as construções e a semântica necessários para a engenharia do processo de

software. Os subpacotes do SPEM_Extensions são: Elementos Básicos,

Dependências, Estrutura de Processo, Componentes do Processo e Ciclo de

Vida do Processo.

3.2.4.1 - Elementos da Linguagem SPEM

Um processo pode ser visto como uma colaboração entre papéis para alcançar

uma certa meta ou objetivo. Para conduzir sua execução (enactement) pode-se

restringir a ordem na qual atividades devem, ou podem ser executadas. Existe

também uma necessidade de definir a dinâmica do processo no tempo, e sua

estrutura de ciclo de vida em termos de fases e iterações.

Um ProcessComponent significa um conjunto não-arbitrário de elementos de

definição de processo, modelados em SPEM.

Um LifeCycle é definido como uma seqüência de fases que alcançam uma

meta específica. Ele define o comportamento de um processo completo a ser

executado em um dado projeto.

Uma WorkDefinition é um tipo de Operation que descreve o trabalho

executado no processo. Suas subclasses são Activity, Phase, Iteration e

LifeCycle. Uma WorkDefinition pode ser composta de outras

WorkDefinitions, e estas podem estar relacionadas a WorkProducts usados

como entrada ou saída, como especificado pela classe ActivityParemeter.

O ProcessRole auxilia a definição do WorkProduct como entrada ou saída do

processo. Pode-se estabelecer uma relação de dependência entre uma

WorkDefinition e outra para indicar dependências início-início, fim-início ou

fim-fim entre elas. Por exemplo, se a atividade B tem uma dependência fim-

Page 92: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

90

início com uma atividade A, então B pode iniciar somente depois que A

terminou.

Uma Phase é uma especialização de WorkDefinition. Em uma Phase, uma

précondição define o critério de entrada e uma meta define o critério de saída

da fase. Phases têm a restrição adicional de seqüencialidade, isto é, suas

atividades são executadas de acordo com marcos distribuídos no tempo.

Uma Iteration é uma composição de WorkDefinition com um marco

secundário. Estes elementos não descrevem a execução em si, são elementos

da descrição do processo usados para ajudar a planejar e executar aquela

descrição.

Um WorkProduct ou artefato é alguma coisa produzida, consumida ou

modificada por um processo. Pode ser um pedaço de informação, um

documento, um modelo, um código fonte. Descreve uma classe e uma

categoria de produto de trabalho produzido em um processo, como Documento

Texto, Modelo UML, Executável e Biblioteca de Código. Os tipos de produto de

trabalho variam dependendo do processo que está sendo modelado.

Uma WorkDefinition tem um ProcessPerformer próprio, representando o

papel principal que a executa no processo. Um ProcessRole é responsável por

um conjunto de WorkProduct.

Uma dependência entre WorkProducts indica que a modificação feita em um

pode invalidar o outro.

O ProcessPerformer tem uma subclasse, ProcessRole que define

responsabilidades sobre WorkProducts específicos, e define os papéis que

executam e ajudam em atividades específicas.

Um ProcessPerformer é o executante de WorkDefinitions agregadas de

mais alto nível, que não podem ser associadas a ProcessRoles individuais.

Page 93: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

91

Uma Activity é a subclasse principal de WorkDefinition que descreve uma

parte do trabalho executado por um ProcessRole, suas tarefas, operações e

ações que são executadas. Uma Activity pode consistir de elementos

atômicos chamados Steps.

É possível agrupar Activity em uma Discipline. Uma Discipline é uma

especialização particular de Packages, que divide as atividades dentro de um

processo de acordo com um tema comum. A inclusão de uma Activity em uma

Discipline é representada pela dependência Categorizes, com a restrição

adicional que toda Activity é categorizada por exatamente uma Discipline. A

dependência Categorize fornece um meio de associar elementos de processo

a múltiplas categorias.

Como na UML, um Package é um recipiente que pode tanto possuir como

importar elementos de definição de processo. Package e a dependência

Categorize podem ser usados para implementar uma categorização geral de

elementos de descrição de processo. Um Package é criado para representar

esta categoria e todos os elementos ligados pela dependência Categorize ao

Pacote.

Guidances podem ser associados a todos os elementos de modelo do SPEM

a fim de fornecer informação mais detalhada aos praticantes sobre o elemento

associado. Tipos possíveis:

GuideLine, que é composto de um conjunto de regras e

recomendações sobre como um dado produto deve ser visto ou

organizado.

Technique é um algoritmo detalhado usado para criar um produto de

trabalho, e que ajuda a definir as habilidades requeridas para executar

tipos específicos de atividades.

Page 94: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

92

UMLProfile fornece mecanismos que especializam a UML para uma

plataforma ou propósito específico, como análise, projeto, e assim por

diante. Toda atividade de desenvolvimento que utiliza UML pode ser

regida por um profile, que dita as regras de consistência da UML que

precisam ser aplicadas, ou qual elemento de modelo UML é relevante

para o contexto atual e o foco da atividade.

ToolMentor, que mostra como usar uma ferramenta específica para

realizar uma atividade e está associado a uma única ferramenta.

CheckList, que representa uma lista de elementos que precisa ser

completada.

Template provê um documento de formato-padrão para um

determinado WorkProduct.

Estimate descreve o esforço associado a um elemento em particular.

3.2.4.2 - A notação SPEM

Diagramas da UML são usados para apresentar os vários aspectos de um

modelo de processo de software, como os diagramas de classe, de pacote, de

atividade, de caso de uso, de seqüência e de estados, com algumas restrições.

Os diagramas de Implementação e de Componentes não são usados porque

contêm alguns elementos semânticos da UML que foram excluídos do SPEM.

O diagrama de casos de uso, por exemplo, pode ilustrar o relacionamento entre

os envolvidos e as atividades do processo. As dependências realiza

(<<perform>>) e assiste (<<assist>>) podem ser usadas para definir as

relações entre um ator e o seu caso de uso.

Page 95: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

93

Outro diagrama usado, o de atividades, permite a apresentação da seqüência

de atividades com seus produtos de trabalho de entrada e saída, bem como os

estados do fluxo de objetos. raias podem ser utilizadas para separar as

responsabilidades dos diferentes papéis do processo.

Os elementos de definição do processo do SPEM são representados por

estereótipos. Ícones especiais foram criados para os mais freqüentemente

utilizados, como atividades, produtos de trabalho, etc. A Tabela 3.3 mostra os

principais ícones utilizados no desenvolvimento dos modelos de processo.

Page 96: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

94

TABELA 3.3 - Principais ícones e estereótipos do SPEM.

Estereótipo Comentário Notação

WorkProduct É uma descrição de um pedaço de informação ou entidade física produzida ou usada pelas atividades de um processo de engenharia de software. Exemplos: modelos, planos, código, documentos, base de dados, etc.

WorkDefinition Descreve a execução, as operações executadas e as transformações executadas nos WorkProducts pelos papéis. Tipos: Activity, Phase, Iteration e LifeCycle.

Guidance

É associado aos principais elementos do modelo, e contém descrições adicionais como técnicas, orientações, procedimentos, padrões, modelos de documentos, etc. Exemplos: Guideline, Tool, Checklist e Template.

Activity Descreve o que um ProcessRole executa. As atividades são o principal elemento do trabalho e descrevem as tarefas, as operações e ações que são executadas por um papel.

ProcessPerformer Define um executante para um conjunto de WorkDefinition em um processo. É usado para WorkDefinitions que não podem ser associadas a ProcessRoles individuais.

ProcessRole Descreve os papéis, as responsabilidades e competências de um indivíduo na execução de Activities em um processo e a responsabilidade sobre certos WorkProducts.

ProcessPackage Representação de um pacote do SPEM.

Phase

Especialização de WorkDefinition com critério de entrada definido por précondição e critério de saída definido por seu objetivo (ou marco), com restrição de seqüência.

Process

Descreve completamente um processo de engenharia de software, em termos de ProcessPerformers, ProcessRoles, WorkDefinitions, WorkProducts e Guidances associados.

Document Diferentes tipos de WorkProduct como por exemplo Documento Texto, um Modelo UML, Executável, Biblioteca de Código, etc.

UML Model Um modelo representado em UML.

FONTE: SPEM (2002).

Page 97: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

95

3.3 - O Ambiente Centrado em Processo

Muitas das pesquisas na área de processo de software concluíram que

desenvolver software não é apenas uma questão de criar linguagens de

programação e ferramentas efetivas, mas é um esforço coletivo e criativo.

Assim, a qualidade do produto de software depende fortemente de pessoas, da

organização e de procedimentos usados para criá-lo e entregá-lo. Esta visão

tem sua origem em trabalhos de pesquisa realizados nas décadas de 60 e 70,

que tinham o foco nas técnicas de programação estruturada, nos métodos de

projeto, como a decomposição funcional e o refinamento top-down, bem como

na definição de um modelo de ciclo de vida para o produto de software.

De maneira geral, um ciclo de vida do software define uma estrutura e uma

maneira de acordo com os quais o processo de software deve ser realizado. No

entanto, não prescreve uma direção precisa de ações a seguir, a forma de uma

organização; quais ferramentas e procedimentos operacionais adotar, quais as

políticas de desenvolvimento e restrições aplicáveis ao projeto (Fuggeta, 2000).

Assim, não é suficiente para conduzir e controlar um projeto de software, ainda

que seja certamente um ponto de partida importante para definir como o

software deve ser desenvolvido.

Deste modo, a idéia de processo de software veio ampliar a noção de ciclo de

vida (Fuggeta, 2000), fornecendo um conceito mais abrangente e

compreensível para estruturar e organizar os diferentes fatores e questões

relacionadas às atividades de desenvolvimento de software.

A visão do desenvolvimento de software como um processo ajuda a identificar

suas dimensões e problemas que precisam ser resolvidos para que práticas

efetivas sejam estabelecidas em uma organização que desenvolve software.

Estas organizações diferem em sua cultura, habilidade das pessoas, produtos

entregue, estratégias comerciais e de desenvolvimento (Osterweil, 1987)

(Cugola e Ghezzi, 1998). Mesmo dentro de uma organização, projetos

Page 98: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

96

diferentes apresentam variações de abordagens para o ciclo de vida e o ciclo

de desenvolvimento. Como conseqüência, não existe um único e acabado

processo de desenvolvimento de software. O processo deve ser definido com

base no problema a ser solucionado, adaptado para um projeto específico e

levando em consideração as particularidades da organização e do produto que

está sendo desenvolvido. Além disto, os processos de software podem

apresentar comportamentos não desejados ou inesperados. Os produtos

entregues podem não possuir a qualidade desejada, em termos de

confiabilidade, funcionalidade ou desempenho. Isto motivou uma série de

projetos voltados para a criação de modelos de qualidade e métodos de

melhoria de processo de software.

Um modelo de processo (Jaccheri et al., 1998) é um veículo para melhor

entendimento e comunicação do processo e pode ainda ser usado para

suportar as atividades de análise, simulação e execução do processo.

O desenvolvimento de modelos de processo é semelhante ao de software.

Requer características específicas, passa por fases diferentes e requer

ferramentas específicas para ser suportado. Assim também os ambientes que

suportam o desenvolvimento de software deveriam ser adequados ao processo

de desenvolvimento específico. Para satisfazer estes objetivos, Osterweil

(Osterweil, 1987) concluiu que seriam necessárias linguagens para descrição

dos processos de desenvolvimento de software. Os modelos resultantes

deveriam ser verificáveis e executáveis. Isto requeria novos ambientes de

desenvolvimento de software capazes de suportar o desenvolvimento,

documentação, análise, execução e evolução de modelos de processos

(Cuggola, 1998). Este ponto de vista estimulou uma área de pesquisa ativa,

voltada para o desenvolvimento de Ambientes de Engenharia de Software

Centrados no Processo (PSEEs, Process-centered Software Engineering

Environments) (Cugola e Ghezzi, 1998).

Page 99: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

97

Os PSEEs são considerados como uma nova geração de ambientes de

desenvolvimento de software que podem ser adequados a cada projeto de

software específico, suprindo-os com o melhor suporte automatizado possível.

Eles suportam o processo de engenharia usado para conceber, projetar,

desenvolver e manter um produto de software através de uma representação

explícita do processo, ou modelo do processo. Tal modelo pode ser descrito

por meio de uma linguagem de modelagem de processo (PML, Process

Modeling Language) conveniente.

Uma máquina de processo, que é parte do PSEE, é utilizada para executar

(enact) o modelo de processo. Os PSEEs incluem ainda facilidades para editar

e analisar modelos de processos. Através da execução do modelo de

processo, um PSEE pode fornecer uma variedade de serviços, tais como

assistência para desenvolvedores de software, automação de tarefas rotineiras,

chamada e controle de ferramentas de desenvolvimento de software, e

aplicação de regras e práticas obrigatórias.

Dentre os diversos PSEEs existentes, podemos citar o SPADE-1 (Bandinelli et

al., 1996), Oz (Ben-Shaul e Kaiser, 1995) e o PROMENADE (Franch e Ribó,

1999).

3.3.1 - O e-WebProject - Ambiente Integrado para Gestão de Projetos de

Software

O Ambiente Integrado e-WebProject (Sant’Anna, 2000), atualmente em

desenvolvimento, serve como estudo de caso deste trabalho e pode ser

classificado como um ambiente centrado em processo (PSEE), utilizando

algumas das suas principais características (Abdala et al., 2003): consiste de

um conjunto de ferramentas para apoiar as atividades de desenvolvimento e

gestão do processo de construção de software; é organizado em áreas de

negócio, de maneira a proporcionar apoio eficiente à gerência de projetos; tem

Page 100: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

98

como características o uso do trabalho cooperativo centrado no processo, o

conceito de ambiente ativo ou capacidade de forçar o fluxo de trabalho

(workflow) e de agentes autônomos, elementos que executam ações efetivas

para o desenvolvimento, gerenciamento e controle dos produtos de software,

de forma independente da intervenção humana.

A integração das equipes de trabalho, a utilização de tecnologia para controle

dos processos envolvidos e a disponibilização de um conjunto de serviços

oferecidos pela WEB/Internet para os vários participantes do processo

(desenvolvedores, gerentes, clientes) são alguns dos benefícios propostos por

este Ambiente Integrado, para a obtenção de ganhos de produtividade. No e-

WebProject, são definidas categorias de gerenciamento estabelecidas pelo

Project Management Institute (PMI) (PMI, 1996) e acrescentadas outras para

melhor se adequar às necessidades específicas de projetos de software.

Dentre estas, a Gerência da Qualidade (GQ) compreende parte dos processos

de suporte ao desenvolvimento de software. Cabe ao Ambiente prover o apoio

necessário à implantação e à execução destes processos, de maneira que

cada gerência desempenhe com sucesso suas atividades.

3.3.2 - Arquitetura Lógica do Ambiente

A arquitetura lógica permite, entre outras funções, que as atividades das

gerências propostas pelo Ambiente possam ser executadas, acompanhadas e

melhoradas, disponibilizando para isto todos os recursos e os meios

necessários à gestão de seus processos. Para atender estas características, a

arquitetura lógica do Ambiente foi definida em três camadas:

Camada de Armazenamento: define os elementos responsáveis pelo

armazenamento e acesso às informações do projeto.

Camada de Serviços: abrange os elementos que permitem que os

participantes trabalhem de forma cooperativa, destacando-se os

Page 101: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

99

serviços de coordenação de processo, de comunicação, agenda,

segurança, dicionário, documentação, armazenamento, entre outras.

Camada de Interação com o usuário: possui elementos que permitem

que os aplicativos de serviços sejam executados, a partir de uma rede

de computadores, disponibilizando com isso o trabalho remoto e

cooperativo. A utilização de navegadores (browsers) com capacidade de

operação em modo gráfico e através de ambientes de janelas, possibilita

interação fácil e eficaz.

A arquitetura da camada lógica, ou conceitual do Ambiente, é apresentada na

Figura 3.8.

3.3.3 - A arquitetura física

O Ambiente leva dois aspectos em consideração à arquitetura física: os

requisitos propostos e a arquitetura conceitual. A abordagem utilizada segue o

modelo n-camadas para aplicações Web (Conallen, 2000). A camada 1

representa a interface com o usuário, a 3 a base de dados e a 2 as aplicações

desenvolvidas, como serviços ao cliente. A Figura 3.9 apresenta os

componentes da arquitetura física.

Page 102: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

100

FIGURA 3.8 - A camada conceitual do Ambiente e-WebProject.

FONTE: Sant’Anna (2000).

FIGURA 3.9.- Arquitetura 3 camadas para aplicações Web.

FONTE: Sant’Anna (2000).

Page 103: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

101

3.3.4 - Ciclo de Vida do Processo no Ambiente

O Ambiente Integrado e-WebProject propõe um modelo de processo de

desenvolvimento, levando em consideração principalmente o ciclo de vida do

produto e os envolvidos no processo. O Ambiente apresenta características

evolutivas e permite a configuração baseada nas necessidades organizacionais

e no elemento essencial do Ambiente, o processo (Sant’Anna, 2000). Para que

possa ser apoiado pelo Ambiente, um processo necessita ser detalhado e seu

modelo aprovado pela organização, transformando-se em um processo padrão

e efetivo. Este novo processo só se torna padrão quando for instanciado,

permitindo que este seja executado por pessoas e agentes autônomos

especificamente envolvidos na tarefa.

Dentro desta visão, o ciclo de vida proposto para um processo consiste do

planejamento e definição de um modelo, sua execução e acompanhamento e,

finalmente, avaliação e propostas de melhoria. A Figura 3.10 mostra como

exemplo o processo Auditar Produtos do Trabalho, adaptada da categoria de

processo do ISO/IEC 15504 (ISO/IEC15504-2,1998), que tem como objetivo

específico garantir que os produtos do trabalho e atividades dentro do

Ambiente estejam em conformidade com todos os padrões, procedimentos e

requisitos aplicáveis (Lahoz et al., 2002).

Page 104: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

102

FIGURA 3.10 - Ciclo de vida do processo Auditar Produto.

FONTE: Lahoz et al. (2002).

3.3.4.1 - A Fase de Planejamento e Definição do Processo

Uma tarefa essencial para a automação de um processo é primeiramente

realizar seu planejamento. Para tal, é necessário que o modelo seja bem

entendido e aceito por toda a organização que dele se utilizará. A fase de

planejamento deve, portanto, permitir a especificação dos elementos

essenciais para execução do processo, tais como: os recursos necessários, as

entradas e saídas, quais são as tarefas do processo e quem as executa. Para

este trabalho, o planejamento do processo deve passar pela preparação do

modelo de processo, sua aprovação pela organização e o encerramento do

planejamento, conforme a Figura 3.11.

A preparação do modelo de processo consiste inicialmente da descrição e

detalhamento das atividades que compõem o processo no cotidiano real da

organização. Estas atividades são descritas em termos de tarefas executadas e

seus participantes, a alocação dos indivíduos e recursos materiais necessários

às tarefas, bem como a especificação dos requisitos (de entrada e/ou saída) de

cada processo.

Page 105: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

103

FIGURA 3.11 - A fase de planejamento.

FONTE: Sant’Anna (2000).

A preparação do modelo do processo deve abranger as seguintes atividades:

Descrição da função e dos objetivos básicos do processo a ser

modelado.

Descrição dos requisitos que o processo deve atender.

Identificação das entradas e saídas necessárias à execução do

processo.

Definição dos critérios para iniciar e fechar uma instância de processo.

Descrição do processo em atividades executáveis e factíveis,

descrevendo os procedimento para execução destas tarefas.

Definição da ordem de execução e a dependência entre as tarefas.

Definição dos papéis dos executores de cada tarefa.

Definição dos recursos necessários.

Page 106: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

104

Definição das responsabilidades associando papéis às pessoas e aos

agentes.

Definição das métricas que serão utilizadas para monitorar o processo.

Definição dos pontos de controle para melhor acompanhar a execução

do processo.

3.3.4.2 - A Fase de Execução e Acompanhamento do Processo

O processo, antes de tornar-se operacional no Ambiente, passa por uma fase

de preparação que consiste de uma série de tarefas relacionadas à

configuração do Ambiente e ajuste para que este possa suportar o processo de

modo planejado. Uma vez concretizada esta fase, o processo entra em um

estado que é chamado de estado operacional (em operação). Poderá então,

quando neste estado, ser utilizado pelos participantes do projeto.

Todo processo possui neste estado pelo menos uma atividade que o inicia. A

execução desta atividade possibilita ao Ambiente instanciar uma ocorrência do

processo, devendo tomar as medidas necessárias para que o processo seja

concluído conforme o especificado. Este conjunto de atividades a serem

executadas segue o modelo do processo proposto no planejamento. A fase de

operação permite, pois, que processos sejam instanciados e concluídos.

A execução de um processo implica também na realização das seguintes

atividades:

Informação aos participantes de suas novas atividades a serem

executadas e os prazos a serem cumpridos.

Supervisão das atividades, verificando se estão sendo cumpridas no

prazo. Em caso negativo, cabe ao Ambiente forçar o andamento das

atividades.

Page 107: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

105

Informação aos gerentes e os participantes da execução do processo

informando do andamento da execução do processo.

Coleta de métricas de processo estabelecidas no planejamento para

posterior avaliação.

Realização de ação corretiva para ajuste de pequenas inadequações,

em função dos dados coletados através das métricas de processo.

Durante esta fase operacional, ou seja, enquanto o Ambiente estiver apoiando

sua execução, deve-se realizar uma coleta de dados a fim de medir sua

eficiência, que após análise, servirá para avaliar a conformidade deste novo

processo-padrão no cumprimento dos objetivos especificados. Isto permite

tanto implantar este novo modelo do processo, como também, caso já exista,

melhorá-lo.

Quando for necessário parar de prover o serviço, o processo pode ser

desativado e entra em um estado que é chamado de fechamento. O

fechamento é a fase onde o Ambiente cessa de apoiar o processo. Para parar

de prover este suporte, o Ambiente deve ter a preocupação de informar aos

gerentes e interessados que o Ambiente deixará de prover o apoio ao

determinado processo especificado, bem como deverá registrar em arquivos

históricos toda a informação referente ao trato do apoio ao processo

especificado. O término do suporte ao processo, normalmente, ocorre por

motivo de avaliação e melhoria do modelo-padrão definido para o processo.

A Figura 3.12 mostra os estados possíveis para um processo, quando em

execução.

Page 108: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

106

FIGURA 3.12 – Os estados de um processo quando na etapa de execução.

FONTE: Sant’Anna (2000).

3.3.4.3 - A Fase de Avaliação e Proposta de Melhoria do Processo

Na fase de avaliação e melhoria do processo são compreendidas as atividades

relacionadas com a análise das medidas coletadas durante a execução do

processo, a fim de se identificar problemas na modelagem referente às

definições, sobrecargas e necessidade das atividades do processo. A avaliação

deve ser conduzida através de uma investigação que procure identificar

características importantes da construção e uso do processo, como por

exemplo:

Problemas na modelagem referente ao desdobramento do processo em

atividades.

Sobrecarga de atividade, ou seja, uma atividade muito executada

causando falta de recurso.

Atividades não-necessárias.

Pontos de estrangulamento devido a restrições de entradas ou saídas

do processo.

Page 109: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

107

Após análise destas informações, medidas corretivas devem ser tomadas para

que o processo obtenha melhorias e possa ser oferecido ao Ambiente de

maneira a atender suas necessidades. A partir daí, um novo modelo deve ser

elaborado e reconduzido para avaliação conforme descrito na fase de

planejamento.

3.3.5 - O Serviço de Coordenação de Processos de Software

Um processo de software deve ser formalizado e apoiado por um Ambiente de

Engenharia de Software através de um mecanismo coordenador de processos

(process engine) (Sant’Anna, 2000) (Sant’Anna et al., 2002). Este mecanismo

deve utilizar o conceito de fluxo de trabalho (workflow), empregar tecnologia

que possibilite automatizar processos, racionalizar suas potencialidades por

meio dos componentes, organização e tecnologia (Cruz, 1998).

A execução de processos no e-WebProject se dá por meio de um gerenciador

de fluxo de trabalho (Cereja Jr., 2003), onde cada tarefa do sistema é orientada

por regras e agentes (humanos ou não) para o processamento de informações.

O sistema coordenador de processos tem como papel controlar a instância dos

processos apoiados pelo Ambiente, guiando as pessoas envolvidas nos

processos de execução de suas tarefas. Dentre as principais características do

mecanismo coordenador de processos do Ambiente podemos destacar:

O usuário (agente) pode guiar o processo, e a máquina de processo

deve operar em resposta as suas determinações.

As execuções das tarefas podem ocorrer sem intervenção dos usuários.

A máquina tem um papel pró-ativo lembrando aos envolvidos sobre

tarefas que devem ser completadas (dentre outras medidas que podem

ser tomadas).

Page 110: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

108

A máquina pode guiar as pessoas na execução das tarefas: ela controla

os artefatos e os recursos produzidos e utilizados pelos processos.

No e-WebProject um repositório de artefatos é responsável pelo

armazenamento e controle dos artefatos produzidos pelos processos. Este

repositório serve como uma base de meta-informações de processos,

caracterizando seus componentes e regras para execução definida em um

modelo de processo. Um conjunto de agentes autônomos (agentes genéricos e

específicos) é capaz de monitorar instâncias de processos, notificar pessoas

envolvidas, coordenar outros agentes, transportar informações, monitorar

tarefas, dentre outros aspectos definidos para o serviço ou processo específico.

Aliado, a tudo isto, uma Interface Gráfica de fácil interação homem-máquina

facilitará o uso e a implantação dos processos no Ambiente.

3.3.6 - As Gerências no e-WebProject

Dentro do Ambiente e-WebProject foram definidas as nove bases de categorias

de gerenciamento estabelecidas pelo PMI (PMI, 1996), porém ajustando

algumas e acrescentando outras para melhor se adequar as necessidades

especificas de projetos de software. Ao todo, foram onze áreas-chaves

definidas: a Gerência Geral de Projeto, a Gerência do Tempo, a Gerência do

Custo, a Gerência da Qualidade, a Gerência dos Recursos Humanos, a

Gerência da Comunicação, a Gerência de Risco, a Gerência de Fornecedores

e Sub-contratos, a Gerência de Requisitos, a Gerência das Modificações e das

Configurações e a Gerência da Reutilização. As gerências têm à sua

disposição uma camada de serviços que suporta o trabalho cooperativo, como

visto na arquitetura lógica do Ambiente.

Page 111: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

109

3.3.6.1 - A Gerência da Qualidade no e-WebProject

A Gerência da Qualidade no e-WebProject é responsável pelos processos que

apoiem as atividades de projeto e de desenvolvimento de software, no sentido

de manipular todos os aspectos relacionados com a qualidade de produto e

processo. Consiste basicamente das atividades de garantia, planejamento e

controle da qualidade de software dos projetos que utilizarem o Ambiente.

Deve ser possível à Gerência da Qualidade o cadastramento, a manutenção e

a visualização de informações sobre (Sant’Anna, 2000):

O plano da qualidade adotada no projeto.

Os padrões (notação, documentação, código, telas, relatórios).

Os produtos encaminhados aceitos e controlados.

A situação dos produtos.

As revisões e auditorias dos produtos.

A conformidade com os padrões adotados.

O plano de melhoria.

Os históricos e as estatísticas.

Segundo a visão adotada para a Gerência da Qualidade no Ambiente, ela deve

prover verificações independentes no processo de desenvolvimento de

software. Os produtos gerados pelo processo de desenvolvimento são entrada

para as atividades da qualidade, e devem ser verificados para garantir que eles

sejam consistentes com os padrões e objetivos organizacionais. A equipe da

qualidade deve ter certa independência da equipe de desenvolvimento e da

equipe de gerenciamento de projeto, tendo uma visão imparcial e objetiva do

andamento do projeto. Ela deve relatar problemas, apontar dificuldades e

Page 112: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

110

sugerir soluções para apreciação da alta gerência da organização. A Gerência

da Qualidade, a princípio, não deve estar compromissada com

responsabilidades de orçamento e cronograma do projeto.

Os dados coletados durante o desenvolvimento de um projeto, sejam estes

dados previstos ou não, devem ser registrados de forma a se poder

acompanhar a situação dos produtos, obtendo-se estatísticas referentes à

quantidade de produtos encaminhados, á quantidade de produtos aceitos

(índice de rejeição/aceitação), à quantidade de revisões/auditorias realizadas,

aos históricos referentes a informações temporais e qualitativas extraídas de

planos e procedimentos relativos aos produtos e aos padrões e sua situação

em um dado momento do projeto. Estes dados deverão servir para apresentar

a real evolução do desenvolvimento dos trabalhos, obtendo-se prognósticos

mais exatos para a definição das futuras ações a serem tomadas.

No que diz respeito aos processos da gestão da qualidade, é preciso detalhar

os fluxos de atividades, as pessoas envolvidas e os papéis que elas

desempenham naquele processo, os recursos e serviços necessários para sua

execução, bem como os produtos que serão controlados e gerados pelo

processo, isto tudo mediante o prévio estabelecimento de uma estrutura

organizacional maior que dê sustentação aos modelos propostos e sua gestão.

É necessário também identificar e atualizar as normas e padrões de processos

que estão voltados para a atividade da qualidade, para futura análise e

planejamento de implantação de novos processos, que atendam aos requisitos

da gestão da qualidade do Ambiente de forma íntegra e dos projetos que dele

se utilizarem.

Page 113: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

111

Page 114: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

112

Page 115: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

113

CAPÍTULO 4

OS MODELOS DE PROCESSO DA QUALIDADE

Este capítulo apresenta a descrição e modelagem dos processos da qualidade

em um Ambiente Integrado para desenvolvimento e gestão de projetos de

software. Como apresentado no capítulo 2, o escopo da disciplina Qualidade e

de seus processos é amplo, bem como sua atuação no ciclo de vida de

desenvolvimento do software. Segundo o Swebok (Swebok, 2001), os maiores

processos discutidos na chamada área de conhecimento - KA (Knowledge

Area) da qualidade de software envolvem as atividades de Garantia da

Qualidade de Software – SQA (Software Quality Assurance) e de Verificação e

Validação (V&V, Verification & Validation). Essas atividades, além de afetarem

diretamente a qualidade final dos produtos de software, podem também ser um

auxílio fundamental na análise dos processos de desenvolvimento do software

e sua funcionalidade em um Ambiente Integrado. O planejamento cuidadoso

dessas atividades pode permitir efetivamente o alcance dos objetivos propostos

para o projeto, bem como o atendimento dos atributos da qualidade requeridos

para um software. Para o atendimento dos requisitos de qualidade do produto

final e dos produtos intermediários, é necessário também adotar a utilização de

um processo de Medição. Se as medições forem projetadas apropriadamente,

seus resultados podem aprimorar a qualidade de software (além de outros

aspectos dos processos de engenharia de software) de diversas formas:

podem auxiliar o gerenciamento do projeto na tomada de decisões; pode ajudar

a encontrar áreas problemáticas e gargalos durante o desenvolvimento dos

produtos de software; pode também auxiliar os desenvolvedores na avaliação

de seus produtos para a qualidade, bem como, em longo prazo, avaliar os

próprios processos da qualidade.

Sem a definição destas atividades da qualidade em um Ambiente Integrado, os

produtos e os processos de desenvolvimento de software podem ficar

Page 116: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

114

extremamente prejudicados, e até mesmo comprometer o andamento de um

projeto. A definição e a modelagem dos processos da Qualidade, portanto, é o

foco principal da abordagem desta dissertação, cujo resultado deve ser

aplicado em ambientes de engenharia de software centrados em processo.

Segundo essa abordagem, um conjunto mínimo de processos da Qualidade

deve ser definido, utilizando para isto padrões de processo. Pretende-se

apresentar as atividades e práticas básicas que, se realizadas pelas

organizações que desenvolvem software, resultem no cumprimento dos

propósitos da qualidade definidos nessa abordagem e, conseqüentemente, em

melhores níveis de qualidade de produto e de processo destas organizações.

Para que um processo qualquer da qualidade seja efetivo, ele tem que ser

ajustado para reagir proporcionalmente ao esforço, às pessoas envolvidas, ao

escopo do grupo e às características do ciclo de vida do software adotado.

Estes parâmetros devem ser fornecidos pelo Ambiente Integrado quando da

instanciação de um determinado projeto. A idéia é fornecer um conjunto

mínimo de processos, chamados processos fundamentais da Qualidade, que

sejam suficientes para que as atividades básicas da qualidade atendam às

necessidades de uma organização fabricante de software e possam inclusive

planejar melhorias dos processos estabelecidos de modo a alcançar níveis

maiores de maturidade e capacitação na confecção de seus produtos.

Esta abordagem explora, ainda, as características de um Ambiente Integrado

que vêm atender às necessidades dos processos da Qualidade, quais sejam: a

capacidade de forçar o fluxo de trabalho e a disponibilidade de um conjunto de

ferramentas e serviços para, entre outras coisas, facilitar a comunicação entre

os envolvidos no processo.

Como visto no capítulo 3, o padrão ISO/IEC 15504 apresenta um modelo de

processo de referência, utilizado pelo 12207 e com o qual o CMMI tem

compatibilidade. São padrões internacionais de referência, que além da

possibilidade de se obter uma certificação de nível internacional, eles

Page 117: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

115

representam um consenso da comunidade global a respeito de práticas

maduras de engenharia de software obtidas através de um processo rigoroso e

uniforme de escolha. Padrões internacionais representam também um conjunto

de convenções, requisitos técnicos ou práticas mais estáveis, facilitando o

desenvolvimento de processos relativamente difíceis e caros quando

implantados a partir de iniciativas isoladas e, principalmente, quando se trata

de tópicos especialmente controversos (Coallier, 2003).

Nestes padrões, os modelos de processo apresentam as atividades e práticas

básicas que a qualidade deve realizar, mas apenas em linhas gerais, ou seja,

O QUE o processo deve fazer, e não detalhes de COMO fazer para que o

processo seja implantado. Um processo precisa então ser definido, as práticas

básicas detalhadas, descritas as maneiras como estas devem ser

implementadas e os produtos que devem ser gerados. A modelagem de

processo é a técnica utilizada para representar os vários aspectos do processo

em questão, como visto no Capítulo 3. A modelagem em notação gráfica auxilia

no entendimento do processo, facilita sua documentação e, numa segunda

etapa, a tradução dos modelos para uma notação que possa ser executada

pela máquina de processo de um Ambiente Integrado. Ainda, com o

entendimento obtido, puderam ser identificados os vários níveis de automação

e serviços necessários que um Ambiente Integrado deve suprir para o apoio à

Qualidade.

Em resumo, o objetivo desse capítulo é apresentar como foi feita a definição

dos processos da Qualidade para um Ambiente Integrado, seus modelos

obtidos como resultado, tendo como referência todos os processos do Grupo

Garantia da Qualidade (QUA.1, Garantia da Qualidade, QUA.2, Verificação,

QUA.3 Validação, QUA.4, Revisão Conjunta e QUA.5, Auditoria), o processo

CFG.1, Documentação (do Grupo Controle de Configuração), e os processos

do Grupo Qualidade de Produto (PRO.1, Usabilidade e PRO.2, Avaliação de

Produto), todos da Categoria SUP, Suporte como apresentados na parte 5 do

ISO/IEC 15504. Também foi usado como referência o processo relacionado

Page 118: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

116

com as atividades da Gerência da Qualidade (processo MAN.4, Gerenciamento

da Qualidade do Grupo Gerenciamento) da Categoria de processo ORG,

Organizacional, bem como em abordagens práticas encontradas na literatura,

referenciadas na bibliografia e apresentadas no capítulo 2. A definição e

modelagem dos processos da Qualidade são feitas abrangendo os requisitos

definidos por um Ambiente Integrado e divididos em quatro atividades

fundamentais: o Gerenciamento da Qualidade, a Garantia da Qualidade, o

Controle da Qualidade e a Qualidade de Produto. O Gerenciamento,

abrangendo as atividades da qualidade com o objetivo de cumprimento dos

seus requisitos, tanto no aspecto organizacional como de projeto. A Garantia

estabelece a garantia de que os produtos e processos estão em conformidade

com planos e estratégias pré-definidas. O Controle engloba os processos

básicos de suporte à verificação da qualidade. E a Garantia de Produto inclui

as atividades de garantia dos interesses e necessidades dos envolvidos com o

produto, no intuito de reduzir mudanças e rejeições, melhorando a

produtividade e qualidade desses produtos.

Ressalta-se ainda que os aspectos relacionados às atividades da qualidade

envolvidas diretamente no desenvolvimento de produtos (atividades ENG,

Grupo Engenharia), bem como às atividades relacionadas ao controle,

gerenciamento e manipulação de produtos (atividades CFG, Grupo

Gerenciamento da Configuração), não estão descritas nestes processos.

Acredita-se que estas atividades são de responsabilidade de gerências

específicas, como no do Ambiente Integrado e-WebProject, abordado no

capítulo 5, e não fazem parte do universo direto deste trabalho.

4.1 – O Escopo dos Processos da Qualidade

O aspecto de mais alto nível da qualidade no Ambiente Integrado é que será

chamado de Processo da Qualidade. Este processo, que compreende as

atividades da Qualidade no Ambiente Integrado, pode ser descrito em termos

Page 119: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

117

de atividades relacionadas a papéis que utilizam/criam produtos. O Processo

da Qualidade foi dividido em quatro pacotes principais: Pacote Gerenciamento

da Qualidade, Pacote Garantia da Qualidade, Pacote Controle da Qualidade e

Pacote Qualidade de Produto. Esses processos podem ser representados

graficamente através da notação SPEM, conforme a Figura 4.1. Esta

subdivisão permite uma visão das atividades da qualidade em suas várias

dimensões, qual seja, organizacional, de projeto e de execução. A

nomenclatura adotada foi definida de forma a atender a estratégia da qualidade

proposta no trabalho sem pretender, entretanto, restringir os termos adotados,

muitas vezes, de forma diferente em outras abordagens relacionadas à

qualidade de software.

Gerenciamentoda

Qualidade

Garantiada

Qualidade

Controleda

Qualidade

Processo da Qualidade

Qualidadede

Produto

FIGURA 4.1 - Os processos da Qualidade.

Segundo Unhelkar (Unhelkar, 2002), o processo pode ser visto sob três

aspectos. Para se saber O QUE deve ser feito no processo de

desenvolvimento de um software devem-se definir os produtos (artefatos) a

serem desenvolvidos e o ferramental (guias, templates, ferramentas

automatizadas) utilizado no seu desenvolvimento, caracterizando a visão

Page 120: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

118

tecnológica do processo. Também é importante saber COMO um processo em

particular é conduzido. Isto compreende uma seqüência de passos bem

definidos em uma ordem específica, caracterizando a visão metodológica do

processo. E, por fim, definir QUEM, ou seja, quais as pessoas que possuem

responsabilidades nas ações do processo e seguem a metodologia prescrita,

caracterizando a visão sociológica do processo.

No transcorrer deste capítulo é descrito O QUE, o COMO e QUEM envolvidos

na definição e modelagem de cada processo da Qualidade e em cada uma de

suas dimensões.

Para entender o contexto em que os processos da Qualidade estão inseridos

no processo de desenvolvimento do software, adaptou-se o diagrama de Meta-

modelo do Processo de Qualidade de Software de Unhelkar (Unhelkar, 2002),

Figura 4.2, descritos de modo simplificado, a visão de como os elementos do

processo são conectados e relacionados entre si. Usando a notação de

diagrama de classes da UML, podem-se identificar os Componentes do

Processo, que são feitos de Processos (Gerenciamento, Garantia, Controle da

Qualidade e Qualidade de Produto), Produtos e Papéis. Processos são

associados a Atividades. O Ciclo de Vida, cascata, espiral etc., provê um

recurso filosófico para a construção do Processo de Engenharia de Software

(PES), que é baseado em um Ciclo de Vida para criar/instanciar seus

Componentes do Processo. O PES também pode ser feito de Interações que

possuem incrementos.

Page 121: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

119

Processos da Gerência da

Qualidade - GQ

Garantia Planejamento

Controle

Produtos do

Trabalho Papéis

Atividades

Processos deEngenharia de

Software

Interações (1, 2, 3,…)

Incrementos (1º, 2º, 3º,..)

Ciclo de Vida(cascata,

espiral, etc)

<<baseado em>> <<instanciados>>

FIGURA 4.2 – Meta-modelo do Processo de Qualidade de Software.

FONTE: Unhelkar (2002).

4.2 – A Estratégia para a Definição e Modelagem dos Processos da

Qualidade

O processo da Qualidade engloba o gerenciamento, a garantia, o controle da

qualidade e a qualidade de produto, condensando os aspectos tecnológicos,

metodológicos e sociais de uma organização fabricante de software, sob a

ótica da qualidade. Algumas de suas responsabilidades estão ligadas às

questões relacionadas à qualidade na organização como um todo, mas

também estão fortemente envolvidas com as atividades de planejamento de

projetos, na identificação de padrões (por exemplo, os padrões e modelos dos

diagramas a serem usados na representação da arquitetura do projeto), no

levantando das expectativas dos usuários (clientes, por exemplo), e o mais

importante, na atribuição das responsabilidades de trabalho das pessoas

envolvidas com a qualidade, principalmente no que tange garantir que os

padrões e procedimentos adotados pela qualidade na organização estão sendo

seguidos.

Page 122: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

120

4.2.1 – Papéis e Responsabilidades nos Processos da Qualidade

Dentre os principais envolvidos e suas responsabilidade nos processos da

Qualidade podemos destacar:

O Gerente da Qualidade, que responde pela organização e

gerenciamento das funções da qualidade dentro do Ambiente Integrado,

sendo que suas atribuições estão fortemente dependentes do tipo de

projeto e da estrutura organizacional da empresa que utiliza este

Ambiente. Ele formaliza as expectativas da atuação da equipe e da

abordagem utilizada para a qualidade em projetos, suas atividades e

tarefas, a definição dos produtos a serem entregues ao final do

desenvolvimento de cada fase do projeto, os mecanismos de

verificação, validação e de retorno destas expectativas.

O Gerente da Configuração, que é responsável pelo controle da

configuração e das modificações de produto, e que é responsável

também pelo repositório de artefatos e no auxílio à definição de quais

são os produtos a serem entregues ao final de cada fase do

desenvolvimento do projeto.

O Gerente de Projeto, que é o responsável geral pelo projeto e ao qual o

Gerente da Qualidade se reporta durante o andamento do projeto, com

relação a execução de algum processo da qualidade, no caso de

problemas ou para sua participa na divulgação dos resultados da

qualidade.

O Usuário ou Cliente, que é outro membro importante nos processos da

qualidade. É ele que provê ao Ambiente parte das expectativas com

relação à qualidade dos produtos e dá retorno se estas expectativas

foram alcançadas. Como usuário pode-se entender até os próprios

membros do projeto, como desenvolvedores ou terceiros que, de alguma

forma, estejam envolvidos no processo.

Page 123: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

121

O Time da Qualidade, que cuida das funções práticas de planejamento e

execução das atividades de qualidade desta gerência. Este time,

formado por Revisores, Auditores, Testadores, entre outros, podem ser

pessoas da organização motivadas a desempenhar papéis da qualidade

no projeto e são responsáveis por seguir os padrões da qualidade

especificados. Devem prover as informações necessárias para a

condução do projeto, tanto no nível de projeto como no nível

organizacional.

O Agente Mensageiro, entidade computacional que realiza

automaticamente tarefas pré-determinadas dentro do Ambiente

Integrado. Ele auxilia o controle e execução de atividades pré-definidas,

como, por exemplo, realizar o serviço de comunicação automática de

notificação aos envolvidos de suas tarefas.

4.2.2 – Principais Atividades nos Processos da Qualidade

Nos processos da qualidade devem ser descritos os padrões a serem usados

em todos os níveis do desenvolvimento, incluindo o projeto, documentação,

codificação e padrões de teste. A documentação relacionada com a qualidade

no projeto inclui os recursos e cronogramas relacionados com o gerenciamento

da qualidade, bem como o gerenciamento do projeto como um todo. Essas

atividades podem ser consideradas como as principais formas de controle dos

produtos a serem entregues ao final de cada fase e/ou na entrega do produto

ao cliente.

O processo Gerenciamento da Qualidade é composto pelos processos de

definição das políticas e das atividades relacionadas com a qualidade na

organização e seu sistema de gerenciamento. Inclui também os objetivos da

qualidade, o estabelecimento dos padrões de produto, a política de

documentação de produtos, a política de divulgação de resultados, e outros

Page 124: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

122

assuntos que dizem respeito à visão mais ampla e institucional desta gerência

nas suas atribuições organizacionais.

O processo Garantia da Qualidade é composto pelos processos de definição

da estratégia da garantia da qualidade nos projetos e na organização. Abrange

também a instanciação dos processos definidos pelo Gerenciamento da

Qualidade na forma de sua seleção e adaptação para um determinado projeto,

envolvendo atividades, produtos e papéis relacionados com o tipo de ciclo de

vida, metodologia de desenvolvimento, planejamento de projeto, controle da

configuração e outras características específicas do projeto a ser desenvolvido.

Inclui o tratamento de não-conformidades nos produtos e nos processos, tanto

no nível de projeto como no nível organizacional.

O processo Controle da Qualidade é composto dos chamados processos

básicos da qualidade. São os processos fundamentais, ou seja, os processos

de suporte às atividades da qualidade nos projetos e na organização como um

todo. São aqueles definidos pela Garantia da Qualidade e que vão ser

utilizados nas atividades de verificação, validação, auditoria, revisão conjunta e

comunicação dos resultados da qualidade.

O processo Qualidade de Produto é composto dos processos que garantam a

usabilidade dos produtos do projeto, principalmente no interesse da redução do

número de mudanças e de rejeição desses produtos, bem como na definição

dos processos de seu exame e de sua medição sistemática de acordo com

suas especificações e necessidades.

4.2.3 – Padrão e Notação Utilizados na Modelagem dos Processos da

Qualidade

Foram adotados como referência para a modelagem dos processos da

Qualidade o padrão de avaliação de processo 15504 e a notação SPEM da

Object Management Group (OMG), cujas principais características foram

descritas no capítulo 3. Utilizou-se como recurso gráfico de modelagem os

Page 125: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

123

diagramas de pacote, de classe, de caso de uso, e de atividades propostos

pelo SPEM. Através do diagrama de caso de uso pode-se mostrar as relações

entre os papéis e as principais definições de trabalho dos processos, e com o

diagrama de atividades permite-se à apresentação da seqüência de atividades

com seus produtos de trabalho de entrada e saída, bem como os estados do

fluxo de objetos. O diagrama de pacote permite agrupar as atividades, os

papéis e os produtos do trabalho de acordo com uma categoria geral de

elementos de descrição de um processo, ou seja, um tema comum.

Para apresentar os modelos de processo do Gerenciamento, Garantia e

Qualidade de Produto foi escolhido o diagrama de pacote. Este diagrama

apresenta claramente as práticas base da 15504 relacionadas ao processo

MAN.4, as práticas base QUA.1 e CFG.1 relacionadas com atividades

estratégicas do gerenciamento da qualidade, e as práticas base dos processos

PRO.1 e PRO.2, contemplando assim, aspectos organizacionais e de projeto

da qualidade propostos pelo padrão. Acredita-se que para este trabalho, o nível

de detalhamento do diagrama de pacote é suficiente para ilustrar as atividades

principais de Gerenciamento, Garantia e de Qualidade de Produto, tornando

possível à identificação das atividades que, em sua maior parte, são realizadas

pelo Gerente da Qualidade e pelo Analista da Qualidade.

Para apresentar os modelos de processo do Controle da Qualidade foi

escolhido, além do diagrama de pacote, o diagrama de caso de uso e o de

atividades. Esses dois diagramas modelam as práticas base da 15504 relativas

aos processos QUA.2, QUA.3, QUA.4 e QUA.5, do Grupo SUP. Estas práticas

dizem respeito à condução das atividades básicas da qualidade, como

verificação e validação de produtos e auditorias. O envolvimento de diversos

papéis e a necessidade de representar o fluxo de informações e das atividades

do processo induziu a utilização destes diagramas, tornando mais claro o

entendimento e a dinâmica dos processos do Controle da Qualidade.

Page 126: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

124

Um outro tipo de diagrama, o de classe, foi utilizado para representar os

aspectos de relacionamento entre papéis e os produtos de trabalho de todo os

processos.

Os modelos da qualidade desenvolvidos nesta dissertação não se limitam só a

atender os processos do padrão 15504, mas também se propõem a possuir

uma visão abrangente da atuação da qualidade em projetos de

desenvolvimento de software, conforme apresentado nas seções seguintes

deste capítulo.

4.3 – A Modelagem dos Processos da Qualidade

Para o planejamento e definição dos modelos do processo, conforme descrito

na seção 3 do capítulo 3, inicialmente serão descritos e detalhadas as

atividades que o compõem no cotidiano da organização. Estas atividades são

descritas em termos de tarefas executadas e seus participantes, a alocação

dos indivíduos e produtos de trabalho necessários às tarefas, bem como a

especificação dos requisitos de entrada e saída de cada processo. Os passos

que foram adaptados do Ambiente Integrado e adotados para a preparação dos

modelos de processo da qualidade são os seguintes:

Descrição dos objetivos e dos requisitos básicos do processo a ser

modelado.

Identificação dos papéis, suas responsabilidades e produtos envolvidos

no processo.

Descrição do processo em atividades executáveis e factíveis

descrevendo os procedimento para execução destas tarefas.

Page 127: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

125

4.3.1 – Pacote Gerenciamento da Qualidade

O pacote que engloba os processos relacionados ao Gerenciamento da

Qualidade abrange os processos de definição das políticas e das atividades

relacionadas com a qualidade na organização como um todo. Isto implica em

alcançar os objetivos da qualidade sob o ponto de vista da organização,

prevendo com isto: a gestão de diversos projetos ao mesmo tempo, a

necessidade de definir políticas diferentes de desenvolvimento de produto, a

utilização de padrões, a utilização de procedimentos e a utilização de pessoal

da qualidade alocado para estes projetos simultâneos. São de sua

responsabilidade o estabelecimento do sistema de gerenciamento da

qualidade, a política de medições da qualidade, de divulgação de resultados,

de tratamento de não-conformidades, entre outros assuntos que dizem respeito

à visão mais ampla e institucional desta gerência nas suas atribuições

organizacionais. Deve existir também a preocupação com a memória dos

projetos, a fim de facilitar a tomada de decisões e permitir previsões mais

confiáveis dos recursos necessários da qualidade em projetos futuros.

4.3.1.1 – Objetivos e Requisitos Básicos do Pacote

O objetivo principal desse pacote é determinar todas as práticas da qualidade,

no nível gerencial, de acordo com os requisitos definidos nesta subseção, de

maneira que os processos sejam utilizados de forma eficiente e clara e que os

resultados obtidos possam ser avaliados e divulgados entre os envolvidos no

processo. Os processos visam estabelecer padrões de desenvolvimento para

produtos e para processos de software, bem como garantir o gerenciamento e

bom desempenho no desenvolvimento de software no nível organizacional.

Estabelece ainda uma estratégia geral da qualidade modo que os projetos

possam atender seus requisitos de qualidade.

Page 128: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

126

Os principais requisitos desse pacote são:

O sistema de gerenciamento da qualidade devem ser estabelecido: a

Qualidade deve criar e manter um sistema de gerenciamento para a

organização e consequentemente para os projetos, de modo a atender suas

atividades mínimas necessárias, qual seja, implementar, monitorar e controlar

as ações preventivas e corretivas da qualidade.

Os objetivos da qualidade devem ser definidos: a Qualidade deve traçar tanto

de forma geral (organizacional) como particular (projetos), quais são seus

objetivos básicos. Essas diretrizes permitirão conduzir todas as atividades da

qualidade de forma alinhada com os objetivos de negócio da organização.

A estratégia geral da qualidade deve ser definida: deve ser desenvolvida a

estratégia geral da qualidade incluindo os recursos e responsabilidades para a

obtenção dos seus objetivos e da contínua melhoria da qualidade.

Os padrões de produto devem ser estabelecidos: padrões para documentação

de projeto, de diagramas, de interface com o usuário, de código, de rotinas de

teste, de documentos da qualidade, como templates e checklists, bem como

qualquer outro padrão de produto que seja de uso da organização ou de

projetos.

Uma política de documentação de produto deve ser definida: uma política para

os documentos de produto em projetos deve ser definida de modo a atender

seus requisitos de desenvolvimento, principalmente no que tange ao tipo de

aplicação de software e seu ciclo de desenvolvimento.

Uma estratégia para medições da Qualidade na organização deve ser definida:

devem ser definidas métricas de software para uso em projetos e na

organização com um todo, a fim de quantificar e avaliar a qualidade do

software em desenvolvimento, bem como o impacto de mudanças

metodológicas, procedimentais e estruturais na organização.

Page 129: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

127

Os objetivos da qualidade devem ser avaliados: deve ser avaliado se os

objetivos básicos definidos para a qualidade, tanto de forma geral

(organizacional) como particular (projetos), foram alcançados. Esta avaliação

permitirá conduzir todas as atividades da qualidade de forma alinhada com os

objetivos de negócio da organização.

As não-conformidades dos produtos e dos processos devem ser tratadas: os

produtos e processos que, em qualquer momento, forem identificados com

algum tipo de problema, não-conformidade ou desvio, devem ser

encaminhados ao processo de gerenciamento de problemas. Tem por objetivo

rotular e conduzir a não-conformidade ao processo de gerenciamento de

problema para solução e reenvio a qualidade.

Uma política para divulgação dos resultados da qualidade deve ser adotada: os

resultados das revisões, auditorias, desvios, resultados dos testes e outras

atividades da qualidade devem ser levados ao conhecimento dos envolvidos,

tendo como base a necessidade de manter o conhecimento difundido e

homogêneo no projeto e na organização.

Os requisitos do pacote Gerenciamento da Qualidade podem ser

representados, através do diagrama de Pacotes, Figura 4.3, que abrange os

processos relacionados com esta categoria.

Page 130: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

128

Gerenciamentoda Qualidade

Definição dosObjetivos da

Qualidade

Estabelecimentodos Padrões de

Produto

Definição daEstratégia Geral

da Qualidade

Avaliação dos Objetivosda Qualidade

Estabelecimento doSistema de

Gerenciamento daQualidade

Definição da Política deDivulgação de Resultados

da Qualidade

Política deTratamento de

Não-Conformidades

Definição daPolítica de

Documentação deProduto

Definição da Estratégiade Medições da

Qualidade

FIGURA 4.3 - Pacote Gerenciamento da Qualidade.

Page 131: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

129

4.3.1.2 – Papéis, Responsabilidades e Produtos Envolvidos no Pacote

O Gerente da Qualidade fica responsável pelo estabelecimento dos processos

fundamentais da qualidade, pela definição dos papéis e responsabilidades do

time da qualidade, pela definição dos objetivos da qualidade, pela definição das

políticas e pelas estratégias da qualidade na organização. Os principais

produtos de trabalho envolvidos neste processo são os documentos de Política

Geral da Organização, de Política Organizacional da Qualidade, de Política de

Documentação de Projeto, de Política de Treinamento da Qualidade, de

Relatório da Qualidade, de Avaliação da Qualidade e o documento que contém

a estratégia de Medições da Qualidade. O diagrama de classe da Figura 4.4

mostra o relacionamento entre o Gerente da Qualidade e os produtos

associados com o pacote Gerenciamento da Qualidade.

1

*

1

*

PolíticaOrganizacionalda Qualidade

Política deTreinamento da

Qualidade

1

*

Política Geral daOrganização

Relatório daAvaliação da

Qualidade

Medições daQualidade

Formulário deEncaminhamento de

Problemas

Política deDocumentação

1

*1

*

1

*

Produtos daQualidade

(apoio)

Gerenteda

Qualidade1

*

1

*

Plano daQualidade

1

*

Relatório daQualidade

FIGURA 4.4 – Os produtos envolvidos com o Gerente da Qualidade no pacote

Gerenciamento da Qualidade.

Page 132: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

130

O Analista da Qualidade fica responsável por definir os produtos de apoio e os

templates dos produtos de desenvolvimento de software. Produtos de apoio

significam os produtos associados às revisões, auditorias, como o Checklist de

Verificação, de Validação, de Revisão Conjunta e de Auditoria e os de padrões

de projeto, como os Guias de Diagramas, de Código entre outros. Os produtos

relacionados com as medições que devem ser adotadas em projetos, como o

documento contendo os tipos de Medidas de Código, Medidas de Projeto e de

Processo que devem ser utilizados, também estão entre os produtos de

responsabilidade do Analista da Qualidade. O Formulário de Encaminhamento

de Problemas é de sua responsabilidade, bem como o do formato geral dos

produtos mínimos a serem desenvolvidos em um projeto de software, os

chamados produtos de desenvolvimento, como o template do Plano da

Qualidade e do Plano de Testes. O Relatório da Qualidade e de sua avaliação

também fazem parte do rol de documentos da responsabilidade do Analista. A

Figura 4.5 detalha o relacionamento entre o Analista da Qualidade e os

produtos associados como o pacote Gerenciamento da Qualidade.

Page 133: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

131

1

*

1 *

1

*

1

*

Produtos daQualidade

(desenvolvimento)

Analistada

Qualidade

Formulário deAvaliação de

ProdutoCheklists deVerificação

Cheklists deValidação

TemplatePlano deTestes

Artefatos deSoftware

Guia de Padrões deDocumentação

Guia de Padrões deDiagramas

Guia de Padrões deInterfaces do

Usuário

Guia de Padrões deCódigo

Guia de Padrões deMódulos de Teste

Guia de Padrões deTemplates

Relatório daAvaliação da

Qualidade

Cheklists deRequisitos da

Qualidade

PolíticaOrganizacionalda Qualidade

Medidas deSoftware

Medições daQualidade

Medidas deProjeto

Medidas deProcesso

Política deDocumentação de

Projeto

Modelos deCiclo de Vida de

Projeto

Produtos daQualidade

(apoio)

TemplatePlano da

Qualidade

1

*

1

*

1

*

1

*

1

*

1

*

1

*

1

*

1

*

1 *

1

*

1

*

1

*

1

*

1

*

1

*

1

*

1

*

1

*

Relatório daAuditoria

Cheklists deRevisão Conjunta

Cheklists deAuditoria

Solicitaçãode Revisão

Conjunta

1

*

1

*

1

*

Formulário deEncaminhamento

de Problemas

1

*

Relatório daQualidade

1

*

FIGURA 4.5 – Os produtos envolvidos com o Analista da Qualidade no pacote

Gerenciamento da Qualidade.

Page 134: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

132

4.3.1.3 – Atividades do Pacote

O diagrama de pacote do processo Gerenciamento da Qualidade agrupa as

atividades, os papéis e os produtos do trabalho de acordo com os elementos

comuns das práticas da qualidade no nível organizacional e de projeto, de

maneira a disponibilizar os recursos necessários ao desenvolvimento das

atividades da qualidade de software. Entende-se que, através destes

processos, vários projetos, de diversas abordagens metodológicas, possam

utilizar estes recursos de forma eficiente e clara e os resultados obtidos

possam ser avaliados e divulgados entre os envolvidos no processo.

É importante frisar que as atividades, papéis e produtos envolvidos nestes

processos são o conjunto mínimo necessário para a organização e seus

projetos do ponto de vista do funcionamento da qualidade. Qualquer proposta

para a criação de um novo processo fica sujeita a planejamento e definição de

modelo, execução, acompanhamento e finalmente avaliação, conforme descrito

no capítulo 3, no ciclo de vida proposto para um Ambiente Integrado.

Page 135: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

133

4.3.1.3.1 – Pacote Estabelecimento do Sistema de Gerenciamento da

Qualidade

O pacote Estabelecimento do Sistema de Gerenciamento da Qualidade, Figura

4.6, estabelece os processos básicos da qualidade para a organização e

conseqüentemente, para os projetos, de modo a atender suas funcionalidades

mínimas, qual seja, verificar e validar produtos, realizar auditorias e revisões

conjuntas entre outras. Para isto, utilizando como referência o Plano

Organizacional da Qualidade, este processo estabelece as atividades

fundamentais que posteriormente serão utilizados para controle da qualidade, e

estabelece os produtos associados com este processo. São associados os

produtos de desenvolvimento, como templates dos produtos estabelecidos no

pacote de Definição da Política de Documentação de Produto (templates para o

Plano da Qualidade, e para Plano de Testes) e produtos de apoio, onde são

criados os checklists das revisões (Checklist de Verificação, de Validação, de

Revisão Conjunta e de Auditoria) e formulários (Formulário de Avaliação de

Produto, Relatório de Auditoria e Solicitação de Revisão Conjunta).

Page 136: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

134

Gerente da Qualidade - GQ

Estabelecer Processo de Verificação & Validação ( )

Estabelecer Processo de Revisão Conjunta ( )

Formulário deAvaliação de

Produto

Política Organizacionalda Qualidade

Estabelecer Processo de Auditoria ( )

Relatório daAuditoria

Analista da Qualidade

Definir Produtos Associados a Verificação ( )

Definir Produtos Associados a Revisão Conjunta ( )

Definir Produtos Associados a Validação ( )

Definir Produtos Associados a Auditoria ( )

Cheklists deVerificação

Cheklists deValidação

Cheklists deRevisãoConjunta

Cheklists deAuditoria

templatePlano deTestes

Estabelecimento doSistema de Gerenciamento

da Qualidade

Solicitaçãode Revisão

Artefatos deSoftware

templatePlano da

Qualidade

Estabelecer Procedimento de Ação Corretiva ( )

Plano da Qualidade

FIGURA 4.6 – O Pacote Estabelecimento do Sistema de Gerenciamento da

Qualidade.

Page 137: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

135

4.3.1.3.2 – Pacote Definição dos Objetivos da Qualidade

O pacote Definição dos Objetivos da Qualidade, Figura 4.7 define de forma

geral (organizacional) como em particular (projetos), quais são os objetivos

básicos da qualidade na condução de todas as atividades da qualidade, de

forma alinhada com os objetivos de negócio da organização. Para isto este

processo se baseia no documento que trata da Política Geral da Organização,

e produz o documento de Política Organizacional da Qualidade. Define também

os principais itens do Relatório da Avaliação da Qualidade e os principais itens

relacionados ao documento de Medições da Qualidade.

Gerente da Qualidade - GQ

Estabelecer os Objetivos da Qualidade ( )

Alinhar os Objetivos da Qualidade aos Objetivosdo Negócio ( )

PolíticaOrganizacionalda Qualidade

Política Geralda Organização

Definição dosObjetivos da

Qualidade

Relatório daAvaliação da

Qualidade

Medições daQualidade

Estabelecer Critérios para Avaliação da Qualidadede Processo e Produto ( )

FIGURA 4.7- O Pacote Definição dos Objetivos da Qualidade.

Page 138: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

136

4.3.1.3.3 – Pacote Definição da Estratégia Geral da Qualidade

O pacote Definição da Estratégia Geral da Qualidade, Figura 4.8, define os

principais papéis dos envolvidos com a qualidade na organização e nos

projetos, que tem como responsabilidade atender as atividades da qualidade,

como revisões e auditorias. Estes papéis e suas responsabilidade deverão

estar contidos no documento de Política Organizacional da Qualidade, bem

como os recursos necessários para o andamento normal dos trabalhos da

qualidade. Este processo também gera um outro produto que é o documento

da Política de Treinamento da Qualidade, cujas diretrizes comporão a política

de treinamento do time, para capacitação de suas funções.

Gerente da Qualidade - GQ

Definir os Papéis da Qualidade na Organização ( )

Definir Política de Treinamento da Qualidade ( )

Política Organizacionalda Qualidade

Política de Treinamentoda Qualidade

Definição daEstratégia Geral

da Qualidade

Definir os Recursos para a Qualidade ( )

FIGURA 4.8 - O Pacote Definição da Estratégia Geral da Qualidade.

Page 139: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

137

4.3.1.3.4 – Pacote Estabelecimento dos Padrões de Produto

O pacote Estabelecimento dos Padrões de Produto, Figura 4.9 define as

atividades de padronização para produtos em projetos, criando guias de

padrões (Guia de Padrões para Documentação de Projeto, de Diagramas, de

Interface com o Usuário, de Código e Guia para a criação de Templates),

contendo as referências normativas que devem ser adotadas. Os guias devem

contemplar as possíveis abordagens metodológicas que um projeto pode ter. O

documento contendo a política de documentação de projeto, indiretamente, faz

parte desse pacote.

Page 140: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

138

Analista da Qualidade

Estabelecer Padrões para Interfaces do Usuário ( )

Establecer Padrões para Módulos de Teste ( )

Estabelecer Padrões para Documentação emProjeto ( )

Estabelecer Padrões para Código ( )

Estabelecer Padrões para Templates ( )

Estabelecer Padrões para Diagramas ( )

Guia de Padrões deDocumentação

Guia de Padrões deDiagramas

Guia de Padrões deInterfaces do

Usuário

Guia de Padrões deCódigo

Guia de Padrões deMódulos de Teste

Guia de Padrões deTemplates

Estabelecimentodos Padrões de

Produto

Estabelecer Padrões para Documentação daOrganização ( )

FIGURA 4.9 - O Pacote Estabelecimento dos Padrões de Produto.

Page 141: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

139

4.3.1.3.5 – Pacote Definição da Política de Documentação

O pacote Definição da Política de Documentação, Figura 4.10, estabelece a

estratégia para documentação de produto na organização, principalmente com

relação à qualidade nos projetos, de modo a atender os requisitos de

desenvolvimento. O processo define um conjunto de templates (templates do

Plano da Qualidade e do Plano de Testes) considerados, para a organização,

como indispensáveis para a qualidade em projetos de software. Este processo

não impede que, caso se queira alterar esse conjunto mínimo de

documentação da qualidade, sejam acrescidos novos templates ao pacote.

Page 142: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

140

Gerente da Qualidade - GQ

Política Organizacional daQualidade

Analista da Qualidade

Definir Requisitos de Documentação ( )

Definir Estratégia de Documentação para Projetos ( )

Definição da Política deDocumentação

Definir Estratégia de Documentação para aOrganização ( )

Definir Padrões para a Documentação ( )

Política de Documentação

Modelos de Ciclode Vida de Projeto

TemplatePlano deTestes

TemplatePlano da

Qualidade

FIGURA 4.10 - O Pacote Definição da Política de Documentação de Produto.

Page 143: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

141

4.3.1.3.6 – Pacote Definição da Estratégia de Medições da Qualidade

O pacote Definição da Estratégia de Medições da Qualidade, Figura 4.11,

estabelece a estratégia para medições da Qualidade na organização definindo

algumas métricas de software para uso em projetos e na organização com um

todo. Como isto, é possível quantificar e avaliar a qualidade do software em

desenvolvimento e o impacto de mudanças metodológicas, e estruturais na

organização. Com base na Política Organizacional da Qualidade um

documento contendo as Medições da Qualidade é gerado, com seus

respectivos guias de medições (Medidas de Software, Projeto e Processo) para

uso no Relatório da Qualidade e de sua avaliação.

Page 144: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

142

Gerente da Qualidade - GQ

Política Organizacional daQualidade

Analista da Qualidade

Definir Métricas de Projeto ( )

Medidas deSoftware

Analisar Medidas ( )

Tomar Decisões ( )

Medições da Qualidade

Definir Métricas de Prcesso ( )

Definir Métricas de Software ( )

Definir Métricas Organizacionais ( )

Medições da Qualidade Medidas deProjeto

Medidas deProcesso

Definição da Estratégiade Medições da

Qualidade

Relatório daAvaliação da

QualidadeRelatório daQualidade

FIGURA 4.11 - O Pacote Definição da Estratégia de Medições da Qualidade.

Page 145: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

143

4.3.1.3.7 – Pacote Avaliação dos Objetivos da Qualidade

O pacote Avaliação dos Objetivos da Qualidade, Figura 4.12, estabelece a

política de auditoria para os requisitos básicos definidos para a qualidade, tanto

de forma geral (organizacional) como particular (projetos), e os critérios para

avaliação se os objetivos foram alcançados. Esta avaliação permite conduzir

todas as atividades da qualidade de forma alinhada com os objetivos de

negócio da organização. Para isto o processo utiliza a documento contendo a

Política Organizacional da Qualidade, gerando o Relatório de Avaliação da

Auditoria e seu checklist de Requisitos.

Page 146: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

144

Gerente da Qualidade - GQ

Estabelecer Política de Auditoria da Qualidade ( )

Política Organizacional daQualidade

Relatório daAvaliação da

Qualidade

Analista da Qualidade

Auditar Requisitos da Qualidade ( )

Cheklists deRequisitos da

Qualidade

Estabelecer Critérios para Avaliação da Qualidade ( )

Avaliação dos Objetivosda Qualidade

Relatório daQualidade

Medições daQualidade

Medidas deProjeto

Medidas deProcesso

FIGURA 4.12 – O Pacote Avaliação dos Objetivos da Qualidade.

Page 147: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

145

4.3.1.3.8 – Pacote Política de Tratamento de Não-Conformidades

O pacote Política de Tratamento de Não-conformidades, Figura 4.13,

estabelece o processo que trata do encaminhamento das não-conformidades

dos produtos e dos processos envolvidos na execução de um processo da

qualidade em qualquer momento da vida do projeto ou da organização. Se

algum envolvido identificar algum tipo de problema, não-conformidade ou

desvio, este processo deve ser instanciado, através da abertura do Formulário

de Encaminhamento de Problemas. Este formulário abrange também outros

processos que não só os da qualidade. No caso específico dos processos da

qualidade, o envolvido que identificaria um problema, além do Gerente, alguém

do Time da Qualidade, como por exemplo, o Revisor. Ele abre este formulário,

que é encaminhado ao Gerente da Qualidade, que faz uma análise prévia do

grau de severidade e de implicação do problema, classificando o mesmo,

segundo critérios estabelecidos. Posteriormente o formulário é encaminhado ao

Analista de Problemas para solução. O Analista de Problemas se encarregará,

dependendo do tipo de problema, de envolver outros participantes para

solução. No caso específico desta abordagem, a atividade de Gerenciamento

de Problemas (CFG.3 do Grupo Controle de Configuração) é de

responsabilidade dos processos relacionados ao controle de configuração

(principalmente os problemas relativos ao desenvolvimento de projeto),

devendo a qualidade somente tratar inicialmente deste encaminhamento para

solução. Mesmo com o registro do problema no Formulário de

Encaminhamento de Problemas, o Relatório da Qualidade deve ser emitido,

apresentando as não-conformidades do produto ou processo.

Page 148: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

146

Gerente da Qualidade - GQ

Definir Política de Ação Corretiva ( )

Política deTratamento de

Não-Conformidades

Formulário deEncaminhamento de

Problemas

Definir Política de Ação Preventiva ( )

Relatório daQualidade

Política Organizacionalda Qualidade

Plano da Qualidade

FIGURA 4.13 – O Pacote Política de Tratamento de Não-Conformidades.

Page 149: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

147

4.3.1.3.9 – Pacote de Definição da Política de Divulgação de Resultados da

Qualidade

O pacote de Definição da Política de Divulgação de Resultados da Qualidade,

Figura 4.14, define a estratégia para divulgação dos resultados da qualidade,

tanto no nível organizacional com de projetos, baseado nos registros do

Relatório da Avaliação da Qualidade, no Formulário de Avaliação de Produto,

no Relatório da Auditoria e de seus documentos relacionados.

Page 150: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

148

Gerente da Qualidade - GQ

PolíticaOrganizacionalda Qualidade

Analista da Qualidade

Definir os Registros da Qualidade para Divulgaçãono Nível Organizacional( )

Definir os Agentes Envolvidos na Divulgação ( )

Definir Estratégia de Divulgação da Qualidade naOrganização ( )

Definir Estratégia de Divulgação da Qualidade emProjetos ( )

Definir os Registros da Qualidade para Divulgaçãono Nível de Projeto ( )

Formulário deAvaliação de

Produto

Relatório daAuditoria

Medidas deSoftware

Medições daQualidade

Medidas deProjeto

Medidas deProcesso

Definição da Política deDivulgação de Resultados

da Qualidade

Relatório daAvaliação da

Qualidade

Relatório daQualidade

Relatório daQualidade

Relatório daAvaliação da

Qualidade

FIGURA 4.14 - O Pacote Definição da Política de Divulgação de Resultados da

Qualidade.

Page 151: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

149

4.3.2 - Pacote Garantia da Qualidade

O pacote Garantia da Qualidade abrange os processos relacionados às

atividades que garantem que produtos e processos do trabalho estão em

conformidade com os planos e procedimentos pré-definidos, com a devida

adequação e instanciação dos processos e produtos definidos pelo

Gerenciamento da Qualidade para um projeto específico. Isto significa que

processos são devidamente selecionados e adaptados para um determinado

projeto, envolvendo atividades, produtos e papéis relacionados com o tipo de

ciclo de vida, metodologia de desenvolvimento, planejamento de projeto,

controle da configuração e outras características específicas do projeto a ser

desenvolvido. Para isto é necessário selecionar os padrões pertinentes à

metodologia adota, bem como, agregar aos documentos mínimos

estabelecidos no projeto outros necessários. Também pode ser necessário

adequar os processos estabelecidos pelo Gerenciamento da Qualidade em

conjunto com uma política própria para as atividades (verificação, validação,

revisão conjunta e auditoria) associada a produtos. A seleção dos membros do

time da qualidade necessários à condução do projeto, os marcos de projeto e

as informações da qualidade a serem difundidas, é tarefa fundamental para a

efetiva realização deste processo.

4.3.2.1 – Objetivos e Requisitos Básicos do Pacote

O objetivo principal desse pacote é utilizar práticas da qualidade, no nível de

garantia da qualidade, de acordo com os requisitos organizacionais definidos

pelo Gerenciamento da Qualidade, de maneira que os processos sejam

utilizados de forma eficiente e clara e que os resultados obtidos possam ser

avaliados e divulgados entre os envolvidos no processo. Tem também como

objetivo definir e adequar atividades, documentos, políticas e papéis às

características de cada projeto, de modo a atender os requisitos da qualidade

estabelecidos pela organização.

Page 152: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

150

Os principais requisitos desse pacote são:

Uma estratégia para a garantia da qualidade em projetos deve ser

desenvolvida: uma estratégia para a condução das atividades de garantia da

qualidade, no nível de projeto, deve ser definida, consistente com a estratégia

da qualidade no nível organizacional.

Os registros da qualidade no projeto devem ser definidos: as informações

pertinentes ao acompanhamento da qualidade, junto aos marcos e aos

envolvidos no projeto, devem ser definidas para divulgação e acompanhamento

das atividades das atividades relacionadas à qualidade. Tem por objetivo definir

as informações que a qualidade utilizará para auxiliar a alta gerência (e a

própria Gerência da Qualidade) a tomar decisões e manter os envolvidos

informados sobre o andamento das atividades no projeto.

Padrões devem ser selecionados em um projeto: padrões de documentação,

diagramas, código entre outros, devem ser selecionados e adequados

observando as características metodológicas e de implementação do projeto.

Tem como objetivo manter o desenvolvimento do projeto dentro de padrões

pré-estabelecidos de documentação respeitando as características da

abordagem utilizada.

Uma documentação para o projeto deve ser selecionada: deve ser

estabelecido, identificado e categorizado um conjunto de documentos de

projeto, de acordo com a política de documentação da organização, e do

contrato de projeto. Tem por objetivo estabelecer e identificar os produtos a

serem gerados no projeto a fim de se poder controlar e manipular os mesmos.

Uma política de verificação e de validação no projeto deve ser definida: deve

ser definida qual será a política de verificações e validações que devem estar

associadas a marcos e produtos do projeto. Tem por objetivo verificar e validar

qualquer produto após ser encaminhado ao Ambiente para ser controlado no

projeto.

Page 153: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

151

Uma política de revisão conjunta e de auditoria no projeto deve ser definida:

deve ser definida qual será a política de auditorias e de revisões conjuntas que

estarão associadas a marcos e produtos do projeto. Tem como objetivo,

principalmente no caso da auditoria, promover o desenvolvimento do projeto

para um novo marco e, no caso da revisão conjunta, ser útil para manter um

entendimento comum entre os envolvidos no projeto.

Os registros das atividades da garantia da qualidade devem ser produzidos e

armazenados: os registros dos produtos e dos processos da qualidade devem

ser identificados, extraídos e armazenados para futura divulgação e consulta

dos envolvidos tanto no nível organizacional como no de projetos. Tem por

objetivo auxiliar a tomada de decisão e o entendimento do processo por parte

dos membros envolvidos direta e indiretamente aos produtos e processos.

As não-conformidades devem ser identificadas: qualquer problema, desvio ou

não-conformidade deve ser identificado, verificando seu grau de severidade e

encaminhando para as devidas providências de solução ao Ambiente

Integrado.

Os requisitos do pacote Garantia da Qualidade podem ser representados

através da Figura 4.15, que abrange os processos relacionados com esta

categoria.

Page 154: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

152

Garantia da Qualidade

Seleção dePadrões

para o Projeto Definição da

Estratégia de Garantiada Qualidade em

Projeto

Definição da Políticade Revisão Conjuntae Auditoria no Projeto

Definição dosRegistros da

Qualidade no Projeto

Definição da Políticade Verificação e

Validação no Projeto

Identificação deNão-Conformidades

Seleção daDocumentação de

Projeto

Extração dosRegistros da

Qualidade

FIGURA 4.15 - Pacote Garantia da Qualidade.

Page 155: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

153

4.3.2.2 - Papéis, Responsabilidades e Produtos Envolvidos no Pacote

O Gerente da Qualidade, nesse pacote fica responsável pelas adequações,

políticas e definições das atividades e padrões de um projeto específico. Isto

inclui a seleção e adequação dos processos fundamentais da qualidade para

um projeto, pela definição das políticas de revisão (verificação, validação e

revisão conjunta) e auditoria, pela adequação dos padrões para o projeto, pelo

estabelecimento dos requisitos de documentação do projeto, por associar

papéis às responsabilidades no projeto e definição (quando houver) da

qualidade de serviços e produtos subcontratados. Pode-se citar, como

principais produtos de trabalho envolvidos neste processo, os documentos da

Política Organizacional da Qualidade, Contrato de Projeto, Plano de

Desenvolvimento de Software, documento de Projeto, Plano da Qualidade de

Software, documento de Adequação do Software, Plano de Testes, Política de

Documentação de Projeto, Relatório da Qualidade e o Contrato de Prestação

de Serviços. O diagrama de Classes da Figura 4.16 mostra o relacionamento

entre o Gerente da Qualidade e os produtos associados como o pacote

Garantia da Qualidade.

Page 156: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

154

1

*

1

*

1

*

1

*1

*1

*

Produtos daQualidade

(desenvolvimento)

Gerenteda

Qualidade

Plano de Testesdo Software

Plano daQualidade de

Software

Documento deAdequação do

Software

Contrato deProjeto

Política deDocumentação

Modelo deCiclo de Vida

do Projeto

Política Geralda Organização

Plano deDesenvolvimento

de Software

PolíticaOrganizacionalda Qualidade

1

*

Documento de Projeto

1

*

Produtos daQualidade

(apoio)1

*

1

*

Relatório daQualidade1

*

1

*

Formulário deEncaminhamento

de Problemas

FIGURA 4.16 – Os produtos envolvidos com o Gerente da Qualidade no pacote

Garantia da Qualidade.

Page 157: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

155

O Analista da Qualidade, neste pacote, fica responsável por associar os

produtos de apoio, de desenvolvimento e os artefatos de software aos

processos fundamentais. Os produtos relacionados com as revisões e

auditorias, a seleção dos padrões específicos para o projeto (documentação,

diagramas, interfaces, código, entre outros), a identificação e categorização

dos produtos, a definição de quais informações serão registradas para

divulgação aos envolvidos e a escolha das medidas de software e de projeto a

serem utilizadas nos registros fazem parte de suas atribuições. Como produtos

relacionados com esta atividade podemos citar os produtos de Apoio, como o

Formulário de Avaliação de Produto, o Formulário de Encaminhamento de

Problemas, a Solicitação de revisão Conjunta, os relatórios (da Qualidade, da

Avaliação da Qualidade e da Auditoria), checklists (de Verificação, Validação,

Revisão Conjunta e de Auditoria), os guias de padrões (de Documentação, de

Diagramas, de Interfaces, de código, de Módulos de Teste, de Templates) e a

listas (de Produtos do Projeto e de Categorias de Produtos); e os produtos

(templates) de desenvolvimento de software como o de Especificação de

Requisitos, o Plano de Desenvolvimento, o Plano da Qualidade, de Testes, o

Manual do Usuário e os próprios artefatos de software. A Figura 4.17 detalha o

relacionamento entre o Analista da Qualidade e os produtos associados como

o pacote Garantia da Qualidade.

Page 158: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

156

1

*

1 *

1

*

1

*

Produtos daQualidade

(desenvolvimento)

Analistada

Qualidade

Formulário deAvaliação de

Produto

Relatório daAuditoria

Cheklists deVerificação

Cheklists deValidação

Cheklists deRevisão Conjunta

Cheklists deAuditoria

Plano deTestes

EspecificaçãoRequisitos

Solicitaçãode Revisão

Artefatos deSoftware

Guia de Padrões deDocumentação

Guia de Padrões deDiagramas

Guia de Padrões deInterfaces do

Usuário

Guia de Padrões deCódigo

Guia de Padrões deMódulos de Teste

Guia de Padrões deTemplates

Relatório daAvaliação da

Qualidade

Lista dasCategorias de

Produtos

Relatório daQualidade

Medidas deSoftware

Medições daQualidade

Medidas deProjeto

Política deDocumentação

Modelos deCiclo de Vida de

Projeto

Produtos daQualidade

(apoio)

Plano deDesenvolvimento

Documento deProjetoPlano da

Qualidade

1

*

1

*

1

*

1

*

1

*

1

*

1

*

1

*

1

*

1

*

1

*

1

*

1 *

1

*

1

*

1

*

1

*

1

*

1

*

1

*

1

*1

*

1

*

1

*

Lista deProdutos

Formulário deEncaminhamento

de Problemas

1

*

1*

PolíticaOrganizacionalda Qualidade

1

*

Contrato deProjeto

FIGURA 4.17 – Os produtos envolvidos com o Analista da Qualidade no pacote

Garantia da Qualidade.

Page 159: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

157

4.3.2.3 - Atividades do Pacote

O diagrama de pacote Garantia da Qualidade agrupa as atividades, os papéis e

os produtos do trabalho de acordo com os elementos comuns das práticas da

qualidade no nível de um projeto de desenvolvimento de software,

proporcionando apoio as diferentes atividades da qualidade envolvidas neste

contexto. Entende-se que, através da utilização dos processos da Garantia da

Qualidade para um determinado projeto, é necessário criar uma instância

desses processos, de modo a adequar as necessidades metodológicas, de

recursos e de estratégia de desenvolvimento de modo a utilizar o processo o

mais racional e adequado quanto possível.

É importante frisar que as atividades, papéis e produtos envolvidos nesses

processos são o conjunto mínimo necessário para o desenvolvimento de um

projeto, do ponto de vista do funcionamento da qualidade, ficando qualquer

alteração sujeita a uma proposta de criação ou de melhoria de processo no

nível do Gerenciamento da Qualidade.

Page 160: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

158

4.3.2.3.1 – Pacote Definição da Estratégia da Garantia da Qualidade em

Projeto

O pacote Definição da Estratégia da Garantia da Qualidade em Projeto, Figura

4.18, estabelece as atividades de adequação dos processos fundamentais da

qualidade ao projeto, de forma a atender as necessidades específicas do

projeto e conforme os requisitos de qualidade da organização e as políticas

definidas nos planos do projeto. Um exemplo de adequação seria a utilização,

ou não de revisões conjuntas no processo. Dependendo do tipo de

desenvolvimento de software – aplicação interna da organização, por exemplo

– este tipo de processo pode não ser necessário. Baseado no Plano de

Desenvolvimento e no de Projeto, bem como nas diretrizes do Plano da

Qualidade estes processos são adequados, bem como, os produtos

associados com estes processos. Isto inclui outros documentos oficiais de

projeto (Especificação de Requisitos, Plano de Testes, por exemplo), checklists

(de verificação, validação, auditoria e revisão conjunta), formulários da

qualidade (de avaliação de produto, de solicitação de revisão e relatórios (da

qualidade e da auditoria)).

Page 161: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

159

Gerente da Qualidade - GQ

Adequar Processo de Verificação & Validação ( )

Adequar Processo de Revisão Conjunta ( )

Formulário deAvaliação de Produto

Adequar Estratégia do Projeto a Estratégia deGerenciamento da Qualidade ( )

Adequar Processo de Auditoria ( )

Relatório daAuditoria

Analista da Qualidade

Definir Produtos Associados aos Processos daQualidade no Projeto ( )

Cheklists deVerificação

Cheklists deValidação

Cheklists deRevisãoConjunta

Cheklists deAuditoriaPlano de Testes

EspecificaçãoRequisitos de Software

Definição da Estratégiade Garantia da

Qualidade em Projeto

Plano daQualidade de

Software

Plano deDesenvolvimento

de Software

Relatório daQualidade

Modelo de Ciclode Vida do Projeto

Solicitação deRevisão

PolíticaOrganizacionalda Qualidade

PolíticaGeral da

Organização

FIGURA 4.18 - Pacote Definição da Estratégia da Garantia da Qualidade em

Projeto.

Page 162: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

160

4.3.2.3.2 – Pacote Definição dos Registros da Qualidade no Projeto

O pacote Definição dos Registros da Qualidade no Projeto, Figura 4.19,

estabelece quais são as informações, associadas aos marcos do projeto, que

devem ser registradas pela qualidade, para o acompanhamento das suas

atividades e das de projeto. Baseados nas medições e nas informações

extraídas pelo Time da Qualidade, estes registros divulgados aos envolvidos

(Relatório da Qualidade e da Avaliação da Qualidade, por exemplo) permitem

que outras gerências (e a própria Gerência da Qualidade) tomem decisões e,

também, permite que todos os envolvidos no processo e no projeto se

mantenham informados sobre o andamento das atividades da qualidade e do

desenvolvimento.

Analista da Qualidade

Plano daQualidade de

Software

Associar Registros aos Marcos do Projeto ( )

Definir Informações do Projeto para Registro ( )

Relatório deAvaliação da

Qualidade

Definição dosRegistros da

Qualidade no Projeto

Modelo de Ciclode Vida do

Projeto

Medidas deSoftware

Medições daQualidade

Medidas deProjeto

Relatório daQualidade

FIGURA 4.19 - Pacote Definição dos Registros da Qualidade no Projeto.

Page 163: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

161

4.3.2.3.3 – Pacote Seleções de Padrões para o Projeto

O pacote Seleções de Padrões para o Projeto, Figura 4.20, estabelece o

processo de seleção/adequação, dos padrões adotados no projeto. Os padrões

(de documentação, diagramas, código entre outros) são selecionados

observando as características metodológicas do projeto, a linguagem, ou as

linguagens adotadas, para a implementação do código, como serão as telas de

interação com o usuário, os diagramas de representação do projeto, e qualquer

outra abordagem que o projeto necessitar, que se fará com o auxílio dos guias

de padrões.

Page 164: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

162

Gerente da Qualidade - GQ

Plano da Qualidadede Software

Documento de Adequaçãodo Software

Analista da Qualidade

Adequar Padrões ao Projeto ( )

Selecionar Padrão de Interfaces do Usuário ( )

Selecionar Padrão de Módulos de Teste ( )

Selecionar Padrão de Documentação de Projeto ( )

Selecionar Padrão de Código ( )

Selecionar Padrão de Templates ( )

Selecionar Padrão de Diagramas ( )

Guia de Padrão deDocumentação

Guia de Padrão deDiagramas

Guia de Padrão deInterfaces do

Usuário

Guia de Padrão deCódigo

Guia de Padrão deMódulo de Teste

Guia de Padrão deTemplates

Seleção dePadrões

para o Projeto

FIGURA 4.20 - Pacote Seleções de Padrões para o Projeto.

Page 165: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

163

4.3.2.3.4 – Pacote Seleção da Documentação

O pacote Seleção da Documentação Figura 4.21, estabelece o processo de

escolha dos documentos que serão adotados no projeto, de forma a atender

seus requisitos metodológicos, de ciclo de vida e de implementação, dentro das

categorias de produto estabelecido para projetos pela organização e pelos

requisitos do contratante.

Page 166: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

164

Gerente da Qualidade - GQ

Plano daQualidade de

Software

Analista da Qualidade

Estabelecer Identificação da Documentação ( )

Estabelecer os Requisitos da Documentação ( )

Lista das Categoriasde Produtos

Manual doUsuário

Associar a Documentação a Categoria deProduto ( )

Contrato deProjeto

Lista dosProdutos

Seleção daDocumentação

Adequar a Documentação ( )

Política deDocumentação

Artefatos deSoftware

Modelo deCiclo de Vida

do Projeto

PolíticaOrganizacionalda Qualidade

Política deDocumentação

FIGURA 4.21 - Pacote Seleção da Documentação.

Page 167: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

165

4.3.2.3.5 – Pacote Definição da Política de Verificação e Validação no

Projeto

O pacote Definição da Política de Verificação e Validação no Projeto, Figura

4.22, estabelece a política de verificação e validação no projeto que deve ser

definida de acordo com as características do projeto, como a metodologia de

desenvolvimento, os marcos adotados como referência para o projeto, os

produtos e as atividades associadas a estes marcos, o Plano de Testes

definido no projeto e a integração dos módulos de software, o reuso de

componentes, entre outros aspectos. Também neste processo são

selecionados os produtos de apoio ao processo para o suporte as atividades de

verificação, validação e testes (checklists de Verificação e de Validação). É

importante frisar que o conceito de validação neste processo está fortemente

associado ao de teste, complementando as atividades de engenharia (ENG.8,

do padrão 15504, conforme Apêndice A) que define o processo de confirmação

de que o produto de software integrado satisfaz os requisitos definidos. Estas

atividades que são formalizadas nos planos do projeto (Plano da Qualidade e

no Plano de Projeto) e devem ter os produtos de desenvolvimento, os

chamados artefatos de software, devidamente selecionados para a realização

das atividades do Controle da Qualidade. O formulário (de avaliação de

produto) e o relatório (da qualidade) são os meios de divulgação dos resultados

obtidos com este processo.

Outra definição importante neste processo é estipular quando os produtos

devem ser verificados e validados. Dentro desta política pode ser estipulado,

por exemplo, que todos os artefatos de software devem, ao final de sua

confecção ou modificação, serem encaminhados à qualidade para efetuar as

verificações e validações formais e posteriormente encaminhados ao controle

de configuração.

Page 168: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

166

Gerente da Qualidade - GQ

Plano da Qualidadede Software

Definir Política de Verificação no Projeto ( )

Associar VV&T aos Marcos do Projeto ( )

Plano de Testes doSoftware

Formulário deAvaliação de

Produto

Analista da Qualidade

Selecionar Produtos Relacionados a Verificação ( )

Cheklist daVerificação

Selecionar Produtos Relacionados a Validação eTeste ( )

Plano de Testesdo Software

Plano da Qualidadede Software

Plano deDesenvolvimento de

Software

Cheklist daValidação

Definir Política de Validação e Testes noProjeto ( )

Artefatos deSoftware

Definição da Políticade Verificação e

Validação no Projeto

Relatório daQualidade

FIGURA 4.22 - Pacote Definição da Política de Verificação e Validação no

Projeto.

Page 169: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

167

4.3.2.3.6 – Pacote Definição da Política de Revisão Conjunta e Auditoria

no Projeto

O pacote Definição da Política de Revisão Conjunta e Auditoria no Projeto,

Figura 4.23, define a política de revisão conjunta e auditoria no projeto e a

vinculação de marcos de projeto a realização destas atividades. Uma revisão

conjunta, em particular só será realizada quando houver uma solicitação de

revisão (que poderá ocorrer ou não). As auditorias (física e funcional) devem

ocorrer obrigatoriamente ao final de cada marco estabelecido no projeto.

Devem também acontecer quando for estabelecido em planos do projeto, bem

como através de uma solicitação de revisão, utilizando para isto o mesmo

formulário de entrada do processo de revisão conjunta. Os produtos

associados a estas atividades (artefatos de software, por exemplo) também são

previamente selecionados e fazem parte dos produtos controlados pela

configuração do projeto. O formulário (de avaliação de produto) e os relatórios

(da auditoria, da qualidade e de sua avaliação) são os meios de divulgação dos

resultados obtidos com estes processos.

Outra definição importante neste processo é estipular quando os produtos

devem ser revisados e auditados. Dentro desta política pode ser estipulado, por

exemplo, que todos os Artefatos de Software devem, ao final do

desenvolvimento, no marco de entrega deve ser efetuada a auditoria de

entrega do produto.

Page 170: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

168

Gerente da Qualidade - GQ

Plano da Qualidadede Software

Definir Política de Auditoria no Projeto ( )

Plano deDesenvolvimento de

Software

Formulário deAvaliação de

Produto

Analista da Qualidade

Plano da Qualidadede Software

Associar Revisões e Auditorias a Marcos doProjeto ( )

Definir Política de Revisão Conjunta noProjeto ( )

Relatório daAuditoria

Associar Produtos Relacionados a RevisãoConjunta ( )

Associar Produtos Relacionados a Auditoria ( )

Artefatos deSoftware

Definição da Políticade Revisão Conjuntae Auditoria no Projeto

Relatório daAvaliação da

Qualidade

Contrato deProjeto

Solicitaçãode Revisão

Relatório daQualidade

FIGURA 4.23 - Pacote Definição da Política de Revisão Conjunta e Auditoria no

Projeto.

Page 171: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

169

4.3.2.3.7 - Pacote Extração dos Registros da Qualidade

O pacote Extração dos Registros da Qualidade, Figura 4.24, estabelece o

processo que extrai, de qualquer processo ou qualquer produto instanciado, os

registros necessários para a divulgação da qualidade. Este processo também

se encarrega de formatar e armazenar estes registros na forma de relatório

(Relatório da Qualidade e Relatório da Avaliação da Qualidade, por exemplo)

para consulta e manipulação, tanto no nível de projeto como no organizacional.

Pode ser desempenhado por qualquer membro do Time da Qualidade.

Time da Qualidade

Extrair Registos ( )

Extração dos Registrosda Qualdiade

Formulário deEncaminhamento de

Problemas

Armazenar Registros ( )

Relatório daQualidade

Formulário deAvaliação de

Produto

Relatório daAuditoria

Medições daQualidade

Relatório daAvaliação da

QualidadeArtefatos de

SoftwareProdutos da

Qualidade (apoio edesenvolvimento)

FIGURA 4.24 - Pacote Extração dos Registros da Qualidade.

Page 172: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

170

4.3.2.3.8 – Pacote Identificação de Não-Conformidades

O pacote Identificação de Não-Conformidades, Figura 4.25, estabelece o

processo de identificação de problemas, desvios e não conformidades

observadas pela qualidade durante sua atuação, atribuindo um grau de

severidade e providenciando o devido encaminhamento do problema para

solução. O Formulário de Encaminhamento de Problemas e o Relatório da

Qualidade são os produtos que contém os registros do problema observado. O

processo de Gerenciamento de Problema, CFG.3, do Grupo de Controle de

Configuração é quem tem a responsabilidade de solucionar o ocorrido.

Page 173: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

171

Gerente da Qualidade - GQ

Atribuir Severidade ( )

Time da Qualidade

Identificação deNão-Conformidades

Formulário deEncaminhamento de

Problemas

Encaminhar Problema ( )

Identificar Problema ou Não -Conformidade ( )

Formulário deEncaminhamento

de Problemas

Relatório daQualidade

Relatório daQualidade

Atribuir Severidade ( )

Encaminhar Problema ( )

FIGURA 4.25 - Pacote Definição dos Papéis da Qualidade no Projeto.

Page 174: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

172

4.3.3 - Pacote Controle da Qualidade

O pacote Controle da Qualidade é composto dos chamados processos

fundamentais da qualidade. São os processos básicos, ou seja, os processos

que ajudam outros processos, dando suporte às atividades tanto da qualidade

como do desenvolvimento nos projetos e na organização como um todo. Os

processos definidos pela Garantia da Qualidade e instanciados para um projeto

são, efetivamente, executados no Controle da Qualidade. São os passos que

um processo deve seguir, executados em uma seqüência lógica, para as

atividades da qualidade. As revisões e auditoria e a devida comunicação dos

resultados da qualidade aos envolvidos, são exemplos de processos do

Controle da Qualidade. Para isto, nesta seção, além do diagrama de pacote, é

usado o recurso do diagrama de caso de uso para representar o aspecto de

inter-relacionamento entre papéis e atividades do processo. Em alguns

processos, quando necessário, foi utilizado também o diagrama de atividades

para apresentar a visão dinâmica do processo.

4.3.3.1 - Objetivos e Requisitos Básicos do Pacote

O objetivo principal deste pacote é realizar as práticas básicas da qualidade,

tanto no nível de projeto como organizacional, de acordo com os requisitos

definidos pelo Gerenciamento e pela Garantia da Qualidade, de maneira que

os processos possam ser utilizados de forma eficiente e clara e que os

resultados obtidos possam ser avaliados e divulgados entre os envolvidos com

o projeto e com a qualidade. O pacote Controle da Qualidade tem como

principal objetivo assegurar que os produtos (e os processos) do trabalho (ou

parte dele), durante o desenvolvimento de um software ou, durante as

atividades organizacionais da qualidade, estejam sendo implementados

corretamente, baseando-se em métodos, padrões e políticas pré-definidas.

Os principais requisitos desse pacote são:

Page 175: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

173

Cada produto do trabalho e/ou serviço de um processo ou projeto deve refletir

apropriadamente seus requisitos especificados: um processo de verificação

deve ser implantando a fim de verificar se os produtos e/ou serviços avaliados

estão em conformidade com normas, padrões e convenções propostas para o

mesmo. Tem como objetivo garantir que os produtos (documentação e os

artefatos de software) estão sendo feitos conforme planejado e segundo os

padrões estabelecidos.

Os requisitos propostos para uso de um produto de software devem estar

satisfeitos: um processo de validação deve ser implantado, a fim de avaliar se

os requisitos definidos para um produto do trabalho ou processo

atendem/satisfazem seu uso proposto. Tem como objetivo garantir que os

produtos atendem os requisitos (funcionais e não funcionais).

Um entendimento comum entre os envolvidos nos produtos e processos deve

ser mantido: um processo de revisão conjunta deve ser implantado a fim de

avaliar, quando solicitado, os trabalhos ou produtos em desenvolvimento. Tem

como objetivo garantir que os envolvidos tenham um entendimento comum

sobre os produtos e serviços desenvolvidos em relação aos requisitos

acordados (definidos pelo cliente em contrato, por exemplo).

Os produtos e os processos devem ser avaliados, quando apropriado e de

forma independente, em relação a requisitos, planos e contratos: um processo

de auditoria deve ser implantado a fim de avaliar produtos e processos em

relação aos requisitos estabelecidos. Tem como objetivo principal realizar um

exame sistemático e independente, para determinar se as atividades da

qualidade e de configuração estão de acordo com as disposições planejadas,

se estas foram implementadas com eficácia e se são adequadas à consecução

dos objetivos do projeto.

Os resultados dos processos da qualidade devem ser divulgados: os registros

da qualidade devem ser tratados e endereçados aos envolvidos nos processos

e nos produtos. Tem por objetivo dar ciência sobre o andamento dos processos

Page 176: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

174

e produtos tanto no nível organizacional como no dos projetos em

desenvolvimento.

Os requisitos do Controle da Qualidade podem ser representados através do

diagrama de pacote, Figura 4.26, que abrange os processos relacionados com

esta categoria de processo.

Page 177: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

175

Controle daQualidade

Validação

Revisão Conjunta

Verificação

Auditoria

Comunicação dosResultados

FIGURA 4.26 - Pacote Controle da Qualidade.

4.3.3.2 - Papéis, Responsabilidades e Produtos Envolvidos no Pacote

O Gerente da Qualidade, nesse pacote fica responsável pela condução dos

processos, abrindo e fechando os processos, dando pareceres e, no caso de

problemas, encaminhando para as devidas providências. Os principais

produtos de trabalho envolvidos neste processo são os documentos de apoio,

Formulário de Avaliação de Produto, a Solicitação de Revisão, o Relatório de

Auditoria, o Formulário de Encaminhamento de Problemas e o Modelo de Ciclo

de Vida. No caso dos documentos de desenvolvimento, o Gerente da

Qualidade se envolve em todos eles, mas somente de forma a dirigir alguma

solicitação de seu time. O diagrama de classes da Figura 4.27 mostra o

Page 178: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

176

relacionamento entre o Gerente da Qualidade e os produtos associados como

o pacote Controle da Qualidade.

1*

1

*

1

*

1

*

Produtos daQualidade

(desenvolvimento)

Gerenteda

Qualidade

Plano daQualidade de

Software

Documento deProjeto

Plano deDesenvolvimento

de Software

1

*

1

*

1

*

Formulário deAvaliação de

Produto

Solicitaçãode Revisão

Relatório daAuditoria1 *Produtos da

Qualidade(apoio)

Formulário deEncaminhamento

de Problemas

Modelo deCiclo de Vida

do Projeto

1

*

Plano deTestes

Especificaçãode Requisitos

1

*

1

*

Manual doUsuário

Artefatos deSoftware

FIGURA 4.27 – Os produtos envolvidos com o Gerente da Qualidade no pacote

Controle da Qualidade.

Page 179: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

177

O Revisor, neste processo fica responsável pela execução das verificações e

revisões conjuntas, definindo checklists, associados, dando pareceres e, no

caso de problemas, encaminhando para as devidas providências. Os principais

produtos de trabalho envolvidos neste processo são os documentos de apoio,

Formulário de Avaliação de Produto, a Solicitação de Revisão, o Relatório de

Auditoria, o Relatório da Qualidade e de sua avaliação, o Formulário de

Encaminhamento de Problemas e o Modelo de Ciclo de Vida. No caso dos

documentos de desenvolvimento, o Revisor se envolve em todos eles,

realizando a revisão propriamente dita tanto nos documentos como nos

artefatos de software. O diagrama de classes da Figura 4.28 mostra o

relacionamento entre o Gerente da Qualidade e os produtos associados como

o pacote Controle da Qualidade.

Page 180: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

178

1*

1

*

1

*

1

*

Produtos daQualidade

(desenvolvimento)

Revisorda

Qualidade

Plano daQualidade de

Software

Documento deProjeto

Plano deDesenvolvimento

de Software

1

*

1

*

1

*

Formulário deAvaliação de

Produto

Solicitaçãode Revisão

Relatório daAuditoriaProdutos da

Qualidade(apoio)

Formulário deEncaminhamento

de Problemas

Modelo deCiclo de Vida

do Projeto

1

*

Plano deTestes

Especificaçãode Requisitos

1

*

1

*

Manual doUsuário

Artefatos deSoftware

Cheklist daVerificação

Cheklist daRevisãoConjunta

Relatório daQualidade

Relatório daAvaliação da

Qualidade

1

*

1

*

1

*

Medições daQualiadade

1

*

1

*

1*

FIGURA 4.28 – Os produtos envolvidos com o Revisor no pacote Controle da

Qualidade.

Page 181: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

179

O Testador, neste processo fica responsável pela execução das validações dos

produtos em relação aos requisitos propostos. Os principais produtos de

trabalho envolvidos neste processo são os documentos de apoio Formulário de

Avaliação de Produto, o Relatório de Auditoria, o Relatório da Qualidade e de

sua avaliação e o Formulário de Encaminhamento de Problemas. No caso dos

documentos de desenvolvimento, o Testador se envolve principalmente como o

Documento de Especificação de Requisitos e o Plano de Testes e os artefatos

de software a serem testados. O diagrama de classes da Figura 4.29 mostra o

relacionamento entre o Testador e os produtos associados como o pacote

Controle da Qualidade.

Page 182: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

180

1

*

1

*

1

*

Produtos daQualidade

(desenvolvimento)

Testadorda

Qualidade

Plano daQualidade de

Software

1

*

1

*

1

*

Formulário deAvaliação de

Produto

Produtos daQualidade

(apoio)

Formulário deEncaminhamento

de Problemas

Especificaçãode Requisitos

Artefatos deSoftware

Cheklist daValidação

Relatório daQualidade

Relatório daAvaliação da

Qualidade

1

*

Medições daQualiadade

1

*

1

*

Plano deTestes

FIGURA 4.29 – Os produtos envolvidos com o Testador no pacote Controle da

Qualidade.

Page 183: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

181

O Auditor, neste processo fica responsável pela execução das auditorias

solicitadas e nas estabelecidas nos marcos do projeto. Os principais produtos

de trabalho envolvidos neste processo são o Relatório de Auditoria, o Relatório

da Qualidade e de sua avaliação e o Formulário de Encaminhamento de

Problemas. No caso dos documentos de desenvolvimento, o Revisor se

envolve com todos eles, dos documentos de projeto como os artefatos de

software. O diagrama de classes da Figura 4.30 mostra o relacionamento entre

o Revisor e os produtos associados como o pacote Controle da Qualidade.

1

*

1

*

1

*

Produtos daQualidade

(desenvolvimento)

Auditorda

Qualidade

Plano daQualidade de

Software

Documentode Projeto

Plano deDesenvolvimento

de Software

1

*

1

*

Relatório daAuditoria

Produtos daQualidade

(apoio)

Formulário deEncaminhamento

de Problemas

1

*

Especificaçãode Requisitos

1

*

1

*

Manual doUsuário

Artefatos deSoftware Cheklist da

Auditoria

Relatório daQualidade

Relatório daAvaliação da

Qualidade

1

*

1

*

Plano deTestes

1

*

FIGURA 4.30 – Os produtos envolvidos com o Auditor no pacote Controle da

Qualidade.

Page 184: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

182

4.3.3.3 - Atividades do Pacote

Os diagramas de pacote, caso de uso e de atividades do Controle da

Qualidade agrupam as atividades, os papéis e os produtos do trabalho de

acordo com os elementos comuns das práticas fundamentais da qualidade,

proporcionando apoio as diferentes atividades da qualidade envolvidas na

organização e nos projetos. Com a utilização destes processos é possível

realizar as atividades básicas propostas pela gerência da qualidade, qual seja

revisões e auditorias, coleta e divulgação de resultados e encaminhamento de

não-conformidades.

É importante frisar que as atividades, papéis e produtos envolvidos nestes

processos são o conjunto mínimo necessário para o desenvolvimento de um

projeto do ponto de vista do funcionamento da qualidade. Fica, qualquer

alteração, sujeita a uma proposta de criação ou de melhoria de processo no

nível de Garantia da Qualidade.

4.3.3.3.1 - Pacote Verificação

O pacote Verificação, Figura 4.31, estabelece o processo que verifica se os

produtos avaliados estão em conformidade com normas, padrões e

convenções propostas para os mesmos. Tem como objetivo garantir que os

produtos de desenvolvimento (documentação e os artefatos de software) estão

sendo feitos conforme planejado e segundo os padrões estabelecidos. O

processo de verificação também pode ser utilizado para verificar se os produtos

de apoio foram feitos segundo os padrões estabelecidos.

Page 185: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

183

Gerente da Qualidade - GQ

Conduzir Verificação ( )

Formulário deAvaliação de Produto

Revisor

Verificar Produto ( )

Cheklist daVerificação

Relatar Resultados ( )

Artefatos deSoftware

Verificação

Relatório daQualidade

Artefatos deSoftware

Formulário deAvaliação de Produto

Encaminhar Problemas ( )

Encaminhar Problemas ( )

FIGURA 4.31 - Pacote Verificação.

Page 186: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

184

O diagrama de caso de uso Verificar Produto, Figura 4.32, detalha os

envolvidos nas atividades de verificação. O Gerente da Qualidade e o Revisor

são os responsáveis pela condução da verificação e pelo menos um, deve em

caso de não-conformidade do produto em verificação, encaminhar o problema

para solução. Um Agente Mensageiro fica responsável por relatar os

resultados. O Responsável pelo Produto, bem como o Gerente de Projeto,

atuam passivamente, acompanhando a execução do processo. Em casos de

não-conformidade ou problemas, o Gerente da Qualidade ou o Revisor

encaminha o problema para solução.

*

*

Revisor

Gerente daQualidade

ConduzirVerificação

Relatar Resultados

**

Responsável peloProduto

*

*

*

*

*

*

<<perform>>

<<perform>>

<<perform>>

<<perform>> <<assist>>

<<assist>>

*

*

<<perform>>

<<assist>>

* *

*

*

Gerente deProjeto

<<assist>>

<<perform>>

*

*

<<assist>>

EncaminharProblemas

AgenteMensageiro

<<assist>>

FIGURA 4.32 - Diagrama de caso de uso Verificar Produto.

A WorkDefinition Conduzir Verificação pode ser representada pelo diagrama

de atividades, Figura 4.33, compreendendo as seguintes atividades:

Page 187: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

185

Atividade 1: Encaminhar Produto. O Responsável pelo Produto encaminha ao

Ambiente Integrado seu Artefato de Software para o devido controle.

Atividade 2: Abrir Verificação. Um código é atribuído pelo Gerente da

Qualidade ao Formulário de Avaliação de Produto, relacionando-o com o

Produto do Trabalho a ser verificado e os envolvidos são notificados (o

Responsável pelo Produto, o Revisor e o Gerente do Projeto).

Atividade 3: Definir Critérios da Verificação. O Revisor estabelece com a ajuda

de seus modelos de checklist (de Código, por exemplo), quais serão os

critérios a serem verificados para o devido registro no Formulário de Avaliação.

Atividade 4: Verificar Produto. A verificação consiste na investigação do

produto em questão pelo Revisor, que será feita através do confronto entre o

produto e os critérios estabelecidos no Formulário de Avaliação, para a

extração dos resultados. Quaisquer dúvidas ou observações necessárias são

imediatamente informadas ao Responsável pelo Produto para solução.

Atividade 5: Solucionar Dúvidas. Esta atividade só ocorrerá quando surgirem

dúvidas por parte do Revisor sobre o entendimento do Produto avaliado. O

Responsável pelo Produto deve dirimir qualquer dúvida para continuar o

andamento do processo.

Atividade 6: Emitir Parecer. Ao final, o Revisor preenche o Formulário de

Avaliação com seu parecer, que é encaminhado ao Gerente da Qualidade para

seu parecer final.

Atividade 7: Fechar Verificação. O processo é encerrado e a WorkDefiniton

Relatar Resultados é instanciada, informando aos envolvidos sobre os

resultados da Verificação. Em caso de parecer de conformidade o Responsável

pelo Produto e o Gerente do Projeto devem ser informados. No caso de não-

conformidade a WorkDefiniton Encaminhar Problemas deve ser instanciada.

Page 188: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

186

Gerente daQualidade

Responsávelpelo Produto

Artefato deSoftware

Abrir Verificação

Form Avaliação deProduto

(código de identificação)Definir Critérios da

Verificação

Revisor

Form Avaliação deProduto

(critérios estabelecidos)

Verificar ProdutoSolucionarDúvidas solução não

OK

FecharVerificação

Form Avaliação deProduto

(parecer)

soluçãoOK

EncaminharProduto

dúvida

Chekclist deVerificação

Emitir Parecer

Form Avaliação deProduto

(parecer final)

FIGURA 4.33 - Diagrama de atividades Conduzir Verificação.

Page 189: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

187

4.3.3.3.2 - Pacote Validação

O pacote Validação, Figura 4.34, estabelece o processo que avalia se os

requisitos definidos para um produto de desenvolvimento atende/satisfaz seu

uso proposto. Este pacote engloba tanto a validação de um diagrama, como

também testes de código implementado. No caso de testes, este processo está

relacionado ao processo de engenharia Teste de Software. Isto significa que o

processo Validação para testes de software deve incorporar suas

funcionalidades ao processo de Engenharia (ENG.8, Teste de Software e

ENG.11, Teste de Sistema) que não são descritas neste processo.

Basicamente, a Validação tem por objetivo garantir que os produtos atendam

os requisitos funcionais e não funcionais definidos pelo projeto e pela

qualidade.

Page 190: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

188

Gerente da Qualidade - GQ

Conduzir Validação ( )

Formulário deAvaliação de Produto

Testador

Validar Produto ( )

Cheklist daValidação

Relatar Resultados ( )

Artefatos deSoftware

Validação

Relatório daQualidade

Artefatos deSoftware

Formulário deAvaliação de Produto

Encaminhar Problemas ( )

Encaminhar Problemas ( )

Plano de Teste

FIGURA 4.34 - Pacote Validação.

Page 191: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

189

O diagrama de caso de uso Validar Produto, Figura 4.35, detalha os envolvidos

nas atividades de validação. O Gerente da Qualidade e o Testador são os

responsáveis pela condução da validação e pelo menos um deve, em caso de

não-conformidade do produto em validação, encaminhar o problema para

solução. Um Agente Mensageiro fica responsável por relatar os resultados e o

Responsável pelo Produto, bem como o Gerente de Projeto, atuam

passivamente, acompanhando a execução do processo. Em casos de não-

conformidade ou problemas, o Gerente da Qualidade ou o Testador encaminha

o problema para solução.

*

*

Gerente deProjeto

Testador

Gerente daQualidade

<<perform>>

ConduzirValidação

EncaminharProblemas

RelatarResultados

* *

Responsável peloProduto

*

*

*

*

*

*

<<perform>>

<<perform>>

<<perform>>

<<perform>>

<<assist>>

<<assist>>

<<assist>>

* *

*

*

<<perform>>

*

*

*

*

<<assist>>

<<assist>>

*

*

AgenteMensageiro

<<assist>>

FIGURA 4.35 - Diagrama de caso de uso Validar Produto.

Page 192: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

190

A WorkDefinition Conduzir Validação pode ser representada pelo diagrama de

atividades, Figura 4.36, compreendendo as seguintes atividades:

Atividade 1: Encaminhar Produto. O Responsável pelo Produto encaminha ao

Ambiente Integrado seu Artefato de Software para o devido controle.

Atividade 2: Abrir Validação. Um código é atribuído pelo Gerente da Qualidade

ao Formulário de Avaliação de Produto, relacionando-o com o Produto do

Trabalho a ser validado e os envolvidos são notificados (o Responsável pelo

Produto, o Testador e o Gerente do Projeto).

Atividade 3: Associar Produtos a Validação. O Testador estabelece quais são

os produtos associados à validação, como o checklist de Validação, bem como

o Plano de Teste, quando for uma validação relacionada a código. Estes

produtos devem ser as ferramentas de auxílio ao processo e deve ser

registrado o seu uso no Formulário de Avaliação.

Atividade 4: Testar/Validar Produto. A validação consiste na investigação do

produto pelo Testador, que é feita através do confronto entre as

funcionalidades do produto avaliado e seu uso pretendido. Isto pode abranger

deste um diagrama (se atende ao seu uso específico) ao produto de software

integrado (se atende aos requisitos contratados). Quaisquer dúvidas ou

observações necessárias são imediatamente informadas ao Responsável pelo

Produto para solução.

Atividade 5: Solucionar Dúvidas. Esta atividade só ocorrerá quando surgirem

dúvidas por parte do Testador sobre o entendimento do Produto avaliado ou

sobre recursos necessários para avaliar o produto. O Responsável pelo

Produto deve dirimir qualquer dúvida para permitir a continuação do processo.

Atividade 6: Emitir Parecer. Ao final, o Testador preenche o Formulário de

Avaliação com seu parecer, que é encaminhado ao Gerente da Qualidade para

seu parecer final.

Page 193: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

191

Atividade 7: Fechar Validação. O processo é encerrado e a WorkDefiniton

Relatar Resultados é instanciada, informando aos envolvidos sobre os

resultados da Validação. Em caso de parecer de conformidade o Responsável

pelo Produto e o Gerente do Projeto devem ser informados. No caso de não-

conformidade a WorkDefiniton Encaminhar Problemas deve ser instanciada.

Page 194: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

192

Gerente daQualidade

Responsávelpelo Produto

Artefatos deSoftware

Abrir Validação

Form Avaliação de Produto

(código de identificação)Associar Produtos a

Validação

Testador

Testar/ValidarProduto

Analisar Resultados

FecharValidação

Form Avaliaçãode Produto(parecer)

EncaminharProduto Chekclist de

Validação

Emitir Parecer

Form Avaliação de Produto

(parecer final)

Plano deTeste

FIGURA 4.36 - Diagrama de atividades Conduzir Validação.

Page 195: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

193

4.3.3.3.3 - Pacote Revisão Conjunta

O pacote Revisão Conjunta, Figura 4.37, estabelece o processo que mantém o

entendimento comum entre os envolvidos nos produtos (de desenvolvimento e

apoio) e processos. Este processo é iniciado quando um dos envolvidos, o

cliente, por exemplo, solicita uma revisão (técnica ou de procedimento) a fim de

entender ou avaliar produtos ou processos. Além do significado de revisão,

para uniformizar o entendimento entre os envolvidos, a Revisão Conjunta pode

ter o mesmo procedimento de uma Verificação como de uma Validação ou

como uma Auditoria, só que fora do previsto pela política estabelecida no Plano

da Qualidade. Deverá ocorrer uma solicitação formal (poderá partir de qualquer

envolvido no projeto), através do formulário de Solicitação de Revisão, pedindo

(por exemplo) uma verificação de produto expondo os motivos desta

solicitação. Será destinado ao Gerente de Projeto, que caso julgue procedente,

encaminha ao Gerente da Qualidade. O documento que acompanhará a

Revisão Conjunta será o Relatório da Auditoria.

Page 196: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

194

Gerente da Qualidade - GQ

Conduzir Revisão Conjunta ( )

Relatório daAuditoria

Revisor

Revisar ( )

Cheklist daRevisãoConjunta

Relatar Resultados ( )

Revisão Conjunta

Relatório daQualidade

Solicitação deRevisão

Encaminhar Problemas ( )

Encaminhar Problemas ( )

Produtos da Qualidade(desenvolvimento e

apoio)Relatório da

Auditoria

Produtos daQualidade

(desenvolvimento eapoio)

FIGURA 4.37 - Pacote Revisão Conjunta.

Page 197: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

195

O diagrama de caso de uso Revisar Produto/Processo, Figura 4.38, detalha os

envolvidos nas atividades de revisão. Qualquer envolvido, neste processo

chamado de Cliente, pode solicitar ao Gerente de Projeto uma Revisão

Conjunta. É ele que verifica a pertinência da solicitação O Gerente da

Qualidade é que conduz a revisão e o Revisor quem realiza as ações

corriqueiras de revisar. Um Agente Mensageiro é quem apresenta os

resultados. Ao final todos devem dar seu parecer para o fechamento da

revisão. Em casos de não-conformidade ou problemas, o Gerente da

Qualidade ou o Revisor encaminha o problema para solução.

*

*

Gerente deProjeto

Revisor

Gerente daQualidade

ConduzirRevisãoConjunta

RelatarResultados

*

*

Gerente daConfiguração

*

*

*

*

*

*

*

*<<perform>>

<<perform>>

<<perform>>

<<assist>>

<<assist>>*

*

*

*

<<perform>>

Cliente

*

*<<assist>>

*

*

*

*

Solicitar RevisãoConjunta

<<perform>>

*

*

*

*

<<perform>><<perform>>

<<perform>>

EncaminharProblemas

<<perform>>

AgenteMensageiro

<<assist>>

<<assist>>

<<assist>>

FIGURA 4.38 - Diagrama de caso de uso Revisar Produto/Processo.

Page 198: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

196

A WorkDefinition Conduzir Revisão Conjunta pode ser representada pelo

diagrama de atividades, Figura 4.39, compreendendo as seguintes atividades:

Atividade 1: Solicitar Revisão Conjunta. O Cliente solicita uma revisão expondo

seus motivos. O Gerente de Projeto avalia a pertinência do pedido. Caso seja,

encaminha ao Gerente da Qualidade. Caso não, devolve ao Cliente a

solicitação.

Atividade 2: Abrir Revisão Conjunta. Um código é atribuído pelo Gerente da

Qualidade ao Relatório de Auditoria, relacionando-o com o Produto do Trabalho

ou Processo a ser revisado e os envolvidos são notificados (o Cliente, O

Gerente da Configuração, o Gerente do Projeto e o Revisor).

Atividade 3: Associar Produtos a Revisão. O Revisor estabelece quais são os

produtos associados a revisão, como o checklist de Revisão Conjunta, bem

como os Artefatos de Software relacionados. Estes produtos devem ser as

ferramentas de auxílio ao processo e deve ser registrado o seu uso no

Relatório de Auditoria.

Atividade 4: Revisar. A revisão consiste na investigação da solicitação de

revisão, analisando o produto (ou processo) envolvido. Esta revisão pode ser

feita através da busca de um entendimento comum sobre o objeto da revisão, a

detecção de alguma não-conformidade de procedimentos, ou meramente para

avaliar o estado atual do andamento dos trabalhos. Ela pode abranger também,

a análise de diagramas (proporcionar um entendimento de uso) ou os

procedimentos adotados para um processo (se atende ao uso pretendido).

Atividade 5: Apresentar Resultados. Esta atividade apresenta os resultados da

revisão, com o parecer do Revisor e endosso das partes envolvidas.

Atividade 6: Emitir Parecer. Ao final, todos os envolvidos como o Cliente, o

Gerente da Configuração, o Gerente de Projeto e o Gerente da Qualidade

preenchem o Relatório da Auditoria com seu parecer.

Page 199: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

197

Atividade 7: Fechar Revisão Conjunta. O processo é encerrado e a

WorkDefiniton Relatar Resultados é instanciada, informando a todos os

interessados (além dos participantes envolvidos) sobre os resultados da

Revisão. Caso na Revisão apareça alguma não-conformidade a

WorkDefiniton Encaminhar Problemas deve ser instanciada.

Page 200: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

198

Gerente daQualidade

Cliente

Solicitaçãode Revisão(solicitação)

Solicitar RevisãoConjunta

Associar Produtos aRevisão

Revisor

Revisar

Apresentar Resultados

Fechar RevisãoConjunta

Relatório de Auditoria(parecer dos envolvidos)

Gerente deProjeto

Relatório de Auditoria(código de identificação)

Cheklist deRevisão Conjunta

Artefatos deSoftware

Emitir ParecerEmitir ParecerEmitir Parecer

Abrir RevisãoConjunta

Relatório de Auditoria(parecer do Revisor)

GerentedaConfiguração

Emitir Parecer

pertinentenão pertinente

FIGURA 4.39 - Diagrama de atividades Conduzir Revisão Conjunta.

Page 201: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

199

4.3.3.3.4 - Pacote Auditoria

O pacote Auditoria, Figura 4.40, estabelece o processo que avalia de forma

independente produtos e os processos, em relação a requisitos, planos e

contratos. O processo de auditoria é instanciado a fim de avaliar produtos (de

desenvolvimento e apoio) e processos em relação aos seus requisitos tanto no

nível organizacional como de projeto. A auditoria realiza um exame sistemático

e independente, determinando se as atividades da qualidade e de configuração

estão de acordo com as disposições planejadas, se estas foram

implementadas com eficácia e se são adequadas à consecução dos objetivos

do projeto. Pode-se citar como principais auditorias, a de configuração

Funcional (para verificar se todos os requisitos foram atendidos), e a de

configuração Física (para verificar que o software e sua documentação estão

completos e prontos para a entrega). Uma vez alcançada uma determinada

configuração de projeto (marco) a ser auditada, prevista no Plano de

Desenvolvimento, a auditoria deverá ser realizada. A solicitação esporádica de

uma auditoria também pode ocorrer, devendo seguir os mesmos

procedimentos das auditorias planejadas.

Page 202: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

200

Gerente da Qualidade - GQ

Conduzir Auditoria ( )

Relatório daAuditoria

Auditor

Auditar ( )

Cheklist daAuditoria

Relatar Resultados ( )

Auditoria

Relatório daQualidade

Relatório daAuditoria

Encaminhar Problemas ( )

Encaminhar Problemas ( )

Produtos da Qualidade(desenvolvimento e

apoio)

Produtos da Qualidade(desenvolvimento

e apoio)

Liberar Item Auditado ( )

Modelo de Ciclode Vida do Projeto

FIGURA 4.40 - Pacote Auditoria.

Page 203: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

201

O diagrama de caso de uso Auditar Produto/Processo, Figura 4.41, detalha os

envolvidos nas atividades de auditoria. Uma Auditoria de Produto acontece ao

final do desenvolvimento dos produtos relacionados a um marco de projeto. É

instanciada a auditoria para avaliar se os produtos deste marco atendem a

seus requisitos estabelecidos e se estão em conformidade com os contratos,

planos e políticas estabelecidas. O Gerente da Qualidade é quem conduz a

auditoria. O Cliente é aquele a quem o produto será entregue (externo o u

interno a organização) e deverá, ao final do processo, emitir seu parecer de

aceite. O Gerente de Projeto acompanha a Auditoria e ao final do processo

também emite seu parecer. O Auditor é quem audita o produto/processo e dá

seu parecer primeiramente O Gerente da Configuração também tem que dar

seu parecer ao final do processo bem como o Gerente da Qualidade, que além

do parecer, fecha a auditoria. Um Agente Mensageiro é quem apresenta os

resultados. Em casos de não-conformidade ou problemas, o Gerente da

Qualidade ou o Auditor encaminha o problema para solução.

*

*Gerente de

Projeto

Auditor

Gerente daQualidade

ConduzirAuditoria

RelatarResultados

*

*

Gerente daConfiguração

*

*

*

*

*

*

<<perform>>

<<perform>>

<<perform>>

<<perform>>

<<assist>>

<<assist>>

*

*

*

*

<<perform>>

Cliente

*

*

* *

*

*

<<assist>>

Liberar ItemAuditado

<<perform>>

<<perform>>

<<perform>>

<<perform>>

<<perform>>

<<perform>>

<<perform>>

EncaminharProblemas

AgenteMensageiro

<<assist>>

<<assist>>

FIGURA 4.41 - Diagrama de caso de uso Auditar Produto/Processo.

Page 204: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

202

A WorkDefinition Conduzir Auditoria pode ser representada pelo diagrama de

atividades, Figura 4.42, compreendendo as seguintes atividades:

Atividade 1: Abrir Auditoria. Um código é atribuído pelo Gerente da Qualidade

ao Relatório de Auditoria, relacionando-o com o marco de desenvolvimento

alcançado e os Artefatos de Software (ou Processo) a ser auditado. Os

envolvidos são notificados (o Cliente, O Gerente da Configuração, o Gerente

do Projeto e o Auditor).

Atividade 2: Associar Produtos a Auditoria. O Auditor estabelece quais são os

produtos associados à auditoria, como o Checklist de Auditoria, bem como os

Artefatos de Software relacionados. Estes produtos devem ser as ferramentas

de auxílio ao processo para o devido registro no Relatório de Auditoria.

Atividade 3: Auditar. A revisão consiste na investigação do produto (ou

processo) pelo Auditor. No caso do marco de entrega de produto, a auditoria é

feita através do confronto dos itens (garantir que todos estão prontos) a serem

entregues nesta fase e da garantia de sua funcionalidade em relação aos

requisitos estabelecidos.

Atividade 4: Apresentar Resultados. Esta atividade apresenta os resultados da

auditoria, com o parecer do Auditor para avaliação das partes envolvidas.

Atividade 5: Emitir Parecer. Ao final, todos os envolvidos como o Cliente, o

Gerente da Configuração, o Gerente de Projeto, e o Gerente da Qualidade

preenchem o Relatório da Auditoria com seus pareceres.

Atividade 6: Fechar Revisão Conjunta. O processo é encerrado e a

WorkDefiniton Relatar Resultados é instanciada, informando a todos os

interessados (além dos envolvidos) sobre os resultados da Auditoria. Caso na

Auditoria apareça alguma não-conformidade a WorkDefiniton Encaminhar

Problemas deve ser instanciada.

Page 205: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

203

Gerente daQualidade

Cliente

Associar Produtos aAuditoria

Revisor

Auditar

Apresentar Resultados

Fechar Auditoria

Relatório de Auditoria(parecer dos envolvidos)

Gerente deProjeto

Relatório de Auditoria(código de identificação)

Cheklist deAuditoria

Artefatos deSoftware

Emitir ParecerEmitir ParecerEmitir Parecer

Abrir Auditoria

Relatório de Auditoria(parecer do Auditor)

GerentedaConfiguração

Emitir Parecer

FIGURA 4.42 - Diagrama de atividades Conduzir Auditoria.

Page 206: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

204

4.3.3.3.5 - Pacote Comunicação dos Resultados

O pacote Comunicação dos Resultados, Figura 4.43, estabelece o processo de

divulgação dos resultados da qualidade, na forma de seus registros extraídos

durante o processo instanciado. Esta comunicação deve ser feita por um

Agente Mensageiro do Ambiente Integrado (automatizado ou não) que

endereça as informações aos envolvidos no processo ou nos produtos

relacionados, bem como àqueles a quem o planos ou políticas previamente

determinarem.

Agente Mensageiro

Endereçar Registros ( )

Comunicação dosResultados

Notificar Envolvidos ( )

Relatório daQualidade

Relatório daAuditoria

Relatório daAvaliação da

Qualidade

Formulário deAvaliação de

Produto

Medições daQualidade

Formulário deEncaminhamento de

Problemas

FIGURA 4.43 - Pacote Comunicação dos Resultados.

Page 207: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

205

O diagrama de caso de uso Comunicar Resultados, Figura 4.44, detalha os

envolvidos nas atividades de comunicação dos resultados da qualidade de um

projeto ou da organização como um todo. O Agente Mensageiro é que se

encarregará de endereçar o resultado, que pode ser o Relatório da Qualidade

ou outro documento qualquer, ao(s) envolvido(s) no processo conforme

definido. Neste caso de uso foram apenas representados os envolvidos mais

diretos nos processos da Qualidade. No caso de informar outro participante, só

é necessário o fornecimento de seu endereço eletrônico.

*

*

Gerente deProjeto

Time daQualidade

Analista deProblemas

NotificarEnvolvidos

Gerente daConfiguração

<<perform>>

<<perform>>

<<assist>>

<<assist>>

*

*

Cliente

*

*

*

*

<<assist>>

EndereçarRegistros

AgenteMensageiro

<<assist>>

<<assist>>

FIGURA 4.44 - Diagrama de caso de uso Comunicar Resultados.

Page 208: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

206

4.3.4 - Pacote Qualidade de Produto

O pacote Qualidade de Produto é composto pelos processos que garantem a

qualidade de um produto com relação a sua usabilidade, por parte tanto dos

envolvidos com seu desenvolvimento como com seu uso proposto, como

também os processos relacionados com o exame sistemático do produto pela

qualidade. Envolve basicamente dois grandes pacotes, o de Usabilidade e de

Avaliação de Produto. A Usabilidade fica responsável por garantir que os

interesses e necessidades dos envolvidos estão de acordo com o uso

pretendido do produto, incluindo nisso questões como produtividade, qualidade

do produto, redução no índice de rejeição e melhoria do trabalho humano. A

Avaliação de Produto se propõe a garantir, através de um exame e medição

sistemática, que um produto atende os requisitos para qual foi proposto, tanto a

nível funcional como de utilização.

4.3.4.1 - Objetivos e Requisitos Básicos do Pacote

O objetivo principal deste pacote é realizar as práticas básicas da qualidade do

produto, de maneira que os produtos possam ser examinados, avaliados e

utilizados de forma que atenda seu uso pretendido. O produto deve ser usado

de forma eficiente e confortável para o usuário, e que os resultados dos

processos possam ser avaliados e utilizados para estabelecer critérios de

melhoria constante para a qualidade de produto.

Os principais requisitos deste pacote são:

O desenvolvimento do produto deve atender as necessidades do usuário: o

processo deve levar em conta as exigências e necessidades dos usuários e

levar em conta sua capacidade humana e limitações: técnicas. Tem como

objetivo garantir que os produtos serão feitos de forma a atender os requisitos

de usabilidade.

Page 209: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

207

Fatores humanos, ergonômicos e do conhecimento devem ser considerados:

questões como interface homem-máquina e outros aspectos relacionados a

atividades centradas no homem, devem ser consideradas para se alcançar os

objetivos propostos para o uso do produto ou do sistema.

Um entendimento comum entre os envolvidos nos produtos e processos deve

ser mantido: um processo de revisão conjunta deve ser implantado a fim de

avaliar, quando solicitado, os trabalhos ou produtos em desenvolvimento. Tem

como objetivo garantir que os envolvidos tenham um entendimento comum

sobre os produtos e serviços desenvolvidos em relação aos requisitos

acordados (definidos pelo cliente em contrato, por exemplo).

O produto deve atender seu uso proposto: o sistema deve atender seu uso

proposto de forma efetiva, eficiente e satisfatória.

O produto deve ser avaliado: devem ser estabelecidos critérios, modelos,

métodos e medidas para a avaliação de produto. Tem como objetivo principal

realizar um exame sistemático no produto a fim de verificar se o mesmo atende

seu uso pretendido e de forma satisfatória às necessidades da qualidade.

Os resultados da avaliação do produto devem ser analisados e divulgados: os

resultados da avaliação qualidade devem ser analisados contra critérios bem

definidos e os resultados devem ser disseminados aos envolvidos. Tem por

objetivo verificar se os critérios da qualidade de produto foram atendidos e dar

ciência aos participantes sobre o andamento das atividades da qualidade de

produto.

Os requisitos do pacote Qualidade de Produto podem ser representados

através do diagrama de pacote, Figura 4.45, que abrange os processos

relacionados com esta categoria de processo.

Page 210: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

208

Qualidade deProduto

Avaliação deProduto

Usabilidade

FIGURA 4.45 - Pacote Qualidade de Produto.

Page 211: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

209

4.3.4.2 - Papéis, Responsabilidades e Produtos Envolvidos no Pacote

O Gerente da Qualidade, neste pacote fica responsável pelo estabelecimento

dos requisitos gerais de usabilidade e de avaliação de produto, pela

identificação do modelo da qualidade a ser adotado e por especificar os

métodos para avaliação de produto. Além disso, o Gerente também é

responsável por definir e priorizar as soluções de usabilidade em projetos e por

implementar um treinamento voltado a usabilidade para a equipe de

desenvolvimento. Os principais produtos de trabalho envolvidos neste processo

são a Política Organizacional e a Política de Treinamento da Qualidade, o

Plano de Avaliação de Produto, o Formulário de Avaliação de Produto e o

Plano da Qualidade de Software. O diagrama de classe da Figura 4.46 mostra

o relacionamento entre o Gerente da Qualidade e os produtos associados

como o pacote Qualidade de Produto.

1

*

PolíticaOrganizacionalda Qualidade

Política deTreinamento da

Qualidade

1

*

Plano deAvaliação de

Produto

Formulário deAvaliação de Produto

1

*

Produtos daQualidade

(apoio)

Gerenteda

Qualidade

1 *

1

*

Plano daQualidade

de Software

Produtos daQualidade

(desenvolvimento)

FIGURA 4.46 – Os produtos envolvidos com o Gerente da Qualidade no pacote

Qualidade de Produto.

Page 212: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

210

O Analista da Qualidade, neste pacote fica responsável por definir a tipologia e

as necessidades das pessoas envolvidas com o produto, pela implementação

do projeto com relação aos aspectos de solução da interface com o homem e

por implementar os mecanismos de assistência aos usuários e

desenvolvedores, no que diz respeito ao treinamento, assistência através de

centrais de atendimento ou qualquer outro mecanismo de auxílio a usuário e

desenvolvedores nas questões de uso e avaliação de produto. Os principais

produtos de trabalho envolvidos neste pacote são o Plano de Avaliação de

Produto, o Guia de Usabilidade e o Formulário de Avaliação de Produto. O

diagrama de classe da Figura 4.47 mostra o relacionamento entre o Analista da

Qualidade e os produtos associados como o processo Qualidade de Produto.

1

*

Plano deAvaliação de

Produto

Formuláriode Avaliaçãode Produto

1

*

Produtos daQualidade

(apoio)

Analistada

Qualidade

Guia deUsabilidade

1

*

FIGURA 4.47 – Os produtos envolvidos com o Analista da Qualidade no pacote

Qualidade de Produto.

Page 213: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

211

O Revisor, neste pacote fica responsável por validar os requisitos de

usabilidade em projetos de software, por especificar medidas e critérios para a

avaliação, realizar a avaliação de produto, analisar e comunicar os resultados

da avaliação. Os principais produtos de trabalho envolvidos neste processo são

o Plano de Avaliação de Produto, o Formulário de Avaliação de Produto, o Guia

de Usabilidade e os próprios artefatos de software que serão avaliados. O

diagrama de classe da Figura 4.48 mostra o relacionamento entre o Revisor e

os produtos associados como o pacote Qualidade de Produto.

1

*

Plano deAvaliação de

Produto

Formuláriode Avaliaçãode Produto

1

*

Produtos daQualidade

(apoio)

Revisorda

Qualidade

Guia deUsabilidade

1

*

Artefatos deSoftware

FIGURA 4.48 – Os produtos envolvidos com o Revisor no pacote Qualidade de

Produto.

Page 214: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

212

O diagrama de pacote Qualidade de Produto agrupa as atividades, os papéis e

os produtos do trabalho de acordo com os elementos comuns das práticas de

qualidade de produto, no intuito de garantir os interesses e necessidades dos

envolvidos e que os produtos atendem os requisitos estabelecidos. Com a

utilização destes processos é possível realizar as atividades básicas propostas

pelos pacotes Usabilidade e Avaliação de Produto.

4.3.4.3.1 - Pacote Usabilidade

O pacote Usabilidade, Figura 4.49, estabelece o processo de garantia dos

interesses e necessidades dos envolvidos, de modo a otimizar o suporte e

treinamento e incrementar a produtividade e qualidade do trabalho. Tem como

objetivo melhorar as condições humanas de trabalho e reduzir a chance de

rejeição dos usuários ao produto.

Jefferson
4.3.4.3 - Atividades do Pacote
Page 215: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

213

Gerente da Qualidade - GQ

Definir Requisitos de Usabilidade para Produtos ( )

Formulário deAvaliação de Produto

PolíticaOrganizacional da

Qualidade

Definir e Priorizar as Soluções de Usabilidade emProjetos ( )

Implementar Treinamento de Usabilidade paraDesenvolvedores ( )

Analista da Qualidade

Definir Tipo e Necessidade do Usuário do Produto ( )

Implementar Mecanismos de Assistência aos Usuáriose Desenvolvedores para Questões de Usabilidade ( )

Implementar Projeto Centrado no Usuário ( )

Guia deUsabilidade

Usabilidade

Artefatos deSoftware

Política deTreinamento da

Qualidade

Formulário deAvaliação de

Produto

Revisor

Validar os Requisitos de Usabilidade no Projeto deSoftware ( )

Guia deUsabilidade

Plano daAvaliação de

Produto

Plano da Avaliaçãode Produto

Plano daAvaliação de

Produto

FIGURA 4.49 - Pacote Usabilidade.

Page 216: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

214

4.3.4.3.2 - Pacote Avaliação de Produto

O pacote Avaliação de Produto, Figura 4.50, estabelece o processo de

garantia, através de um exame e uma medição sistemática, da qualidade do

produto, de modo a satisfazer seu uso pretendido e as necessidades dos

envolvidos. Tem como objetivo especificar os critérios e requisitos da avaliação

de produto, os métodos e medidas utilizados na avaliação, e como deverão ser

feitas a análise e divulgação dos resultados.

Page 217: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

215

Gerente da Qualidade - GQ

Estabelecer os Requisitos Gerais de Avaliação deProduto ( )

Formulário deAvaliação de Produto

Identificar o Modelo da Qualidade ( )

Especificar Métodos para a Avaliação deProduto ( )

Revisor

Especificar Medidas para Avaliação de Produto ( )

Realizar Avaliação de Produto ( )

Especificar os Crritérios para Avaliação de Produto ( )

Guia deUsabilidade

Avaliação de Produto

Artefatos deSoftware

Plano da Avaliaçãode Produto

Formulário deAvaliação de Produto

Analisar os Resultados da Avaliação ( )

Comunicar os Resultados da Avaliação ( )

Plano da Avaliaçãode Produto

FIGURA 4.50 - Pacote Avaliação de Produto.

Page 218: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade
Page 219: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

217

CAPÍTULO 5

A IMPLEMENTAÇÃO DE UM PROTÓTIPO NO AMBIENTE INTEGRADO

Para demonstrar a funcionalidade de um processo da qualidade no Ambiente

Integrado, dentre aqueles definidos e modelado no capítulo 4, foi elaborado o

protótipo intitulado Quality Management (QM). O segundo objetivo deste

protótipo foi identificar os serviços mínimos necessários para a implementação

de todos os processos da qualidade no e-WebProject. O processo identificado

como fundamental para as atividades da gestão da qualidade no Ambiente e-

WebProject, e adotado como modelo para o protótipo, foi o processo Garantia

de Produto.

O processo Garantia de Produto engloba as atividades de encaminhamento,

verificação e controle de produtos desenvolvidos em um projeto, após sua

confecção ou modificação.

Este processo, na visão da qualidade, consiste no encaminhamento dos

produtos de um projeto para avaliação e posterior encaminhamento ao controle

de configuração no Ambiente e-WebProject. Um Produto (artefato de software)

só será efetivamente controlado após sua confecção ou modificação, avaliação

(com parecer de conformidade satisfatório) e armazenamento no repositório

controlado de artefatos do Ambiente Integrado.

Este repositório controlado nada mais é do que uma área da camada de

armazenamento e acesso do Ambiente onde os produtos gerados no

desenvolvimento de um projeto estão revisados, controlados e prontos para

serem usados em uma nova fase de projeto, a chamada configuração base

(baseline). Uma das fases mais importantes em que os produtos estão

armazenados é a fase de entrega. Nesta fase reside a configuração final do

desenvolvimento, ou seja, o pacote a ser aceito e entregue ao cliente.

Page 220: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

218

Os produtos que estão no repositório controlado devem ser armazenados

convenientemente, de maneira que seu acesso e/ou modificações possam ser,

de alguma forma, controlado.

Neste capítulo apresenta-se a definição dos requisitos mínimos para a

implementação do protótipo intitulado Quality Management (QM), mais

especificamente o processo Garantia de Produto, bem como os recursos

necessários, em termos de serviços, que o Ambiente Integrado deve prover

para que todos os processos da qualidade possam ser implementados de

forma a atender seus objetivos e funcionalidades.

5.1 – Os Requisitos do Protótipo Garantia de Produto

Para entender o contexto das atividades de encaminhamento de produtos para

controle, ou seja, realizando a atividade de avaliação e de configuração do

produto, deve-se entender o contexto que a Garantia de Produto se insere na

gestão da qualidade no Ambiente. Todo produto cuja categoria seja

considerada como a ser controlado, deve ao final de sua confecção ou

modificação, ser encaminhado para a uma área do repositório de artefatos do

Ambiente para ser avaliado e controlado. A avaliação e controle têm como

objetivo garantir que em uma área específica do Ambiente estejam sendo

arquivados e controlados todos os produtos concluídos e posteriormente

revisados do projeto. Isto permite avançar em uma nova fase do projeto ou

mesmo alcançar sua configuração final de entrega. Além disso, através de um

mecanismo de controle de configuração, é possível ter acesso (controlado), por

todos os envolvidos, de qualquer produto do sistema. Estas atividades,

consideradas de suporte ao desenvolvimento, são de responsabilidade,

principalmente, do Gerente da Qualidade e do Gerente da Configuração.

Um Responsável pelo Produto, ou Cliente da Qualidade, ao terminar a

confecção de seu artefato de software, deve encaminhá-lo para o Ambiente,

Page 221: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

219

formalizando assim, temporariamente, a entrega de seu produto, ou seja, o

final de sua fabricação. Artefatos sujeitos a modificações estão sujeitos ao

mesmo procedimento de encaminhamento ao Ambiente.

Os produtos encaminhados, antes de serem controlados pelo repositório de

artefatos, devem sofrer uma avaliação, no intuito de garantir que este produto

atende seus requisitos, tanto de formato como de conteúdo e funcionalidade.

O processo de avaliação no e-WebProject consiste da verificação e validação

de produto, atividades que são de responsabilidade do Gerente da Qualidade e

de sua equipe (Time da Qualidade).

Dependendo da fase e da categoria do produto, o mesmo pode sofrer apenas

uma avaliação de verificação antes de ser controlado, ou uma avaliação de

verificação e validação.

Para poder realizar o processo de avaliação, na Garantia de Produto, todo

projeto que utilizar o Ambiente Integrado deve previamente estabelecer, nos

processos de Planejamento da Qualidade, quais são os produtos (em

categorias) que sofrerão as avaliações (verificação e validação).

O processo de Verificação verifica se o(s) produto(s) revisado(s) está em

conformidade com normas, padrões e convenções propostas para o mesmo.

Tem como objetivo garantir que os produtos de desenvolvimento

(documentação e os Artefatos de Software) estão sendo feitos conforme

planejado e segundo os padrões estabelecidos.

O processo de Validação avalia se os requisitos definidos para um produto de

desenvolvimento atende/satisfaz seu uso proposto. Este processo engloba

tanto a validação de um diagrama, como também testes de unidade e de

módulo do código implementado. Basicamente, a Validação tem por objetivo

garantir que os produtos atendem seus requisitos funcionais (e até mesmo os

não funcionais) definidos pelo projeto e pela qualidade.

Page 222: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

220

Para que se possa visualizar, de uma forma gráfica, os requisitos do processo

Garantia de Produto do protótipo QM, foi utilizado o diagrama de contexto da

UML (Booch et al., 2000), conforme a Figura 5.1, somente abordando os

aspectos relacionados com as atividades da qualidade. O caso de uso

Controlar Produtos apresentado nesse diagrama, é uma das atividades

relacionadas com o controle de configuração e modificação de produto. Este

processo não foi implementado no protótipo por se tratar, dentro da estrutura

gerencial do e-WebProject, de atividade relacionada a Gerência da

Configuração.

FIGURA 5.1 - Diagrama de contexto da Garantia de Produto.

definir política deavaliação de

produto

encaminharprodutos para

controle

avaliar produtos

Gerente daQualidade

Revisor

Responsávelpelo Produto

Gerente daConfiguração

controlar produtos

atribuirresponsabilidades

na avaliação

Page 223: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

221

5.1.1 – Caso de Uso Atribuir Responsabilidades na Avaliação

O objetivo deste caso de uso é definir os recursos humanos da qualidade

envolvidos com as atividades do processo Garantia de Produto, mais

especificamente na avaliação de produto. Estes papéis da qualidade devem ser

definidos de forma a atender as atividades de avaliação como testes e

verificações, estipuladas especificamente para o projeto instanciado, devendo

estes papéis, e suas atividades, estarem registrados no Plano da Qualidade. A

Figura 5.2 ilustra o caso de uso Atribuir Responsabilidades na Avaliação. A

Figura C.6, do Apêndice C ilustra a tela referente à funcionalidade do caso de

uso Papéis da Qualidade, do módulo Quality Planning, do protótipo QM.

associar papéis daqualidade asatividades deVerificação

Gerente daQualidade

FIGURA 5.2 - Caso de uso Atribuir Responsabilidades na Avaliação.

5.1.2 – Caso de Uso Definir Política de Avaliação de Produto

Os principais objetivos dessa funcionalidade são estabelecer a política de

verificação e validação no projeto (que deve ser definida respeitando-se as

características do projeto, como a metodologia de desenvolvimento, os marcos

adotados como referência para o projeto) e as categorias dos produtos que

serão verificados e validados (incluindo o Plano de Testes definido no projeto e

a integração dos módulos de software).

Page 224: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

222

Para a execução deste processo são utilizados produtos de apoio como

checklists (de Verificação e de Validação) e o Formulário de Avaliação de

Produto, que é o documento que acompanha a revisão e serve como meio de

divulgação dos resultados obtidos com estes processos.

Neste processo são definidos quais produtos devem ser verificados e

validados. Dentro desta política deve ser estipulado por categoria, cada

Artefato de Software que, ao final de sua confecção ou modificação, será

encaminhado à qualidade para efetuar a verificação e/ou validação formal para

liberação ao controle de configuração. A Figura 5.3 ilustra o caso de uso Definir

Política de Avaliação de Produto. A Figura C.8, do Apêndice C ilustra a tela

referente à funcionalidade do caso de uso Verificação e Validação, do módulo

Quality Planning, do protótipo QM.

definir as categoriasde produtos

associadas aVerificação

Gerente daQualidade

Revisordefinir as categorias

de produtosassociadas a

Validação

associar as V&V aosmarcos de projeto

FIGURA 5.3 - Caso de uso Definir Política de Avaliação de Produto.

Page 225: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

223

5.1.3 – Caso de Uso Encaminhar Produtos para Controle

Os principais objetivos dessa funcionalidade são estabelecer as atividades

relativas ao encaminhamento dos produtos de trabalho, os chamados Artefatos

de Software para sua avaliação e controle. Consiste basicamente do

encaminhamento do produto pelo Responsável, preenchendo os campos do

Formulário de Encaminhamento de Produtos para a subseqüente submissão

ao Ambiente Integrado. O Ambiente destina o encaminhamento ao Gerente da

Qualidade para suas providências. O Gerente da Qualidade recebe o

Formulário, atribui um código para a revisão e encarrega um Revisor para

avaliar o produto. Novamente encaminha para o Ambiente que destina o

Formulário para o Revisor encarregado para a avaliação. Todos esses passos

são acompanhados por um Agente Monitor do Ambiente que altera o status do

processo, conforme o fluxo do trabalho. Neste caso o status possível é

Encaminhado a Qualidade ou Encaminhado ao Revisor. Um Agente

Mensageiro se encarregará de avisar, na forma de uma mensagem eletrônica e

de um registro na área de trabalho do Revisor, da abertura de uma tarefa. Vale

ressaltar que o produto durante este processo fica congelado no repositório, e

seu status, a meta informação que varia conforme o andamento do processo,

vai mudando, até atingir o final do processo Garantia de Produto. A Figura 5.4

ilustra a funcionalidade do caso de uso Encaminhar Produtos para Controle. As

Figuras C.12 e C15, do Apêndice C ilustram algumas das telas relacionadas

aos módulos User e Quality Assurance do caso de uso Encaminhar Produtos

para Controle.

Page 226: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

224

Gerente da Qualidade

encaminhar formulário para o Ambiente

mudar status

Responsável pelo Produto

Agente Mensageiro

encarregar Revisor para avaliação

notificar envolvidos

Agente Monitor

FIGURA 5.4 - Caso de uso Encaminhar Produtos para Controle.

5.1.4 – Atividades de Avaliar Produtos

O principal objetivo desse diagrama e representar as diversas atividades

envolvidas na avaliação de produto para seu encaminhamento ao repositório

controlado de artefatos. A avaliação do produto é feita através de uma revisão

(verificação ou validação) conduzida pelo Revisor, que após definir os critérios

da revisão (associar checklists ou os testes apropriados) executa a revisão.

Esta execução, ou condução da revisão consiste, no caso da verificação, da

identificação dos itens que atendem ou não ao checklist de verificação relativo

Page 227: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

225

o produto revisado. Por exemplo, para a revisão de um artefato de código Java

deve ser identificado quais itens o programa atende em relação ao Checklist de

Código Objeto. O Checklist de Código Objeto deve fazer parte da biblioteca de

checklists do Ambiente, de forma a ser disponibilizado quando necessário. O

Revisor pode também questionar o Responsável pelo Produto sobre qualquer

dúvida adquirida durante a revisão. O Responsável pelo Produto deve atender

a solução dessas possíveis dúvidas de modo a permitir o andamento normal

das atividades de revisão. Ao final tanto o revisor como o Gerente da

Qualidade dão seu parecer sobre o produto revisado. Em caso de parecer de

não-conformidade, o produto é retirado da área congelada do repositório, e o

Responsável pelo Produto fica sabendo que o processo de encaminhamento

para solução do problema é iniciado. Em caso de parecer de conformidade o

produto é encaminhado ao controle de configuração para ser integrado aos

itens de produtos controlados pelo projeto e conseqüentemente pelo Ambiente.

O status do processo pode ser Encaminhado ao Revisor, ou Revisado, ou Sob

controle da Gerência da Qualidade, ou Encaminhado a Gerência da

Configuração, ou Não Conforme, ou Conforme, Encaminha para Solução de

Problemas. A Figura 5.5 ilustra o diagrama de atividades Avaliar Produto,

abrangendo desde o encaminhamento do Produto pelo Responsável até o

parecer final do Gerente da Qualidade. As Figuras C.11, C14, C17 e C.18, do

Apêndice C ilustram algumas das telas referentes às atividades de Revisar

Produtos, dos módulos Quality Assurance e Quality Control, do protótipo QM.

Page 228: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

226

Gerente da QualidadeResponsável peloProduto

Revisor

Encaminhar Produto

Abrir Avaliação

Definir CritériosFAP [código]

Avaliar Produto

solucionarduvidaSolucionar Dúvidas

solução nãoOK

solução OK

Emitir Parecer

FAP [parecer]Emitir Parecer

FAP [parecer]

Fechar Avaliação

I

FIGURA 5.5 – Diagrama de atividades Avaliar Produto.

Page 229: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

227

5.2 – Os Recursos do Ambiente Necessários para os Processos

Com base nos requisitos levantados e analisados na sessão anterior, torna-se

possível, através da prototipação, a definição de quais são os recursos

necessários, em termos de serviços, que o Ambiente Integrado deve prover

para o suporte e automação dos processos de Gerência da Qualidade na

implantação de todos os processos apresentados no capítulo 4.

Para o suporte e automação de qualquer processo, o Ambiente Integrado deve

fornecer uma infra-estrutura que permita a manutenção de informações; a

automatização ou execução das atividades de um processo e a definição clara

do papel de cada participante no processo. A implementação de serviços que

auxiliem esta condução e controle do processo permitirá uma fácil interação

com o usuário e um controle seguro dos artefatos produzidos e manipulados

pelos usuários.

O enfoque desta análise feita foi baseado principalmente nos requisitos

definidos para o protótipo e na arquitetura lógica oferecida pelo Ambiente,

apresentada no capítulo 3, onde podemos observar a sua caracterização em

três camadas: de armazenamento, de serviços e de interação.

5.2.1 – Os Recursos da Camada de Armazenamento e Acesso

Os elementos que compõem a camada de Armazenamento e Acesso são

responsáveis pelo armazenamento e acesso às informações manipuladas no

Ambiente. Estes elementos podem estar em plataformas distribuídas ou

centralizadas, mas devem, de qualquer forma, integrar e gerenciar as

informações da qualidade relacionadas a projetos ou a organização como um

todo.

Page 230: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

228

Dos recursos definidos para esta camada pelo Ambiente Integrado (Sant’Anna,

2000) e necessários para a realização das atividades da qualidade,

consideramos:

O armazenamento e a recuperação das informações da qualidade (de

acesso imediato (on line), ou informação histórica (off line)), deve ser

eficiente e rápido, dentro dos prazos estabelecidos pelo projeto e pela

sua política de desenvolvimento.

Deve ser possível que os vários envolvidos no processo tenham acesso

simultâneo a informações da qualidade, respeitando os critérios de

responsabilidade e acesso definido no projeto.

A camada deve comportar que trafegue um grande volume de

informações da qualidade pelo Ambiente.

O acesso (consulta, inclusão, alteração ou exclusão) às informações da

qualidade deve ser permitido somente aos papéis autorizados e seus

responsáveis.

A disponibilização das informações da qualidade deve ser acessível a

qualquer instante de tempo e de local, devendo ser feita de forma

controlada (senha e restrições de acesso).

As informações da qualidade podem ser manipuladas de forma

centralizada ou distribuídas, respeitando os critérios de recuperação da

informação em casos de falha no Ambiente (hardware, software ou infra-

estrutura física).

5.2.2 – Os Recursos da Camada de Serviços

Os elementos que compõem a camada de Serviços trabalham de forma

cooperativa utilizando os elementos da camada de armazenamento e acesso

Page 231: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

229

para obtenção e disponibilização das informações de projeto parra a camada

de interação com o usuário. São os serviços relacionados ao trabalho

cooperativo, a utilização do conceito de fluxo de trabalho e de ambiente com

conhecimento.

Dos recursos definidos para esta camada pelo Ambiente Integrado (Sant’Anna,

2000) e necessários para a realização das atividades da qualidade,

consideramos:

O Serviço de Coordenação de Processos do Ambiente deve apoiar os

processos da qualidade, permitindo que os processos sejam modelados,

configurados, instanciados, acompanhados e terminados. O Serviço de

Coordenação deve garantir que os processos da qualidade sigam seu

fluxo normal de execução, avisando e relatando os participantes

envolvidos do processo em questões sobre a atual situação das

atividades (status) ou, por exemplo, de ocorrências que o impossibilitem

de terminar.

O Serviço de Comunicação Assíncrona do Ambiente deve prover o

serviço de troca de mensagens entre os participantes envolvidos nos

processos da qualidade, devendo sempre ter a participação de um

remetente e um destinatário na utilização deste serviço. Deve também

conter o assunto a ser tratado pela mensagem como forma de

comunicação básica. Um agente mensageiro deve ser o responsável por

realizar as tarefas básicas deste serviço, identificando os remetentes e

destinatários da mensagem, seus privilégios no Ambiente, endereços

eletrônicos e informações básicas deste tipo de serviço. Pode, caso seja

configurado neste serviço, verificar em intervalos pré-definidos de

tempo, se a mensagem foi aberta ou respondida pelo destinatário ou

mesmo encaminhar automaticamente uma cópia de todas as

mensagens de um grupo para uma determinada gerência. (todas as

mensagens do Time da Qualidade enviadas com cópia automática para

Page 232: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

230

a Gerência da Qualidade, por exemplo). Listas de discussão devem ser

criadas para que os grupos do projeto possam debater assuntos de

interesse da qualidade. Estas listas devem ser preparadas para incluir

em seu conteúdo, apenas os participantes envolvidos designados para

debater um determinado assunto.

O Serviço de Comunicação Síncrona do Ambiente deve propiciar,

quando necessário, quadros de discussão para a eventual solução de

alguma dúvida ou solicitação de sugestões para a qualidade,

principalmente quando a questão for de fórum urgente ou envolver um

grande número de participantes.

Os Serviços de Agenda deve permitir que as atividades formais da

qualidade, como as reuniões de avaliação possam ser agendadas

eletronicamente, anexando junto o material necessário a realização do

processo. As agendas são importantes, pois mantêm os indivíduos

informados sobre seus compromissos com as atividades da qualidade

ao longo do tempo.

O Serviço de Compartilhamento Temporário deve permitir a autoria

cooperativa dos produtos da qualidade, permitindo que mais de um

indivíduo trabalhe na confecção de um mesmo produto de forma

simultânea. Independente do local de armazenamento ou plataforma

computacional, o produto deve ser colocado em uma determinada área

do repositório de informações do Ambiente (situado na Camada de

Armazenamento e Acesso) para que possa ser acessado por todos os

envolvidos nos processos da qualidade. As referências e a situação dos

produtos devem também ser disponibilizadas para os participantes do

processo de produção dos mesmos. Deve existir na configuração deste

serviço uma relação papel versus produto de tal maneira que durante a

realização de um processo seja possível identificar quais papéis tem

autorização de compartilhamento de quais produtos (dados e

Page 233: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

231

informações). Após uma determinada fase, especificada no processo,

este compartilhamento temporário se encerra, devendo o arquivo ser

encaminhado para seu controle permanente ou devolvido ao seu autor

ou responsável. Um Agente monitor atua regularmente neste serviço,

atualizando o status de cada produto da qualidade, conforme a

monitoração de alguns campos pré-determinados pela qualidade, a fim

de acompanhar e monitorar o andamento de um artefato durante sua

vida nos processos da qualidade.

O Serviço de Biblioteca deve manter e disponibilizar, para os

participantes envolvidos com os processos da qualidade, documentos

técnicos como relatórios da qualidade, formulários e checklists utilizados

nas atividades da garantia, planejamento e controle da qualidade. O

Serviço de Biblioteca deve manter e garantir também o acesso às

informações que tem relacionamento indireto com o projeto (políticas

organizacionais ou estratégias de desenvolvimento, por exemplo) para

que, durante a vida de um projeto ou mesmo para a organização como

um todo, seja fácil a pesquisa de busca destas publicações e que

possam ser disponibilizadas de forma concorrente e consistente.

O Serviço de Lembrança, ou Agenda Pessoal deve informar o time da

qualidade sobre suas tarefas cotidianas, sobre as datas importantes da

qualidade, como reuniões pré-estabelecidas de auditoria, cronograma de

projeto e a qualidade (baseline a ser alcançada em uma determinada

data, por exemplo). Cabe a este serviço permitir que o time da qualidade

possa registrar algo para ser lembrado, e manter seus registros.

O Serviço de Dicionário, Enciclopédia deve permitir que todos os

participantes envolvidos com a qualidade (na organização e nos

projetos) possam manter e consultar termos e conceitos utilizados por

esta área de conhecimento. Além dos conceitos relacionados

diretamente a qualidade, os conceitos e termos relacionados ao próprio

Page 234: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

232

Ambiente devem também ser descrito. Este serviço deve ser ágil e de

fácil manutenção, permitindo que seja atualizado e revisado

constantemente.

O Serviço de Documentação de Escritório deve permitir aos

participantes envolvidos com a qualidade manter e recuperar a

documentação administrativa endereçada a equipe. Isto pode incluir

memorandos, circulares internas, solicitações, ou qualquer documento

de cunho administrativo que de alguma forma afete as atribuições e as

tarefas da qualidade nos projetos ou na organização. Através de uma

base de dados de documentos de escritório, este serviço pode ser uma

forma segura e rápida de tramitar os documentos administrativos da

qualidade. O serviço de mensagens eletrônicas pode ser utilizado em

conjunto com este serviço para avisar um participante de um novo

documento disponível, por exemplo.

O Serviço de Atendimento ao Usuário deve permitir que todos os

envolvidos com a qualidade tenham a oportunidade de apresentar suas

críticas, sugestões e dúvidas com relação a qualquer tópico relacionado

à qualidade, ao projeto ou ao Ambiente Integrado. O usuário pode,

através deste serviço, colocar suas críticas de forma construtiva e de

forma a permitir uma melhor adaptação das atividades da qualidade no

ambiente às necessidades dos indivíduos participantes do projeto.

O Serviço de Segurança deve permitir que qualquer envolvido nos

processos da qualidade tenham disponíveis serviços e produtos da

qualidade no Ambiente, através de uma identificação de uma senha, que

o habilitará ao acesso, com privilégios relativos ao seu papel que

desempenha relacionado a qualidade (nos projetos e na organização).

Este serviço deve garantir que as informações e produtos não públicos

sejam disponibilizados apenas por pessoas devidamente credenciadas e

autorizadas.

Page 235: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

233

5.2.3 – Os Recursos da Camada de Interação com o Usuário

Os elementos que compõem a Camada de Interação com o Usuário são

responsáveis pela comunicação do usuário com os processos da qualidade no

Ambiente a partir de qualquer ponto de uma rede de computadores, permitindo

seu trabalho remoto e cooperativo. A camada de interação com o usuário, ou

camada de execução, permite que os aplicativos que implementam os serviços

da qualidade no Ambiente sejam executados e possam realimentar os

processos com a conclusão das atividades e a confecção dos produtos da

qualidade executados pelos participantes envolvidos.

Dos recursos definidos para esta camada pelo Ambiente Integrado (Sant’Anna,

2000) e necessários para a realização das atividades da qualidade,

consideramos:

O acesso aos processos da qualidade no Ambiente Integrado deve

ser feito em locais que possuam recursos de rede (local ou

distribuída) através de navegadores (browsers) proporcionando a

facilidade de uso em modo gráfico e ambiente de janelas e que

possam ser executados a partir de diversas plataformas (Windows,

Unix, Macintosh) permitindo que as aplicações sejam executadas em

qualquer tipo de plataforma.

As telas relacionadas com os processos da qualidade devem ser

formatas de acordo com o padrão de janelas do Ambiente Integrado,

de forma a atender as atividades da garantia, planejamento e

controle da qualidade.

Page 236: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

234

Page 237: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

235

CAPÍTULO 6

CONCLUSÕES

Esta dissertação de mestrado intitulada “Uma Abordagem para a Gerência da

Qualidade em um Ambiente Engenharia de Software Centrado em Processo”

identificou e modelou um conjunto mínimo de práticas que a gestão da

qualidade deve adotar dentro de organizações fabricantes de software,

principalmente do setor voltado para aplicações espaciais, como o INPE e o

IAE.

Acredita-se que a definição e modelagem destes processos da qualidade

auxiliarão aos projetos de desenvolvimento de software, principalmente no que

tange as atividades fundamentais da gerência da qualidade. A implantação das

práticas da gestão da qualidade (e de seus processos) dentro do contexto de

um ambiente automatizado de desenvolvimento e gestão de projetos

determinará de forma concreta e objetiva o nível de qualidade dos produtos

resultantes.

Para se alcançar este objetivo foi necessário primeiramente o planejamento,

definição e modelagem das atividades referentes à garantia, planejamento e

controle da qualidade, a caracterização dos produtos intermediários e finais do

desenvolvimento do software e a definição de qual seria o papel dos envolvidos

nos trabalhos da qualidade.

Foi necessário o estudo das práticas e das atividades da qualidade e de seu

gerenciamento em projetos de software, o estudo dos padrões e dos modelos

relacionados ao tema qualidade, bem como a escolha de uma linguagem de

modelagem de processo de software que representasse adequadamente os

modelos de processo propostos.

Page 238: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

236

Em adição aos aspectos de qualidade, padrões e linguagens, foi necessário

aprimorar o conhecimento sobre ambientes centrados em processo, mais

especificamente o Ambiente Integrado e-WebProject, que oferece suporte

eficiente e automatizado aos processos de engenharia de software, é

organizado em áreas de negócio e apóia as gerências estabelecidas em um

projeto através de diversos serviços oferecidos.

Através da intersecção de todos estes fatores, foram criados os modelos do

processo da qualidade, apresentados no capítulo 4, de forma a viabilizar sua

futura implantação e execução, no Ambiente integrado, atendendo com isso, às

necessidades básicas das funções da qualidade em projetos, e na organização

produtora de software como um todo.

Na seção 6.1 apresenta-se o histórico da condução deste estudo,

descrevendo-se como foi o andamento dos trabalhos de pesquisa, em termos

de produção científica reconhecida pela comunidade da área e de forma a

entender a evolução do amadurecimento dos conceitos apresentados nesta

dissertação. Na seção 6.2 são discutidos os resultados que foram alcançados

com o trabalho, tanto no nível teórico (a definição e modelagem dos processos)

como prático (a implementação do protótipo). Na seção 6.3 são discutidos os

benefícios desse trabalho para o desenvolvimento de software do setor

espacial brasileiro e são feitas algumas recomendações para trabalhos futuros,

principalmente no que tange às tarefas de avaliação e melhoria de processo,

atividades relacionadas aos mais altos níveis de maturidade em termos de

atributos dos processos.

6.1 - Histórico

Dentre as diversas atividades decorrentes de um estudo voltado para a

implantação de processos da qualidade em um ambiente de desenvolvimento

de software centrado em processo, era importante definir quais seriam as

Page 239: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

237

funcionalidades da qualidade teriam seus processos modelados; que padrão,

ou padrões seria adotado como referência para as melhores práticas da

qualidade; que linguagem de modelagem mais se adequaria aos modelos

propostos e como o Ambiente Integrado deveria atender a implantação e

execução destes modelos.

Partindo desse princípio, foram feitas pesquisas referentes à definição e

modelagem de um processo fundamental da qualidade, que culminou em um

artigo, que descrevia um estudo para a definição e modelagem do processo

Aditar Produtos do Trabalho no e-WebProject (Lahoz et al., 2002), apresentado

no IV Simpósio Internacional de Melhoria de Processo de Software (SIMPROS)

em Recife (PE). O SIMPROS é o maior fórum para intercâmbio de informações

e conhecimento na prática de melhoria de processo de software (Software

Process Improvement – SPI) e é baseado no formato das conferências SEPG

(Software Engineering Process Group) realizadas anualmente nos Estados

Unidos, Europa e agora no Brasil. O processo de Auditoria, da categoria de

processos Suporte do projeto SPICE, permitiu identificar quais seriam os

passos mínimos necessários para a definição de um processo no Ambiente

Integrado, sendo fundamental para o início da pesquisa de quais processos

(atividades) a qualidade se responsabilizaria no Ambiente.

Em seguida, foi feito um estudo para a definição de quais seriam efetivamente

os processos que a Gerência da Qualidade definiria e modelaria para o

Ambiente Integrado (Abdala, et al, 2002), que foi apresentado no II Workshop

dos Cursos de Computação Aplicada (WORKCAP) do INPE, em São José dos

Campos (SP). Neste trabalho foram identificados as atividades de garantia,

planejamento e controle da qualidade como as principais áreas de atuação da

qualidade no Ambiente Integrado e sua relação junto aos processos propostos

pelo padrão ISO/IEC 15504.

Com o amadurecimento até então adquirido nos estudos de qualidade, padrões

de processo, linguagens de modelagem e do Ambiente Integrado, foi possível

Page 240: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

238

apresentar o tutorial intitulado “Um ambiente Integrado para Suporte a Projetos

de Engenharia de Software” (Sant´Anna et al., 2003), no Congresso Comdex,

em São Paulo (SP). O objetivo foi apresentar conceitos como requisitos,

arquitetura e suporte a processos que norteiam o Ambiente Integrado, baseado

na WEB, para apoio ao desenvolvimento e gestão de projetos de software.

Foram demonstradas aos participantes as técnicas atuais utilizadas em

projetos de desenvolvimento de software, como melhoria de processos e

modelos de maturidade (CMMI e 15504), o conceito de workflow, de trabalho

cooperativo e distribuído, como pode ser feito o suporte a processos evolutivos

e apresentada a estruturação organizacional de gerências do e-WebProject,

baseada no PMI, e mais especificamente às características e atribuições da

Gerência da Qualidade no Ambiente Integrado.

No V SIMPROS um relato sobre como foi empregada a linguagem de

modelagem de processo escolhida para a modelagem dos processos da

Qualidade no Ambiente Integrado (Abdala et al, 2003) foi apresentado. A

linguagem de modelagem SPEM, notação padrão UML, permitiu a definição

clara e precisa dos processos da Gerência da Qualidade no Ambiente

Integrado, visando sua posterior implementação e execução dos processos da

qualidade no Ambiente.

No III WORKCAP do INPE apresentaram-se os padrões ISO/IEC12207 e

15504 e a modelagem de processos da qualidade de software (Lahoz e

Sant´Anna, 2003). Neste trabalho, os modelos de processo de Suporte do

ISO/IEC15504 e do 12207 são apresentados como ponto de partida para a

definição dos processos da qualidade que devem ser implantados e

executados em um Ambiente Integrado. Segunda a visão proposta pelo

trabalho, os processos Suporte são diretamente relacionados com a gestão da

qualidade no Ambiente Integrado.

Mais recentemente, um artigo técnico contendo os modelos de processos de

gestão da qualidade de software, baseados no Padrão ISO/IEC 15504 (Lahoz e

Page 241: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

239

Sant´Anna, 2004), foi submetido a 3ª Conferência Iberoamericana de Sistemas,

Cibernética e Informática (CISCI) 2004 e aprovado para ser apresentado. Nele

são relatados os processos da qualidade, já na visão da 15504, versão 2003, e

a abordagem de definição e modelagem para o Ambiente Integrado.

6.2 – Os Resultados Obtidos com os Trabalhos

Sob a ótica da qualidade, na visão de Jacobson (Jacobson et al., 1999) todos

compartilham da responsabilidade de sucesso ao se alcançar produtos de alta

qualidade (ou das críticas de não obtê-la). Nos processos propostos procurou-

se identificar as práticas apropriadas para a efetiva implantação das atividades

da qualidade em uma organização produtora de software, bem como identificar

os produtos e os papéis que devem ser utilizados para garantir que os objetivos

da qualidade sejam alcançados em projetos ou na organização como um todo.

Procurou-se, através destes modelos, identificar e endereçar as questões que

afetam a qualidade o mais cedo possível, incluindo a avaliação dos esforços

despendidos no gerenciamento da qualidade e a identificação da melhor

configuração que o processo precisa ter para alcançar seus objetivos. Foi

avaliado neste trabalho qual produto de implementação e de desenvolvimento

(requisitos, projeto e teste) é realmente necessário para a construção do

software (a ser entregue ao cliente ou mesmo interno ao desenvolvimento). Foi

feita também uma avaliação dos esforços despendidos nas revisões e

auditorias para sua avaliação de implementação, aderência e progresso do

processo de desenvolvimento. Foram, enfim, modelados os processos mínimos

necessários para que as atividades da qualidade contribuam fortemente para a

construção de um software que possa alcançar um nível internacional de

qualidade, principalmente para produtos de tecnologia espacial.

Page 242: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

240

6.2.1 – Os Resultados Obtidos com a Abordagem de Padrões

É importante assegurar que os métodos e tecnologias utilizadas em processos

apóiem, avaliem e melhorem as atividades de desenvolvimento e manutenção

de software, e que se estabeleçam níveis mínimos de qualidade dos produtos,

dos procedimentos e dos padrões a serem usados durante todo o

desenvolvimento e vida útil do produto.

Uma dificuldade ainda existente no setor de desenvolvimento de software para

aplicações espaciais no Brasil é, após a definição de quais procedimentos e

produtos serão implementados e controlados pela qualidade, garantir-se que

todos os envolvidos no projeto estejam efetivamente comprometidos com o

cumprimento dos procedimentos e com a geração desses produtos ao longo do

tempo.

A gerência da qualidade deve ser capaz, também, de fornecer resultados

quantitativos e qualitativos referentes aos produtos e processos do projeto, que

sejam compreensíveis e confiáveis para a gerência geral ou para outros

envolvidos, permitindo assim analisar, conduzir e divulgar o desenvolvimento

da qualidade de produto (e de processo) dentro das exigências e dos padrões

internacionais aplicáveis à área de software espacial.

Diversos padrões de modelos de processo de desenvolvimento de software

surgiram nos últimos anos como, por exemplo, o 15504, o 12207 e o modelo de

referência CMMI. O padrão 15504 define uma estrutura para avaliação e

melhoria de processos de engenharia de software, e prescreve práticas básicas

que devem ser realizadas para que se atinjam certos níveis de maturidade. Já

o padrão 12207 prescreve um processo para o desenvolvimento e manutenção

de software, através da determinação de um conjunto de atividades essenciais

que devem ser completadas para se obter um produto de software. O CMMI é

um framework para avaliação e melhoria de processo disponível para o

desenvolvimento de produtos e serviços que incorpora as atividades de

desenvolvimento de software. Estes modelos representam o processo de

Page 243: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

241

software sob a ótica de seu funcionamento, mas não apresentam COMO estes

processos devem ser definidos, ficando esta responsabilidade como uma

atribuição das organizações fabricantes das aplicações de software.

Procurou-se nesta dissertação, com base nos padrões estudados, identificar:

quais são e como estas atividades e práticas básicas da qualidade devem ser

realizadas pelas organizações produtoras de software; quais são os produtos

mínimos necessários para atender a estas atividades; e qual é o papel de cada

envolvido com a qualidade em um ambiente centrado em processo. Pretende-

se com isto obter um resultando positivo no cumprimento dos propósitos da

qualidade e de seu gerenciamento, e conseqüentemente, obter-se melhores

níveis de qualidade dos produtos de software das organizações que utilizarem

o Ambiente Integrado.

Segundo esta abordagem, um conjunto mínimo de processos da qualidade foi

definido e modelado para uso da Gerência da Qualidade no e-WebProject,

utilizando-se para isto, principalmente, os modelos de processo Suporte do

padrão internacional 15504. Acredita-se ainda que, com a utilização destes

modelos de processo em uma organização, possam-se atingir níveis mais altos

de capacidade, no que tange aos processos da qualidade, permitindo com isto

atender a requisitos funcionais e não funcionais de projetos críticos como é o

caso de projetos do Sistema de Controle de Satélites (SICS), ou o do Software

Aplicativo de Bordo (SOAB).

Os processos da 15504 contemplados nas atividades da qualidade no

Ambiente, são suficientes para atender aos Atributos de Processo (Process

Attributes), da dimensão Capacidade, respectivamente nos níveis 2, 3 e 4,

conforme a Tabela 6.1, através dos processos Configuração (CFG.1),

Qualidade (QUA.1, QUA.2, QUA.4 e QUA.5), Qualidade de Produto (PRO.1 e

PRO.2) e Gerenciamento (MAN.4), propostos por este trabalho.

Page 244: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

242

TABELA 6.1 - Tabela de Relacionamento entre Processos e seus Atributos. Atributos do Processo Processos Relacionados PA PA PA PA PA PA PA PA

2.1 2.2 3.1 3.2 4.1 4.2 5.1 5.2 CFG.1 Documentação CFG.2 Gerência de configuração CFG.3 Gerência de problemas QUA.1 Garantia da qualidade QUA.2 Verificação QUA.4 Revisão conjunta QUA.5 Auditoria MAN.1 Alinhamento organizacional MAN.2 Gerência da organização MAN.3 Gerência de projeto MAN.4 Gerência da qualidade MAN.5 Gerência de risco MAN.6 Medidas PIM.1 Estabelecimento do processo PIM.2 Avaliação do processo PIM.3 Melhoria do processo RIN.1 Gerência de recursos humanos RIN.2 Treinamento RIN.3 Gerência do conhecimento RIN.4 Infra-estrutura REU.1 Gerência de bens REU.3 Engenharia do domínio

♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦ ♦

♦ ♦

FONTE: ISO/IEC15504-5 (2003).

6.2.2 – Os Resultados Obtidos com a Utilização da Modelagem

Segundo Acuña (Acuña e Ferre, 2001), a modelagem de processo de software

se refere à definição dos processos como modelos padronizados, algum

suporte automatizado adicional para modelagem e a execução dos modelos

durante o processo de software. Feiler (Feiler, 1993) observa que, cada modelo

foca ou dá prioridade, a pontos particulares de cada mundo complexo da

construção de software. Diferentes modelos de processos podem definir

diferentes pontos de vista. Por exemplo, um modelo pode definir os agentes

envolvidos em cada atividade, enquanto outro pode estar centrado no

relacionamento entre as atividades. Há ainda modelos que endereçam a

Page 245: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

243

cultura organizacional e são focados nas capacidades comportamentais ou nos

encargos dos papéis envolvidos no processo de software (Acuña, 2000).

Um modelo é sempre uma abstração da realidade e, como tal, representa a

descrição de uma realidade parcial e simplificada, isto é, nem todas as partes

ou aspectos do processo são levados em conta no modelo. Geralmente, um

modelo de processo pode ser dividido entre muitos sub-modelos, expressando

diferentes pontos de vista ou perspectivas (Acuña e Ferre, 2001).

Com a utilização da modelagem, foi possível especificar como as atividades da

qualidade no Ambiente seriam conduzidas, quais os papéis e tarefas

envolvidas, os recursos consumidos, as ferramentas utilizadas, os produtos

desenvolvidos, bem como os mecanismos de comunicação entre as tarefas e

os papéis.

Um fator que favoreceu a escolha do SPEM da OMG para a criação dos

modelos de processos, é que ele tenta suprir a necessidade de um padrão para

as técnicas de modelagem de processo surgidas nos últimos anos, definindo

um conjunto mínimo de elementos necessários para descrever qualquer

processo de desenvolvimento de software. Outra vantagem da linguagem é

que ela utiliza uma abordagem orientada a objetos e se beneficia da

expressividade da UML. Assim, os desenvolvedores de software que estejam

familiarizados com a UML podem reutilizar seus conhecimentos de modelagem

de software no domínio da modelagem de processos de software.

Parafraseando Curtis (Curtis et al., 1992), pode-se argumentar que os objetivos

requeridos na utilização da modelagem de processos e que foram alcançados

nos modelos de processo da qualidade foram:

Facilidade de entendimento e comunicação: os modelos dos

processos da qualidade contém informações suficientes para sua

representação. Desta maneira esta formalização está também

Page 246: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

244

provendo uma base para treinamento dos usuários do processo a ser

automatizado.

Suporte e controle ao gerenciamento do processo: através dos

modelos dos processos da qualidade, qualquer uma de suas

atividades poderá ser projetada para execução, monitorada,

gerenciada e coordenada.

Condições para orientações automatizadas para realização de

processos: os modelos dos processos da qualidade permitem

orientações aos usuários, instruções e material de referência,

necessários em um ambiente efetivo de desenvolvimento de

software.

Condições para suporte à execução automatizada: através dos

modelos dos processos da qualidade é possível identificar as

atividades, papéis e produtos envolvidos nas atividades da qualidade

a serem automatizadas, representando como será o suporte ao

trabalho cooperativo, a forma de registro das medições e a garantia

da integridade do processo.

Suporte à melhoria do processo: os modelos permitem o reuso dos

modelos dos processos da qualidade de forma efetiva, a comparação

de processos alternativos e suporte ao desenvolvimento de outros

processos da qualidade.

Além dos benefícios de descrever a estrutura e organização de um processo,

promovendo seu entendimento de uma forma precisa, os modelos tornam-se

um instrumento importante para a eliminação de inconsistências na sua

especificação. Este recurso é útil para o treinamento e aprendizado de equipes

sobre procedimentos e operações organizacionais, onde os processos podem

Page 247: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

245

ser interpretados e utilizados para fornecer diferentes níveis de suporte para as

pessoas envolvidas nas atividades da qualidade. Finalmente permite-se a

simulação e otimização de processos que pode ser útil para a avaliação de

problemas e propostas para melhorias.

6.2.3 – Os Resultados Obtidos com a Utilização do Ambiente Integrado

Ambientes de engenharia de software centrado em processos, os chamados

PSEEs, estão se tornando um recurso cada vez mais utilizado para auxiliar nos

projetos de desenvolvimento de software. Um crescente número de sistemas

está revelando e aplicando processos para produção de software, gerando

produtos e protótipos baseados em uma variedade de tecnologias e

abordagens, como as de linguagens e base de dados orientados a objetos,

notações orientadas a estados, linguagens baseadas em regras, e linguagens

lógicas (Ambriola et al; 1997).

Dentro deste enfoque, procurou-se disponibilizar modelos de processos para

serem implantados em uma máquina que permita a sua automação, dentro de

um ambiente, como o e-WebProject, que possa ser utilizado em aplicações de

desenvolvimento de software, principalmente no setor espacial brasileiro.

Definiu-se um conjunto mínimo de atividades, papéis e produtos que o

Ambiente Integrado deve gerenciar que, acredita-se, apesar de serem

caracterizadas de forma genérica, com as devidas adequações, permitirão

alcançar patamares satisfatórios de qualidade tanto de produto como de

processo de desenvolvimento de software.

Na definição e modelagem dos processos relacionados à gerência da

qualidade para o Ambiente Integrado e-WebProject, surgiram diversos modelos

de processos para cada atividade da qualidade e que afetam diretamente a

construção do software. Foram definidos os processos essenciais da qualidade

Page 248: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

246

que o Ambiente Integrado deve disponibilizar, levando-se em conta as

atividades da qualidade (gerenciamento, garantia, controle e qualidade de

produto) voltadas para os projetos e para a organização como um todo.

Com os recursos do e-Webproject, como um conjunto de ferramentas

integradas para trabalho cooperativo, será possível dar o suporte à execução

de processos, disponibilizando informações através da WEB/Internet, e

permitindo a implantação dos processos da qualidade de forma a atingir seus

objetivos com um alto grau de qualidade e de forma rápida.

A perspectiva ainda de se obter maior eficiência nas atividades da qualidade,

através de facilidade de uso, do suporte à comunicação instantânea de uma

grande quantidade de usuários, da visibilidade dos produtos e dos processos e

do gerenciamento de projetos simultâneos, faz do Ambiente Integrado um

instrumento importante para o futuro das organizações que quiserem produzir

software com a qualidade dentro de padrões internacionais.

Vale ressaltar que durante o desenvolvimento do trabalho foi fundamental a

aplicação e implementação dos conceitos e tecnologias pesquisadas através

do desenvolvimento de um protótipo que contemplasse um processo

fundamental da qualidade.

Além de poder empregar os conceitos de qualidade, padrões e técnicas de

modelagem de processo, esta prática permitiu avaliar a real viabilidade de um

processo fundamental da qualidade quando de sua execução no Ambiente

Integrado. Através do protótipo foi também possível extrair informações

relativas aos serviços mínimos necessários que o e-WebProject deve prover

para a real implantação dos processos da qualidade no Ambiente.

Page 249: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

247

6.3 – Benefícios e Recomendações do Trabalho

O setor espacial brasileiro, tanto no segmento de veículos como no de

satélites, na última década registrou expressivos avanços. Assim como em

outros programas espaciais, bem como outros setores industriais, observa-se

um crescimento exponencial do uso de software embarcado. O exercício de

propor novos procedimentos metodológicos e gerenciais para as atividades da

qualidade no desenvolvimento de projetos de software, permitirá a criação

tanto de produtos como de processos com mais qualidade e confiabilidade.

Posteriormente à identificação das melhores práticas observadas nos modelos

de qualidade propostos, o próximo passo seria apresentar como avaliar e

melhorar estes processos. A avaliação e melhoria devem ser feitas de modo a

considerar os aspectos gerencial, prático e estratégico, visando alcançar os

objetivos da qualidade, do projeto e do negócio da organização. A execução e

a forma de melhoria de cada processo avaliado, devem ser feitas dentro das

regras e critérios adotados pelo Ambiente e-WebProject, de maneira a atender

as organizações alvo, quais sejam, as de tecnologia espacial ou de qualquer

outro segmento de desenvolvimento de software.

Estas atividades devem ser conduzidas de forma a se atingir, dentro de um

contexto o mais amplo possível, as metas organizacionais, de qualidade, e de

desenvolvimento de qualquer tipo de projeto que fizer uso deste Ambiente.

Obviamente que um processo qualquer da qualidade, para ser efetivo, tem que

ser ajustado para reagir proporcionalmente ao esforço, pessoas envolvidas,

escopo do grupo e características do ciclo de vida do software adotado. Estes

parâmetros devem ser fornecidos pelo Ambiente Integrado quando da

instanciação de um determinado projeto.

O próximo passo seria fornecer um conjunto ideal de processos que atendam

qualquer exigência de projeto e da organização como um todo. As atividades

da qualidade assim serão capazes de atender as exigências estratégicas e

Page 250: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

248

tecnológicas de um mercado em constante evolução, podendo inclusive, avaliar

e planejar melhorias dos processos estabelecidos de modo a alcançar níveis

mais elevados de maturidade e capacitação.

6.3.1 – Benefícios da Abordagem

Os avanços tecnológicos do setor espacial brasileiro, em especial o de projetos

de software, tem apresentado desafios que, para serem superados, exigem a

consideração de um vasto elenco de atributos de qualidade, considerando as

questões técnicas, metodológicas e gerenciais que o tratamento multidisciplinar

desse tipo de abordagem necessita. Para a efetivação dessa abordagem da

gerencia da qualidade, buscou-se consolidar, através da adoção de um modelo

formal dos processos da qualidade em um ambiente de engenharia de

software. Procurou-se, com os processos propostos, orientar procedimentos

para a avaliação dos produtos, para a definição da documentação e de seus

padrões, para a definição de métricas, entre outras questões necessárias à

altura da tecnologia em desenvolvimento. Isso requer ainda que a abordagem

proposta seja criticada e devidamente adequada ao ambiente específico em

que serão inserido os processos, de forma que favoreça o amadurecimento das

equipes e dos procedimentos organizacionais como um todo.

Entende-se que com o contínuo processo de inovação tecnológica e as

exigências de novos requisitos que envolvam software como componente

crítico do sistema, é necessário procedimentos de fabricação cada vez mais

rigoros e controlados. É imperioso que o tratamento de tais requisitos e da

complexidade decorrente seja feito com uma abordagem sistêmica, nela

compreendida o enfoque da garantia da qualidade e da segurança (Moura et al,

1998).

Page 251: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

249

6.3.2 – A Avaliação de Processo

Avaliação de processo de software é o exame dos processos usados por uma

organização comparados com um conjunto de critérios que determina sua

capacidade para executá-los, dentro de objetivos de qualidade, custo e

cronograma. Seu objetivo na organização é de:

Caracterizar as práticas de engenharia de software correntes.

Identificar as competências e as fragilidades.

Estabelecer qual é a habilidade do processo para controlar ou evitar

as causas significantes de problemas na qualidade, nos custos, no

cronograma e na execução do projeto.

Os processos da qualidade precisam sofrer continuamente mudanças e

refinamentos para melhorar a sua habilidade de alcançar os requisitos

indicados e as expectativas dos envolvidos. Portanto, segundo Fuggetta

(Fuggetta, 2000), os processos precisam ser continuamente avaliados e

melhorados. Esta avaliação deve ter como objetivo (Oliveira, 1995):

A compreensão do estado dos processos de uma organização, para

a melhoria dos mesmos.

Estabelecer a conformidade dos processos de uma organização a

um requisito em particular ou uma classe de requisitos.

Determinar a adequação dos processos de uma outra organização a

um contrato ou uma classe de contratos.

Algumas das principais razões pelas quais as organizações devem fazer

avaliações sobre processos de software, são, segundo Jung (Jung et al, 2001):

Page 252: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

250

Estabelecer marcos e/ou um caminho para a melhoria de processo

da organização.

Melhorar a eficiência.

Estabelecer um guia de boas práticas para a melhoria de processo

da organização.

Estabelecer marcos de projeto e/ou um caminho para a melhoria de

projeto/processo.

Melhorar o serviço ao cliente.

Atender a demanda do cliente por melhoria da capacidade do

processo.

Gerar suporte ao gerenciamento e melhoria do processo de

aquisição de software.

Gerar um time de suporte técnico e uma melhoria de processo de

aquisição de software.

Melhoria da confiabilidade dos produtos.

Melhoria da confiabilidade dos serviços de suporte aos produtos.

Obter vantagens de mercado.

Pressão de competição/mercado por demonstrar capacidade de

processo como um procedimento mensurável importante.

Page 253: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

251

6.3.3 – A Melhoria de Processo

Melhoria de processo de software significa entender os processos existentes e

mudar estes processos para melhorar a qualidade dos produtos e/ou reduzir

custos e tempo de desenvolvimento (Sommerville, 2001).

O programa de melhoria das organizações de maior maturidade deve ter forte

ênfase na automatização dos processos de software e também precisa ser

endereçado a temas relacionados às pessoas envolvidas. Processos, coleta de

dados, análise estatística devem ser automatizados quando possível. O esforço

e a participação na definição e melhoria de processo precisa ser real e fazer

parte do trabalho cotidiano. A abordagem do gerenciamento da qualidade

envolve uma ligação da qualidade com os objetivos do negócio no foco da

satisfação do cliente (Paulk, 1999).

Além dos fatores citados, deve-se criar uma cultura de qualidade em

organizações de maior maturidade (Miller, 1998). Prêmios e incentivos devem

ser estabelecidos para a busca de melhoria de processos, e os esforços e a

participação dos funcionários devem ser mais do que uma frase de efeito. As

pessoas acreditam no processo, e quando erros acontecem (como

inevitavelmente acontece em qualquer esforço humano), o foco é na melhoria

do processo, não disciplinando as pessoas, que podem ser somente os

portadores de más notícias (Paulk, 1999).

Page 254: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

252

Page 255: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

253

REFERÊNCIAS BIBLIOGRÁFICAS

Abdala, M. Lahoz, C., Sant’Anna, N. Um estudo para a definição de processos

das gerências da qualidade e da configuração em um ambiente integrado para

apoio ao desenvolvimento e gestão de projetos de software. In: Workshop em

Computação Aplicada, 2., (Workcap), São José dos Campos, Brasil, nov. 2002.

Resumo... São José dos Campos: INPE, 2002. p.11.

Abdala, M., Lahoz, C., Sant’Anna, N. Utilizando o SPEM para a modelagem

dos processos da qualidade e do gerenciamento da configuração em um

ambiente integrado. In: Simpósio Internacional de Melhoria de Processo de

Software, 5. (SIMPROS), nov. 2003, Recife. Anais... Recife: SIMPROS, 2003.

p. 91-102.

Acuña, S. T. e Ferré, X. Software Process Modelling. In: World Multiconference

on Systemics, Cibernetics and Informatics, 5. (SCI), July 2001, Orlando,

Florida. Proceedings... Orlando: 2001. p. 237-242.

Acunã, S., Barchin, G., Laserre, C., Silva, A., Sosa, M. Software engineering

and knowledge engineering software process: formalizing the who’s who. In:

International Conference on Software Engineering and Knowledge Engineering,

12., July 2000, Chicago, USA. Proceedings... Orlando, 2000. p.221-230.

Ambriola, V., Conradi, R., Fuggetta, A. Assessing process-centered software

engineering environments. ACM Transactions on Software Engineering and Methodology, v.6, n.3, p.283-328, July 1997.

Ambriola, V. diI Meglio, R., Gervasi, V., Mercurio, B. In: Applying a metric

framework to the software process: an experiment. In: European Workshop

Software Process Technology, 3., 1994, London, UK. Proceedings... London:

Springer, 1994. p. 207-226.

Page 256: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

254

Associação Brasileira de Normas Técnicas (ABNT), NBR-ISO 8402. Gestão da

qualidade e garantia da qualidade - Terminologia, Rio de Janeiro: 1997.

Associação Brasileira de Normas Técnicas (ABNT) NBR ISO-9001. Sistemas

de gestão da qualidade - requisitos, Rio de Janeiro: 2000.

Bandinelli, S., di Nitto, E., Fuggetta, A. Supporting cooperation in SPADE-1

environment. IEEE Transactions on Software Engineering, v. 22, n. 12, p.

841-865, 1996.

Ben-Shaul, I.; Kaiser, G. E. A paradigm for decentralized process modeling and

its realization in the Oz environment. In: International Conference on Software

Engineering ,16., (ICSE), May 1994, Sorrento, Italy. Proceedings... Sorrento,

1994. p. 179-188.

Bertolino, A. e Strigini, L. On the use of testability measures for dependability

assessment. IEEE Transaction on Software Engineering, v. 22, n. 2, p. 97-

108, Feb. 1996.

Booch, G., Rumbaugh, J., Jacobson, I. The unified modeling language: user

guide, Massachusetts, EUA: Addison-Wesley, 2000. 482p.

Capability Maturity Model for Software (CMM-SW), - version 1.1, Pittsburgh:

Software Engineering Institute, Technical Report CMU/SEI-93-TR-24, Feb.

1993.

Capability Maturity Model Integration (CMMI), Version 1.1, CMMI for Software

Engineering (CMMI-SW, V1.1), Continuous Representation, CMU/SEI-2002-

TR-028 - ESC-TR-2002-028, Aug. 2002.

Coallier, F. International standardization in software and systems engineering and the global IT market. Recife, 2003. Palestra realizada no

Simpósio Internacional de Melhoria de Processo de Software, 5. (SIMPROS)

em nov. 2003.

Page 257: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

255

Coleman, D., Ash, D., Lowther, B., Oman, P. W. Using metrics to evaluate

software systems maintainability. IEEE Computer, v.27, n.8, p.44-49, Aug.

1994.

Conallen, J. Building web applications with UML. Massachusetts, EUA:

Addison Wesley, 2000. 320p.

Conradi, R., Fernstrom, C., Fuggetta, A. Concepts for evolving software

processes. In: Software process modeling and technology. Taunton, UK:

Research Studies Press, c. 2, 1994, p. 9-31.

Crosby, P. B. Quality is free: the art of making quality certain. New York:

Mentor Books; Reissue edition, Jan 1980. 288p.

Cruz, T. Workflow: a tecnologia que vai revolucionar processos. São Paulo:

Atlas, 1998. 232p.

Cugola, G. e Ghezzi, C. Software processes: a retrospective and a path to the

future. Software Process Improvement and Practice, v.4, n.3, p. 101-123,

1998.

Curtis, B., Kellner, M, Over, J. Process modeling. Communications of the ACM, v.35, n.9, p.75-90, Sep. 1992.

Curtis, B. The global pursuit of process maturity. IEEE Software, v. 17, n. 4, p.

76-78, July/Aug. 2000.

Feiler, P. H., Humphrey, W. S. Software process development and enactment:

concepts and definitions. In: International Conference on Software Process, 2.,

Berlin, Germany, Feb. 1993. Proceedings... Berlin: 1993. p.28-40.

Fenton, N. E. e Pfleeger, S. L. Software metrics: a rigorous & practical

approach. Boston, USA: PWS Publishing Company; 1997. 656p.

Page 258: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

256

Fenton, N. Software measurement: a necessary scientific basis. IEEE Transaction on Software Engineering, v. 20, n. 3, p. 199-206, Mar. 1994.

Finkelstein, A., Kramer, J. B., Nuseibeh, B. Software process modeling and technology. Taunton, UK: Research Studies, 1994, 384p.

Franch, X.; Ribó, J. M. Using UML for modeling the static part of a software

process. In: UML International Conference, 2., Fort Collins, USA, Oct. 1999.

Proceedings... Fort Collins, 1999. p. 292-307.

Freeman, P. A. Software perspectives: the system is the message. Reading,

USA: Addison-Wesley, 1987, 294p.

Fuggetta, A. Software process: a roadmap. In: Future of Software Engineering.

Limerick, Ireland., 2000. Proceedings... New York: ACM Press, 2000. 630p.

Hass, A. Configuration management principles and practice. Boston, USA:

Person Education, 2002. 432p.

Humphrey, W. S. A discipline for software engineering. Reading, USA:

Addison-Wesley Publishing Company, 1995. 816p.

International Organization of Standardization/ International Electrotechnical

Commission (ISO/IEC), ISO/IEC 12207. International standard for information

technology - software life cycle processes. Geneva, Switzerland, 1995.

Standard.

International Organization of Standardization/ International Electrotechnical

Commission (ISO/IEC), ISO/IEC 12207. International standard for information

technology - software life cycle processes. Geneva, Switzerland, 2001.

Amendment 1.

International Organization of Standardization/ International Electrotechnical

Commission (ISO/IEC), ISO/IEC 15504-1. Information technology – software

Page 259: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

257

process assessment part 1: concepts and introductory guide. Geneva,

Switzerland, 1998. Technical Report.

International Organization of Standardization/ International Electrotechnical

Commission (ISO/IEC), ISO/IEC 15504-2. Information technology — process

assessment: part 2: - performing an assessment. Geneva, Switzerland, 2003.

International Standard.

International Organization of Standardization/ International Electrotechnical

Commission (ISO/IEC), ISO/IEC 15504-2. Software process assessment – a

reference model for processes and process capability, part 2. Geneva,

Switzerland, 1998, Technical Report.

International Organization of Standardization/ International Electrotechnical

Commission (ISO/IEC), ISO/IEC 15504-5, Information technology – software

process assessment part 5 - an assessment model an indicator guidance,

Geneva, Switzerland, 1998. Technical Report.

International Organization of Standardization/ International Electrotechnical

Commission (ISO/IEC), ISO/IEC 15504-5. Information technology – process

assessment: part 5: - an exemplar process assessment model. Geneva,

Switzerland, 2003. Committee Draft.

International Organization of Standardization/ International Electrotechnical

Commission (ISO/IEC), ISO/IEC 9126, Information Technology - Software

product evaluation, quality characteristics and guidelines for their use. Geneva,

Switzerland, 1991. International Standard.

International Organization of Standardization (ISO), ISO 9000. Quality

management systems - fundamentals and vocabulary. Geneva, Switzerland,

2000. Standard.

Page 260: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

258

Jacobson, I.; Booch, G., Rumbaugh, J. The unified software development process. Massachusetts, EUA: Addison-Wesley Publishing Company, 1999.

463p.

Jung, H., Hunter, R., Goldenson, D. R., El-Amam, K. Software process improve practice: findings from phase 2 of the SPICE trials. Hoboken, USA:

John Wiley & Sons, Ltd., 2001. p. 205-242.

Juran, J. M. Juran on quality by design: the new steps for planning quality

into goods and services. Washington, USA: Free Press, 1992. 538p.

Karlsson, E. A., Software reuse: a holistic approach. Hoboken, USA: John

Wiley & Sons, 1995. 528p.

Kimball, R., Reeves, L., Ross, M., Thornthwaite, W. The Data warehouse lifecycle toolkit: expert methods for designing, developing, and deploying data

warehouses. Hoboken, USA: John Wiley & Sons,1998. 800p.

Kitchenham, B., Pfleeger, S. L. Software quality: the elusive target, IEEE Software, v.13, n.1, p.12-21 Jan. 1996.

Lahoz, C. e Sant’Anna, N. Os padrões ISO/IEC 12207 e 15504 e a modelagem

de processos da qualidade de software, in: Workshop em Computação

Aplicada, 3., (Workcap), nov. 2003, São José dos Campos. Anais... São José

dos Campos: INPE, 2003. p. 43-48.

Lahoz, C., Abdala, M., Sant’Anna, N. O processo de auditar produtos: uma

pesquisa referente à sua definição e modelagem para a garantia da qualidade

no e-WebProject. In: Simpósio Internacional de Melhoria de Processo de

Software, 4., (SIMPROS), set. 2002, Recife. Resumo... Recife, 2002.

Leite, J. C. S. P., Software evolution, the requirements engineering view. In:

Jornadas Argentinas de Informática e Investigación Operativa - Simpósio en

Page 261: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

259

Tecnologia de Software, 26., (SoST), Buenos Aires, Argentina. Proceedings... Buenos Aires, 1997. p. 21-23.

Linger, R. C., Cleanroom process model, IEEE Software, v.11, n.20, p.50-58,

1994.

McCabe, T. J. A complexity measure, IEEE Transactions on Software Engineering; v. 2, n. 4, p- 308-320, Dec. 1976.

Ministério da Ciência e Tecnologia. Secretaria de Política de Informática

(MCT/SEPIN). Qualidade e produtividade no setor de software brasileiro

Disponível em < http://www.mct.gov.br/sepin>

Acesso em 11 maio 2003.

Meira Filho, L. G., Guimarães, T. F., Barcelos, E. D. Considerações sobre a

natureza estratégica das atividades espaciais e o papel da Agência Espacial

Brasileira. Parcerias Estratégicas, n. 7, p. 7- 20, out.1999.

Miller, C. Sustaining a continuous improvement culture: from start-up venture to

big business in a decentralized culture. In: Software Engineering Process Group

Conference (SEPG), Mar. 1998, Chicago, USA. Proceedings... Pittsburgh,

USA, 1998.

Mills, H. D., Dyer, M. Cleanroom software engineering. IEEE Software, V.4,

N.5, p.19-25, 1987.

Moller, K. H., Paulish, D. J. Software metrics: a practitioner’s guide to

improved product development. Los Alamitos, EUA: IEEE Computer Society,

Mar. 1993. 257p.

Moura, C. A. T., Lahoz, C., Abdala, M. A practical approach to quality

assurance in critical systems. In: First Latin American Dependable Computing-

LADC, São Paulo, Oct. 2003. Proceedings... New York: Springer, 2003,

v.2847. p. 369 – 370.

Page 262: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

260

Moura, C. A. T., Domiciano, A. J. V., Fernandes, M. O. S. Incorporação de

software embarcado em veículos espaciais brasileiros. In: Congresso

Internacional de Tecnologia de Software, 9., Curitiba, Brasil,1998. Anais... Curitiba, 1998.

Munson, J. C. Software measurement: problems and practice. In: Software

Engineering, Switzerland, Aug. 1995. Annals... Switzerland, 1995, v.1. p. 255-

285.

Nascimento, C. J. A Melhoria da qualidade e produtividade no contexto da nova

lei de TI e da política de software, 2002. Palestra proferida no Workshop da

Qualidade e Produtividade em Software (WQPS) em 11 março de 2002.

Oliveira, A. M. Avaliação de processos de software: modelos e o TAQS-PROC.

In: Workshop de Qualidade de Software, 9. (SBES), Recife, 1995. Anais... Recife, v. 1. p. 42 - 46.

Oman, P. Construction and testing of polynomials predicting software

maintainability, Journal of System and Software, v. 24, n.3, p. 251-266, Mar.

1994.

Osterweil, L. Software processes are software too. In: International Conference

on Software Engineering, 9., Monterey, USA, Mar. 1987. Proceedings... Monterey, 1987. p. 2-13.

Parnas, D. L., MADEY, J., IGLEWSKI, M., Precise documentation of well-

structured programs, IEEE Transactions on Software Engineering, v. 20,

n.12, p. 948-976, 1994.

Paulk, M. C. Practices of high maturity organizations. In: SEPG Conference,

Atlanta, GE, USA, Mar. 1999. Proceedings... Atlanta, 1999. p.1-25.

Pfleeger, S. L. Software engineering: theory and practice. New York: Prentice

Hall, 2.ed., 2001. 576p.

Page 263: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

261

Pfleeger, S. L. Software engineering: the production of quality software. 2.ed.,

New York: Macmillan Pub. Co., 1991. 517p.

PMI, Project Management Institute, A guide to the project management body of knowledge. Charlotte N. C: Project Management Institute, 1996. 216p.

Ponnambalam, K., S. Kalaichelvan, N. Goel, and Munikoti, R. Analyzing

sensitivities of software qualities to various metrics. In: International Conference

on Software Quality, 6., Ottawa, Canada, Oct. 1996. Proceedings....Ottawa,

1996.

Pressman, R. S. Engenharia de software. São Paulo: Makron Books, 1995.

872p.

Pressman, R. Software engineering - a practioner’s approach. 3. ed., New

York: McGraw Hill, 1992. 880p.

Rocha, A.N.C., Maldonado, J. C., Weber, K. C. Qualidade de software: teoria

e prática. São Paulo: Prentice-Hall, 2001.

Ross, D. Structured Analysis (SA): A language for communicating ideas, IEEE Transactions on Software Engineering, v. 3, n.1, p. 16-34, Jan. 1977.

Rout, T. Overview of CMMI: system/software eng. continuous representations.

In: Simpósio Internacional de Melhoria de Processo, 4., (SIMPROS), Recife,

Brasil, nov. 2002. Anais... Recife, 2002, v.1. p. 1-16.

Rout, T.P., Tuffley A., Cahill B. CMMI evaluation: Capability Maturity Model

Integration mapping to ISO/IEC 15504-2:1998. Queensland, Australia: Software

Quality Institute, Nov. 2001. prepared for the Australian Defense Material

Organization.

Salviano, C. F. Introdução aos modelos CMM: ISO/IEC 15504 (SPICE) e

CMMI. In: Simpósio Internacional de Melhoria de Processo de Software, 5.,

(SIMPROS), Recife, nov. 2003. Anais... Recife, 2003. p. 367-394.

Page 264: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

262

Sanches, R. Documentação de software. In: Rocha, A.N.C., Maldonado, J. C.,

Weber, K. C.(aut.) Qualidade de software: teoria e prática. 1. ed., São Paulo:

Editora Makron Books, 2001, v.1. p. 54-59.

Sant’Anna, N., Cereja Jr., M. G., Borrego Filho, L. F., Luquel, L., Casilo, B. H.

e-WebProject - um ambiente integrado para o apoio ao desenvolvimento e

gestão de projetos de software, Congresso Internacional de Tecnologia de

Software: Qualidade e Produtividade no Gerenciamento de Projetos, 13.,

Curitiba, Brasil, jun. 2002. Anais... Curitiba, 2002. p. 163-174.

Magee, S. Software Engineering Process Technology (SEPT), Issaquah,

USA, Disponível em: <http://www.12207.com/12207-news.htm>

Acesso em: 18 de fev. 2004.

Sommerville, I., Software engineering, 6. ed., Reading: Person Education

Limited, 2001. 693p.

Software Process Engineering Metamodel Specification (SPEM), Version 1.0,

Needham, USA: Object Management Group, formal 02-11-14, Nov. 2002.

Software Process Improvement and Capability Determination (SPICE),

Software process assessment – part 2, a model for process management,

Queensland, Australia. Version 1.0. 1995.

Abran A., Moore, J. M. Guide to software engineering body of knowledge

(SWEBOK), Los Alamitos, USA: IEEE Computer Society, May 2001. trail

version,

Troster, J., Tian, J., Measurement and defect modeling for a legacy software

system, Annals of Software Engineering. V.1:, p. 95-118, 1995.

Unhelkar, B., Process quality assurance for UML-based projects. Boston,

USA: Addison-Wesley, Oct. 2002. 432p.

Page 265: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

263

Wheeler, S. e Duggins, S. Improving software quality. In: ACM Southeast

Regional Conference, Marietta, USA, 1998. Proceedings…Marietta, 1998. p.

300-309.

Yu, X. e Lamb, D. A. Metrics applicable to software design. Annals of Software Engineering. v.1, p. 23-41,1995.

Zamli, K. Z. e Lee, P. A. Taxonomy of process modeling languages. In:

International Conference on Computer Systems and Applications, Beirut,

Lebanon, June 2001. Proceedings… Beirut, 2001. p. 435-437.

Zulmer, R. E. Software quality engineering: the Deming way, Englewood

Cliffs, USA: American Programmer, June 1989.

Page 266: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

264

Page 267: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

265

BIBLIOGRAFIA COMPLEMENTAR

Benali, K., Derniame, J. C. Software processes modeling: what, who, and when.

In: European Workshop on Software Process Technology, 2., Sep. 1992,

Trondheim, Norway. Proceedings... Trondheim, 1992. p. 21-25.

Cereja Jr, M. G. O serviço de coordenação de processos para o ambiente “e-WebProject”. Proposta (Mestrado em Computação Aplicada), Instituto

Nacional de Pesquisas Espaciais, São José dos Campos, 2002.

Cortês, M. L. INF310 - Curso de extensão em engenharia de software,

modelos de qualidade de software. Campinas: Unicamp, 2001.

Jaccheri, M. L., Picco, G.P., Lago, P. Eliciting software process models with the

E3 language, ACM Transactions on Software Engineering and Methodology, v. 7, n. 4, p.368-410, 1998.

Jaccheri, M. L., Baldi, M., Divitini, M. Evaluating the requirements of software

process modeling languages and systems. In: Process Support for Distributed

Team-based Software Development, Florida, USA.1999. Proceedings…

London, UK: Springer-Verlag, 2000. p. 96-108.

Kadia, R. Issues encountered in building a flexible software development

environment: Lessons from the Arcadia project. In: Symposium on Software

Development Environments, Washington, USA, 1992. Proceedings... New

York: ACM Press, 1992.

Lahoz, C. e Sant’Anna, N. Os modelos de processos de gestão da qualidade

de software baseados no padrão ISO/IEC 15504, Conferencia Iberoamericana

en Sistemas, Cibernética e Informática, 3., (CISCI), Orlando, USA, July, 2004.

aceito.

Page 268: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

266

Ministério da Ciência e Tecnologia (MCT), Qualidade e produtividade no setor de software, glossário de termos da qualidade, 1999.

Disponível em:<http://www.mct.gov.br/Temas/info/Dsi/qualidad/Qualidade.htm>

Acesso em: 26 abril 2002.

PHOPA, V. A. Standard for software documentation. IEEE Computer Society,

v.30, n.10, p. 97-98, 1997.

Sant’Anna, N., Um ambiente experimental para a engenharia de software,

1993. (INPE-5540-TDI/528). Dissertação (Mestrado em Computação Aplicada)-

Instituto Nacional de Pesquisas Espaciais, São José dos Campos, 1993.

Sant’Anna, N., Lahoz, C., Abdala, M. Um ambiente integrado para suporte a

projetos de engenharia de software. In: Comdex, ago. 2003, São Paulo.

Tutorial... São Paulo, 2003.

Terry, R., Software process assessment, part1 concepts and introductory

guide. Queensland, Australia, ver. 1, 1995.

Yourdon, E. The Decline and fall of the american programmer. New York:

Prentice Hall, 1992. 212p.

Page 269: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

267

APÊNDICE A

DIMENSÃO DE PROCESSO E DE CAPACIDADE DO PADRÃO

ISO/IEC 15504

Dimensão de Processo

A dimensão de processo está diretamente relacionada ao modelo de referência

de processo, Process Reference Model (PRM), que compreende definições de

processos em um ciclo de vida. Está descrito em termos de objetivos e

resultados de um processo e produtos do trabalho envolvidos no processo. O

ciclo de vida de processo possui três categorias: Primários (Primary),

consistindo dos grupos Aquisição, Fornecedor, Engenharia e Operação;

Organizacional (Organizational), consistindo dos grupos Gerenciamento,

Melhoria, Recurso & Infra-estrutura e Reuso; Suporte (Suport), consistindo dos

grupos Controle de Configuração, Garantia da Qualidade e Qualidade de

Produto. Para cada um destes processos existe uma definição dos resultados

da sua implementação bem sucedida bem como uma descrição detalhada de

cada uma das práticas básicas.

Categoria de Processos Primários

São responsáveis pela geração dos produtos de software, constituindo o ciclo

de vida de software propriamente dito. Atendem ao início, à contratação entre o

adquirente (organização que adquire um sistema ou produto de software,

podendo ser também representada pelo comprador, cliente, proprietário ou

usuário) e o fornecedor (organização que fornece o sistema, serviço ou produto

contratado). Atende também a execução do desenvolvimento e operação do

software durante seu ciclo de vida. São representados pelos processos de

Aquisição, Fornecimento, Engenharia e Operação.

Page 270: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

268

Grupo de Processos de Aquisição (ACQ)

O grupo de processo Aquisição consiste dos processos realizados pelo cliente

de modo a adquirir um produto e/ou serviço.

Processo Preparação da Aquisição (ACQ.1)

Define o processo de estabelecimento das necessidades e objetivos para a

aquisição e a comunicação com os potenciais fornecedores.

Processo Seleção do Fornecedor (ACQ.2)

Define o processo de escolha da organização que será responsável pela

entrega dos requisitos do projeto.

Processo Monitorização do Fornecedor (ACQ.3)

Define o processo de acompanhamento e avaliação do desempenho do

fornecedor em conformidade com os requisitos acordados.

Processo Aceitação do Cliente (ACQ.4)

Define o processo de aprovação das entregas do fornecedor quando todos os

critérios de aceitação forem satisfeitos.

Grupo de Processo Fornecedor (SPL)

O grupo de processo Fornecedor consiste dos processos realizados pelo

fornecedor de modo a fornecer um produto e/ou serviço.

Processo Proposta do Fornecedor (SPL.1)

Page 271: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

269

Define o processo de que estabelece uma interface de resposta para as

questões do cliente e requisições para propostas, preparação e submissão de

propostas, e confirmação de acordos através de um contrato estabelecido.

Processo Acordo Contratual (SPL.2)

Define o processo de negociação e aprovação de contratos/acordos claros e

sem ambigüidades de expectativas, responsabilidades, produtos do trabalho/

entregas e obrigações entre fornecedor e adquirente.

Processo Entrega de Software (SPL.3)

Define o processo de controle de entrega do “pacote” produto para o cliente.

Isto inclui sua configuração, a forma de entrega , a duração do suporte técnico

ao produto, entre outros detalhes.

Processo Suporte a Aceitação do Software (SPL.4)

Define o processo de ajuda ao cliente em alcançar confiança de uso e

apropriação do produto no ambiente de uso.

Grupo de Processo Operação (OPE)

O grupo de processo Operação consiste dos processos que dão suporte a

transição do produto ou serviço para o cliente, e provê sua correta operação e

uso.

Processo Uso Operacional (OPE.1)

Define o processo de garantia da correta e eficiente operação do produto

durante seu uso no ambiente instalado.

Processo Suporte ao Cliente (OPE.2)

Page 272: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

270

Define o processo de estabelecimento e manutenção de um nível de serviço

aceitável para suporte ao produto do fornecedor para o cliente.

Grupo de Processo Engenharia (ENG)

O grupo de processo Engenharia consiste dos processos que diretamente

elicitam e gerenciam os requisitos do cliente, especificam, implementam, ou

mantém o produto de software e sua relação com o sistema.

Processo Elicitação de Requisitos (ENG.1)

Define o processo de reunião, processamento e investigação das necessidades

do cliente e seus requisitos, através do ciclo de vida do produto e/ou serviço de

software, para se estabelecer um marco (baseline) que servirá de base para

definir as necessidades dos produtos do trabalho.

Processo Análise de Requisitos de Sistema (ENG.2)

Define o processo de transformação dos requisitos definidos pelos envolvidos

em um conjunto de requisitos técnicos desejáveis, que servirão como guia para

o projeto do sistema.

Processo Projeto de Arquitetura do Sistema (ENG.3)

Define o processo de identificação de quais requisitos do sistema devem ser

alocados para quais elementos do sistema.

Processo Análise de Requisitos de Software (ENG.4)

Define o processo de estabelecimento dos requisitos dos elementos de

software do sistema.

Processo Projeto de Software (ENG.5)

Page 273: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

271

Define o processo de definição do projeto para o software que implementa e

pode ser verificado em conformidade com seus requisitos.

Processo Construção de Software (ENG.6)

Define o processo de produção das unidades de software que refletem

apropriadamente o projeto de software.

Processo Integração de Software (ENG.7)

Define o processo de combinação das unidades de software de modo a

produzir um item integrado de software que demonstra que os requisitos

funcionais e não funcionais de software são satisfeitos em uma plataforma

operacional completa.

Processo Teste de Software (ENG.8)

Define o processo de confirmação de que o produto de software integrado

satisfaz os requisitos definidos.

Processo Instalação (ENG.9)

Define o processo de instalação do produto de software de acordo com os

requisitos estabelecidos e no ambiente de operação

Processo Integração de Sistema (ENG.10)

Define o processo de integração dos elementos do sistema (incluindo itens de

software, hardware, manual de operação, e outros sistemas) para produzir um

sistema completo que satisfará o projeto do sistema bem como as expectativas

do cliente expressadas nos requisitos do sistema.

Processo Teste de Sistema (ENG.11)

Page 274: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

272

Define o processo de garantia de que a implementação de cada requisito do

sistema seja testado para confirmação de que o sistema está pronto para

entrega.

Processo Manutenção do Sistema e do Software (ENG.12)

Define o processo de modificação de um sistema/software depois da entrega

para correção de falhas, melhorias de desempenho ou outros atributos, ou para

adaptação de mudanças de ambiente.

Categoria de Processos Suporte

Define a categoria de processo que pode ser aplicado por qualquer outro

processo (incluindo outros processos da categoria Suporte) em vários pontos

do ciclo de vida do software. Têm como objetivo auxiliar outros processos,

visando principalmente à qualidade e o sucesso do projeto. São representados

pelos grupos de processos Controles de Configuração, Garantia da Qualidade

e Qualidade de Produto.

Grupo de Processo Controle de Configuração (CFG)

O grupo de processo Controle de Configuração consiste dos processos que

controlam e mantém a integridade dos produtos desenvolvidos pelos processos

de engenharia.

Processo Documentação (CFG.1)

Define o processo de desenvolvimento e manutenção dos registros das

informações produzidas por um processo.

Processo Gerenciamento da Configuração (CFG.2)

Page 275: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

273

Define o processo de estabelecimento e manutenção da integridade de todos

os produtos do trabalho dos processos ou projeto e da sua disponibilização as

partes envolvidas.

Processo Gerenciamento de Problema (CFG.3)

Define o processo de garantia de que todos os problemas descobertos são

identificados, analisados, gerenciados e controlados para resolução.

Processo Gerenciamento de Solicitações de Mudanças (CFG.4)

Define o processo de garantia de que as mudanças solicitadas são

gerenciadas, rastreadas e controladas.

Grupo de Processo Garantia da Qualidade (QUA)

O grupo de processo Garantia da Qualidade consiste dos processos que

provêem a garantia de que todos os produtos/ ou processos do trabalho estão

em conformidade com planos e previsões pré-definidos.

Processo Garantia da Qualidade (QUA.1)

Define o processo de garantia de que e os processos os produtos do trabalho

estejam em conformidade com planos e previsões pré-definidos.

Processo Verificação (QUA.2)

Define o processo de confirmação de que cada produto de software e/ou

serviço de um processo ou projeto reflete apropriadamente os requisitos

especificados.

Processo Validação (QUA.3)

Page 276: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

274

Define o processo de confirmação de que os requisitos específicos de uso,

pretendido para um produto de software, são preenchidos.

Processo Revisão Conjunta (QUA.4)

Define o processo de manutenção de entendimento comum entre os envolvidos

(o cliente principalmente) do progresso efetuado em relação ao contrato e o

pode ser feito ajudar a garantir que os produtos satisfaçam os envolvidos.

Podem acontecer durante todo o ciclo de vida do projeto e ser voltada para

uma abordagem gerencial ou técnica.

Processo Auditoria (QUA.5)

Define o processo de determinação independente da conformidade de produtos

e processos selecionados com os requisitos, planos e contratos, como

apropriado.

Grupo de Processo Qualidade de Produto (PRO)

Define o grupo de processo de garantia de que os produtos tenham boa

qualidade.

Processo Usabilidade (PRO.1)

Define o processo de garantia das considerações de interesse e necessidades

dos envolvidos de modo à otimização do suporte e treinamento, aumentando

produtividade e qualidade do trabalho, melhorando as condições de trabalho

humano e reduzindo a chance de rejeição do sistema por parte do usuário.

Processo Avaliação de Produto (PRO.2)

Page 277: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

275

Define o processo de garantia, através de exame e medição sistemática, de

que o produto está conforme o especificado e satisfaz as necessidades do

usuário do produto.

Categoria de Processos Organizacionais

Têm como objetivo estabelecer os objetivos do negócio na organização e

desenvolver processos, produtos e recursos relacionados e que quando

usados pelos projetos na organização auxiliam a atingir seus objetivos. São

representados pelos grupos de processo Gerenciamentos, Melhoria, Recursos

& Infra-estrutura e Reuso.

Grupo de Processo Gerenciamento (MAN)

Define o grupo de processo que contém práticas de natureza genérica que

podem ser usadas por qualquer outra gerência de qualquer tipo de projeto ou

processo dentro de um ciclo de vida de software

Processo Alinhamento Organizacional (MAN.1)

Define o processo de capacitação dos processos de software de modo a

organização prover seus produtos ou serviços de software consistentes com

seus objetivos de negócio.

Processo Gerenciamento Organizacional (MAN.2)

Define o processo de estabelecimento e realização de práticas de

gerenciamento de software, durante a realização dos processos necessários

para prover os produtos e serviços de software, que sejam consistentes com os

objetivos da organização.

Page 278: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

276

Processo Gerenciamento de Projeto (MAN.3)

Define o processo de identificação, estabelecimento, coordenação e

monitoração das atividades, tarefas e recursos necessários para um projeto

produzir um produto e/ou serviço, conforme seus requisitos e restrições.

Processo Gerenciamento da Qualidade (MAN.4)

Define o processo de monitoração da qualidade dos produtos e/ou serviços do

projeto e da garantia de que eles satisfaçam o cliente. O processo envolve o

estabelecimento de um foco (no nível de projeto e organizacional) da

monitoração da qualidade do produto e do processo para garantir o

cumprimento dos requisitos do cliente.

Processo Gerenciamento de Risco (MAN.5)

Define o processo de identificação, gerenciamento e atenuação de riscos

continuamente, no nível de projeto e organizacional.

Processo Medição (MAN.6)

Define o processo de coleta e análise de dados relativos aos produtos

desenvolvidos e processos implementados na organização e nos projetos, para

o suporte efetivo do gerenciamento dos processos e da demonstração objetiva

da qualidade dos produtos.

Grupo de Melhoria de Processo (PIM)

Define o grupo de processo de definição, desenvolvimento e melhoria dos

processos executados na unidade organizacional.

Processo Estabelecimento (PIM.1)

Page 279: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

277

Define o processo de estabelecimento de um conjunto de processos

organizacionais para todo processo de ciclo de vida e sua aplicação para as

atividades do negócio.

Processo Avaliação (PIM.2)

Define o processo de avaliação de quão os processos padronizados na

organização contribuem para alcançar os objetivos do negócio e para auxiliar a

organização no enfoque das necessidades de melhoria contínua dos

processos.

Processo Melhoria (PIM.3)

Define o processo de melhoria contínua dos processos da organização, de

forma efetiva e eficiente, alinhando os processos às necessidades do negócio.

Grupo de Recursos & Infra-estrutura (RIN)

Define o grupo de processo de provisão dos recursos humanos adequados e

da infra-estrutura requerida por qualquer outro processo executado pela

unidade organizacional.

Processo Gerenciamento de Recursos Humanos (RIN.1)

Define o processo de fornecimento, na organização e no projeto, de indivíduos

que possuam técnicas e conhecimento para realizar seus papéis efetivamente

e que trabalhem juntos como um grupo coeso.

Processo Treinamento (RIN.2)

Page 280: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

278

Define o processo de fornecimento, na organização e no projeto, de indivíduos

quer possuam as técnicas e o conhecimento necessários para desempenhar

seus papéis efetivamente.

Processo Gerenciamento do Conhecimento (RIN.3)

Define o processo de garantia de que o conhecimento individual, informações e

técnicas são coletados, compartilhados, reutilizados e melhorados através da

organização.

Processo Infra-estrutura (RIN.4)

Define o processo de manutenção de uma infra-estrutura estável e confiável

necessária para suportar a realização de qualquer outro processo. A infra-

estrutura pode incluir software, hardware, métodos, ferramentas, técnicas,

padrões e facilidades para o desenvolvimento, operação ou manutenção.

Grupo de Reuso (REU)

Define o grupo de processo de exploração sistemática das oportunidades de

reuso no programa de reuso da organização.

Processo Infra-estrutura (REU.1)

Define o processo de gerenciamento da vida dos bens de reuso da concepção

até seu desuso.

Processo Gerenciamento do Programa de Reuso (REU.2)

Page 281: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

279

Define o processo de planejamento, estabelecimento, gerenciamento, controle

e monitoração do programa de reuso e da exploração sistemática das

oportunidades de reuso.

Processo Engenharia de Domínio (REU.3)

Define o processo de desenvolvimento e manutenção dos modelos do domínio,

arquitetura do domínio e bens para o domínio.

Dimensão Capacidade

O desenvolvimento da dimensão de capacidade é expressa no modelo de

avaliação de processo, Process Assessment Model (PAM) em termos de

atributos de processo, Process Atributes (PA) que são agrupadas em níveis de

capacidade. PAs são características do processo que podem ser avaliadas em

uma escala de realização, provendo uma medida para a capacidade do

processo. Elas são aplicadas em todos os processos, e cada PA descreve uma

face de toda a capacidade de gerenciamento e melhoria que todo processo

busca, no sentido de contribuir para o alcance dos objetivos do negócio da

organização.

Pode-se então definir o nível de capacidade como um conjunto de PAs que

trabalham conjuntamente para prover um maior ganho na capacidade de

execução de um processo. Cada nível estipula um ganho maior de capacidade

de execução do processo, constituindo um modo racional de melhoria da

capacidade de qualquer processo definido na 15504. São ao todo seis níveis

de capacidade descritos no modelo de referência, incorporando nove PAs.

Page 282: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

280

Processo Incompleto - Nível 0

O processo não está implementado, ou falha ao tentar alcançar seus objetivos.

Neste nível existe uma pequena ou nenhuma evidência de qualquer realização

sistemática de um processo proposto. Não existem produtos de trabalho nem

saídas do processo facilmente identificáveis.

Processo Realizado – Nível 1

O processo em geral é atingido, embora não necessariamente de forma

planejada e controlada. Há um consenso na organização de que as ações

devem ser realizadas e quando são necessárias. Existem produtos de trabalho

para o processo e eles são utilizados para atestar o atendimento dos objetivos.

Realização do Processo (PA1.1)

É a medida que identifica se o processo alcança seus resultados,

transformando, através das entradas de seus produtos do trabalho, saídas

claramente identificadas.

Processo Gerenciado – Nível 2

O processo é agora implementado de modo gerenciado, de forma planejada,

monitorada e ajustada, e seus produtos de trabalho possuem qualidade

aceitável e são estabelecidos, controlados e mantidos.

Gerenciamento Realizado (PA2.1)

É uma medida que identifica se o processo realizado é gerenciado. Verifica se

os objetivos do processo foram bem identificados, se sua realização foi

planejada e monitorada, responsabilidades e recursos foram bem definidos,

Page 283: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

281

alocados e usados e se a comunicação entre os envolvidos está clara e efetiva.

Os processos relacionados com esta PA são: MAN.3, MAN.5, CFG.3 e QUA.1.

Gerenciamento do Produto do Trabalho (PA2.2)

É uma medida que identifica se o processo controla quanto os produtos do

trabalho produzidos são apropriadamente gerenciados. Verifica se os requisitos

para os produtos, sua documentação e controle estão bem definidos, se estão

bem identificados, documentado e controlados e se forma revisados de acordo

com o planejado. Os processos relacionados com esta PA são: CFG.1, CFG.2,

CFG.3, QUA.1, QUA.2, QUA.4.

Processo Estabelecido – Nível 3

O processo gerenciado é agora implementado um processo definido, baseado

em padrões de processo e sua capacidade de obtenção dos resultados do

processo. As pessoas que implementam o processo usam processos

aprovados e os produtos de trabalho estão de acordo com padrões e

requisitos.

Definição do Processo (PA3.1)

É uma medida que identifica se padrões de processo são mantidos para o

suporte ao desenvolvimento de processos definidos. Verifica se padrões e suas

adequações apropriadas são definidos para a descrição dos elementos

fundamentais dos processos, a seqüência de atividades está determinada,

papéis para a execução do processo estão definidos, está definida uma infra-

estrutura, ambiente e um mecanismo de monitoração para a realização dos

processos. Os processos relacionados com esta PA são: MAN.2, PIM.1, RIN.1,

RIN.3, RIN.4, REU.1, REU.3, QUA.5.

Desenvolvimento do Processo (PA3.2)

Page 284: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

282

É uma medida que identifica se processo padrão é efetivamente desenvolvido

como o processo definido para alcançar seus resultados. Verifica se o que foi

definido foi implementado, isto significa se os papéis, recursos e infra-estrutura

necessária para a execução do processo padrão estão efetivamente

designados, alocados e disponíveis. Os processos relacionados com esta PA

são: MAN.2, MAN.3, MAN.4, MAN.6, RIN.1, RIN.2, RIN.4, QUA.5.

Processo Previsível – Nível 4

O processo é realizado de forma consistente, dentro dos limites de controle,

para atingir os objetivos. Medidas da realização do processo são coletadas e

analisadas. Isto leva a um entendimento quantitativo da capacitação do

processo a uma habilidade de predizer a realização.

Medição do Processo (PA4.1)

É uma medida que identifica se o resultados das medições são usados para

garantir a realização do processo, de forma a alcançar seu objetivo definido e

os objetivos relevantes do negócio. Verifica se as informações relevantes ao

processo, de forma quantitativa, estão estabelecidas, e os resultados são

coletados, analisados e relatados de forma a monitorar e caracterizar o

processo. Os processos relacionados com esta PA são: MAN.1, MAN.4,

MAN.5, MAN.6, PIM.2.

Controle do Processo (PA4.2)

É uma medida que identifica se o processo é quantitativamente gerenciado

para produzir um processo estável, capacitado e previsível, dentro de limites

definidos. Verifica se o processo é controlado através de coleta, análise e

medições de produto e de processo, utilizados para corrigir, quando

necessário, a realização do processo na obtenção de alcançar produtos e

Page 285: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

283

processo definidos. Os processos relacionados com esta PA são: MAN.1,

MAN.4, MAN.6, PIM.2, RIN.4.

Processo Otimizado – Nível 5

O processo realizado de forma otimizada para atender as necessidades atuais

e futuras do negócio. O processo atinge seu objetivo de negócio e consegue

ser repetido. São estabelecidos objetivos quantitativos de eficácia e eficiência

para o processo, segundo os objetivos da organização. Há o acompanhamento

constante do processo, obtendo retorno quantitativo e melhorias são propostas

através da análise destes resultados.

Inovação do Processo (PA5.1)

É uma medida que identifica se mudanças no processo são identificadas para

análise causas comuns na variação do desempenho e para investigações de

novas abordagens para a definição e desenvolvimento de processos. Verifica

se melhorias para o processo são definidas para se alcançar os objetivos de

negócio da organização e se dados apropriados são analisados para identificar

causas de variações e oportunidades para mudanças no processo. Os

processos relacionados com esta PA são: MAN.1, MAN.6, PIM.2, PIM.3, RIN.3.

Otimização do Processo (PA5.2)

É uma medida que identifica se o processo é medido com a intenção de

mudanças na definição, no gerenciamento e no desempenho do resultado do

processo, resultando em um impacto efetivo nos objetivos de melhoria do

processo. A implementação é gerenciada em todos os níveis de gerenciamento

e as mudanças são avaliadas contra os requisitos de produto e os objetivos do

processo. Os processos relacionados com esta PA são: MAN.1, PIM.3, REU.1,

REU.3.

Page 286: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade
Page 287: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

285

APÊNDICE B

TABELA DE PRODUTOS x PROCESSOS SUPORTE

A Tabela B apresenta, segundo a visão deste estudo, uma classificação dos

produtos utilizados nos processos do grupo da Garantia da Qualidade. Os

produtos aparecem como entrada (e) e/ou saída (s) dos processos e são

relacionados às categorias adaptadas do padrão 15504 (ISO/IEC15504-5,

1998).

TABELA B.1 - Produtos da categoria Organizacional relacionados aos

processos da Qualidade. PROCESSOS do GRUPO GARANTIA DA QUALIDADE CATEGORIA - PRODUTO DE TRABALHO QUA ORGANIZA-CIONAL

1 2 3 4 5

1.1 Política da Qualidade e 1.1 Política de Verificação e 1.1 Política de Validação e 1.1 Objetivos da Qualidade e 1.1 Política de Auditoria e 1.2 Mecanismos de Comunicação e 1.2 Procedimento de trabalho/prática e/s e 1.2 Descrição do Processo e/s e e e e 1.2 Metodologia de Desenvolvimento de SW e e e 1.3 Padrão de Código e 1.3 Padrão de Interface e 1.3 Modelo de Ciclo de Vida e e 1.3 Padrões de Projeto e/s e e e 1.4 Oportunidade de Melhoria s 1.4 e 2.1 Estratégia/Plano Aceitação de Teste e e 1.4 e 2.1 Estratégia de Integração de Teste/ Plano e 1.4 e 2.1 Estratégia/Plano da Qualidade e/s e e e e

(continua)

Page 288: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

286

(Tabela B.1 – conclusão)

1.4 e 2.1 Estratégia/Plano de Teste de Regressão e 1.4 e 2.1 Estratégia/Plano de Revisão e e e e/s 1.4 e 2.1 Estratégia/Plano de Gerenciamento de Risco e 1.4 e 2.1 Estratégia/Plano de Teste de Software e 1.4 e 2.1 Estratégia/Plano de Treinamento e 1.4 e 2.1 Estratégia/Plano de Teste Unitário e

FONTE adaptada: (ISO/IEC15504-5, 1998).

TABELA B.2 - Produtos da categoria Projeto relacionados aos processos da

Qualidade. PROCESSOS do GRUPO GARANTIA DA QUALIDADE CATEGORIA - PRODUTO DE TRABALHO QUA PROJETO

1 2 3 4 5

2.1 Plano da Garantia da Qualidade e e e e e 2.1 Estratégia/Plano de Validação s 2.1 Estratégia/Plano de Teste e 2.1 Plano de Projeto e e 2.1 Plano de Verificação s 2.1 Plano de Auditoria e/s2.1 Teste da especificação de requisitos e 2.2 Requisitos de Manutenção 2.1 Estrutura de Decomposição do Trabalho e e 2.2 Especificação de Requisitos e e e e 2.3 Caso de Teste e/s 2.3 Script de Teste e/s 2.4 Lista de Construção (Build list) e e 2.5 Documentação do Cliente e/s e 2.5 Instruções de Entrega e 2.5 Ambiente de Desenvolvimento e e 2.5 Guia de Instalação e 2.5 Unidade de Software (código) e e e e 2.5 Sistema de Rastreamento de Produto e/s s e e 2.5 Material de Treinamento e e 2.5 Produto do Trabalho e e e e 2.5 Descrição de Produto do Trabalho e e

FONTE adaptada: (ISO/IEC15504-5, 1998).

Page 289: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

287

TABELA B.3 - Produtos da categoria Registros relacionados aos processos da

Qualidade. PROCESSOS do GRUPO GARANTIA DA QUALIDADE CATEGORIA - PRODUTO DE TRABALHO QUA REGISTROS

1 2 3 4 5

3.1 Minuta de Reunião s s s e/s s 3.2 Registro de Aceitação s s 3.2 Avaliação/ registro de Auditoria s s s e/s3.2 Contrato (produto ou serviço) e e 3.2 Registro de Revisão de Contrato s 3.2 Ação Corretiva (logs, planos, minutas) s s s s e/s3.2 Registro de Solicitação de Cliente (interno ou

externo) e

3.2 Registro/Relatório de Problema e/s e/s e/s e 3.2 Registro/Relatório de (Status) Progresso s e e 3.2 Registro da Qualidade e/s s s 3.2 Registro da Revisão s s s e/s 3.2 Registro/Relatório de Análise de Risco e 3.2 Histórico de Registro de Subcontratados e 3.2 Resultado de Teste s e 3.2 Mapeamento/ Registro de Rastreabilidade s e/s s s 3.2 Registro de Treinamento e 3.3 Estimativas e 3.3 Medida de Campo 3.3 Medidas e 3.3 Processo de Medição e e e 3.3 Projeto de Medição e e 3.3 Critérios da Qualidade e/s e e e 3.3 Medição da Qualidade e s e/s e 3.3 Medição de nível de Serviço e 3.4 Resultado de Análise s s s s s 3.4 Dados de Benchmarking 3.4 Dados de Satisfação do Cliente s e 3.4 Dados de Realização do Processo e 3.4 Resultado Análise de Problema e

FONTE adaptada: (ISO/IEC15504-5, 1998).

Page 290: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

288

Page 291: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

289

APÊNDICE C

TELAS DO PROTÓTIPO QUALITY MANAGEMENT - QM

As telas deste apêndice foram extraídas do módulo Garantia de Produto do

protótipo “Quality Management” – QM. O protótipo visa representar a seqüência

das atividades que cada papel deve desempenhar neste processo e seus

produtos relacionados. A Figura C.1 ilustra a tela de acesso ao protótipo

utilizando o serviço de segurança.

FIGURA C.1 - Tela de acesso ao protótipo QM.

Page 292: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

290

A Figura C.2 ilustra a tela de trabalho do usuário, com as notícias (janela News)

remetidas ao mesmo. Pode-se também observar o recurso que possibilita que

qualquer usuário possa participar das atividades da Qualidade (janela

Cooperative Tools). A barra de opções (barra á direita mais acima) Support

permite o acesso dos membros do Time da Qualidade, para as atividades de

garantia, planejamento e controle da qualidade.

FIGURA C.2 - Tela de trabalho do usuário.

Page 293: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

291

A Figura C.3 ilustra a tela referente as opções Support que, entre outras

serviços dá acesso dos membros do Time da Qualidade, para as atividades de

garantia, planejamento e controle da qualidade

FIGURA C.3 – Tela de acesso às atividades do Time da Qualidade.

Page 294: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

292

A Figura C.4 ilustra a tela inicial da atividade Quality Planning do protótipo QM.

No protótipo foram implementados somente alguns dos serviços de

planejamento, ilustrando algumas das possibilidades de utilização.

FIGURA C.4 – Tela inicial da atividade Quality Planning.

Page 295: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

293

A Figura C.5 ilustra a tela referente a lista de projetos instanciados para a

atividade de planejamento da qualidade com algumas informações pertinentes

ao projeto e com a possibilidade de inclusão ou exclusão desta atividade pelo

usuário responsável.

FIGURA C.5 - Tela referente à lista de projetos instanciados.

Page 296: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

294

A Figura C.6 ilustra a tela referente as opções de planejamento de projeto,

mais especificamente mostra a opção da tela de definição dos papéis dos

envolvidos com a qualidade. Este menu de abas permite também optar por

outras definições do planejamento da qualidade, tais como, a.atividade de

documentação de projeto, a estratégia de treinamento, a participação de

subcontratados, a escolha dos produtos que participarão das atividades de

revisão e auditoria.

FIGURA C.6 - Tela referente à definição dos papéis da qualidade no projeto.

Page 297: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

295

A Figura C.7 ilustra a tela referente a opção de padrões de planejamento de

projeto, mais especificamente mostra a tela de definição dos padrões a serem

adotados em projetos, onde se incluem padrões de documentação, de

diagramas, de interfaces com o usuário, de código, de módulos de teste e de

templates de projeto

FIGURA C.7 - Tela referente à opção de padrões de projeto.

Page 298: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

296

A Figura C.8 ilustra a tela referente a opção de definição dos produtos (em

categorias) com relação as fases em que serão realizadas as verificações e

validações do projeto. As fases forma definidas como de requisitos, de projeto,

de desenvolvimento, de teste e de entrega. Poderia também ser em todo

encaminhamento de produto ao Ambiente.

FIGURA C.8 - Tela referente à opção de política de Verificação e Validação.

Page 299: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

297

A Figura C.9 ilustra a tela inicial da atividade de Garantia de Produto, por parte

do usuário (ou responsável pelo produto a ser encaminhado ao Ambiente), que

deve entrar na opção Quality Management da janela Cooperative Tools como

apresentado na tela de trabalho do usuário, Figura C.2. Para encaminhar

qualquer produto para o controle por parte do Ambiente, o encaminhador deve

ativar o ícone “Encaminhar Produto” encontrado no canto superior direito desta

tela.

FIGURA C.9 - Tela inicial da atividade de Garantia de Produto.

Page 300: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

298

A Figura C.10 ilustra a tela de acompanhamento dos produtos encaminhados

ao Ambiente. Como o Responsável pelo Produto encaminhou nenhum produto,

o número de registros ainda é zero. Dependendo dos privilégios deste usuário

no Ambiente, a lista produtos encaminhados pode ser de todos os produtos

encaminhados (incluindo a de outros envolvidos). Possui alguns campos, como

nome e status do produto para um melhor acompanhamento do processo.

FIGURA C.10 - Tela de acompanhamento dos produtos encaminhados.

Page 301: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

299

A Figura C.11 ilustra a primeira tela do Formulário de Encaminhamento de

Produto, que contém as meta informações relativas ao produto encaminhado.

Os dados a serem registrados são localização, nome, responsável, gerente,

descrição, identificação, categoria do produto e data do encaminhamento. Ao

final da tela, o usuário tem a opção de “Encaminhar” ou “Cancelar” o

encaminhamento.

FIGURA C.11 - Tela de encaminhamento de produtos.

Page 302: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

300

A Figura C.12 ilustra a tela de acompanhamento dos produtos encaminhados

após o encaminhamento do Responsável pelo Produto. O campo status mostra

a situação do produto após esta primeira atividade do processo.

FIGURA C.12 - Tela de acompanhamento dos produtos mudando o status para

“Encaminhado a Qualidade”.

Page 303: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

301

A Figura C.13 ilustra a tela inicial das atividades da Garantia da Qualidade, que

neste exemplo inclui somente a Avaliação de Produto. Sua participação neste

processo consiste de escolher o revisor e acrescentar mais algumas

informações que serão apresentadas após ativar o ícone “Avaliar Produto”

encontrado no canto superior direito desta tela.

FIGURA C.13 - Tela inicial da atividade de Garantia da Qualidade.

Page 304: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

302

A Figura C.14 ilustra a tela de avaliação de produto, que contém as meta

informações relativas às atividades do Gerente da Qualidade para este

processo. Os dados a serem registrados são a escolha do revisor responsável,

a introdução de alguma observação (se necessário), tipo de avaliação

(verificação ou validação) e a inclusão de algum documento para auxiliar a

avaliação (ação opcional do gerente). Ao final da tela, o usuário tem a opção de

“Revisar” ou “Cancelar” o encaminhamento.

FIGURA C.14 - Tela de avaliação de produto (visão Gerente da Qualidade).

Page 305: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

303

A Figura C.15 ilustra a tela de acompanhamento dos produtos encaminhados

após o encaminhamento do Gerente da Qualidade ao Revisor. O campo status

mostra a situação do produto após esta atividade do processo.

FIGURA C15 - Tela de acompanhamento dos produtos mudando o status para

“Encaminhado ao Revisor”.

Page 306: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

304

A Figura C.16 ilustra a tela inicial das atividades do Controle da Qualidade, que

neste exemplo inclui somente a atividade de Revisar Produto. Sua participação

neste processo consiste de realizar a revisão e acrescentar as informações

pertinentes a verificação ou validação do produto (como dar o parecer de

conformidade) Estas informações serão apresentadas após ativar o ícone

“Revisar Produto” encontrado no canto superior direito desta tela.

FIGURA C.16 - Tela inicial da atividade de Controle da Qualidade.

Page 307: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

305

A Figura C.17 ilustra a tela de avaliação de produto, que contém as meta

informações relativas às atividades do Revisor da Qualidade para este

processo. O checklist de avaliação (verificação de código fonte, neste exemplo)

é preenchido pelo Revisor que também dá seu parecer, faz recomendações e

aponta problemas (quando houver). Ao final da tela, o usuário tem a opção de

“Salvar” (em caso de uma revisão não ser completada em apenas uma sessão

de login”) ou “Encaminhar” o formulário de encaminhamento.

FIGURA C.17 - Tela de avaliação de produto (visão do Revisor da Qualidade).

Page 308: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

306

A Figura C.18 ilustra a tela de acompanhamento dos produtos encaminhados

após o Revisor da Qualidade dar seu parecer. O campo status mostra a

situação do produto após esta atividade do processo.

FIGURA C18 - Tela de acompanhamento dos produtos mudando o status para

“Revisado”.

Page 309: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

307

A Figura C.19 ilustra a tela de acompanhamento dos produtos encaminhados

com o campo status mostrando algumas das outras possíveis situações do

produto após sua verificação ou validação.

FIGURA C19 - Tela de acompanhamento dos produtos mudando o status.

Page 310: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

308

Encaminhamento de Produto

Encaminhar produto Responsável pelo produto: Projeto: t Gerente:

Nilson Descrição do produto: Digite a descrição do produto.

Identificação do produto:

Categoria do produto:

2.1 Plan Data:

Cancelar

FIGURA C.20 – Formulário de Encaminhamento de Produto.

Page 311: UMA ABORDAGEM PARA A GERÊNCIA DA QUALIDADE EM …mtc-m16.sid.inpe.br/col/sid.inpe.br/jeferson/2004/05.06.14.08/doc/... · software que necessitam alcançar alto nível de qualidade

309

Garantia de Produto - Avaliação

Responsável pelo produto: Projeto: Gerente: Código do produto: Versão do produto: Nome do arquivo:. Descrição do produto: Categoria do produto: Data: Status: Revisor: Escolha um revisor.

Bruno Observações: Digite as observações.

Documentos para auxiliar na avaliação

check1padrãocheck2

check

Tipo de Avaliação: Escolha o tipo de avaliação.

Verif icação VER

FIGURA C.21 – Formulário de Avaliação de Produto.