100
UNIVERSIDADE DO VALE DO ITAJAÍ CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR CURSO DE CIÊNCIA DA COMPUTAÇÃO FERRAMENTA DE APOIO AO PROCESSO DE AVALIAÇÃO DE PRODUTO DE SOFTWARE Área de Engenharia de Software por Eduardo Vieira Fabiane Barreto Vavassori Benitti, Dr. Orientadora Itajaí (SC), março de 2012

Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

  • Upload
    lamkhue

  • View
    214

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

UNIVERSIDADE DO VALE DO ITAJAÍ

CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR

CURSO DE CIÊNCIA DA COMPUTAÇÃO

FERRAMENTA DE APOIO AO PROCESSO DE AVALIAÇÃO DE

PRODUTO DE SOFTWARE

Área de Engenharia de Software

por

Eduardo Vieira

Fabiane Barreto Vavassori Benitti, Dr.

Orientadora

Itajaí (SC), março de 2012

Page 2: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

UNIVERSIDADE DO VALE DO ITAJAÍ

CENTRO DE CIÊNCIAS TECNOLÓGICAS DA TERRA E DO MAR

CURSO DE CIÊNCIA DA COMPUTAÇÃO

FERRAMENTA DE APOIO AO PROCESSO DE AVALIAÇÃO DE

PRODUTO DE SOFTWARE

Área de Engenharia de Software

por

Eduardo Vieira

Relatório apresentado à Banca Examinadora do

Trabalho de Conclusão do Curso de Ciência da

Computação para análise e aprovação.

Orientadora: Fabiane Barreto Vavassori Benitti,

Dr.

Itajaí (SC), março de 2012

Page 3: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

ii

SUMÁRIO

LISTA DE ABREVIATURAS.................................................................. iv

LISTA DE FIGURAS ................................................................................. v

LISTA DE TABELAS ............................................................................... vi

RESUMO ................................................................................................... vii

ABSTRACT .............................................................................................. viii

1. INTRODUÇÃO ...................................................................................... 1

1.1 OBJETIVOS ........................................................................................................ 4

1.1.1 Objetivo Geral ................................................................................................... 4

1.1.2 Objetivos Específicos ........................................................................................ 4

1.2 METODOLOGIA ................................................................................................ 5

1.3 ESTRUTURA DO TRABALHO ....................................................................... 6

2. FUNDAMENTAÇÃO TEÓRICA ...................................................................... 7

2.1 QUALIDADE DE SOFTWARE ........................................................................ 7

2.2 NORMAS DE QUALIDADE ISO/IEC ............................................................. 8

2.2.1 ISO/IEC 9126 – Qualidade dos produtos de software ................................. 10

2.2.2 ISO/IEC 14598 – Avaliação dos Produtos de Software ............................... 14

2.2.3 ISO/IEC 14598-5 – Processo para avaliadores ............................................ 16

2.2.4 ISO/IEC 14598-6 – Documentação de módulos de avaliação ..................... 18

2.2.5 Relacionamento das normas ISO/IEC 9126 e ISO/IEC 14598 ................... 19

2.2.6 ISO/IEC 12119 – Pacotes de Softwares – Testes e requisitos de Qualidade

20

2.2.7 SQUARE 25000 ............................................................................................... 22

2.3 MÉTODOS DE QUALIDADE ......................................................................... 25

2.3.1 MEDE-PROS ................................................................................................... 26

2.3.1.1 Documentação MEDE-PROS ................................................................. 26

3. TRABALHOS CORRELATOS ....................................................................... 28

4. Desenvolvimento ................................................................................... 36

4.1 Processo Proposto ...................................................................... 36

4.1.1 Detalhamento das atividades ......................................................................... 39

4.1.2 Papéis ................................................................................................................ 42

4.1.3 Artefatos ........................................................................................................... 42

4.1.4 Relação das Normas Atendidas pelo Processo Proposto ............................. 44

4.2 Projeto ......................................................................................... 46

4.2.1 Definição dos Requisitos e Regras de Negócio ............................................. 46

4.2.2 Modelos de Caso de Uso ................................................................................. 49

4.2.3 Modelagem Entidade Relacionamento ......................................................... 50

Page 4: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

iii

4.3 Telas do Sistema ........................................................................ 51

4.4 Avaliação da Ferramenta ......................................................... 61

4.4.1 Planejamento da Avaliação ...................................................... 61

4.4.2 Resultados da avaliação ............................................................ 65

4.4.2.1 Resultados da avaliação do produto de software .................................. 65

4.4.2.2 Resultados da avaliação da ferramenta de apoio .................................. 65

5. Conclusão .............................................................................................. 66

5.1 TRABALHOS FUTUROS ................................................................................ 67

REFERÊNCIAS BIBLIOGRÁFICAS ................................................... 68

APÊNDICE A – DETALHAMENTO DOS CASOS DE USO ............. 72

APÊNDICE B – DICIONÁRIO DE DADOS DO MODELO ER ....... 79

APÊNDICE C – TELAS DO SISTEMA ............................................... 82

APÊNDICE D – MODELO E LAYOUT DO CHECKLIST DE

AVALIAÇÃO PARA IMPORTAÇÃO .................................................. 85

APÊNDICE E – CHECKLIST DE AVALIAÇÃO DO PRODUTO DE

SOFTWARE OLQR – ONLINE QUICK REPORT ............................ 86

APÊNDICE F – QUESTIONÁRIO DE AVALIAÇÃO DA

FERRAMENTA DE APOIO PARA OS AVALIADORES ................. 87

APÊNDICE G – RELATÓRIO FINAL DE AVALIAÇÃO DO

PRODUTO DE SOFTWARE OLQR ..................................................... 88

Page 5: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

iv

LISTA DE ABREVIATURAS

ABNT Associação Brasileira de Normas Técnicas

AJAX Asynchronous Javascript and XML

CenPRA Centro de Pesquisa Renato Archer

COTS Commercial off-the-shelf

ERP Planejamento de Recursos Empresariais

GQM Goal Question Metric

IEC International Electrotechnical Commission

IEEE Institute of Electrical and Electronics Engineers

INPI Instituto Nacional de Propriedade Industrial

ISO International Organization for Standardization

JTC Joint Technical Committees

MCT Ministério da Ciência e Tecnologia

MEDE-PROS O Método de Avaliação de Qualidade de Software

MFAQS Modelo fuzzy para avaliação de qualidade de software

MR Modelo de requisitos

NBR Norma Brasileira

PBQP-Software Programa Brasileiro da Qualidade e Produtividade

RRBT Risk & Requirement Base Testing

SEPIN Secretaria de Política em Informática

SQuaRE Software Product Quality Requirements and Evalution

SWEBOK Software Endy gineering Body Of Knowledge

TCC Trabalho de Conclusão de Curso

UNIVALI Universidade do Vale do Itajaí

Page 6: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

v

LISTA DE FIGURAS

Figura 1. Distribuição das organizações de acordo com a utilização de Normas para requisitos de

qualidade de software (valor percentual). .................................................................................. 10 Figura 2. Avaliação segundo norma ISO/IEC 9126 ........................................................................... 10 Figura 3. Processo de avaliação segundo a norma 14598-1. .............................................................. 14 Figura 4. Relacionamento das normas ISO/IEC 14598 ..................................................................... 16 Figura 5. Relacionamento entre as séries de normas ISO/IEC 9126 e 14598. ................................... 20

Figura 6. Estrutura da norma 12119. .................................................................................................. 22 Figura 7. Arquitetura dos documentos que compõem a série de normas SquaRE ............................. 23 Figura 8. Estrutura da lista de verificação de um método de avaliação (MEDE-PROS) ................... 27

Figura 9. Modelo detalhado do método MEDE-PROS. ..................................................................... 28 Figura 10. Tela de cadastro de avaliação da ferramenta web. ............................................................ 31 Figura 11. Processo de avaliação de portabilidade ............................................................................ 32 Figura 12. Processo da Framework de especialização ....................................................................... 33

Figura 13. Processo de avaliação AdeQuas. ...................................................................................... 34 Figura 14. Processo proposto ............................................................................................................. 38 Figura 15. Casos de Uso Módulo Fornecedor e Coordenador ........................................................... 49 Figura 16. Casos de uso módulo avaliador ........................................................................................ 50

Figura 17. Modelagem entidade relacionamento ............................................................................... 51 Figura 18. Acesso ao sistema ............................................................................................................. 52

Figura 19. Cadastro de Coordenador .................................................................................................. 52 Figura 20. Cadastro de produto de software ...................................................................................... 53

Figura 21. Requisitos da avaliação ..................................................................................................... 54 Figura 22. Gerenciar check-list .......................................................................................................... 54

Figura 23. Cadastro de escala ............................................................................................................. 55 Figura 24. Gerar plano de avaliação ................................................................................................... 55 Figura 25. Acompanhar avaliação ...................................................................................................... 56

Figura 26. Avaliar produto ................................................................................................................. 57 Figura 27. Gerar relatório parcial ....................................................................................................... 58 Figura 28. Liberar relatório parcial .................................................................................................... 59

Figura 29. Visualizar relatório final ................................................................................................... 60 Figura 30. OLQR - Online Quick Report ........................................................................................... 62

Figura 31. Etapas e atividades da avaliação ....................................................................................... 64 Figura 32. Gerenciar Coordenador ..................................................................................................... 82

Figura 33. Cadastro de avaliador ........................................................................................................ 82 Figura 34. Cadastro de fornecedor ..................................................................................................... 83 Figura 35. Gerenciar check-list .......................................................................................................... 83

Figura 36. Acompanhar avaliação ...................................................................................................... 84 Figura 37. Modelo e layout do checklist de avaliação ....................................................................... 85

Page 7: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

vi

LISTA DE TABELAS

Tabela 1. Características e subcaracterísticas do software. ................................................................ 12

Tabela 2. Protocolo da busca .............................................................................................................. 29 Tabela 3. Trabalhos Correlatos .......................................................................................................... 30 Tabela 4. Comparativo trabalhos correlatos ....................................................................................... 35 Tabela 5. Elementos do diagrama de atividade .................................................................................. 37 Tabela 6. Detalhamento das atividades .............................................................................................. 39

Tabela 7. Relação das normas atendidas quando comparadas ao processo ....................................... 44 Tabela 8. UC01. Login ....................................................................................................................... 72 Tabela 9. UC02 Cadastrar Coordenador ............................................................................................ 72

Tabela 10. UC03 Cadastrar Fornecedor ............................................................................................. 72 Tabela 11. UC04 Cadastrar dados do produto ................................................................................... 72 Tabela 12. UC05 Definir os requisitos da avaliação .......................................................................... 73 Tabela 13. UC06 Acompanhar avaliação ........................................................................................... 73

Tabela 14. UC07 Cadastrar escala ..................................................................................................... 73 Tabela 15. UC08 Definir check-list da avaliação .............................................................................. 74 Tabela 16. UC09 Cadastrar avaliador ................................................................................................ 76 Tabela 17. UC10 Gerar plano da avaliação ........................................................................................ 76

Tabela 18. UC11 Avaliar o produto ................................................................................................... 76 Tabela 19. UC12 Gerar o relatório parcial ......................................................................................... 77

Tabela 20. UC13 Gerar o relatório final ............................................................................................ 78 Tabela 21. Dicionário de dados do modelo ER .................................................................................. 79

Page 8: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

vii

RESUMO

VIEIRA, Eduardo. Ferramenta de apoio a avaliação de produto de software. Itajaí, 2012. 105 f.

Trabalho de Conclusão de Curso (Graduação em Ciência da Computação)–Centro de Ciências

Tecnológicas da Terra e do Mar, Universidade do Vale do Itajaí, Itajaí, 2012.

As empresas estão se tornando cada vez mais dependentes de tecnologia, resultando em processos

internos conduzidos e direcionados por um crescente número de sistemas informatizados. Esta

tendência é natural e representa a realidade das empresas na sobrevivência de um mercado cada vez

mais competitivo, no qual as corporações procuram a tecnologia para reduzir custos, ganhar

eficiência, melhorar processos e expandir sua forma de atuação. Nestas condições, todo o processo

de desenvolvimento de software cresce de maneira proporcional ao das corporações, aumentando os

riscos de falhas e tornando-se complexo desenvolver ferramentas com um “nível de qualidade”

aceitável. A partir deste cenário, este trabalho aborda o tema "qualidade de produto de software",

que tem como principal objetivo garantir a qualidade nos resultados obtidos no processo de

desenvolvimento. A qualidade de produto de software é fundamentada na série de normas ISO/IEC

9126, 14598, 12119 e mais recentemente a SQuaRE 25000. No Brasil, o CenPRA (Centro de

Pesquisas Renato Archer) desenvolveu o MEDE-PROS, um método de avaliação de qualidade de

produto de software que ganhou destaque nos últimos anos. A partir deste método e das normas

ISO/IEC, propõe-se neste projeto a específicação de um processo para avaliação de qualidade de

produtos de software e, com base neste processo, construir uma ferramenta de apoio. O sistema foi

desenvolvido com o objetivo de flexibilizar o processo de avaliação de software de acordo com as

necessidades do avaliador e do requisitante da avaliação, contemplando o apoio automatizado a

todas as etapas do processo. Outro fator importante que embasa a construção desta ferramenta é a

indisponibilidade dos softwares existentes para uso acadêmico ou comercial. A ferramenta foi

desenvolvida em tecnologia web, buscando uma maior independência de plataforma, priorizando a

portabilidade, e facilitando o acesso simultâneo por vários usuários.

Palavras-chave: Engenharia de software. Qualidade de Produto de Software. Ferramenta de apoio.

Page 9: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

viii

ABSTRACT

The companies are becoming more and more dependent of technology, resulting in internal process

managed and directed by an increasing number of computerized systems. This tendency is natural,

and it represents the reality of companies in the survival of an increasingly competitive market,

where corporations seek the technology to reduce costs,gain efficiency, improve processes and

expand the way it operates. In these conditions, all the process of software development is growing

proportionally to the corporations, increasing the risks of faults and becoming complex to develop

tools with a"quality level" acceptable. From this backdrop, we address the theme of "product

quality" software, which has the main objective to ensure quality results obtained in the

development process. The quality of software product is founded on the series of standards ISO/IEC

9126, 14598, 12119 and more recently the SQuaRE 25000. In Brazil, the CenPRA (Renato Archer

Research Center) developed the MEDE-PROS, a method for evaluating the quality of software

product, which has gained prominence in recent years. From these concepts, this project is to

propose the specification of a new process for evaluating the quality of software products and,

based on this process, build a support tool. The system will be developed with the goal of flexibility

in the process of evaluating the software based on the requirements of the evaluator and the

evaluation of the requester as well as includes automated support in the final stage of the

process.Another important factor that supports the construction of that tool is the unavailability of

existing software for academic or commercial use, and the availability of source code. The software

will be developed in web technology, seeking greater platform independence, emphasizing

portability, and facilitating access by multiple users simultaneously.

Keywords: Software engineering. Software Product Quality. Tool support.

Page 10: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

1. INTRODUÇÃO

A idéia de qualidade pode parecer muito intuitiva a princípio, porém, Koscianski e Soares

(2007) afirmam que “A qualidade é relativa. O que é qualidade para uma pessoa pode ser falta de

qualidade para outra”. Qualidade de Software é uma área da Engenharia de Software que visa

assegurar que necessidades explícitas e implícitas façam parte do produto de software, o resultado

da qualidade é obtido através de definições e normatizações de processos de desenvolvimento

(GUERRA; COLOMBO, 2009). É praticamente impossível obter qualidade em um software

construído através de processos falhos e deficientes de desenvolvimento, neste caso, tem-se duas

dimensões fundamentais para a qualidade de software: dimensão da qualidade do processo e

dimensão da qualidade do produto (BARTIÉ, 2002).

Segundo Bartié (2002), a qualidade do processo visa garantir a qualidade no ciclo de

desenvolvimento do software, englobando todas as atividades que focam na garantia de qualidade e

permitindo que a maioria dos artefatos gerados tenha um procedimento de avaliação da qualidade.

A qualidade do produto de software tem como principal objetivo garantir a qualidade nos

resultados obtidos no processo de desenvolvimento e, de um modo geral, engloba atividades

destinadas a estressar telas e funcionalidades do sistema (BARTIÉ, 2002). Na avaliação da

qualidade do produto de software, espera-se atingir todas as características implícitas e explícitas da

ferramenta, entende-se por características explícitas todos os requisitos definidos pelo usuário, e

necessidade implícita como as características desejáveis para o sistema, como por exemplo o

desempenho do sistema e até mesmo o cumprimento do cronograma (GUERRA; COLOMBO,

2009).

Para Koscianski e Soares (2007) uma questão básica da qualidade do software é ter

claramente os objetivos que se espera alcançar com o projeto. Para obter tais objetivos é preciso

definir e enumerar qualidades desejáveis, de preferência dados quantitativos, que meçam uma série

de características do software. “As medidas também podem ser usadas para uma definição mais

precisa de requisitos, fixando-se no início do projeto os valores desejados para o produto final”

A qualidade de produto de software é fundamentada na série de normas ISO/IEC 9126,

14598, 12119 e mais recentemente a SQuaRE 25000. A ISO (International Organization for

Standardization) foi criada para definir padrões internacionais e surgiu da necessidade das empresas

em exportarem suas mercadorias e serviços, facilitando o intercâmbio destes itens entre os países.

(GUERRA; COLOMBO, 2009).

Page 11: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

2

Koscianski e Soares (2007, p. 204) dizem que uma das mais importantes normas para

caracterização e medição de qualidade de produto de software é a SQuaRE ISO/IEC 25000.

SQuaRE significa Software Product Quality Requirements and Evaluation (Requisitos de

Qualidade e Avaliação de Produtos de Software) e constitui uma revisão e melhoria das normas ISO

9126 e ISO 14598, ambas tratam da qualidade do produto de software. (KOSCIANSKI; SOARES,

2007).

A norma 9126 define um modelo para qualidade do produto e os instrumentos necessários,

apresentando uma série de documentos para comparar dados qualitativos e quantitativos de

qualidade. A ISO 14598 procura abranger os aspectos “gerenciais” de uma empresa, sugerindo uma

metodologia precisa e documentações indispensáveis que são estudadas por diferentes níveis, como

usuário e desenvolvedor. A norma ISO/IEC 12119 é aplicável a pacotes de softwares

(processadores de texto, planilhas eletrônicas, banco de dados, entre outros) e estabelece os

requisitos de qualidade e instruções de como testar um pacote de software com base nos requisitos

estabelecidos. (KOSCIANSKI; SOARES, 2007).

A SQuaRE surgiu com o objetivo de obter maior clareza nas normas de qualidade de

produto, o processo de transição entre as normas 9126 e 14598 foi lenta e trabalhosa onde iniciou-se

um processo de revisão e melhoria das duas normas e posteriormente a implementação da série

25000. (GUERRA; COLOMBO, 2009).

Existe uma gama de entidades de pesquisa em tecnologia da informação que dedicam

esforços para aprimorar a melhoria da qualidade de Software produzido no Brasil. O NAPS (Núcleo

de Avaliação de Produtos de Software), criado pela empresa CELEPAR (Companhia Elétrica do

Estado do Paraná) em parceria com a CITS (Centro de Internacional de Campinas), tem como

objetivo avaliar a qualidade de produtos de software desenvolvidos pela empresa e por terceiros. O

Prêmio ASSESPRO, que tem por objetivo incentivar as empresas de software a melhorar a

qualidade de seus produtos foi criado pela ASSESPRO (Associação Brasileira de Software e

Serviços de Informática). O CenPRA (Centro de Pesquisas Renato Archer) desenvolveu o MEDE-

PROS – Método de Avaliação de Qualidade de Produto de Software, e é uma das iniciativas dentro

da área de qualidade de produto de software que mais tem se destacado nos últimos anos. (ANJOS;

MOURA, 2002).

O método MEDE-PROS foi criado com o objetivo de avaliar a qualidade de produto de

software, tendo como referência as normas NBR ISO/IEC 9126 e NBR ISO/IEC 12119, está

Page 12: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

3

registrado na Fundação Biblioteca Nacional, e com o registro de marca no INPI – Instituto Nacional

de Propriedade Industrial. (GUERRA; COLOMBO, 2009).

Outro método existente é o QFD - Função de desdobramento de qualidade, criado por

Macabe e divulgado nos EUA por Don Clausing e pela American Supplier Institute (ASI), utilizado

para transformar as necessidades dos clientes em requisitos de produto e de processo. “Tem por fim

estabelecer a qualidade no projeto, obter a satisfação do cliente, e efetuar o desdobramento das

metas do referido projeto e dos pontos prioritários, em termos de garantia da qualidade, até o

estágio de produção” (VIVEIROS, 2006 p. 9). As funções principais do QFD são: capturar a

necessidade do cliente, minimizar perdas de informações e disponibilizar maneiras em que os

requisitos sejam atendidos pela equipe de desenvolvimento. O QFD é dividido em duas partes,

desdobramento da qualidade, que consiste em transformar as necessidades dos usuários em

características de qualidade, definir a qualidade final do produto acabado e o desdobramento da

qualidade para outros itens e; desdobramento da função da qualidade que consiste no

“desdobramento, em detalhes, das funções profissionais ou dos trabalhos que formam a qualidade,

seguindo a lógica de objetivos e meios” (VIVEIROS, 2006 p. 9).

Existem algumas ferramentas de apoio a qualidade de produtos de software como o

INOVADOR, cujo objetivo é avaliar produtos de software segundo as características descritas na

norma ISO/IEC 9126-1 e as métricas de Qualidade em Uso descritas na norma ISO/IEC 9126-4. A

ferramenta INOVADOR foi criada e desenvolvida por Cibele C. P. Sodré no trabalho de conclusão

de curso de Graduação em Ciência da Computação (SODRÉ, 2006).

Em outro trabalho de conclusão de curso, o acadêmico Jonathan M. Borges desenvolveu um

sistema web baseado no método MEDE-PROS e na norma NBR ISO/IEC 14598-5, além de auxiliar

no processo de avaliação, a ferramenta possibilita o acompanhamento da execução da avaliação

pelo requisitante da avaliação, apresentando os aspectos negativos e positivos do software avaliado

(BORGES, 2006).

Com base nos fundamentos citados neste documento e nas ferramentas já existentes como o

INOVADOR, que implementa e foca somente a norma ISO/IEC 9126 e o Ambiente web de Suporte

ao Processo de Avaliação da Qualidade de Produto de Software que implementa quase que a

totalidade das características do método MEDE-PROS e norma ISO/IEC 14598, propõe-se construir

uma nova ferramenta de apoio no processo de avaliação da qualidade do produto de software,

baseada nas normas ISO/IEC mencionadas e buscando se basear no método MEDE-PROS, porém,

com o objetivo de flexibilizar o processo de avaliação do software de acordo com as necessidades

do avaliador e do requisitante da avaliação, contemplando também o apoio automatizado na etapa

Page 13: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

4

final da avaliação, sendo esta uma funcionalidade ausente nos dois trabalhos correlatos citados nos

parágrafos anteriores. Outro fator importante que embasa a construção desta ferramenta é a

indisponibilidade dos softwares existentes, tanto para uso acadêmico e/ou comercial, quanto à

disponibilização do código fonte.

Assim, o tema proposto neste trabalho de conclusão de curso tem como objetivo criar uma

ferramenta baseada nas normas ISO/IEC 9126, 14598, 12119, SQuaRE 25000 e ao método MEDE-

PROS, resultando em um sistema abrangente e flexível de apoio ao processo de avaliação da

qualidade do produto de software. O sistema será web, buscando uma maior independência de

plataforma, priorizando a portabilidade, e facilitando o acesso simultâneo por vários usuários.

1.1 OBJETIVOS

1.1.1 Objetivo Geral

Desenvolver uma ferramenta web de apoio ao processo de avaliação da qualidade de

produto de software baseada nas normas ISO/IEC 9126, 14598, 12119, SQuaRE 25000 e no método

MEDE-PROS.

1.1.2 Objetivos Específicos

Pesquisar sobre qualidade de produto de software e soluções automatizadas para o

processo de avaliação;

Específicar o processo proposto para avaliação do produto de software, baseado nas

normas ISO/IEC 9126, 14598, 12119, SQuaRE 25000 e no método MEDE-PROS;

Específicar a ferramenta para apoio ao processo proposto;

Implementar a ferramenta conforme específicação; e

Testar e avaliar a adequação da ferramenta.

Page 14: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

5

1.2 Metodologia

A metodologia utilizada para a realização deste projeto consistiu em duas grandes etapas: (i)

Pesquisa e fundamentação ao tema de estudo; e (ii) desenvolvimento.

A etapa de pesquisa e fundamentação ao tema de estudo consistiu basicamente em pesquisas

de materiais relacionados ao tema “qualidade de produto de software” e a busca por soluções

similares. Os materiais de estudo utilizados para fundamentação foram: normas, livros, artigos (de

periódicos e anais) e trabalhos de doutorado e mestrado, bem como monografias. Os principais

assuntos da pesquisa foram normas e métodos para avaliação de qualidade de produto de software.

Para busca de soluções similares utilizou-se uma estratégia de pesquisa sistemática, utilizando um

protocolo para busca com: string de busca, critérios para seleção e exclusão de estudos e critérios

para extração dos dados.

A segunda etapa, de desenvolvimento, objetivou a criação de um processo para avaliação de

qualidade de produto de software, baseado nas normas e métodos estudados na etapa de

fundmentação. Para especificar o processo foi utilizada uma notação baseada no diagrama de

atividades da UML. Nesta etapa foi detalhado a relação entre as normas e método de avaliação com

o processo proposto. Com base no processo de avaliação criado, iniciou-se a especificação da

ferrramenta de apoio. Nesta fase foram definidos os requisitos funcionais, não funcionais e regras

de negócio do sistema, divididos em três módulos: fornecedor, coordenador e avaliador.

Também foram apresentados os casos de uso da ferramenta, detalhando as principais

funcionalidades do sistema e os papéis envolvidos, e através do diagrama de entidade-

relacionamento, foi realizado o projeto do banco de dados. Com base no modelo entidade-

relacionamento, os requisito e regras de negócio, foi implementado a ferramenta.

Por último, foi apresentado um plano para avaliação da ferramenta, que serviu de base para

avaliar um produto de software, seguindo todas as etapas do processo proposto. No processo de

avaliação, foram selecionadas pessoas específicas para o papel de coordenador, fornecedor e

avaliador. O planejamento e resultado da avaliação foi documentado afim de demonstrar que a

ferramenta atende ao processo no qual foi baseada.

Page 15: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

6

1.3 Estrutura do trabalho

Este trabalho está estruturado em 4 capítulos: (i) Introdução; (ii) Fundamentação Teórica;

(iii) Trabalhos Correlatos; e (iv) Desenvolvimento.

O Capítulo 1 apresenta o tema do projeto, abordando suscintamente as necessidades e

objetivos a serem alcançados com o trabalho.

O Capítulo 2 é destinado ao embasamento do projeto, apresentando os conceitos e detalhes

das normas e métodos de qualidade de produto de software, pertinentes ao trabalho.

O Capítulo 3 apresenta os trabalhos similares ao proposto neste projeto, utilizando como

estratégia uma pesquisa sistemática.

Por último, o Capítulo 4, apresenta o processo proposto no projeto e a modelagem da

ferramenta de apoio a avaliação de qualidade de produto de software, relacionando as normas

estudadas com a ferramenta implementada. No mesmo capítulo são demonstradas as telas do

sistema, realacionando–as às etapas do processo de avaliação. O último tópico apresenta o

planejamento e os resultados da avaliação de um produto de software.

Page 16: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

2. FUNDAMENTAÇÃO TEÓRICA

Conforme a Pesquisa de Qualidade no Setor de Software Brasileiro 2009 (MARINHO;

SOUZA, 2011), realizada pela SEPIN (Secretaria de Política em Informática), os resultados

indicam a plena conscientização do setor de informática quanto à importância à adoção de modelos,

métodos e normas para melhora da qualidade, permitindo a entrada de empresas brasileiras no

cenário internacional de software.

As próximas seções tem como objetivo fundamentar teoricamente o processo proposto para

avaliação da qualidade de produto de software, conforme mencionado no Item 1.1.2 deste

documento. A Seção 2.1 introduz o assunto qualidade de software, focando em qualidade de

produto de software. A Seção 2.2 apresenta as normas de qualidade ISO/IEC que são utilizadas na

especificação do processo proposto, e os sub itens seguintes detalham as normas. A Seção 2.3

apresenta o conceito de método de qualidade de software genérico e especialista, sendo a Seção

2.3.1 responsável por enfatizar o método MEDE-PROS.

2.1 Qualidade de Software

Definir qualidade de software é uma tarefa difícil, visto que os atributos desta atividade

dependem e variam de acordo do ponto de vista do avaliador e dos envolvidos (SIBISI;

WAVEREN, 2007). Em um contexto geral, qualidade de software pode ser entendida como um

conjunto de características a serem atendidas, alcançando às necessidades explícitas e implícitas de

seus usuários e deve ser construída no processo de desenvolvimento do sistema (DUARTE;

FALBO, 2006).

Em geral, as necessidades explícitas são expressas na definição de requisitos propostos pelo

produtor de software após o levantamento da necessidade do cliente. Esses requisitos

definem as condições em que o produto deve ser utilizado, seus objetivos, funções e o

desempenho esperado. O enfoque da Qualidade centrado no atendimento a esses requisitos

é denominado "conformidade com os requisitos". As necessidades implícitas são aquelas

que não estão expressas nos documentos do produtor, mas são necessárias para o usuário e

são identificadas de acordo com a maturidade do produtor. O enfoque da Qualidade

centrado nessa classe de necessidades está relacionado à "adequação para uso".

(COLOMBO, 2004. p.14)

Segundo Alsultanny e Wohaishi (2009), a tarefa de aplicar métricas de qualidade para

produtos e processo de software é complexa e requer conhecimento referente aos objetivos que se

pretende alcançar. A ausência de qualidade de software tem causado custos significativos para as

empresas de softwares, que enfrentam clientes insatisfeitos e conseqüentemente perdem a

Page 17: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

8

credibilidade no mercado, gerando retrabalho. Por outro lado, o problema de falta de qualidade

também afeta os compradores de softwares, que sofrem com sistemas defeituosos e que não

atendem suas necessidades. No início da computação a falta de qualidade era medida com base na

identificação e correção de erros no programa (SIBISI; WAVEREN, 2007). A mesma pessoa que

desenvolvia o sistema também testava, pois não existiam pessoas dedicadas para tal atividade.

Geralmente, a validação do software era realizada quando o produto já estava quase pronto ou

totalmente finalizado. Esta ação evoluiu com o tempo e passou a ser considerada uma má prática do

processo de engenharia de software, apesar disto, continua sendo utilizada por muitas empresas

(BARTIÉ, 2002).

Existem duas etapas nas quais é possível avaliar a qualidade de um software: durante o

desenvolvimento do software, conhecido como qualidade do processo; e quando o software for

entregue ao cliente e aos usuários, definida como qualidade do produto de software (PRESSMAN,

2002). A importância da qualidade de produto de software está proporcionalmente ligada ao

crescente uso dos computadores, nas mais diversas áreas de aplicação, vinculados, por exemplo, ao

sucesso de um negócio e até mesmo a segurança humana. Um estudo realizado por Reed (2000)

indica que se alguns softwares de uso global deixarem de funcionar, aproximadamente 40% da

população sofrerão com as conseqüências.

Considerando este cenário, percebe-se a real importância da qualidade na seleção e

desenvolvimento do produto de software, sempre fazendo o uso de métricas amplamente aceitas e

validadas, resultado que pode ser obtido através do uso de normas técnicas que abrangem as

atividades relacionadas à qualidade de produto de software (ABNT, 2003).

2.2 NORMAS DE QUALIDADE ISO/IEC

Conceitualmente, normalização é "o processo de aplicar regras estabelecidas e executar uma

atividade de maneira ordenada". Os benefícios trazidos na utilização de normas no desenvolvimento

e teste de software podem ser quantitativos, como redução de custos, tempo e erro, e qualitativos

como adequação, facilidade de uso e melhor atendimento dos requisitos solicitados pelo usuário. No

Brasil, o órgão responsável pela normalização é a Associação Brasileira de Normas Técnicas -

ABNT, foi fundada em 1940 e é reconhecida como Foro Nacional de Normalização, é uma entidade

privada e sem fins lucrativos. Existem normas internacionais, regionais, nacionais e organizacionais

em função de sua área de aplicação. A ABNT é responsável por representar o Brasil em entidades

internacionais de normalização, sendo as mais conhecidas a ISO e a IEC. (KOSCIANSKI, 1999)

Page 18: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

9

A Organização Internacional para Padronização é um órgão não governamental e

popularmente conhecida como ISO, foi fundada e sediada em 23 de fevereiro de 1947, em Genebra,

na Suíça. A ISO tem como missão a normalização de atividades desenvolvidas a nível mundial,

estabelecendo acordo entre países e publicando-os como normas internacionais. A IEC -

International Electrotechnical Commission, foi fundada em 1906, também em Genebra, Suíça, e é

uma organização internacional de padronização de tecnologias elétricas, eletrônicas e outras

relacionadas que, e em conjunto com a ISO, formam a JTC - Joint Technical Committees,

responsável por elaborar normas na área de tecnologia da informação (KOSCIANSKI, 1999).

A Pesquisa de Qualidade no Setor de Software (2009), realizada pelo Programa Brasileiro

da Qualidade e Produtividade – PBQP-Software, tem como objetivo obter dados e indicadores sobre

a evolução da qualidade no setor de softwares de TI do Brasil, e descreve as principais normas de

qualidade produto de software publicadas pela ISO/IEC e ABNT, sendo elas: NBR ISO/IEC 9126,

NBR ISO/IEC 25000, NBR ISO/IEC 12119 e NBR ISO/IEC 14598.

A norma NBR ISO/IEC 9126-Parte 1:2003 (ABNT, 2003) define as características da

qualidade do produto de software e diretrizes para seu uso. A família de normas NBR

ISO/IEC 14598 (Partes 1 a 6) trata do processo de avaliação de produtos de software. A

Norma NBR ISO/IEC 25000:2008 - Engenharia de software - Requisitos e avaliação da

qualidade de produtos de software (SQuaRE) - Guia do SQuaRE, ... tem o objetivo de

gradativamente substituir o conjunto de Normas NBR ISO/IEC 9126 e NBR ISO/IEC

14598. ... A NBR ISO/IEC 12119:1998 estabelecia os requisitos da qualidade e testes de

pacote de software. (MARINHO; SOUSA, 2011).

Dados obtidos através de pesquisa demonstram que as normas são pouco utilizadas pelas

organizações. Ao total 273 empresas responderam as questões relacionadas à qualidade de produto

de software, sendo que 89% deste total informaram que não utilizam nenhuma das normas

relacionadas. Pode-se considerar um porcentual elevado, considerando que a norma NBR 9126 esta

publicada desde 1996 pela ABNT. Na Figura 1, pode-se observar os resultados obtidos

(MARINHO; SOUSA, 2011).

Page 19: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

10

Figura 1. Distribuição das organizações de acordo com a utilização de Normas para

requisitos de qualidade de software (valor percentual).

Fonte: Marinho e Sousa (2011, p. 108).

2.2.1 ISO/IEC 9126 – Qualidade dos produtos de software

A norma ISO/IEC 9126 é referência no processo de avaliação produto de software e define

um modelo de qualidade divido em quatro documentos: modelo de qualidade, métricas externas,

métricas internas e métricas de qualidade de uso (ABNT, 2003). A figura 2 apresenta a sequência de

avaliação segundo a norma ISO/IEC 9126.

Figura 2. Avaliação segundo norma ISO/IEC 9126

Fonte: Colombo (2004).

Page 20: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

11

O modelo de qualidade baseado em métricas externas e internas divide a avaliação de um

software em seis características distintas, divididas em subcaracterísticas e, por sua vez, podem ser

desdobradas em mais níveis, que representam os atributos de qualidade (ROCHA; MALDONADO;

WEBER, 2001):

a) Funcionalidade: característica que afere a existência de funções que atendam as

necessidades explícitas ou implícitas do software e suas propriedades específicas.

Adequação, acurácia, interoperabilidade, segurança de acesso e conformidade são

subcaracterísticas da funcionalidade.

b) Confiabilidade: condiz a capacidade de um software manter seu desempenho em

determinadas condições e tempo. Possui como subcaracterísticas: maturidade, tolerância

a falhas, recuperabilidade e conformidade.

c) Usabilidade: refere-se ao esforço na utilização e aprendizado de um produto de software,

assim como o julgamento individual do uso por um conjunto de usuários.

Inteligibilidade, apreensibilidade, operacionalidade, atratividade e conformidade são

suas subcaracterísticas.

d) Eficiência: é a relação entre o desempenho de um produto de software e a quantidade de

recursos utilizados sob uma condição específica. As subcaracterísticas são:

comportamento em relação ao tempo, comportamento em relação aos recursos e à

conformidade.

e) Manutenibilidade: esforço necessário para modificações específicas realizadas no

software e também localizar e reparar erros. Possui como subcaracterísticas:

analisabilidade, modificabilidade, estabilidade, testabilidade e conformidade

f) Portabilidade: é a característica responsável por avaliar a capacidade de um software ser

transportado de um ambiente para outro. Possui como subcaracterísticas: adaptabilidade,

capacidade para ser instalado, coexistência, capacidade para substituir e conformidade.

Page 21: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

12

Na Tabela 01 consta a relação das características, subcaracterísticas e sua respectiva

pergunta chave.

Tabela 1. Características e subcaracterísticas do software.

Característica Subcaracterísticas Pergunta chave para subcaracterísticas

Funcionalidade (satisfaz às necessidades?)

Adequação Propõe-se a fazer o que é apropriado?

Acurácia Faz o que foi proposto de forma correta?

Interoperabilidade Interage com os sistemas especificados?

Conformidade Está de acordo com as normas, leis e etc.?

Segurança de acesso Evita o acesso não autorizado aos dados?

Confiabilidade (é imune a falhas?)

Maturidade Com que freqüência apresenta falhas?

Tolerância a falhas Ocorrendo falhas, como ele reage?

Recuperabilidade É capaz de recuperar dados em caso de falha?

Usabilidade (é fácil de usar?)

Inteligibilidade É fácil entender o conceito e a aplicação?

Apreensibilidade É fácil aprender a usar?

Operacionalidade É fácil de operar e controlar?

Eficiência (é rápido e enxuto?)

Tempo Qual é o tempo de resposta, a velocidade de execução?

Recursos Quanto recurso usa? Durante quanto tempo?

Manutenibilidade (é fácil de modificar?)

Analisabilidade É fácil de encontrar uma falha, quando ocorre?

Modificabilidade É fácil modificar e adaptar?

Estabilidade Há grande risco quando se fazem alterações?

Testabilidade É fácil testar quando se fizer alterações?

Portabilidade (é fácil de usar em outro

ambiente?)

Adaptabilidade É fácil adaptar a outros ambientes?

Capacidade para ser instalado É fácil instalar em outros ambientes?

Conformidade Está de acordo com padrões de portabilidade?

Capacidade para substituir É fácil usar para substituir outro?

Fonte: Andrade e Falk (2001)

Métricas de qualidade de uso têm por objetivo medir a capacidade de um produto de

software em atingir os requisitos desejáveis pelos usuários, sendo os atributos classificados em:

eficácia, produtividade, segurança e satisfação (ROCHA; MALDONADO; WEBER, 2001):

a) Efetividade: o software deve permitir que os usuários alcancem metas específicas com

acurácia e completeza, no contexto de uso especificado;

Page 22: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

13

b) Produtividade: refere-se à capacidade do produto de software em permitir que seus

usuários executem uma quantidade apropriada de recursos em relação a eficácia obtida,

dentro do contexto de uso especificado;

c) Segurança: o produto de software deve apresentar níveis aceitáveis de riscos a processos,

pessoas, negócios, propriedades e ao meio-ambiente, dentro do contexto de uso

especificado; e

d) Satisfação: capacidade do produto de software em satisfazer usuários, dentro do contexto

de uso especificado.

A norma 9126 possui um total de quatro documentos, um descrevendo o modelo de

qualidade e três documentos para relatórios técnicos, que servem para o apoio na definição de

requisitos e avaliação da qualidade de produto de software (ABNT, 2003):

a) ISO/IEC 9126-1 – modelo de qualidade: descreve um modelo de qualidade de produto

de software;

b) ISO/IEC 9126-2 - métricas externas: define métricas para medir quantitativamente

características e subcaracterísticas externas dos softwares, definidas na norma 9126-1;

c) ISO/IEC 9126-3 – métricas internas: utilizado para medir a qualidade de software de

maneira quantitativa (características internas), também baseado nas definições da norma

9126-1; e

d) ISO/IEC 9125-4 – métricas de qualidade em uso: apóia e auxilia o processo de

determinação das métricas de qualidade de uso descrito na norma 9126-1.

Os relatórios técnicos não definem valores para as métricas e níveis de avaliação, pois estas

são características definidas individualmente para cada produto de software e que dependem de

fatores como a categoria do software, nível de integridade e necessidade dos usuários (ABNT,

2003).

Page 23: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

14

2.2.2 ISO/IEC 14598 – Avaliação dos Produtos de Software

A série de normas ISO/IEC 14598 fornece métodos para mensuração, medição e avaliação

de qualidade de produto de software. Descreve métodos de avaliação tanto para o processo de

desenvolvimento de software, quanto para um produto pronto. A ISO/IEC 14598 é destinada para

uso em conjunto com a série de normas ISO/IEC 9126 e é composto por um total de seis

documentos que juntos, fornecem um modelo de avaliação genérico, para avaliação de qualidade de

software (ISO/IEC 14598-1):

a) ISO/IEC 14598-1 – visão geral: o primeiro documento é um guia de avaliação,

apresentando uma visão geral sobre o processo de avaliação, a figura 3 mostra o

processo proposto pela norma;

Fonte: Colombo(2004).

Figura 3. Processo de avaliação segundo a norma 14598-1.

b) ISO/IEC 14598-2 – planejamento e gestão: tem por objetivo ser mais específico na

apresentação dos requisitos, recomendações e orientações que englobam processo de

planejamento e gerenciamento de avaliação de produtos de software, "incluindo:

Page 24: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

15

desenvolvimento, aquisição, padronização, controle, transferência e realimentação do

uso de tecnologias de avaliação no âmbito da organização." (MPS.BR, 2011).

c) ISO/IEC 14598-3 – processo para desenvolvedores: é destinado ao processo de

desenvolvimento do produto de software. Através de indicadores e métricas, procura

prever a qualidade a ser obtida no produto final, beneficiando na tomada de decisões;

d) ISO/IEC 14598-4 – processo para adquirentes: é destinada a adquirente de software,

contemplando um processo de avaliação de produtos de software de prateleira, produtos

de software sob encomenda e também modificações em produtos já existentes. O

principal objetivo deste documento é comparar o software a ser avaliado com

alternativas já existentes no mercado, ou garantir que o produto de software final atenda

aos requisitos estabelecidos no desenvolvimento;

e) ISO/IEC 14598-5 – processo para avaliadores: o quinto documento tem por objetivo

orientar a implementação de uma avaliação de produto de software, considerando o

modelo de qualidade descrito na norma ISO/IEC 9126-1. As orientações da norma

ISO/IEC 14598-5 definem "as atividades necessárias para analisar os requisitos de

avaliação de modo a especificar, projetar e executar as atividades de avaliação"

(MPS.BR, 2011); e

f) ISO/IEC 14598-6 – documentação de módulos de avaliação: o sexto e último documento

define como criar um módulo de avaliação, construindo a estrutura e conteúdo da

documentação utilizada no processo, como o relatório final dos resultados obtidos. Um

módulo de avaliação produzido e validado, seguindo a norma ISO/IEC 14598-6, deve

resultar em avaliações imparciais que possam ser repetidas e reproduzidas. (MPS.BR,

2011).

As seções seguintes detalham as normas ISO/IEC 14598-5 e ISO/IEC 14598-6, visto que

estes dois documentos serão bastante utilizados em um dos objetivos gerais deste trabalho:

especificar o processo proposto para avaliação do produto. A Figura 4 mostra o relacionamento das

normas ISO/IEC 14598.

Page 25: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

16

Figura 4. Relacionamento das normas ISO/IEC 14598

Fonte: Colombo (2004)

2.2.3 ISO/IEC 14598-5 – Processo para avaliadores

A norma ISO/IEC 14598-5 é responsável por orientar o planejamento e execução de um

processo de avaliação de um software, através de uma série de recomendações. Por sua

generalidade, deve ser executada sempre observando os requisitos do produto a ser avaliado, bem

como as características pertinentes ao domínio para o qual a avaliação será realizada. Os

documentos destinam-se ao processo de avaliação de produtos existentes ou em desenvolvimento,

sendo possível sua utilização por fornecedores, usuários, entidades certificadoras e avaliadores em

laboratório. Vários documentos do software podem ser considerados para o processo de avaliação,

tais como: documentos do projeto, relatórios de teste e validação, código fonte e documentação do

usuário. (FORTES; SILVA; PAIVA, 2001).

Os principais objetivos do processo de avaliação descrito na norma ISO/IEC 14598-5, é

obter quatro características básicas e desejáveis em um processo de avaliação de software

(KOSCIANSKI, 1999):

a) Repetibilidade: uma especificação de avaliação, repetida pelo mesmo avaliador e para o

mesmo produto, produza resultados que possam ser considerados como idênticos;

Page 26: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

17

b) Reprodutibilidade: uma especificação de avaliação de um produto, repetida por

avaliadores diferentes, produza resultados que possam ser considerados como idênticos;

c) Imparcialidade: a avaliação deve ser neutra, e que não seja tendenciosa a algum tipo de

resultado em particular;

d) Objetividade: os resultados obtidos devem ser baseados em fatos, sem que haja

interferências dos sentimentos do avaliador.

A norma ISO/IEC 14598-5 sugere uma estrutura de execução no processo de avaliação

dividida em cinco etapas: análise de requisitos, especificação da avaliação, execução da avaliação e

conclusão da avaliação (FORTES; SILVA; PAIVA, 2001).

a) Análise de Requisitos: etapa em que são definidos os requisitos e descritos os objetivos

da avaliação, dependendo dos diferentes usuários do produto.

b) Especificação da Avaliação: etapa onde é definido o escopo da avaliação e medições de

software que serão executadas nos componentes da avaliação. São definidas também as

responsabilidades de todos os envolvidos no processo de avaliação.

c) Planejamento da Avaliação: nesta etapa são definidos os documentos e procedimentos

que serão utilizados pelo avaliador, com base nas especificações da etapa anterior.

"O avaliador deve produzir um plano que descreva os recursos necessários para realizar

a avaliação especificada, a distribuição desses recursos ... bem como os prazos, a equipe

de avaliação, os riscos associados e todas as atividades envolvidas” (FORTES; SILVA;

PAIVA, 2001).

d) Execução da avaliação: etapa onde são obtidos os resultados de execução de acordo com

a análise de requisitos, especificação da avaliação e planejamento. O resultado desta

etapa é o rascunho do relatório e dos dados da avaliação.

e) Conclusão da avaliação: etapa final do processo de avaliação, onde é revisado o relatório

de avaliação e disponibilizados os resultados obtidos.

Page 27: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

18

2.2.4 ISO/IEC 14598-6 – Documentação de módulos de avaliação

Em uma visão geral, os módulos de avaliação fornecem uma ligação entre as técnicas de

avaliação, indicadores e métricas de qualidade. O processo de avaliação de um produto de software

é inteiramente baseado em um conjunto de métricas, que em conjunto, fornecem informações sobre

as propriedades do software. As normas ISO/IEC 9126-2 e ISO/IEC 9126-3 possuem o objetivo de

definir as métricas através dos relatórios técnicos. Os módulos de avaliação surgiram da

necessidade de padronizar a forma de documentar estas normas, e utilizá-las de maneira eficiente,

permitindo a troca de informações sobre avaliações. Um módulo de avaliação é uma estrutura de

dados e instruções utilizados para o processo de avaliação e na prática, serve para específicar os

métodos de avaliação aplicáveis para uma dada característica (ou subcaracterísticas) e identificar as

evidências (por exemplo, amostra de código) que ele necessita (KOSCIANSKI, 1999).

Os módulos de avaliação descritos na norma ISO/IEC 14598-6 possuem um padrão que

deve ser seguido, construindo um modelo básico que contém a seguinte estrutura:

a) Prefácio e introdução: parte da estrutura responsável por informações sobre: preparação,

aprovação, contribuições e alterações sofridas pelo módulo de avaliação e

relacionamento com outros documentos e/ou normas;

b) Escopo: na etapa de escopo do módulo de avaliação, são identificadas as características e

subcaracterísticas (em conjunto a norma ISO/IEC 9126), o nível de avaliação e técnicas

utilizadas;

c) Referências: parte onde constam documentos normativos e normas técnicas

relacionadas. Se o módulo de avaliação em questão depender dos resultados de outro

módulo de avaliação, este também fará parte das referências;

d) Termos e definições: parte da estrutura onde ficam todas as definições de termos

técnicos que são utilizados no módulo de avaliação, que também pode ser feito através

da referência a fontes onde possam ser encontradas as definições;

e) Entradas para a avaliação: etapa responsável por identificar as entradas, os dados e as

métricas e medidas usadas:

Page 28: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

19

a. Entradas: é a identificação de todas as informações requeridas como entrada para

o módulo de avaliação.

Estes devem ser classificados como componentes de produto (especificação de requisitos de

software, descrição do projeto de software, descrição de programa, código fonte, código

executável, documentação de usuário), informação de produto (relatório de revisão de

requisitos de software, relatório de revisão de projeto de software, relatório de revisão de

programa, relatório de teste de unidade, relatório de revisão de documentação de usuário) e

informações de suporte (plano de garantia de qualidade, plano de gestão de configuração,

plano de teste de programa e descrição de língua de programação e compilador)

(KOSCIANSKI, 1999).

b. Dados: descrevem quais serão os parâmetros para especificação dos elementos de

dados que serão extraídos dos documentos de entradas e demais evidências. A

partir dos elementos de dados, que as métricas de avaliação serão computadas.

c. Métricas e medidas: a partir dos elementos de dados, descreve como as métricas

e medidas serão calculadas.

f) Interpretação dos resultados: compreende o mapeamento das medidas e o relato da

avaliação. Mapeamento das medidas é a interpretação dos resultados obtidos através das

medições e o relato da avaliação descreve "o conteúdo do relatório com o resultado da

aplicação do módulo de avaliação e a visualização dos valores obtidos” (KOSCIANSKI,

1999).

2.2.5 Relacionamento das normas ISO/IEC 9126 e ISO/IEC 14598

As normas ISO/IEC 9126 e ISO/IEC 14598 foram construídas para serem utilizadas em

conjunto, sendo que uma complementa a outra. Em uma visão geral das duas normas, pode-se

resumi-las da seguinte maneira: o modelo de qualidade está descrito na norma ISO/IEC 9126-1,

sendo que os demais documentos (ISO/IEC 9126-2, ISO/IEC 9126-3, ISO/IEC 9126-4)

correspondem aos relatórios técnicos, que são responsáveis por fornecer exemplos de métricas de

qualidade. O documento ISO/IEC 14598-1 define os conceitos envolvidos no processo de avaliação

de qualidade de software de uma maneira genérica. Os documentos ISO/IEC 14598-2 e ISO/IEC

14598-6 oferecem suporte à avaliação e os demais documentos (ISO/IEC 14598-3, ISO/IEC 14598-

4, ISO/IEC 14598-5) são utilizados para apoio no processo de avaliação específico por usuário

(desenvolvedores, adquirentes e avaliadores de software). As ligações entre as duas normas podem

ser visualizadas na Figura 5. (MPS.BR, 2011).

Page 29: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

20

Figura 5. Relacionamento entre as séries de normas ISO/IEC 9126 e 14598.

Fonte: MPS.BR (2009, p. 68)

2.2.6 ISO/IEC 12119 – Pacotes de Softwares – Testes e requisitos de Qualidade

Colombo (2004), comenta que Pacotes de softwares é o “conjunto completo e documentado

de programas fornecidos a diversos usuários para uma aplicação ou função genérica”, e são

conhecidos internacionalmente como COTS – Commercial off-the-shelf. Segundo Colombo, “...

COTS se concentra na produção de componentes competitivos e fáceis de integrar, muitas vezes

usando componentes de outros fornecedores”. São exemplos de pacotes de software: programas

utilitários, processadores de texto, softwares gráficos, banco de dados, entre outros.

A norma ISO/IEC 12119 é aplicável a avaliação de pacotes de software finalizados, não

contemplando a avaliação de qualidade no processo de desenvolvimento. O público alvo desta

norma são fornecedores de softwares, entidades responsáveis por certificação, laboratórios de teste

de software, compradores de softwares, auditores responsáveis por auditar laboratórios de teste e

usuários. A norma ISO/IEC 12119 estabelece as necessidades e requisitos que um pacote de

software deve ter, sendo eles: descrição do produto e documentação do usuário (ABNT, 1998).

Page 30: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

21

A descrição do produto fornece informações sobre o produto (documentação de usuário,

programas e dados, caso tenham) e é fornecido junto à documentação do software. Segundo a

ABNT (1998), a descrição do produto deve ser completa, organizada e livre de inconsistências

internas, oferecendo aos compradores do pacote de software auxílio na avaliação do produto em

relação as suas necessidades, antes de comprá-lo. As informações que a descrição do produto deve

conter são: identificação da descrição do produto, identificação do produto, fornecedor, tarefa,

requisitos de hardware e software, conformidade a documentos de requisitos, interface com outros

produtos, itens que compõem o pacote, instalação, suporte e manutenção. Os requisitos de

programas de dados são avaliados de acordo com a funcionalidade (instalação, presença de funções,

correção e consistência), confiabilidade, usabilidade, eficiência, manutenibilidade e portabilidade

(ABNT, 1998).

As instruções para teste descritas na norma ISO/IEC 12119 incluem "tanto o teste das

propriedades necessárias a todos os produtos de mesmo tipo, quanto o teste das propriedades

especificadas na descrição do produto". Os testes funcionais (caixa-preta) e de inspeção de produto

também são contemplados pela norma. As atividades para teste devem contemplar qualquer

informação que seja fornecido como parte do pacote de software (descrição, documentação do

usuário, programas e dados) e devem abranger todos os requisitos descritos nas normas para estes

dados. Os registros gerados para cada teste devem conter o plano de teste, resultado e identificação

das pessoas envolvidas. Ao final do teste é gerado um relatório, que contém os objetivos e

resultados alcançados, contendo a seguinte estrutura: identificação do produto, sistemas

computacionais usados para o teste, documentos utilizados, resultado dos testes, lista das não

conformidades aos requisitos, lista contendo informações sobre recomendações e não-

conformidades com estas recomendações, e por fim, data do encerramento do teste. Uma vez

realizado o teste no pacote de software, a mesma documentação poderá ser utilizada para um novo

teste, desde que seja no mesmo pacote de software (ABNT, 1998). A Figura 6 mostra a estrutura da

norma ISO/IEC 12119.

Page 31: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

22

Figura 6. Estrutura da norma 12119.

Fonte: Colombo(2004).

2.2.7 SQUARE 25000

A série de normas NBR ISO/IEC 25000, formam o modelo de qualidade conhecido como

SQuaRE - Requisitos e avaliação da qualidade de produtos de software, e foi construída com base

nas séries de normas ISO/IEC 9126 e ISO/IEC 14598, visando substituí-las gradativamente. O

objetivo geral da série de normas SQuaRE visa melhorar e unificar os três principais processos

pertinentes a qualidade de software, sendo: especificação de requisitos, medição de qualidade e

avaliação. (MARINHO; SOUSA, 2011).

Segundo Suryn e Abran (2003), a série de normas SQuaRE corresponde a segunda geração

de normas de qualidade de software, e foi construída com base nas seguintes premissas:

a) Unir as normas ISO/IEC 14598 e ISO/IEC 9126 em uma única estrutura de normas;

b) Introduzir uma nova organização de normas;

c) Apresentar um novo modelo de referência geral de qualidade;

d) Padronizar guias de qualidade detalhados;

e) Introduzir um padrão de primitivas de medição;

f) Normalizar os requisitos de qualidade; e

g) Apresentar um guia prático de uso das normas com exemplos.

Page 32: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

23

O modelo SQueRE é composto por quatorze documentos distribuídos em cinco módulos:

gestão de qualidade, modelo de qualidade, medição de qualidade, requisitos de qualidade e

avaliação de qualidade, que possuem os seguintes objetivos (MPS.BR, 2011). A Figura 7

exemplifica a arquitetura da norma SQuaRE:

Figura 7. Arquitetura dos documentos que compõem a série de normas

SquaRE

Fonte: Guerra e Colombo (2009).

a) ISO/IEC 2500n - Gestão da Qualidade: módulo responsável por apresentar o modelo de

normas SQuaRE, bem como definir os conceitos, termos e referências mencionados nas

demais divisões da SQuaRE. A ISO ISO/IEC 2500n possui dois documentos distintos:

a. ISO/IEC 25000 - Guia para SQuaRE: apresenta a estrutura SQuaRE,

terminologias, visão geral, modelos de referência e público-alvo;

b. ISO/IEC 25001 - Planejamento e gestão: fornece os requisitos e orientações para

o planejamento e gestão do processo de avaliação de produto de software;

b) ISO/IEC 2501n - Modelo de Qualidade: define um padrão de qualidade detalhado,

especificando as características de qualidade externas, internas e qualidade de uso. A

norma ISO/IEC 2501n é composta de dois documento:

Page 33: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

24

a. ISO/IEC 25010 - Guia de modelo de qualidade: determina um modelo,

características e subcaracterísticas para qualidade interna, externa e qualidade de

uso para produto de software;

b. ISO/IEC 25012 - Guia de modelo de qualidade de dados: define um padrão para

uso de dados tanto por pessoas quanto sistemas;

c) ISO/IEC 2502n - Medição da Qualidade: inclui a padronização matemática das métricas

de qualidade internas, externas e em uso, junto a um modelo de qualidade de produto de

software e também um guia prático para implementação do modelo, destinado a

avaliadores, adquirentes e desenvolvedores. Este módulo inclui cinco documentos:

a. ISO/IEC 25020 – Guia e modelo de referência: introduz as explicações, modelo

de referência e definições comuns para as primitivas de medição internas,

externas e de qualidade em uso, destinado a usuários, desenvolvedores e

avaliadores;

b. ISO/IEC 25021 - Medição de primitivas: define um conjunto de medidas para a

construção de métricas para medição de qualidade das características internas,

externas e de uso do produto de software;

c. ISO/IEC 25022 - Métricas para qualidade interna: define uma série de métricas

internas para medir quantitativamente as características e subcaracterísticas de

qualidade interna de um produto de software;

d. ISO/IEC 25023 - Métricas para qualidade externa: define uma série de métricas

externas para medir quantitativamente as características e subcaracterísticas de

qualidade externa de produto de software;

e. ISO/IEC 25024 - Métricas para qualidade em uso: define uma série de métricas

de qualidade em uso para medir quantitativamente as características e

subcaracterísticas de qualidade em uso de produto de software.

d) ISO/IEC 2503n - Requisitos de Qualidade: é a divisão que abrange as normas destinadas

a especificação de requisitos de qualidade. Os requisitos podem ser orientados tanto para

Page 34: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

25

um produto de software que será desenvolvido, quanto para um produto final. É

composto de um único documento:

a. ISO/IEC 25030 - Guia de requisito de qualidade: guia destinado a especificação

dos requisitos de qualidade de produto de software.

e) ISO/IEC 2504n - Avaliação da Qualidade: conjunto de normas que incluem os

requisitos, recomendações e diretrizes para avaliação da qualidade de produto de

software para clientes e desenvolvedores. Este modelo é composto dois documentos:

a. ISO/IEC 25040 - Guia e modelo de referência para avaliação de qualidade:

fornece uma estrutura destinada a identificação dos requisitos gerais e conceitos

para especificação e avaliação da qualidade de software descrevendo um

processo de avaliação;

b. ISO/IEC 25041 - Documentação para o módulo de avaliação: define um módulo

de avaliação capaz de avaliar erros induzidos e detectados e a maneira como o

sistema trata e recupera estes eventos.

f) ISO/IEC 25051 – Requisitos de Qualidade para COTS: Extensão da SQuaRE que

fornece requisitos de qualidade e requisitos documentação para pacotes de software

(COTS).

g) ISO/IEC 25062 – Formato Comum da Insdústria para Relatórios de Usabilidade:

segunda extensão da SQuaRE, visa estabelecer um padrão para registro de medidas de

usabilidade, obtidas através de testes.

O modelo de normas para qualidade de produto de software SquaRE possui alguns

documentos que ainda estão em fase de revisão e outros que foram publicados.

2.3 MÉTODOS DE QUALIDADE

Segundo Guerra, Colombo e Villalobos (2005), um método de avaliação de qualidade pode

ser genérico ou especialista. Métodos especialistas são desenvolvidos com o objetivo de avaliar

produtos de software pertencentes a um domínio específico, com determinadas características e

escopo particularmente customizável. Nos métodos de avaliação genéricos, todas as características

de qualidade de um software devem ser consideradas, independente da categoria de software a ser

Page 35: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

26

avaliado. O objetivo da próxima sessão é dar ênfase ao método genérico de qualidade de produto de

software desenvolvido pelo CenPRA: MEDE-PROS.

2.3.1 MEDE-PROS

O Método de Avaliação de Qualidade de Software - MEDE-PROS, foi desenvolvido pelo

CenPRA - Centro de Pesquisa Renato Archer e tem como objetivo avaliar um produto de software

sob o ponto de vista do usuário final. O MEDE-PROS encontra-se registrado na Fundação da

Biblioteca Nacional e com registro de marca no INPI (Instituto Nacional de Propriedade Industrial),

no Brasil. Este método avalia seis características de qualidade que devem estar presentes em um

produto de software, sendo: funcionalidade, confiabilidade, portabilidade, usabilidade, eficiência e

manutenibilidade, estas características possuem como referência a norma ISO/IEC 9126. O MEDE-

PROS também define os requisitos de qualidade para pacotes de software (COTS), tendo como

referência a norma ISO/IEC 12119. A partir destas características, o método MEDE-PROS, fornece

um guia de avaliação, "contendo procedimentos e instruções para avaliação e está estruturado

seguindo uma seqüência de passos, agrupados por tarefas específicas, para orientar a avaliação da

qualidade de um produto de software." (GUERRA; COLOMBO; VILLALOBOS, 2005). O

resultado final é um relatório de avaliação, onde são apontadas as características do produto que

atendem as normas de qualidade de software e os pontos que precisam ser revistos e melhoria dos

no produto.

2.3.1.1 Documentação MEDE-PROS

O MEDE-PROS é um método de avaliação genérico formado por três documentos

principais (ROCHA; MALDONADO; WEBER, 2001):

a) Lista de verificação: é uma ferramenta que apóia os avaliadores no processo de avaliação

de qualidade, estando as características e subcaracterísticas do produto decompostas

hierarquicamente em um modelo. A lista de características e subcaracterísticas podem

ser agrupadas em um conjunto de componentes, e estes, por um conjunto de questões.

Ao total, cinco componentes poderão ser avaliados: embalagem, descrição do produto,

documentação do usuário, interface e software. Na Figura 8, pode-se observar a relação

das características e normas de qualidade que contribuíram para a construção da lista de

verificação.

Page 36: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

27

Figura 8. Estrutura da lista de verificação de um método de avaliação

(MEDE-PROS)

Fonte: Processo de Avaliação de Produtos de Sotware (2005).

b) Manual do Avaliador: material que contém as diretrizes, informações e recomendações

necessárias para utilização da lista de verificação durante o processo de avaliação de um

produto de software, com o objetivo de auxiliar os avaliadores.

c) Modelo de relatório de avaliação: é um laudo técnico que fornece informações sobre a

qualidade de produto de software, sob o ponto de vista de um usuário final. Aponta as

características do software que estão dentro das normas de qualidade, e também pontos

que não estão em conformidade, apresentando ao final do documento, uma lista de

sugestões que visam adequar o produto de software aos requisitos especificados.

O modelo de avaliação MEDE-PROS, sugere que os componentes de um software sejam

avaliados em três etapas: instalação, execução e desinstalação; e durante estas etapas, o avaliador

poderá medir alguns atributos dos componentes do produto, sendo: software, interface,

documentação, descrição do produto e embalagem (GUERRA; COLOMBO, 2009).

Com base nos modelos e etapas citadas anteriormente nesta seção, pode-se ter uma visão

mais detalhada do modelo de qualidade MEDE-PROS. Ao total, sete componentes fazem parte

deste modelo, sendo que cada componente possui suas respectivas características e

subcaracterísticas de qualidade, e que por sua vez, se desdobram em um total de 526 questões a

serem aplicadas na avaliação de qualidade de um produto de software. (GUERRA; COLOMBO,

2009). Uma visão detalhada do modelo MEDE-PROS pode ser verificada na Figura 9:

Page 37: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

28

Figura 9. Modelo detalhado do método MEDE-PROS.

Fonte: Guerra e Colombo (2005).

Na lista de verificação, as subcaracterísticas de qualidade de produto de software são

desdobradas em atributos que podem ser medidos e pontuados. Estes atributos são chamados de

medidas e baseado nos relatórios técnicos ISO/IEC 9126-2, 9126-3 e 9126-4. Como exemplos de

medidas podemos citar:

a) Instalação: esta específicado o tipo de processador necessário para colocar o produto em

uso;

b) Documentação do usuário: os documentos do usuário impressos estão identificados;

c) Interface: apresenta erros gramaticais.

3. Trabalhos Correlatos

Esta seção pretende apresentar os trabalhos similares ao proposto neste projeto. Para

pesquisa dos trabalhos foram utilizadas estratégia de pesquisa sistemática, sendo utilizado um

Page 38: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

29

protocolo para a busca, com string de busca, critérios para seleção e exclusão dos estudos, bem

como os critérios para extração dos dados.

Na Tabela 02, pode-se observar o protocolo de busca utilizado na pesquisa.

Tabela 2. Protocolo da busca

Estratégia de

pesquisa

String da busca: ("qualidade de software" OR "qualidade de produto de

software" OR "Avaliação de software") AND ("Processo de avaliação"

OR "Ferramenta de apoio").

Foram analisados os 100 primeiros documentos retornados pela string de

pesquisa, conforme critérios de seleção e exclusão.

Fonte de pesquisa: Google Acadêmico.

Critérios de seleção Os termos de busca devem estar contidos no título ou abstract

Serão considerados apenas trabalhos de conclusão de curso

superior e pós-gradução, artigos científicos e também teses de

mestrados e doutorados, focados no tema qualidade de produto de

software.

Serão considerados trabalhos apenas na língua portuguesa

Critérios de exclusão Trabalhos com título que fogem totalmente do contexto da

pesquisa

Trabalhos que não propõem um novo processo ou ferramenta de

apoio a qualidade de produto de software

Estratégia para

extração dos dados

Leitura do abstract

Leitura dos objetivos gerais e específicos do estudo

Leitura da seção onde é descrito um novo processo ou ferramenta

de apoio a qualidade de produto de software ou ambos

Extrair informações referentes ao: título do projeto, objetivo do

estudo, embasamento, contribuição e descrição.

A partir da string de pesquisa, o Google Acadêmico retornou um total de oitocentos e oitenta

e um (881) resultados, do qual foram analisados os cem (100) primeiros. Dentre os cem

(100)estudos analisados, dezenove (19) estavam de acordo com os critérios de seleção, no qual, ao

Page 39: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

30

aplicar os critérios de exclusão, sobraram no total seis (06) documentos. A Tabela 3 mostra os

dados extraídos dos trabalhos selecionados.

Tabela 3. Trabalhos Correlatos

Título Avaliador: Uma Ferramenta de Apoio à Aplicação da norma ISO/IEC

9126 para Avaliação da Qualidade de Produtos de Software (SODRÉ,

2006).

Objetivos do estudo Avaliar produtos de software segundo as características de Qualidade em

Uso da norma ISO/IEC 9126-1 e nas métricas de Qualidade em Uso

descritas na norma ISO/IEC 9126-4.

Embasamento Normas ISO/IEC 9126-1 e ISO/IEC 9126-4.

Contribuição Ferramenta de apoio ao processo de avaliação da qualidade de produdo

software.

Descrição Desenvolvida em linguagem Borland Delphi 7 com banco de dados

PostgreSQL 8.1. Possui três módulos:

a) Administrador: cadastro dos preparadores da avaliação;

b) Preparador: definição das métricas que serão avaliadas, níveis de

pontuação e critérios de julgamento;

c) Avaliador: execução da avaliação definida pelo preparador.

As configurações mínimas de hardware e software são: memória RAM de

32 MB, ambiente windows 95 ou superior e processador de 500 MHz.

Ferramenta não disponível para download.

Título Ambiente web de suporte ao processo de avaliação da qualidade de

produtos de software (BORGES, 2006).

Objetivos do estudo Específicação e implementação de uma ambiente web para auxiliar no

processo de avaliação de produtos de software.

Embasamento Norma 14598-5 e ao método de avaliaçao da qualidade de produto de

software MEDE-PROS.

Contribuição Ferramenta web para auxilio no processo de avaliação de produto de

software.

Descrição O sistema foi desenvolvido em liguagem de programação PHP versão 5,

acessando uma base de dados MySQL versão 5, e utilizando também

HTML, AJAX e biblioteca gráfica PJGraph. Além de auxiliar no processo

de avaliação, possibilita o acompanhamento da execução da avaliação pelo

requisitante da avaliação, apresentando os aspectos positivos e negativos do

software avaliado. Com referência na norma ISO/IEC 14598-4 e o método

MEDE-PROS, foi proposto um ciclo de atividades para o processo de

avaliação: (i) levantamento de requisitos; (ii) específicação e plano de

avaliação; (iii) execução e acompanhamento da avaliação; (iv) finalização

da avaliação. A ferramente não está disponível para utilização.

A figura 10, mostra a tela de cadastro de avaliação da ferramenta web.

Page 40: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

31

Figura 10. Tela de cadastro de avaliação da ferramenta web.

Título Um Modelo para avaliação de produtos de software (ANJOS;

MOURA, 2002).

Objetivos do estudo Propor um novo modelo de avaliação para produtos de software, baseado

nas normas ISO, nos processo de avaliação de produtos de software padrão

e modelos de avaliação mais utilizados no mercado de software.

Embasamento Normas ISO/IEC 9126, ISO/IEC 14598 e ISO/IEC 12119.

Contribuição Processo de avaliação de produto de software.

Descrição Propõe um processo baseado nas normas ISO/IEC 9126, ISO/IEC 14598 e

ISO/IEC 12119, adicionando a avaliação do domínio por especialista.

Insere a participação do Avaliador especialista no domínio, que é um

profissional especializado na área objeto do software avaliado, capaz de

verificar o cumprimento de todos os requisitos definidos e identificar e

definir as necessidades implícitas, garantindo assim não apenas a

conformidade das funções aos requisitos, mas sobretudo a acurácia e

adequação. O modelo visa também a diminuição do tempo de atingimento

da maturidade do software, sendo que geralmente esta maturidade é alcança

após um longo período de utilização do software por não especialistas.

Título Um Processo de Avaliação da Portabilidade de unidades de Software

(GOMES FILHO, 2005).

Objetivos do estudo Apresentar uma proposta de um processo de avaliação da portabilidade de

unidade de software.

Embasamento ISO/IEC 9126-1 e ISO/IEC 14598.

Contribuição Processo de avaliação.

Descrição Definir um proceso de avaliação de unidades de software baseado na

família ISO/IEC 14598, focado na característica portabilidade e suas

subcaracterísticas (adaptabilidade, capacidade para ser instaladao,

coexistência e capacidade para substituir) descritas na ISO/IEC 9126-1.

Foram selecionadas métricas internas e externas que serão utilizadas

durante o processo de avaliação da portabilidade de produtos de software e

para cada métrica foi estabelecido um valor mapeado numa escala. Uma

Page 41: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

32

vez determinado as métricas e seus valores, restaram os processos de

obtenção de julgamento dos valores obtidos, que são feitos em seis (6)

etapas:

a) Identificar as informações disponíveis sobre a unidade de software;

b) Identificar as dependências do software com o ambiente;

c) Selecionar o método de avaliação da portabilidade adequado a partir

das informações disponíveis;

d) Especificar novos ambientes para a unidade de software dependendo

do método de avaliação selecionado;

e) Executar a avaliação de acordo com o método de avaliação da

portabilidade selecionado;

f) Sintetizar os resultados.

A figura 11 mostra o processo de avaliação de portabilidade de produto de

software.

Figura 11. Processo de avaliação de portabilidade

Título Framework para Especialização de Modelos de Qualidade de Produtos

de Software (SANTOS; PRETZ, 2009).

Objetivos do estudo Propor um framework para construção de modelos de avaliação de

qualidade de produtos de software especializados para áreas de negócio do

Serpro.

Embasamento Estratégia RRBT (Risk & Requirement Base Testing), ISO/IEC 9126-1 e

ISO/IEC 14598 e abordagem GQM (Goal Question Metric).

Contribuição Processo para especialização de modelos de qualidade de produtos de

software.

Page 42: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

33

Descrição Especialização do modelo e medição de qualidade. A idéia principal é a

rastreabilidade desde o requisito até a técnica de teste que permitirá a

medição da qualidade, considerando os riscos e atributos da qualidade

associados, a figura 12 exemplifica este proceso. A partir do MR (Modelo

de requisitos), que é um conjunto de artefatos e diagramas que

contextualizam e especificam as necessidades, funcionalidade e requisitos

que o produto de software se propõe a atender, é aplicada a técnica RRBT

para associação de riscos e priorização dos testes. Os atributos de

qualidades são baseados na norma ISO/IEC 9126-1 e o processo baseado na

norma ISO/IEC 14598-4.

Figura 12. Processo da Framework de especialização

Título Ferramenta fuzzy para avaliação da qualidade de software

(OLIVEIRA, 2002).

Objetivos do estudo Desenvolver uma ferramenta de suporte ao processo de avaliação de

software baseado no modelo MFAQS, promovendo mecanismos de

investigação de nível de qualidade, através do julgamento de especialistas,

como também a análise e a obtenção de resultados mais confiáveis.

Embasamento Baseado no modelo MFAQS - modelo fuzzy para avaliação de qualidade de

software.

Contribuição Ferramenta de apoio baseada no modelo MFAQS.

Descrição O AdeQuaS implementa e automatiza o processo de avaliação descrito no

MFAQS, tornando transparente para os participantes do processo de

avaliação as tarefas mais árduas contidas no modelo MFAQS, compostos

por dois módulos: (i) AdeQuaS-Analisador: no qual são realizadas as

principais atividades do processo de avaliação da qualidade desde a

definição da avaliação até a geração de relatórios dos resultados obtidos; e

(ii) AdeQuaS-Avaliador: basicamente um visualizador e um coletor de

informações do objeto de avaliação. O processo de avaliação foi construído

basicamente a partir de quatro etapas:

a) Definição da avaliação;

b) Coleta de dados dos especialistas;

c) Tratamento de dados;

d) Geração de resultados.

Page 43: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

34

O processo de avalição proposto pode ser visto na figura 13.

Figura 13. Processo de avaliação AdeQuas.

No documento analisado, não constam dados sobre linguagem de

programação, tecnologia utilizada, e disponibilidade da ferramenta.

Page 44: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

35

A Tabela 4 foi criada a partir da comparação dos trabalhos correlatos e a proposta deste

estudo. As características comparadas foram definidas com base nos objetivos deste trabalho.

Tabela 4. Comparativo trabalhos correlatos

Propõe ferramenta?

Propõe Processo?

Qual plataforma?

Disponível a Comunidade?

Normas ISO/IEC

Modelos de qualidade

Avaliador: ferramenta de apoio (SODRÉ, 2006).

SIM NÃO DESKTOP NÃO 9126-1 9126-4

--

Ambiente Web de suporte (BORGES, 2006). SIM NÃO WEB NÃO 14598-5

MEDE-PROS

Modelo de avaliação de produtos de software (ANJOS; MOURA, 2002).

NÃO SIM -- -- 9126 14598 12119

--

Processo avaliação de portabilidade (GOMES FILHO, 2005).

NÃO SIM -- -- 9126-1 14598

--

Framework para especialização (SANTOS; PRETZ, 2009). NÃO SIM -- --

9126-1 14598

--

AdeQuas: Ferramenta Fuzzy (OLIVEIRA, 2002). SIM NÃO DESKTOP NÃO 9126 MFAQS

Ferramenta de apoio a avaliação de qualidade de produto de software – TCC

SIM SIM WEB SIM

9126 14598 12119 25000

MEDE-PROS

Comparando com os trabalhos correlatos pesquisados, pode-se destacar como diferencial do

presente projeto: o embasamento por uma maior quantidade de normas, incluindo a norma mais

atual ISO/IEC 25000, buscando uma ferramenta mais abrangente e genérica para avaliação de

qualidade de produto de software; a disponibilização para a comunidade em geral da ferramenta a

ser desenvolvida; e um novo processo de avaliação de qualidade de produto de software desenhado

e desenvolvido junto a uma ferramenta independente.

Page 45: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

36

4. DESENVOLVIMENTO

Nesta seção são apresentadas as características pertinentes a modelagem do processo

proposto e da ferramenta de apoio a qualidade de produto de software. A Subseção 4.1 apresenta o

processo proposto detalhando os aspectos necessários. Na Subseção 4.1.1 à 4.1.5 são apresentadas

as regras do negócio, a definição dos requisitos funcionais e não funcionais, e nas Subseções 4.1.6 e

4.1.7 esta a específicação do diagrama de casos de uso da ferramenta e a modelagem entidade

relacionamento.

4.1 PROCESSO PROPOSTO

Com base nas normas estudas na Seção 2.2, no método MEDE-PROS e nos trabalhos

correlatos, propõem-se neste trabalho um novo processo para avaliação de qualidade de produto de

software. “Um processo ... bem definido deve indicar as atividades a serem executadas, os recursos

requeridos, os artefatos consumidos e produzidos e os procedimentos a serem adotados (métodos,

técnicas, modelos de documentos, entre outros)" (BERTOLLO; SEGRINI; FALBO, 2006). Um

processo padronizado é aquele que possui a descrição das atividades que devem ser considerados

nos projetos de software de uma organização, incluindo também os demais ativos de processo

envolvidos, dentre eles artefatos, procedimentos, ferramentas e papéis. Com base nos conceitos e

padrões de processo, esta seção apresenta o processo de avaliação de qualidade de produto de

software, que serviu de base para o desenvolvimento da ferramenta de apoio. O processo foi

construído a partir de três componentes: papel, atividade e artefato (VILLELA; TRAVASSOS;

ROCHA, 2004):

a) Papel: são os agentes do processo com perfis específico para execução de determinadas

atividades;

b) Atividade: caracteriza-se como uma ação transformadora dentro do processo, sempre

associada a um papel. Pode requerer um artefato de entrada, e também produzir um

artefato de saída; e

c) Artefato: é qualquer produto produzido ou consumido pelo papel em uma determinada

atividade, podendo ser de entrada e/ou saída.

Page 46: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

37

Para modelar o processo foi utilizada uma notação baseada no diagrama de atividades da

UML. A Tabela 5 apresenta e descreve os elementos utilizados, facilitando o entendimento do

processo descrito na figura 14.

Tabela 5. Elementos do diagrama de atividade

Item Descrição

Indica uma atividade do processo.

Caixa que identifica um artefato, podendo ser de entrada ou de saída

Indicador de transição entre as atividades do processo

Indica a relação e dependência entre um artefato e uma atividade.

Raia que divide as atividades em relação aos papéis do processo.

Fork/Join: indica o início e fim simultâneo de atividades concorrentes.

Indica o início do processo

Indica o término do processo

Com base na definição do conceito de processo e a apresentação dos elementos utilizados,

propõe-se um novo processo para avaliação de qualidade de produto de software, apresentado na

Figura 14 e detalhado nas seções subsequentes.

Page 47: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

38

Figura 14. Processo proposto

Page 48: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

39

O processo de avaliação de qualidade de produto de software é composto de três papéis: (i)

fornecedor, que disponibiliza informações referentes ao software; (ii) coordenador, que organiza a

avaliação do ínicio ao fim; e (iii) avaliador, responsável por executar a avaliação do produto com

base no check-list de avaliação, destaca-se o requisito mínimo de 2 (dois) avaliadores por avaliação.

O processo é executado em três fases distintas, sendo: (i) identificação; (ii) planejamento e

execução; e (iii) conclusão.

4.1.1 Detalhamento das atividades

As atividades que compõem o processo de avaliação de qualidade de produto de software

podem ser conhecidas na Tabela 6, a qual apresenta uma descrição das atividades, os papéis

envolvidos, bem como os artefatos de entrada e/ou saída.

Tabela 6. Detalhamento das atividades

Atividade 01 Disponibiliza o software e documentação necessária

Descrição Esta atividade prevê que o fornecedor do produto deverá entregar para avaliação o produto completo, tal como é entregue aos usuários. Por exemplo, se o produto é instalado pelo fornecedor, este deverá proceder a instalação para avaliação. Caso o produto seja entregue em mídia específica para instalação pelo usuário, todos os componentes deverão ser enviados (por exemplo, manual, DVD lacrado, etc...).

Papéis envolvidos Fornecedor

Artefato de saída Documentação do produto de software

Atividade 02 Identifica o tipo de produto a ser avaliado e define os requisitos da avaliação

Descrição Com base no material disponibilizado pelo fornecedor, o coordenador da avaliação irá efetuar uma primeira análise do produto de software, definindo os requisitos e objetivos da avaliação. Tanto o fornecedor quanto o coordenador poderão documentar na ferramenta de apoio, informações sobre o fornecedor e o produto a ser avaliado.

Papéis envolvidos Coordenador e Fornecedor

Artefato de entrada Documentação do produto de software

Artefado de saída Requisitos de avaliação do produto de software

Atividade 03 Define normas e modelo de avaliação

Page 49: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

40

Descrição Com o auxílio da documentação do produto de software e os requisitos da avaliação, o coordenador irá definir quais normas e/ou modelo de avaliação orientarão a avaliação. Nesta etapa são definidas quais as características do software serão avaliadas, por exemplo, se um software possui características de pacote de software, então a norma ISO/IEC 12119 poderá ser utilizada para avaliação.

Papéis envolvidos Coordenador

Artefato de entrada Requisitos do produto de software

Atividade 04 Define o check-list de perguntas para os avaliadores, com base nas métricas externas, internas e de uso.

Descrição Uma vez definidas as normas de qualidade para avaliação, o coordenador irá criar o check-list de perguntas, destinado aos avaliadores. As perguntas serão baseadas nas métricas de qualidade externas, internas e de uso.

Papéis envolvidos Coordenador

Artefato de saída Questionário para os avaliadores

Atividade 05 Produz o plano de avaliação e disponibiliza aos avaliadores

Descrição Após concluir a etapa de criação do check-list, o coordenador irá gerar o plano de avaliação, que irá conter a documentação do produto de software junto aos requisitos da avaliação, check-list de perguntas e informações sobre os avaliadores. O documento gerado servirá como auxílio ao fornecedor e coordenador para acompanhamento do processo de avaliação.

Papéis envolvidos Coordenador

Artefato de saída Plano de avaliação

Atividade 06 Acompanha os avaliadores e os resultados parciais

Descrição Com o do plano de avaliação, o coordenador irá acompanhar os resultados parciais da avaliação, monitorando os avaliadores e a evolução da avaliação.

Papéis envolvidos Coordenador

Artefato de entrada Plano de avaliação

Atividade 07 Acompanha o processo de avaliação

Descrição O fornecedor poderá acompanhar o processo de avaliação com o auxílio do plano de avaliação disponibilizado pelo coordenador, possuindo acesso restrito aos resultados parciais e finais.

Papéis envolvidos Fornecedor

Artefato de entrada Plano da avaliação

Atividade 08 Executa avaliação por módulos

Page 50: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

41

Descrição Nesta atividade, os avaliadores executam a avaliação através do check-list definido pelo coordenador. As avaliações acontecem paralelamente (minímo dois avaliadores) e os resultados obtidos são documentados na ferramenta de apoio.

Papéis envolvidos Avaliador

Artefato de entrada Questionário para os avaliadores

Artefato de saída Resultado parcial

Atividade 09 Avalia o resultado parcial

Descrição Com base nos resultados parciais gerados, os avaliadores irão analisar as respostas e definir apenas um resultado para cada questão, considerando todas as respostas com o objetivo de chegar a um consenso.

Papéis envolvidos Avaliador

Artefato de entrada Resultado parcial

Atividade 10 Gera relatório parcial e encaminhar ao coordenador

Descrição Ao término da avaliação do resultado parcial, os avaliadores geram o relatório parcial e disponibilizam os resultados ao coordenador.

Papéis envolvidos Avaliador

Artefato de saída Relatório parcial

Atividade 11 Avalia relatório parcial

Descrição O coordenador irá avaliar o relatório parcial, observando se existe alguma divergência no resultado obtido e também se existe coerência nas respostas fornecidas. A partir do relatório parcial o coordenador irá criar o relatório final.

Papéis envolvidos Coordenador

Artefato de entrada Relatório parcial

Atividade 12 Gera o relatório final e encaminha ao fornecedor

Descrição Uma vez avaliado o relatório parcial, o coordenador conclui a avaliação e gera o relatório final. O relatório final será construído com informações que interessam ao fornecedor, tais como o resultado da avaliação e recomendações para melhoria do software.

Papéis envolvidos Coordenador

Artefato de saída Relatório final

Atividade 13 Recebe o resultado da avaliação

Descrição O fornecedor recebe a documentação final do resultado da avaliação do software que foi disponibilizado pelo coordenador.

Papéis envolvidos Fornecedor

Artefato de entrada Relatório final

Page 51: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

42

4.1.2 Papéis

O processo proposto terá a participação de três papéis fundamentais:

a) Fornecedor: papel responsável por solicitar a avaliação do software e disponibilizar

informações e a documentação necessária sobre o mesmo;

b) Coordenador: responsável por receber o software, gerando a documentação necessária

para os avaliadores e o documento final para o fornecedor, participando também do

acompanhamento durante o processo de avaliação;

c) Avaliador: papel responsável por executar o questionário definido pelo coordenador,

fornecendo o relatório parcial da avaliação.

4.1.3 Artefatos

Artefatos são os produtos gerados ou utilizados por um papel em uma determinada

atividade. A seguir são descritos os artefatos envolvidos no processo proposto de avaliação de

qualidade de produtos de software.

a) Documentação do produto de software: Documento disponibilizado pelo fornecedor ao

coordenador com as informações do produto de software, necessárias para o coordenador

definir os requisitos da avaliação. Possui os seguintes itens, baseados na norma ISO/IEC

12119 (SQUARE 25051): descrição do produto, documentação de requisitos do sistema,

documentação de usuário.

b) Requisitos do produto de software: Artefato gerado pelo coordenador contendo os

requisitos da avaliação a partir da documentação fornecida pelo fornecedor. Será com base

neste documento que o fornecedor irá gerar o questionário para os avaliadores e também irá

compor o plano de avaliação. O documento gerado possui a lista com os requisitos do

sistema, baseada na série de normas ISO/IEC 9126 (SQUARE 25010, 25022, 25023 e

25024) e ISO/IEC 12119 (SQUARE 25051).

c) Questionário para os avaliadores: Documento gerado pelo coordenador para o avaliador

baseado nas métricas de avaliação de qualidade de produto de software. O artefato deverá

Page 52: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

43

conter a lista com as perguntas, associadas as métricas internas, externas e de uso. Todas as

métricas avaliadas serão baseadas na série de normas ISO/IEC 9126 (SQUARE 25010,

25022, 25023 E 25024).

d) Plano de avaliação: Artefato gerado pelo coordenador contendo o plano de avaliação,

destinado ao próprio coordenador e ao fornecedor, para acompanhamento do processo. O

fornecedor terá acesso parcial ao plano de avaliação, itens como lista de perguntas e

resultados parciais, não serão visíveis ao mesmo. O documento gerado deve conter

informações sobre o software a ser avaliado, lista de perguntas gerada para os avaliadores e

dados dos avaliadores além do relatório parcial e final, conforme são concluídos. Este

artefato é baseado na série de normas ISO/IEC 14598-1, 14598-2 e 14598-6 (SQUARE

25001, 25040 e 25041).

e) Resultado parcial: Documento gerado pelos avaliadores ao término de cada avaliação e

contém as respostas para as perguntas que constam no artefato “Questionário para os

avaliadores”. A partir deste artefato, os avaliadores irão gerar o relatório final. O documento

gerado é baseado na norma ISO/IEC 14598-5.

f) Relatório parcial: Artefato gerado pelos avaliadores destinado ao coordenador e que irá

compor o relatório final. O relatório parcial é construído com base nos resultadados parciais

de cada avaliador. O documento gerado deve conter a resposta já analisada de todos os

avaliadores, baseado na norma ISO/IEC 14598-1 e 14598-2 (SQUARE 25001 e 25040).

g) Relatório final: Artefato gerado pelo coordenador e destinado ao fornecedor. É o produto

final da avaliação. Além do relatório parcial e dados do plano de avaliação, podem existir

sugestões de melhorias para a ferramenta avaliada, o que dependerá do resultado da

avaliação. Documento baseado na norma ISO/IEC 14598-6 (SQUARE 25041).

Page 53: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

44

4.1.4 Relação das Normas Atendidas pelo Processo Proposto

Na Tabela 7 pode-se visualizar a relação entre as normas de qualidade comparado a cada

atividade do processo proposto, enfatizando os itens das normas que são atendidas pelo processo e

os itens que não são atendidos.

Tabela 7. Relação das normas atendidas quando comparadas ao processo

Norma Doc. Atividade que atende a norma O que não atende?

ISO/IEC 9126

1* Define normas e modelo de avaliação.

2*, 3*, 4* Define as perguntas para os avaliadores, com

base nas métricas externas, internas e de uso.

ISO/IEC 14598

1*, 2*, 6*

Identifica o tipo de produto a ser avaliado e define os requisitos da avaliação

14598-3 - Não contempla processo para desenvolvedores 14598-4 - Não contempla processo para adquirentes

Define normas e modelo de avaliação.

Define as perguntas para os avaliadores, com base nas métricas externas, internas e de uso.

Produz o plano de avaliação e disponibiliza aos avaliadores.

Avalia o resultado parcial e gera o relatório final

5

Executa a avaliação por módulos.

Avalia o resultado parcial.

Gera relatório parcial e encaminha ao coordenador.

ISO/IEC 12119

1*

Disponibiliza o software e documentação necessária.

`- Não atende ao teste de acompanhamento

Identifica o tipo de produto a ser avaliado e define os requisitos da avaliação.

Executa a avaliação por módulos

Gera relatório parcial e encaminha ao coordenador

Avalia o resultado parcial e gera o relatório final

ISO/IEC 25000

25051* Disponibiliza o software e documentação necessária

25012 - Não utiliza guia de modelo de qualidade de dados 25062 - Não contempla formato comum da indústria para relatórios

25000* 25001* 25030* 25040*

Identifica o tipo de produto a ser avaliado e define os requisitos da avaliação.

25000* 25001* 25010*

Define normas e modelo de avaliação.

Page 54: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

45

25020* 25021* 25022* 25023* 25024* 25040*

Define as perguntas para os avaliadores, com base nas métricas externas, internas e de uso.*

de usabilidade

25001* 25040* 25041*

Produz o plano de avaliação e disponibiliza aos avaliadores.

25040*

Executa a avaliação por módulos.

Avalia o resultado parcial.

Gera relatório parcial e encaminha ao coordenador.

25001* Avalia o resultado parcial e gera o relatório final.

* O atendimento integral a esta norma também está condicionada às definições do coordenador

É importante ressaltar que o atendimento integral das normas de qualidade durante o

processo de avaliação proposto nesta seção, também depende das definições do coordenador ao

planejar o plano de avaliação.

Pode-se relacionar o método MEDE-PROS e o processo proposto com base nos três

documentos principais que compõem o método. A lista de verificação é atendida através da

atividade 04, onde o coordenador define o check-list de perguntas. Nesta atividade, as perguntas

podem ser baseadas na lista de verificação proposta pelo MEDE-PROS, que é um documento onde

constam exemplos de questões a serem aplicadas na avaliação.. Na etapa seguinte, podemos

relacionar o manual do avaliador à atividade 08, onde os avaliadores executam a avaliação. Nesta

atividade do processo, o documento fornececido pelo MEDE-PROS torna-se útil para orientar os

avaliadores durante a atividade. Por último, o modelo de relatório de avaliação está relacionado à

atividade 10, gerar relatório parcial. Nesta atividade os avaliadores geram o relatório que será

destinado ao fornecedor do produto de software, utilizando o documento do método como base para

gerar o relatório do documento.

Page 55: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

46

4.2 PROJETO

Esta seção é responsável pela específicação da ferrramenta de apoio a avaliação da

qualidade de produto software e serviu de base para todo o processo de desenvolvimento do TCC II.

É apresentada em três etapas: (i) Definição dos requisitos e regras de negócio; (ii) Modelagem dos

casos de uso; e (iii) Modelagem entidade relacionamento.

4.2.1 Definição dos Requisitos e Regras de Negócio

Nesta seção são definidos os requisitos funcionais, não funcionais e as regras de negócio da

ferramenta a ser desenvolvida. As definições foram identificadas com base nas características

inerentes ao processo proposto.

Os seguintes requisitos funcionais foram identificados para a ferramenta proposta:

RF01 – O sistema deverá permitir o cadastro do coordenador

RF02 - O sistema deverá permitir ao coordenador e ao fornecedor cadastrar dados do

fornecedor;

RF03 - O sistema deverá permitir ao coordenador e ao fornecedor cadastrar dados do

produto de software;

RF04 – O sistema deverá permitir ao coordenador cadastrar dados dos avaliadores;

RF05 - O sistema deverá permitir ao coordenador e ao fornecedor definirem os

requisitos da avaliação;

RF06 - O sistema deverá permitir ao fornecedor acompanhar o processo de

avaliação;

RF07 - O sistema deverá permitir o coordenador definir o check-list de avaliação;

o RF07.01 – O coordenador poderá importar um check-list; e

o RF07.02 – O coordenador poderá adotar um check-list já cadastrado na

ferramenta.

Page 56: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

47

RF08 - O sistema deverá permirir o coordenador gerar o plano de avaliação;

RF09 - O sistema deverá permitir o coordenador acompanhar o processo de

avaliação;

RF10 - O sistema deverá permitir que o avaliador execute o check-list de avaliação;

RF11 - O sistema deverá permitir aos avaliadores definir um relatório parcial e

encaminhar ao coordenador;

RF12 - O sistema deverá permitir o coordenador avaliar o relatório parcial;

RF13 - O sistema deverá permitir o coordenador gerar o relatório final e

disponibilizar ao fornecedor;

RF14 - O sistema deverá permitir ao fornecedor visualizar o relatório final;

RF15 – O sistema deverá permitir o coordenador exportar um check-list existente no

banco de dados da ferramenta; e

RF16 – O sistema deverá permitir o coordenador cadastrar escalas de avaliação.

Os seguintes requisitos não funcionais foram identificados para a ferramenta proposta:

RNF01 - A inteface da ferramenta deverá ser web, escrita em liguagem PHP;

RNF02 - O sistema deverá utilizar javascript para validar formulários;

RNF03 - O sistema deverá utilizar banco de dados MySQL;

RNF04 - O sistema deverá ser compatível com o browser Google Chrome versão

17.0;

RNF05 – A ferramenta deverá conter três módulos, com acessos restritos:

- Fornecedor: Acompanhar parcialmente a avaliação e obter o relatório final;

- Coordenador: Planejar e coordenar a avaliação, gerar o relatório final;

- Avaliador: Gerar os resultados e relatórios parciais da avaliação.

Page 57: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

48

RNF06 - O check-list de perguntas deverá ser importado através de um arquivo

excel, com layout pré-definido e salvo em formato de texto separado por tabulação;

As seguintes regras de negócio foram identificadas para a ferramenta proposta:

RN01 - A avaliação deverá ser executada por, no mínimo, dois avaliadores;

RN02 - O relatório parcial só poderá ser gerado após todos os avaliadores

concluírem a avaliação parcial;

RN03 - o coordenador não poderá interferir nos resultados parciais, enquanto não

forem concluídos pelos avaliadores;

RN04 - O fornecedor não poderá ter acesso aos resultados parciais da avaliação;

RN05 - O relatório final só poderá ser gerado quando o reltório parcial for concluído;

RN06 - Os avaliadores não poderão alterar os resultados parciais da avaliação após

liberarem o relatório parcial ao coordenador;

RN07 - O check-list estará disponível aos avaliadores somente após o coordenador

produzir o plano de avaliação;

RN08 - O fornecedor deverá ter acesso aos resultados da avaliação após o

coordenador gerar o relatório final;

Page 58: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

49

4.2.2 Modelos de Caso de Uso

Nesta seção são apresentados os diagramas de casos de uso da ferramenta criados na fase de

específicação. Os diagramas foram dividos a partir dos três principais módulos da ferramenta:

fornecedor, coordenador e avaliador. A Figura 15 apresenta os casos de uso do módulo fornecedor e

coordenador, demonstrando visualmente as funcionalidades que cada papel terá acesso na

ferramenta. Os papéis fornecedor e coordenador compartilham o acesso a alguns casos de uso,

como: login, cadatrar fornecedor, cadastrar dados do produto, definir os requisitos da avaliação e

acompanhar a avaliação. Os casos de uso cadastrar coordenador, cadastrar escala, definir o check-

list de avaliação, cadastrar avaliador, gerar plano de avaliação e gerar relatório final, são exclusivos

do papel coordenador.

Figura 15. Casos de Uso Módulo Fornecedor e Coordenador

Os casos de uso do módulo avaliador podem ser observados na Figura 16, basicamente

engloba duas atividades: avaliar o produto e gerar o relatório parcial.

Page 59: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

50

Figura 16. Casos de uso módulo avaliador

No apêndice A está o detalhamento dos casos de uso apresentados nesta seção.

4.2.3 Modelagem Entidade Relacionamento

Para modelar a entidade relacionamento do banco de dados MySQL, foi utilizado a

ferramenta freeware MySQL Workbench 5.2 CE. A modelagem pode ser visualizada na figura 17.

Uma visão mais detalhada das tabelas e seus respectivos campos pode ser visualizado no Apêndice

B.

Page 60: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

51

Figura 17. Modelagem entidade relacionamento

4.3 TELAS DO SISTEMA

As principais telas do sistema são apresentadas nesta seção. Algumas interfaces foram

anexadas ao apêndice C por serem consideradas menos relevantes.

O primeiro acesso a ferramenta de apoio é através da tela de login e senha. A figura 18 exibe

esta tela. A partir do login é identificado o perfil de acesso ao sistema, dividido em três módulos:

Page 61: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

52

coordenador, fornecedor e avaliador, conforme descrito no RNF05. O menu da ferramenta é

carregado dinamicamente, de acordo com tipo de usuário que logou no sistema.

Figura 18. Acesso ao sistema

Através do login com perfil de coordenador, o usuário poderá acessar o cadastro de

coordenadores, avaliadores, fornecedores, produtos de software e escala. Também terá acesso ao

cadastro de requisitos de avaliação, check-list de avaliação (importação e exportação), cadastro do

plano, geração do relatório final, visualização do relatório final e acompanhamento da avaliação.

O usuário que acessar o sistema com login de coordenador terá acesso a alterar o próprio

cadastro, cadastrar produtos e requisitos de software, acompanhar a avaliação e visualizar o

relatório final. Com o perfil de avaliador, o usuário que logar no sistema terá acesso a alterar o

próprio cadastro, avaliar produtos de software e gerar o relatório parcial. A figura 19 exemplifica a

tela de cadastro de coordenador. As telas de cadastro de avaliador e fornecedor podem ser

visualizadas no apêndice C.

Figura 19. Cadastro de Coordenador

Page 62: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

53

Após o coordenador responsável pela avaliação cadastrar o fornecedor do produto de

software e os avaliadores, efetuará o cadastrado de produto de software, conforme figura 20. Nesta

tela é possível informar o fornecedor responsável pelo produto, descrição, requisitos de software e

hardware, e demais informações. Esta atividade pode ser executada tanto pelo coordenador, quanto

pelo fornecedor.

Figura 20. Cadastro de produto de software

Ao finalizar a entrada de dados referente ao produto de software, é liberado ao coordenador

e fornecedor o acesso ao cadastro dos requisitos da avaliação, conforme figura 21. Neste tela é

possível informar o propósito, escopo e requisitos da avaliação.

Todos os item descritos nos parágrafos anteriores fazem parte da etapa de identificação do

processo proposto. Os próximos itens desta seção descrevem a fase de: (i) planejamento e controle,

e (ii) fase de conclusão, relacionando as telas do sistema.

Page 63: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

54

Figura 21. Requisitos da avaliação

Antes de gerar o plano da avaliação, o coordenador deverá definir o check-list de avaliação.

O check-list poderá ser visualizado, exportado e importado para o banco de dados da ferramenta

através do menu “Check-list”, apresentado na figura 22. O check-list deverá ser importado através

de um arquivo de texto (extensão *.txt), salvo em formato UFT-8 e com layout pré definido. O

modelo para criar o arquivo pode ser consultado no apêndice D.

Figura 22. Gerenciar check-list

Antes de importar o check-list, o coordenador deverá cadastrar as escalas de avaliação

(figura 23), que serão utilizadas pelos avaliadores para responder as perguntas da avaliação. Nesta

tela deverá ser definida uma chave, indicador e a descrição da escala. A chave tem como objetivo

facilitar a importação do arquivo, e serve como um identificador da escala dentro do banco. O

Page 64: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

55

coordenador da avaliação cria a chave da escala, elemento utilizado posteriormente no arquivo de

importação das questões para avaliação. O indicador informa se o peso da escala na avaliação será

positiva, negativa ou neutra. A descrição é o texto das possíveis respostas que irão ser apresentadas

para o avaliador, na fase de avaliação e consolidação.

Figura 23. Cadastro de escala

Após definir as escalas e importar o check-list, o próximo passo será cadastrar o plano de

avaliação. Esta funcionalidade permite definir os avaliadores (sendo no mínimo dois), uma data de

início e término e o check-list de avaliação, conforme figura 24. A partir do plano, os avaliadores

terão acesso para avaliar o produto de software e o coordenador e fornecedor poderão acompanhar o

processo de avaliação.

Figura 24. Gerar plano de avaliação

Page 65: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

56

Na tela de acompanhamento da avaliação (figura 25), tanto o fornecedor quanto o

coordenador poderão visualizar dados como: número de questões, porcentagem de conclusão geral

e porcentagem por avaliador.

Figura 25. Acompanhar avaliação

Page 66: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

57

Após o coordenador concluir o plano, os avaliadores terão acesso para efetuar a avaliação do

produto de software. Nesta tela, representada pela figura 26, será possível visualizar as questões

definidas no check-list. A apresentação é ordenada por categoria e sub-categoria de avaliação,

juntamente ao conjunto de escala definida para a pergunta. Na resposta, o avaliador deverá

obrigatoriamente responder a uma das escalas, podendo informar um comentário e/ou anexar um

arquivo de imagem (extensões gif, png ou jpeg) com evidências dos testes. O avaliador poderá

concluir uma avaliação somente quando todas as questões tiverem sido respondidas.

Figura 26. Avaliar produto

Após todos os avaliadores concluírem a avaliação individual, a tela de consolidação das

respostas é liberada (figura 27). Nesta interface os avaliadores poderão visualizar as respostas

individuais de cada avaliador, junto aos respectivos comentários e anexos.

O processo de consolidação consiste em avaliar e definir uma resposta de consenso por

questão, e também os comentários positivos, negativos e observações de cada categoria avaliada.

Esta funcionalidade foi implementada com o objetivo de facilitar a atividade de geração do relatório

parcial da avaliação. O usuário que efetuar a consolidação poderá visualizar, na mesma tela, a

resposta de cada avaliador para todas as questões do check-list, onde é possível também verificar os

comentários e anexos. Ao clicar no checkbox do comentário individual do avaliador, o texto será

automaticamente incluído na caixa de comentário da categoria. O texto será inserido na caixa de

acordo com o indicador da escala de resposta do avaliador, podendo ser do tipo negativo, positivo

ou observação. O indicador é definido no cadastro de escala.

Page 67: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

58

Figura 27. Gerar relatório parcial

Após os avaliadores concluírem a consolidação da avaliação parcial, o sistema permitirá o

coordenador analisar e alterar os resultados de cada categoria avaliada (figura 28). Nesta fase as

respostas individuais por avaliador não serão mais visíveis, sendo possível visualizar e editar apenas

os comentários de cada categoria avaliada. Esta etapa compreende o término da fase de

planejamento e controle do processo proposto, passando para a fase seguinte: conclusão.

Page 68: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

59

Figura 28. Liberar relatório parcial

Após a liberação do resultado da avaliação pelo coordenador, o fornecedor do produto em

questão poderá visualizar o relatório final. O objetivo do relatório final é exibir os resultados

negativos, positivos e observações de cada categoria do software avaliado. A tela do relatório final

pode ser visualizada na figura 29.

Page 69: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

60

Figura 29. Visualizar relatório final

Page 70: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

61

4.4 AVALIAÇÃO DA FERRAMENTA

Com o objetivo de avaliar a ferramenta de apoio, a partir de um produto de sofware

pertencente a empresa no qual o acâdemico trabalha, foi elaborado um plano para a avaliação. As

próximas seções foram destinadas a documentação do planejamento da avaliação e os resultados

obtidos. É importante frisar que esta é uma avaliação preliminar da ferramenta de apoio e, como

trabalhos futuros, sugere-se elaborar um plano de avaliação com outros produtos de software e

outras pessoas para os papéis do processo. O objetivo de efetuar mais avaliações é de validar não

apenas o software, mas também o processo proposto.

4.4.1 PLANEJAMENTO DA AVALIAÇÃO

Para avaliar a ferramenta de apoio tornou-se necessário escolher um produto de software, e

com base neste software, montar um plano de avaliação seguindo os moldes detalhados no processo

proposto. O produto de software escolhido foi um módulo específico de intranet da empresa Brasil

Foods S/A, chamado OLQR - Online Quick Report (figura 30) que tem como objetivo orientar os

colaboradores da empresa através de relatórios contendo o passo à passo na execução de transações

do sistema ERP da empresa. Para reproduzir um cenário de testes seguro e íntegro, foram

selecionadas pessoas diferentes para cada papel na avaliação, sendo: um fornecedor, um

coordenador e dois avaliadores. Vale ressaltar que os avaliadores não possuem conhecimento sobre

qualidade de software ou experiência em avaliação de produto de software. Os resultados da

avaliação destes papéis foram baseados em seus conhecimentos referente ao produto avaliado e

orientações do acâdemico sobre o objetivo da avaliação e como utilizar a ferramenta de apoio.

Page 71: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

62

Figura 30. OLQR - Online Quick Report

Para o papel de avaliador, foram selecionados dois colaboradores da Brasil Foods S/A. O

primeiro, Alexsandro Moraes, trabalha na área de controladoria como analista fiscal e acessa o

módulo OLQR esporadicamente quando há dúvidas sobre o processo de execução nas transações

novas. O segundo avaliador, Cristina Bernardi, trabalha na área de melhoria contínua, na função de

analista sênior. Segundo a usuária, o acesso ao módulo é efetuado sempre que surge um processo

desconhecido para ela na empresa. A ferramenta de apoio foi publicada em um servidor web,

fornecido pela UNIVALI, possibilitando o acesso do sistema pelos avaliadores.

O papel de coordenador foi efetuado pela orientadora deste trabalho, Fabiane B. V. Benitti e

para o papel de fornecedor foi definido o próprio acadêmico, que também trabalha na empresa

Brasil Foods S/A e possui acesso ao produto de software avaliado.

Os testes da ferramenta aconteceram nos dias 24 e 25 de fevereiro de 2012. A localização foi

no CSC – Centro de Seviços Compartilhados da Brasil Foods localizado em Itajaí, estado de Santa

Catarina. O tempo de duração foi de aproximadamente duas horas por avaliador. O check-list

utilizado na avaliação esta anexado ao apêndice E, sendo que os critérios adotados foram extraídos

do método de avaliação MEDE-PROS.

Page 72: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

63

O cenário de testes seguiu todas as etapas do processo proposto para avaliação. O cadastro

do produto de software e requisitos de avaliação foram efetuados pelo fornecedor e a definição do

checklist e do plano teve a aprovação do coordenador. Os avaliadores receberam o login e senha

para o acesso a ferramenta. O acadêmico repassou os objetivo da atividade e uma breve orientação

de como executar a avaliação e consolidação através da ferramenta. Ao final dos testes foi aplicado

um questionário de avaliação referente ao uso da ferrementa de apoio, com perguntas não objetivas

sobre ao funcionamento geral e interface. O questionário de avaliação pode ser visualizado no

apêndice F. A figura 31 demonstra um diagrama com as etapas da valiação da ferramenta de apoio,

relacionado as atividades aos participantes da avaliação.

Page 73: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

64

Figura 31. Etapas e atividades da avaliação

Page 74: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

65

4.4.2 RESULTADOS DA AVALIAÇÃO

Esta seção tem como objetivo apresentar os resultados da avaliação do produto de software

avaliado e da ferramenta de apoio. O texto foi escrito com base no relatório final de avaliação do

produto de software e no questionário de avaliação da ferramenta de apoio.

4.4.2.1 Resultados da avaliação do produto de software

Na maioria das questões a resposta dos avaliadores foi unânime, e de uma maneira geral o

resultado foi positivo. A padronização e a formatação de ícones e janelas, a ausênsia de erros

gramaticais e ortográficos e a não ocorrência de falhas durante a execução foram aspectos

considerados positivos no produto de software avaliado. Como aspectos negativos, foram

destacados a dificuldade na utilização da interface de busca de relatórios OLQR e a falta de

entendimento sobre o objetivo do sistema no primeiro acesso do usuário no sistema. Algumas

imagens de tela do produto de software foram anexadas para evidênciar a resposta. O relatório final,

que é o resultado obtido através do processo de avaliação, pode ser visualizado no apêndice G.

4.4.2.2 Resultados da avaliação da ferramenta de apoio

Ao término dos testes, o questionário de avaliação da ferramenta de apoio foi respondido

pelos avaliadores.Os dois avaliadores concordaram que as funcionalidades do sotware estão

apresentadas de forma clara e de fácil entendimento. Ao questionar se as funcionalidades do

software são suficientementes adequadas, um avaliador respondeu que concorda e outro que

concorda veemente. Referente a performance do software, os dois avaliadores concordam veemente

que é satisfatório. Ambos concordaram veemente que há facilidade na utilização do software.

Nas críticas e sugestões um dos avaliadores citou que a funcionalidade de anexos na etapa

de avaliação pode ser melhorada afim de facilitar a forma de upload, pois houve dúvidas no

momento de verificar se uma imagem estava anexado a uma questão. Foi sugerido também uma

funcionalidade de ajuda na ferramenta, com textos explicativos, caso haja dúvidas sobre o

funcionamento do sistema.

Page 75: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

66

5. CONCLUSÃO

O conceito deste projeto surgiu da necessidade em ter uma ferramenta que apóie o processo

de avaliação de qualidade de produto de software. Considerando este fator básico, foi desenvolvida

a ideia de um novo processo de avaliação, com base nos conceitos, normas e métodos existentes na

área de estudo relacionada ao tema. A partir deste processo, foi especificada a ferramenta visando

apoiar o processo proposto e garantir que todas as etapas fossem cumpridas.

As pesquisas ao tema de estudo tiveram foco nas normas e métodos de avaliação de

qualidade de software e serviram de base para desenhar o processo proposto dentro de padrões

aceitáveis. A necessidade de pesquisar soluções similares evidenciou a dificuldade em encontrar

ferramentas disponíveis e acessíveis a comunidade em geral, propiciando o estudo e

desenvolvimento de uma ferramenta que atenda esta necessidade. A modelagem do processo foi

representada através de um diagrama de atividades UML e serviu como apoio para especificar a

ferramenta a ser criada.

Durante a implementação do sistema foram efetuadas análises com os diagramas de caso de

uso e de entidade relacionamento, visando garantir que todas os itens especificados fossem

atendidos seguindo o padrão estabelecido no projeto. Ao final do desenvolvimento foram efetuados

os testes de validação da ferramenta, onde constatou-se que o sistema consegue atender todos os

requisitos e regras de negócio.

Através da avaliação, constatou-se que a ferramenta de apoio atende a todas as etapas do

processo proposto, e como resultado, teve-se um produto de software avaliado, onde foram

elencandas as características positivas, negativas e observações referentes aos componentes

avaliados.

Com a conclusão deste trabalho, espera-se que os resultados sejam úteis para a área de

qualidade de produto software, devido a carência de estudos e de ferramentas para automatização

do processo de avaliação disponíveis no meio acâdemico e privado. Como principais contribuições

que este trabalho proporciona pode-se citar a pesquisa na área de qualidade de produto de software,

a proposta de um novo processo de avaliação baseado nas normas mais relevantes do mercado e por

último, uma ferramenta de apoio construída com base no processo.

Page 76: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

67

5.1 Trabalhos Futuros

Durante a avaliação do software foi identificado que a interface da ferramenta pode ser

melhorada, exibindo menus mais bem estruturados e otimizando o layout das funcionalidades

existentes.

Outro ponto que pode ser tratado como trabalhos futuros é a funcionalidade de anexo na fase

de avaliação, consolidação e geração do relatório final. Pretende-se otimizar a interface de upload,

além de incluir a opção de edição de arquivos já anexados e também a pré-visualização dos

arquivos na fase de avaliação e consolidação. Foi identificada também a necessidade de efetuar

cenários de teste variados, com outros produtos de software e pessoas diferentes para representar os

papéis, afim de validar não apenas a ferramenta, mas também o processo proposto.

Por fim, identificou-se também a necessidade de implementar uma opção de ajuda para os

usuários da ferramenta, caso existam dúvidas sobre o processo de funcionamento do sistema.

Page 77: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

REFERÊNCIAS BIBLIOGRÁFICAS

ABNT - ASSOCIAÇÃO BRASILEIRA DE NORMAS TÉCNICAS. NBR ISO/IEC 12119-1:

Tecnologia de informação - Pacotes de software - Teste e requisitos de qualidade. Rio de Janeiro,

1998.

ABNT - ASSOCIAÇÃO BRASILEIRA DE NORMAS TÉCNICAS. NBR ISO/IEC 9126-1:

Engenharia de Software - Qualidade de produto - parte 1: modelo de qualidade. Rio de Janeiro,

2003.

ALSULTANNY, Y. A; WOHAISHI, A. M. Requirements of Software quality Assurance

Model. 2009. Artigo da Enviroment and Computer Science – Second Internacional Conference.

ANDRADE, D. Gomes de; FALK, J. Anthony. Eficácia de sistemas de informação e percepção

de mudança organizacional: um estudo de caso. Disponível em:

<http://dx.doi.org/10.1590/S1415-65552001000300004>. Acesso em: 05 ago. 2011.

ANJOS, L. A. Mendonça dos; MOURA, H. P. de. Um modelo para avaliação de produtos de

software. 2002. Artigo da Universidade Federal de Pernambuco.

BARTIÉ, Alexandre. Garantia de qualidade de software: adquirindo maturidade organizacional.

Rio de Janeiro, RJ: Campus, 2002.

BERTOLLO, G.; SEGRINI, B.; FALBO, R. de A. Definição de processos de software em um

ambiente de desenvolvimento de software baseado em ontologias. 2006. Artigo do V Simpósio

Brasileiro de Qualidade de Software.

BORGES, J. Manoel. Ambiente web de suporte ao processo de avaliação da qualidade de

produtos de software. 2006. Trabalho de Conclusão de Curso (Bacharelado em Ciências da

Computação) - Universidade Regional de Blumenau, Blumenau, 2006.

COLOMBO, R. M. Thienne. Processo de avaliação da qualidade de pacotes de software. 2004.

Dissertação de Mestrado (Ciência da Computação) - Universidade Estadual de Campinas,

Campinas, 2004.

DUARTE, K. C; FALBO, R. A. Uma ontologia de qualidade de software. 2006. Dissertação de

Mestrado (Engenharia Mecânica) - Universidade Federal do Espírito Santo, Vitória, 2006.

Page 78: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

69

FORTES, R. P. de M.; SILVA, E. A. da; PAIVA, D. M. Barroso. Utilizando a Norma ISO IEC

14598-5 na Avaliação de Qualidade de Hiperdocumentos Web. 2001. Artigo da Universidade de

São Paulo.

GOMES FILHO, M. J. A.. Um processo de avaliação da portabilidade de unidades de software.

2005. Trabalho de Conclusão de curso (Graduação em Ciência da Computação) - Universidade

Federal de Pernambuco, Recife, 2005.

GUERRA, A. C.; COLOMBO, R, T.; VILLALOBOS, M. T. Processo de avaliação de produtos

de software. 2005. Artigo do Centro de Pesquisas Renato Archer.

GUERRA, A. C; COLOMBO, Regina M. T. Tecnologia da informação: qualidade de produto de

software. Brasilia: PBQP, 2009.

KOSCIANSKI, A. et al. ABNT - Guia para utilização das normas sobre avaliação de qualidade

de produto de software - ISO/IEC 9126 e ISO/IEC 14598. Paraná: Curitiba, 1999.

KOSCIANSKI, André; SOARES, M. dos Santos. Qualidade de software: aprenda as

metodologias e técnicas mais modernas para o desenvolvimento de software. 1.ed. São Paulo:

Novatec, 2007.

MARINHO, D. S; SOUSA, E. J. Pesquisa de Qualidade no Setor de Sotware Brasileiro 2009.

Disponível em: < http://www.blogcmmi.com.br/qualidade/pesquisa-de-qualidade-no-setor-de-

software-brasileiro-de-2009 >. Acesso em: 20 ago. 2011.

MPS.BR -Melhoria de Processo do Software Brasileiro Guia de Aquisição. <

http://homepages.dcc.ufmg.br/~rodolfo/GPS1-Turma11/MPS.BR_Guia[1].pdf > Acesso em: 28

ago. 2011.

OLIVEIRA, K. R. AdeQuaS: Ferramenta Fuzzy para Avaliação da Qualidade de Software. 2002.

Dissertação de Mestrado (Informática Aplicada) - Universidade de Fortaleza, Fortaleza, 2002.

PRESSMAN, R.S. Engenharia de Software. 5.ed. Rio de Janeiro: McGraw Hill, 2002.

REED, K. Software engineering – a new millennium?. 2000. Artigo da IEEE Computer Society

Press.

Page 79: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

70

ROCHA, A. R. Cavalcanti da; MALDONADO, J. Carlos; WEBER, K. Chaves. Qualidade de

software. São Paulo: Prentice Hall, 2001.

SANTOS, L. dos Bays; PRETZ, E. Framework para Especializações de Modelos de Qualidade

de Produtos de Software. Trabalho de Conclusão de Curso (Bacharelado em Ciência da

Computação) – FEEVALE, Novo Hamburgo, 2009.

SIBISI, M; WAVEREN, C. c. van. A process framework for customising software quality

models. 2007. Artigo da Altech UEC Technol.

SODRÉ, C. C. Pelizer. Avaliador: uma ferramenta de apoio à aplicação da norma ISO/IEC 9126

para avaliação da qualidade de produtos de sofware. Estágio obrigatório desenvolvido durante o 4°

ano do Curso de Graduação (Bacharelado em Ciência da Computação) - Universidade Estadual de

Londrina, Londrina, 2006.

SURYN, W.; ABRAN, A. ISO/IEC SQuaRE. The second generation of standarts for software

product quality. 2003. Artigo do Departament of Electrical Engineering, École de Technologie

Supérieure.

VILLELA, K.; TRAVASSOS, G. H.; ROCHA, A. R. C. Definição e construção de ambientes de

desenvolvimento de software orientados a organização. 2004. Artigo da Universidade Federal do

Rio de Janeiro.

VIVEIROS, S. Pereira. Um estudo para a utilização do método QFD na definição de medidas

de qualidade de produtos de software. Dissertação de Mestrado (Ciência da Computação) -

Universidade Federal de Minas Gerais, Belo Horizonte, 2006.

Page 80: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

71

APÊNDICES

Page 81: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

72

APÊNDICE A – DETALHAMENTO DOS CASOS DE USO

Da Tabela 8 à 20 são detalhados os casos de uso, visando um melhor entendimento das

funcionalidades previstas.

Tabela 8. UC01. Login

Descrição UC01. Login

Objetivo

Permitir que o coordenador, fornecedor e avaliadores acessem a ferramenta através de um login e senha previamente cadastrados, com o objetivo de restringir o acesso a determinados módulos e funções do sistema.

Relações RNF05

Pré-condição Usuário com cadastro ativo no sistema

Pós-condição Um usuário logado no sistema

Tabela 9. UC02 Cadastrar Coordenador

Descrição UC02. Cadastrar Coordenador

Objetivo

Permitir o coordenador criar, alterar e consultar seu próprio cadastro no sistema, informando dados necessários para o primeiro login na ferramenta com perfil de coordenador. A partir da criação do cadastro do coordenador, será possível iniciar um processo de avaliação.

Relações RF01

Pós-condição Um coordenador foi cadastrado no sistema

Tabela 10. UC03 Cadastrar Fornecedor

Descrição UC03. Cadastrar Fornecedor

Objetivo Permitir ao coordenador criar, alterar, consultar e excluir dados do fornecedor. Após logado no sistema, o fornecedor terá acesso a consulta e alteração do próprio cadastro.

Relações RF02

Pré-condição Um coordenador ou fornecedor logado no sistema

Pós-condição Um fornecedor foi cadastrado no sistema

Tabela 11. UC04 Cadastrar dados do produto

Descrição UC04. Cadastrar dados do produto

Page 82: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

73

Objetivo

Permitir que o fornecedor e o coordenador cadastrem um produto de software no sistema. Os dois perfis terão acesso a inclusão, exclusão, alteração e consulta ao produto de software.

Relações RF03

Pré-condição Ter um fornecedor ou um coordenador logado no sistema

Pós-condição Um produto foi cadastrado no sistema

Tabela 12. UC05 Definir os requisitos da avaliação

Descrição UC05. Definir os requisitos da avaliação

Objetivo

Permitir acesso ao fornecedor e ao coordenador cadastrar os requisitos da avaliação do produto de software. Ambos os perfis terão acesso a inclusão, exclusão, alteração e consulta aos requisitos da avaliação.

Relações RF05

Pré-condição Ter um fornecedor ou um coordenador logado no sistema

Pós-condição Os requisitos da avaliação foram cadastrados no sistema.

Tabela 13. UC06 Acompanhar avaliação

Descrição UC06. Acompanhar avaliação

Objetivo

Permitir o acompanhamento da avaliação ao coordenador e ao fornecedor. A ferramenta irá apresentar um relatório com o porcentual e dados referente o andamento da avaliação. Os dados serão mostrados na tela totalizando o total de conclusão da avaliação, dividido por avaliadores e total geral geral.

Relações RF06, RF09, RN06

Pré-condição Um plano de avaliação gerado

Protótipo

Tabela 14. UC07 Cadastrar escala

Descrição UC07. Cadastrar escala

Objetivo

Permitir o coordenador cadastrar escalas de avaliação, que serão utilizadas no processo de importação do arquivo para definir o check-list de avaliação. O cadastro das escalas de avaliação serão baseadas no padrão de respostas descrito na lista de verificação do método MEDE-PROS.

Page 83: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

74

Relações RF16

Pré-condição Ter um coordenador logado no sistema

Pós-condição Uma escala foi cadastrada no sistema

Tabela 15. UC08 Definir check-list da avaliação

Descrição UC08. Definir check-list da avaliação

Objetivo

Permitir ao coordenador definir o check-list da avaliação. Para importar um novo check-list, o coordenador deverá editar um template padrão em planilha eletrônica, com formato pré-definido, visando facilitar a criação de check-lists extensos. Após concluir a edição do check-list, o coordenador da avaliação irá utilizar a funcionalidade “importar check-list” para carregar as dados para o sistema. O arquivo de planilha eletronica deverá ser salvo em formato de texto separado por tabulação. Caso coordenador deseje extrair um check-list existente na base de dados, poderá utilizar a funcionalidade exportar check-list. Nesta atividade a importação poderá ser feita de três maneiras diferentes: importar um novo check-list; adotar um check-list já cadastrado; ou editar um já existente.

Relações RF07, RF07.01, RF07.02, RF15, RNF06, RN07

Pré-condição Requisitos do produto de software gerado

Pós-condição Check-list de avaliação criado

Cenário Principal

Importar e gerar check-list

1. O coordenador seleciona a opção "importar check-list";

2. A ferramenta solicita o arquivo para importação;

3. O coordenador localiza e seleciona o arquivo para importar;

4. A ferramenta exibe a mensagem "Confirma importação do check-list?"

5. O coordenador confirma a importação;

6. O arquivo é importado para a ferramenta;

7. A ferramenta exibe a mensagem "Importação realizada com sucesso"

8. A ferramenta exibe o check-list importado

9. O coordenador seleciona a opção “gerar check-list”

10. A ferramenta apresenta a mensagem “Check-list gerado com sucesso”

Cenário Alternativo 01

Definir check-list existente

1. O coordenador seleciona a opção "Selecionar check-list existente"

Page 84: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

75

2. A ferramenta apresenta a lista de check-list cadastrados no banco de dados

3. O coordenador seleciona o check-list desejado

4. A ferramenta exibe a mensagem "Confirma seleção do check-list?"

5. O coordenador confirma a seleção

6. A ferramenta exibe a mensagem "Seleção realizada com sucesso"

7. A ferramenta exibe o check-list selecionado

Cenário Alternativo 02

Exportar check-list existente no banco de dados

1. O coordenador seleciona a opção “Exportar check-list”

2. O sistema apresenta uma lista de check-list existentes no banco de dados

3. O coordenador seleciona o check-list desejado

4. A ferramenta abre a caixa de seleção do caminho de diretório onde será salvo o arquivo

5. O coordenador define o caminho e seleciona a opção “abrir”

6. O coordenador seleciona a opção “Exportar”

7. A ferramenta apresenta a mensagem “Confirma a exportação do check-list?”

8. O coordenador confirma a exportação

9. A ferramenta exibe a mensagem “Arquivo exportado com sucesso”

Cenário Exceção

Erro ao importar/exportar o arquivo

Se no passo 4 do cenário principal ocorrer algum erro:

4.1. o sistema apresenta a mensagem de erro: "Erro ao importar, verifique o layout do arquivo selecionado";

4.2. O sistema cancela a importação e volta para o passo 2;

Se no passo 4 do cenário alternativo 01, ocorrer algum erro:

4.1. O sistema apresenta a mensagem de erro: "Erro: arquivo não importado".

4.2. O sistema cancela a importação e volta para o passo 2;

Se no passo 5 do cenário principal, alternativo 01 o fornecedor cancelar a importação ou seleção do arquivo:

5.1. O sistema cancela a importação e volta para o passo 2;

Se no passo 7 do cenário alternativo 02, o coordenador não confirmar a exportação do arquivo:

Page 85: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

76

7.2. O Sistema cancela a exportação e retorna ao passo 2.

Se no cenário 9 do cenário alternativo 02, ocorrer algum erro na exportação:

9.1. O sistema apresenta a mensagem “Erro: arquivo não exportado”;

9.2. O sistema volta ao passo 2.

Tabela 16. UC09 Cadastrar avaliador

Descrição UC09. Cadastrar Avaliador

Objetivo Permitir ao coordenador incluir, alterar, excluir e consultar o cadastro dos avaliadores. Os avaliadores terão acesso somente a visualização de seu próprio cadastro.

Relações RF04

Pré-condição Um coordenador logado no sistema

Pós-condição Um avaliador foi cadastrado no sistema

Tabela 17. UC10 Gerar plano da avaliação

Descrição UC10. Gerar plano da avaliação

Objetivo Permitir o coordenador gerar o plano de avaliação do produto de software, permitindo o início da execução da avaliação pelos avaliadores.

Relações RF08

Pré-condição Check-list gerado

Ter um um coordenador logado no sistema

Pós-condição Plano de avaliação criado e avaliação disponível para o avaliador

Tabela 18. UC11 Avaliar o produto

Descrição UC11. Avaliar o produto

Objetivo

Permitir os avaliadores executarem o a avaliação através do check-list de perguntas definido pelo coordenador. Os avaliadores terão acesso a alteração das respostas, o coordenador acesso apenas a visualização e o fornecedor terá acesso restrito as informações geradas por este caso de uso.

Relações RF10, RN01

Pré-condição

Questionário para os avaliadores criado

Ter um avaliador logado no sistema

Page 86: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

77

Pós-condição

Resultado parcial criado

Cenário principal

Avaliar o produto

1. O avaliador seleciona a opção “Avaliar produto de software”.

2. O sistema apresenta o check-list de perguntas

3. O avaliador responde as perguntas

4. O avaliador seleciona a opção concluir avaliação

5. O sistema apresenta a mensagem: “Avaliação concluída com sucesso”

Cenário exceção

Erros

Se no passo 4 existir uma ou mais perguntas pendentes de resposta:

6.1. O sistema apresenta a mensagem de erro: “Para concluir a avaliação é necessário que todas as perguntas sejam respondidas”.

6.2. O sistema retorna ao passo 2

Tabela 19. UC12 Gerar o relatório parcial

Descrição UC12. Gerar o relatório parcial

Objetivo

Permitir aos avaliadores efetuar a consolidação dos resultados obtidos através da execução do check-list, obtendo uma única resposta para cada pergunta. O acesso para gerar o relatório parcial será exclusivamente dos avaliadores, sendo que o cordenador e fornecedor não terão acesso a esta função.

Relações RF11, RN02, RN06

Pré-condição Avaliação concluída por todos os avaliadores

Ter um avaliador logado no sistema

Pós-condição Relatório parcial gerado

Cenário Principal

Gerar relatório parcial

1. O avaliador seleciona a opção “Gerar relatório parcial”.

2. O sistema apresenta os resultados parciais

3. Os avaliadores definem e selecionam uma única resposta para as perguntas

4. O avaliador seleciona a opção “Concluir geração do relatório parcial”

5. O sistema apresenta a mensagem “Relatório parcial gerado com sucesso”

Page 87: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

78

Cenário exceção

Erros

Se no passo 4 existir uma ou mais perguntas que não foram consolidadas:

1. O sistema apresenta a mensagem de erro: “Para concluir o relatório parcial, todas as respostas devem estar consolidadas”

Se no passo 1 o relatório parcial já estiver sido disponibilizado ao coordenador:

1. O sistema apresenta a mensagem de erro: “Relatório parcial da avaliação já concluído e disponibilizado ao coordenador, não é possível alterar”.

Tabela 20. UC13 Gerar o relatório final

Descrição UC13. Gerar o relatório final

Objetivo

Permitir que o coordenador gere o relatório final com base no relatório parcial gerado pelos avaliadores e que o fornecedor visualize o realtório final. Somente o coordenador da avaliação terá acesso para gerar o relatório final. Uma vez gerado o relatório final, o fornecedor terá acesso para visualização do mesmo. A geração do relatório final consiste em avaliar o relatório parcial e, de acordo com os critérios do coordenador da avaliação, será encaminhado ou não para o fornecedor do produto de software. Neste caso de uso o coordenador irá avaliar se os resultados estão de acordo com os requisitos da avaliação, definidos na primeira etapa do processo e se o resultados estão condizentes com o plano de avaliação.

Relações RF12 , RF13, RN03, RN05, RN08

Pré-condição Relatório parcial gerado

Ter um coordenador logado no sistema

Pós-condição Relatório final gerado

Page 88: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

79

APÊNDICE B – DICIONÁRIO DE DADOS DO MODELO ER

Para melhor entendimento de como será a estrutura do banco de dados, a Tabela 21

apresenta o dicionário de dados do modelo entidade relacionamento do banco de dados.

Tabela 21. Dicionário de dados do modelo ER

avaliador

Atributo Tipo Tamanho Descrição

idavaliador INT chave primária

nome_aval VARCHAR 45 nome

login_aval VARCHAR 15 login

senha_aval VARCHAR 15 senha

sex_aval INT sexo

email_aval VARCHAR 45 email

tel_aval VARCHAR 20 telefone

ender_aval VARCHAR 60 endereço

cidade_aval VARCHAR 45 cidade

uf_aval VARCHAR 20 estado

cep_aval VARCHAR 9 cep

avalplan

Atributo Tipo Tamanho Descrição

idavaliador INT cheve estrageira com a tabela avaliador

idplano INT chave estrangeira com a tabela plano

check_categoria

Atributo Tipo Tamanho Descrição

idcheck_categoria INT chave primária

idcheck_subcategoria INT chave da sub-categoria

idchecklist INT chave estrangeira com tabela checklist

desc_categoria VARCHAR 45 descrição da categoria

checklist

Atributo Tipo Tamanho Descrição

idchecklist INT chave primária

nome_checklist VACHAR 45 nome do check-list

consolidacao

Atributo Tipo Tamanho Descrição

idconsolidacao INT chave primária

idcheck_categoria INT chave estrangeira com a tabela check_categoria

positivo_categoria VARCHAR 255 comentário positivo da categoria avaliada

negativo_categoria VARCHAR 255 comentário negativo da categoria avaliada

obs_categoria VARCHAR 255 observação da categoria

Page 89: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

80

anexo_cagegoria BLOB anexo da categoria

idplano INT chave estrangeira com a tabela plano

coordenador

Atributo Tipo Tamanho Descrição

idcoordenador INT chave primária

nome_coord VARCHAR 45 nome

login_coord VARCHAR 15 login

senha_coord VARCHAR 45 senha

sex_coord INT sexo

email_coord VARCHAR 45 email

tel_coord VARCHAR 20 telefone

ender_coord VARCHAR 60 endereço

cidade_coord VARCHAR 45 cidade

uf_coord VARCHAR 20 estado

cep_coord VARCHAR 9 cep

escala

Atributo Tipo Tamanho Descrição

idescala INT chave primária

chave_escala VARCHAR 2 chave que indica a escala

ind_escala VARCHAR 45 indicação

desc_escala VARCHAR 45 descrição

fornecedor

Atributo Tipo Tamanho Descrição

idfornecedor INT chave primária

nome_for VARCHAR 45 nome

resp_for VARCHAR 45 reponsável

login_for VARCHAR 15 login

senha_for VARCHAR 15 senha

sex_for INT sexo

email_for VARCHAR 45 email

tel_for VARCHAR 20 telefone

ender_for VARCHAR 60 endereço

cidade_fr VARCHAR 45 cidade

uf_for VARCHAR 20 estado

cep_for VARCHAR 9 cep

grupo_resposta

Atributo Tipo Tamanho Descrição

idquestao INT chave estrangeira com a tabela questao

idescala INT chave estrangeira com a tabela escala

plano

Atributo Tipo Tamanho Descrição

idplano INT chave primária

Page 90: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

81

idchecklist INT chave estrangeira com a tabela chacklist

idcoordenador INT chave estrangeira com a tabela coordenador

dt_inicio DATE data início

dt_fim DATE data fim

produto

Atributo Tipo Tamanho Descrição

idproduto INT chave primária

idfornecedor INT chave estrangeira com a tabela fornecedor

idplano INT chave estrangeira com a tabela plano

nome_prod VARCHAR 45 nome do produto

ver_prod VARCHAR 45 versão do produto

desc_prd VARCHAR 45 descrição do produto

desc_prod_anexo BLOB anexo da descrição do produto

req_hard_prod VARCHAR 45 requisitos de hardware

req_soft_prod VARCHAR 45 requisitos de software

docusr_prod VARCHAR 45 documentação do usuário

docusr_prod_anexo BLOB anexo da documentação do usuário

interface_prod INT interface com outros software

soft_inter_prod VARCHAR 45 software de interface

proposito_prod VARCHAR 255 proposito da avaliação

escopo_prod VARCHAR 255 escopo da avaliação

requisito_prod VARCHAR 255 requisito da avaliação

questao

Atributo Tipo Tamanho Descrição

idquestao INT chave primária

idcheck_categoria INT chave estrangeira com a tabela check_categoria

desc_questao VARCHAR 45 descrição da questão

resposta

Atributo Tipo Tamanho Descrição

idresposta INT chave primária

questao_idquestao INT chave estrangeira da tabela questao

avalplan_idavalplan INT chave estrangeira da tabela plano

reposta_avaliador VARCHAR 2 respota do avaliador

resposta_consolidacao VARCHAR 2 resposta da consolidação

anexo_resposta BLOB anexo da resposta

comentario_resposta VARCHAR 255 comentário da resposta

Page 91: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

82

APÊNDICE C – TELAS DO SISTEMA

Algumas telas do sistemas foram adcionadas ao apêndice por serrem consideradas menos

relevantes ao texto explicativo das telas.

Figura 32. Gerenciar Coordenador

Figura 33. Cadastro de avaliador

Page 92: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

83

Figura 34. Cadastro de fornecedor

Figura 35. Gerenciar check-list

Page 93: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

84

Figura 36. Acompanhar avaliação

Page 94: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

85

APÊNDICE D – MODELO E LAYOUT DO CHECKLIST DE

AVALIAÇÃO PARA IMPORTAÇÃO

A figura 36 demonstra o modelo e layout de importação do arquivo de texto para a base de

dados da ferramenta de apoio. A primeira coluna representa a numeração sequencial dos

componentes, atributos e questões do checklist. A segunda coluna representa a descrição e a terceira

coluna identifica a chave da escala atribuída a questão, é com esta coluna que serão definidas as

possibilidades de respostas aos avaliadores ao executar a avaliação.

Figura 37. Modelo e layout do checklist de avaliação

Page 95: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

86

APÊNDICE E – CHECKLIST DE AVALIAÇÃO DO PRODUTO DE

SOFTWARE OLQR – ONLINE QUICK REPORT

O checklist de avaliação que consta neste apêndice foi utilizado para avaliação do produto de

software OLQR – Online Quick Report.

1 - Interface

1.1 - Aplicabilidade

1.1.1 - A interface orienta o usuário nos passos a serem executados para a realização de uma

determinada tarefa?

( ) Muitos ( ) Poucos ( ) Nenhum

1.2 - Aspectos visuais

1.2.1 - As telas apresentam somente informações necessárias e utilizáveis, sensíveis ao

contexto?

( ) Muitos ( ) Poucos ( ) Nenhum

1.2.2 - As telas apresentam contrastes e cores, facilitando a leitura?

( ) Muitos ( ) Poucos ( ) Nenhum

1.2.3 - As telas exibem as mensagens com bom aspecto visual, utilizando, com moderação,

negrito, itálico e sublinhado?

1.3 - Funcionalidade

1.3.1 - A interface mantém uma padronização propria em relação a configuração de janelas?

( ) Sim ( ) Não

1.3.2 - A interface mantem uma padronização própria em relação a formatação de ícones?

( ) Sim ( ) Não

1.4 - Usabilidade

1.4.1 - A interface apresenta erros gramaticais?

( ) Sim ( ) Não

1.4.2 - A interface apresenta erros ortográficos?

( ) Sim ( ) Não

2 - Software

2.1 - Acurácia

2.1.1 - As funções verificadas no software estão todas implementadas corretamente?

( ) Todos ( ) Alguns ( ) Nenhum

2.1.2 - As funções verificadas no software geram resultados corretos ou conforme o

esperado?

( ) Todos ( ) Alguns ( ) Nenhum

2.2 - Segurança de acesso

2.2.1 - O software impede a utilização de funções não autorizadas?

( ) Sim ( ) Não

2.3 - Ocorrência a falhas

2.3.1 - O software apresentou falhas durante a execução ?

( ) Sim ( ) Não

Page 96: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

87

APÊNDICE F – QUESTIONÁRIO DE AVALIAÇÃO DA

FERRAMENTA DE APOIO PARA OS AVALIADORES

QUESTIONÁRIO DE AVALIAÇÃO DE SOFTWARE

data __/__/____

01 Não concordo veemente

02 Não concordo

03 Indiferente

04 Concordo

05 Concordo veemente

1. As funcionalidades do software estão apresentadas de forma clara e de fácil entendimento.

01 02 03 04 05

2. As funcionalidades do software são suficientes e adequadas.

01 02 03 04 05

3. A performance do software é satisfatória.

01 02 03 04 05

4. Os ícones e botões estão dispostos adequadamente na tela, isto é, facilitam a utilização do

software.

01 02 03 04 05

5. Faça um comentário geral sobre o software apresentando critícas e/ou sugestões.

________________________________________________________________________________

________________________________________________________________________________

________________________________________________________________________________

________________________________________________________________________________

________________________________________________________________________________

________________________________________________________________________________

________________________________________________________________________________

________________________________________________________________________________

________________________________________________________________________________

Page 97: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

88

APÊNDICE G – RELATÓRIO FINAL DE AVALIAÇÃO DO

PRODUTO DE SOFTWARE OLQR

Page 98: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

89

Page 99: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

90

Page 100: Área de Engenharia de Software por Eduardo Vieira Fabiane ...siaibib01.univali.br/pdf/Eduardo Vieira1.pdf · assegurar que necessidades explícitas e implícitas façam parte do

91