Charles Everton Oliveira Gomes

RASTREABILIDADE ENTRE ARTEFATOS HETEROGÊNEOS DE
SOFTWARE - UM MAPEAMENTO SISTEMÁTICO

Dissertação de Mestrado

Universidade Federal de Pernambuco
posgraduacao@cin.ufpe.br
www.cin.ufpe.br/~posgraduacao

RECIFE
2016

Universidade Federal de Pernambuco
Centro de Informática
Pós-graduação em Ciência da Computação

Charles Everton Oliveira Gomes

RASTREABILIDADE ENTRE ARTEFATOS HETEROGÊNEOS DE
SOFTWARE - UM MAPEAMENTO SISTEMÁTICO

Trabalho apresentado ao Programa de Pós-graduação em
Ciência da Computação do Centro de Informática da Universidade Federal de Pernambuco como requisito parcial para
obtenção do grau de Mestre em Ciência da Computação.

Orientador: Vinicius Cardoso Garcia

RECIFE
2016

Eu dedico essa dissertação aos meus pais Claudio Muniz
e Maria Ednilda, ao meu tio Clóvis Gomes, à minha esposa
Renata Conegundes e aos meus filhos Vitor Robemar e
Annanda Letícia, que me deram o incentivo e o suporte
necessário para chegar até aqui.

Agradecimentos
Em primeiro lugar, gostaria de manifestar a minha gratidão aos meus protetores que
de forma concreta zelaram e garantiram meu estado de consciência, sabedoria, segurança e
saúde mental e fisica, não deixando faltar as condições necessárias para a conclusão de mais
esta importante etapa em minha vida.
A Renata Conegundes, minha esposa, pela paciência, compreensão e suporte nos
momentos mais decisivos desta caminhada.
Aos meus pequenos guerreiros, Vitor Robemar e Annanda Letícia, por estar sempre
por perto e trazer momentos de descontração nos momentos mais difíceis.
A Claudio Muniz, Maria Ednilda e Clóvis Gomes, membros da família, que me deram
força para que este sonho se tornasse realidade.
Ao meu orientador Vinicius Garcia, obrigado pela oportunidade, confiança, suporte e
parceria durante a caminhada do mestrado.
A todos que não foram mencionados acima, mas contribuíram de maneira direta ou
indireta para a realização e conclusão deste trabalho.

Eu prefiro ser essa metamorfose ambulante, do que ter aquela velha
opinião formada sobre tudo.
-RAUL SEIXAS

Resumo
Contexto: Rastreabilidade de artefatos de software tem sido reconhecida como um
fator importante para apoiar diversas atividades no processo de desenvolvimento de software.
Em geral, o objetivo da rastreabilidade é melhorar a qualidade dos sistemas de software.
Ao longo dos últimos anos, as comunidades de engenharia de software têm desenvolvido
um grande número de abordagens e técnicas para tratar vários aspectos da rastreabilidade.
No entanto, apesar de sua importância e o trabalho resultante de vários anos de pesquisa,
estudos empíricos sobre as necessidades e práticas de rastreabilidade em organizações
industriais indicam que o suporte a rastreabilidade não é sempre satisfatório. Como resultado,
a rastreabilidade é raramente estabelecida nos ambientes industriais existentes, devido a
apresentar características distribuídas e heterogêneas.
Objetivo: Apesar do amplo reconhecimento de sua importância e de numerosos anos
de investigação, até o momento nenhum estudo apresentou uma visão holística dos estudos
empíricos que aplicam a rastreabilidade de software, na indústria ou na academia. Como um
primeiro esforço neste sentido, o objetivo deste estudo é apresentar um roteiro de investigação das práticas relacionadas à rastreabilidade de software entre artefatos heterogêneos e
identificar as questões que ainda estão abertas para novas pesquisas.
Método: Através de um Mapeamento Sistemático da Literatura realizado por um único
pesquisador os relatos de experimentos foram identificados e caracterizados. Cinco questões
de pesquisa foram utilizadas para extrair e sintetizar as evidências encontradas nos estudos
empíricos publicados nas diversas fontes científicas da área.
Resultado: Dos 2488 estudos retornados, 37 foram selecionados por atender aos
critérios de seleção especificados. Após análise, conclui-se que a eficácia das estratégias
de rastreabilidade estabelecidas ainda é muito pontual é pouco eficaz, este fenômeno pode
ser atribuído à dificuldade em automatizar a geração das relações de rastreabilidade com
semânticas claras e precisas. Tipicamente, na maior parte das abordagens existentes, as
relações de rastreabilidade são identificadas de forma automatizada, através da utilização
de técnicas de recuperação de informação estabelecidas sobre um conjunto de artefatos
de software relacionados aos requisitos, análise e projeto, implementação e testes. Em
relação aos principais desafios relatados quanto às práticas estabelecidas foram à confiança e
a escalabilidade das abordagens.
Palavras-chave: rastreabilidade, artefatos, heterogêneo, engenharia de software,
mapeamento sistemático.

Abstract
Context: software artifacts Traceability has been recognized as an important factor
to support various activities in the software development process. In general, the purpose
of tracking is to improve the quality of software systems. Over the past few years, software
engineering of communities have developed a number of approaches and techniques for
treating various aspects of traceability. However, despite its importance and the resulting
work of several years of research, empirical studies on the needs and traceability practices in
industrial organizations indicate that support traceability is not always satisfactory. As a result,
traceability is rarely established in existing industrial environments due to present distributed
and heterogeneous characteristics.
Objective: Despite the widespread recognition of its importance and many years of
research, to date no study has a holistic view of empirical studies that apply to software
traceability, industry or academia. As a first effort in this direction, the objective of this study
is to present a roadmap for research into the practices related to traceability software across
heterogeneous devices and identify the issues that are still open for further research.
Method: Through a Systematic Literature mapping performed by a single researcher,
experiments reports were identified and characterized. Five research questions were used to
extract and synthesize the evidence found in empirical studies published in various scientific
sources the area.
Results: From 2488 returned studies, 37 were selected for meeting the specified
selection criteria. After analysis, it is concluded that the effectiveness of the established
traceability strategies is still very punctual is very effective, this phenomenon can be attributed
to the difficulty in automating the generation of traceability relationships with clear and precise
semantics. Typically, in most existing approaches, the traceability relationships are identified
in an automated manner through the use of established information retrieval technique on
artifacts level requirements, analysis and design, implementation and testing. However, the
main challenges reported when the established practice is, trust and scalability.
Keywords: traceability, artifacts, heterogeneous, software engineering, systematic
mapping.

Lista de Figuras

1.1 Os principais artefatos do Rational Unified Process . . . . . . . . . . . . . . . 15
2.1 Visão Geral do Conjunto de Artefatos . . . . . . . . . . . . . . . . . . . . . . . 19
2.2 Um modelo genérico do processo de rastreabilidade . . . . . . . . . . . . . . . 26
3.1 Ciclo geral da pesquisa de mestrado apresentado em suas etapas e atividades

35

3.2 Processo de Seleção dos Estudos Primários . . . . . . . . . . . . . . . . . . . 40
4.1 Primeira Etapa de Seleção

. . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

4.2 Segunda Etapa de Seleção . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.3 Participação nos níveis de qualidade do quantitativo de estudos candidatos . . 51
4.4 Participação das estratégias de busca no quantitativo de estudos candidatos
identificados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.5 Participação das fontes de busca . . . . . . . . . . . . . . . . . . . . . . . . . 53
4.6 Resumo da busca e seleção de estudos . . . . . . . . . . . . . . . . . . . . . 55
4.7 Distribuição temporal dos estudos selecionados . . . . . . . . . . . . . . . . . 56
4.8 Principais colaboradores e a quantidade de publicações de cada um . . . . . . 57
4.9 Representatividade por tipo de instituição . . . . . . . . . . . . . . . . . . . . . 57
4.10 Participação dos países das instituições na publicação dos estudos selecionados 58
4.11 Distribuição dos estudos por atividade suportada . . . . . . . . . . . . . . . . . 60
4.12 Distribuição dos estudos por natureza da atividade . . . . . . . . . . . . . . . . 61
4.13 Distribuição dos estudos por agrupamento de artefatos . . . . . . . . . . . . . 62
4.14 Distribuição dos estudos por quantidade de categorias dos artefatos envolvidos

64

4.15 Distribuição dos estudos no tempo por técnica aplicada . . . . . . . . . . . . . 66
4.16 Lista de métricas e quantitativo de uso . . . . . . . . . . . . . . . . . . . . . . 67
B.1 Guia das perguntas de qualidade . . . . . . . . . . . . . . . . . . . . . . . . . 102
B.2 Formulário de registro dos valores da avaliação de qualidade . . . . . . . . . . 103
B.3 Formulário de extração dos metadados . . . . . . . . . . . . . . . . . . . . . . 103
B.4 Formulário extração de informações

. . . . . . . . . . . . . . . . . . . . . . . 103

C.1 Resultado da Avaliação de Qualidade dos estudos selecionados . . . . . . . . 105

Lista de Tabelas

3.1 Classificação Geral da Pesquisa

. . . . . . . . . . . . . . . . . . . . . . . . . 32

3.2 Fontes de Busca Manual e Período de Coleta . . . . . . . . . . . . . . . . . . 38
3.3 String de Busca utilizada na pesquisa dos estudos do MS . . . . . . . . . . . . 38
3.4 Lista dos Critérios de Inclusão/Exclusão em ordem alfabética. . . . . . . . . . . 39
3.5 Avaliação de Qualidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
4.1 Quantitativo de estudos candidatos localizados por fonte de dados. . . . . . . . 46
4.2 Quantitativo de estudos incluídos no primeiro estágio de seleção dos estudos . 47
4.3 Valores do teste dos estudos retornados . . . . . . . . . . . . . . . . . . . . . 48
4.4 Quantitativo de estudos excluídos por duplicidade e indisponibilidade . . . . . . 49
4.5 Eficácia das buscas realizadas em cada uma das fontes . . . . . . . . . . . . . 53
4.6 Estudos duplicados entre as fontes de busca . . . . . . . . . . . . . . . . . . . 54
4.7 Mapeamento dos estudos por agrupamento de artefatos

. . . . . . . . . . . . 63

4.8 Meios encontrados para estabelecimento da rastreabilidade . . . . . . . . . . . 64
4.9 Mapeamento dos desafios da aplicação de rastreabilidade entre artefatos heterogêneos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
A.1 Estudos Incluídos em ordem alfabética . . . . . . . . . . . . . . . . . . . . . . 93

Sumário

1 Introdução

14

1.1 Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
1.2 Contribuição . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
1.3 Estrutura da Dissertação

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

2 Referencial Teórico

18

2.1 Artefatos da Engenharia de Software . . . . . . . . . . . . . . . . . . . . . . . 18
2.2 Rastreabilidade de Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
2.2.1 Fundamentos Essenciais . . . . . . . . . . . . . . . . . . . . . . . . . 22
2.2.1.1

Artefatos de Rastreamento

. . . . . . . . . . . . . . . . . . . 22

2.2.1.2

Relação de Rastreabilidade . . . . . . . . . . . . . . . . . . . 23

2.2.1.3

Modalidade de Estabelecimento da Rastreabilidade . . . . . . 23

2.2.1.4

Termos Adicionais . . . . . . . . . . . . . . . . . . . . . . . . 24

2.2.2 Modelo de Processo Genérico . . . . . . . . . . . . . . . . . . . . . . . 24
2.2.3 Tipos de Abordagens da Rastreabilidade . . . . . . . . . . . . . . . . . 26
2.2.4 Abordagens da Rastreabilidade . . . . . . . . . . . . . . . . . . . . . . 27
2.2.4.1

Hipertexto

. . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

2.2.4.2

Eventos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

2.2.4.3

Regras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

2.2.4.4

Cenários . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

2.2.4.5

Recuperação da Informação . . . . . . . . . . . . . . . . . . . 29

2.3 Engenharia de Software Baseado em Evidências

. . . . . . . . . . . . . . . . 30

2.4 Considerações Finais do Capítulo . . . . . . . . . . . . . . . . . . . . . . . . . 31
3 Método

32

3.1 Classificação da Pesquisa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
3.2 Classificação do Estudo Segundo Cooper . . . . . . . . . . . . . . . . . . . . 33
3.3 Ciclo da Pesquisa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34
3.3.1 Etapa de Definição da Pesquisa . . . . . . . . . . . . . . . . . . . . . . 34
3.3.1.1

Revisão Informal da Literatura . . . . . . . . . . . . . . . . . . 34

3.3.1.2

Definição do Tema, Objetivo e Escopo

3.3.1.3

Definição da Metodologia . . . . . . . . . . . . . . . . . . . . 36

. . . . . . . . . . . . . 35

3.3.2 Etapas de Planejamento do Mapeamento Sistemático . . . . . . . . . . 36
3.3.2.1

Definição do Protocolo . . . . . . . . . . . . . . . . . . . . . . 36

3.3.2.1.1

Questões de Pesquisa . . . . . . . . . . . . . . . . . 37

3.3.2.1.2

Estratégia de Busca dos Estudos . . . . . . . . . . . 37

3.3.2.1.3

Estratégia de Seleção dos Estudos . . . . . . . . . . 38

3.3.2.1.4

Avaliação de Qualidade

3.3.2.1.5

Estratégia de Extração . . . . . . . . . . . . . . . . . 42

3.3.2.2

Revisão do Protocolo

3.3.3 Etapa de Execução da Pesquisa

. . . . . . . . . . . . . . . . 41

. . . . . . . . . . . . . . . . . . . . . . 42
. . . . . . . . . . . . . . . . . . . . . 42

3.3.4 Etapa de Divulgação dos Resultados . . . . . . . . . . . . . . . . . . . 43
3.4 Considerações Finais do Capítulo . . . . . . . . . . . . . . . . . . . . . . . . . 43
4 Resultados

44

4.1 Execução do Mapeamento Sistemático . . . . . . . . . . . . . . . . . . . . . . 44
4.1.1 Projeto Piloto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
4.1.2 Busca dos Estudos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45
4.1.3 Seleção dos Estudos Primários . . . . . . . . . . . . . . . . . . . . . . 46
4.1.4 Avaliação de Qualidade . . . . . . . . . . . . . . . . . . . . . . . . . . 50
4.1.5 Extração dos Dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.1.6 Sintetização dos Dados . . . . . . . . . . . . . . . . . . . . . . . . . . 51
4.2 Análise Geral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
4.3 Análises das Evidências . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58
4.3.1 Q1 - Quais abordagens de rastreamento têm sido frequentemente aplicada para suportar a heterogeneidade dos artefatos na engenharia de
software? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
4.3.2 Q2 - Quais os artefatos utilizados para estabelecimento da rastreabilidade? 61
4.3.3 Q3 - Quais meios têm sido empregados para a criação das relações
entre os artefatos?

. . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

4.3.4 Q4 - Quais as métricas aplicadas a rastreabilidade entre artefatos heterogêneos? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
4.3.5 Q5 - Quais os principais contextos, objetivos e desafios da aplicação
de rastrabilidade entre artefatos heterogêneos de software? . . . . . . . 67
4.3.5.1

Contextos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

4.3.5.2

Objetivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

4.3.5.3

Desafios e Limitações . . . . . . . . . . . . . . . . . . . . . . 69

4.4 Discussão dos Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
4.5 Considerações Finais do Capítulo . . . . . . . . . . . . . . . . . . . . . . . . . 74
5 Guidelines de Rastreabilidade Aplicado a Artefatos Heterogêneos

75

5.1 Traçar um propósito. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
5.2 Definir os artefatos e a granularidade adequada de rastreamento.

. . . . . . . 76

5.3 Definir um glossário de termos do projeto. . . . . . . . . . . . . . . . . . . . . 77
5.4 Construir uma hierarquia significativa.

. . . . . . . . . . . . . . . . . . . . . . 77

5.5 Introduzir um método automatizado de rastreamento. . . . . . . . . . . . . . . 78

13
5.6 Combinar técnicas.

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

5.7 Revisão de ligações candidatas.

. . . . . . . . . . . . . . . . . . . . . . . . . 79

6 Considerações Finais

80

6.1 Limitações e Ameaças à Validade . . . . . . . . . . . . . . . . . . . . . . . . . 80
6.2 Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
6.3 Conclusões . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
Referências

84

Apêndice

92

A Estudos Primários Incluídos

93

B Protocolo do Mapeamento Sistemático

97

B.1 Questões de Pesquisa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
B.2 Estratégia de Busca dos Estudos

. . . . . . . . . . . . . . . . . . . . . . . . 98

B.3 Avaliação de Qualidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
B.4 Estratégia de Extração . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
B.5 Processo de Síntese . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
C Resultados da Avaliação de Qualidade

105

14

1
Introdução
A partir da conferência de trabalho NATO realizada em 1968, pioneira para discutir os
problemas da engenharia de software, a rastreabilidade foi reconhecida como fator importante
para garantia que o produto final reflita as decisões a respeito do projeto de software, tomadas
no inicio do projeto (RANDELL, 1968). Rastreabilidade foi posteriormente observada como um
tema de interesse em uma das primeiras pesquisas sobre o estado da arte e as tendências
futuras na engenharia de software (BOEHM, 1976). Na década de 1980, a rastreabilidade
pôde ser encontrada como uma exigência em um grande número de normas nacionais e
internacionais de desenvolvimento de software. Posteriormente, no final de 1990, os estudos
foram impulsionados pelo interesse no resultado de dois artigos incidindo sobre as questões
e os problemas associados com a rastreabilidade RAMESH; EDWARDS (1993) e GOTEL;
FINKELSTEIN (1994), este último, como a primeira análise sistemática dos problemas da
rastreabilidade.
A fim de superar os desafios significativos na criação, manutenção e utilização da rastreabilidade, ao longo dos últimos 20 anos, a comunidade científica tem apresentado ativamente
pesquisas sobre as questões de rastreabilidade, através da exploração de temas relacionados com a automatização do processo de rastreabilidade (LUCIA; PENTA; OLIVETO, 2011;
GRECHANIK; MCKINLEY; PERRY, 2007; KAGDI; MALETIC; SHARIF, 2007; MARCUS; MALETIC, 2003), o desenvolvimento de estratégias para o custo-benefício da rastreabilidade
(EGYED et al., 2005, 2007), apoio a evolução e manutenção dos vínculos de rastreabilidade
(POSHYVANYK, 2009; MADER; GOTEL; PHILIPPOW, 2009a), visualização das ligações de
rastreabilidade (LI; MAALEJ, 2012; CHEN; HOSKING; GRUNDY, 2012; MADER; CLELANDHUANG, 2013), e desenvolver práticas de rastreabilidade que se aplicam a uma vasta gama
de domínios, como as linhas de produtos (SANTOS; ALMEIDA; L. MEIRA, 2012), aplicações
críticas de segurança (CLELAND-HUANG et al., 2012), desenvolvimento orientado a aspectos (SARDINHA et al., 2012), Model-Driven Development (GALVAO; GOKNIL, 2007) e processo
ágil de software (ESPINOZA; GARBAJOSA, 2011).
Enquanto a rastreabilidade é reconhecida como um fator crítico de sucesso em desenvolvimento de software (DOMGES; POHL, 1998), a falta da rastreabilidade de software eficaz

15
(HAYES; DEKHTYAR; SUNDARAM, 2006) continua a ser um problema perene nos projetos
da indústria (REMPEL; MADER; KUSCHKE, 2013). O grande número de artefatos produzidos
em um projeto, os diferentes níveis de formalidade e especificidade entre vários tipos de
artefatos, e as inter-relações complexas entre artefatos (ANDERSON; SHERBA; LEPTHIEN,
2002; ALEXANDER, 2002) formam o coração do problema da rastreabilidade. GOTEL et al.
(2012) juntamente com pesquisadores de rastreabilidade e profissionais dentro do Centro de
Excelência para Rastreabilidade de Software (COEST) lançaram o “The Grand Challenge of
Traceability ”, um relatório técnico que oferece uma visão para a rastreabilidade em software
e engenharia de sistemas que descreve oito desafios que precisam ser abordadas a fim de
alcançá-lo. A rastreabilidade onipresente é considerada o grande desafio da rastreabilidade, e
exige progressos com todos os sete outros desafios. A heterogeneidade dos formatos, a falta
de estrutura dos artefatos e a inconsistência na terminologia estão relacionados aos desafios
de torna a rastreabilidade configurável e escalável. Na Figura 1.1 pode ser visto um exemplo da
heterogeneidade dos artefatos e o fluxo de informação entre eles.

[H]

Figura 1.1: Os principais artefatos do Rational Unified Process

A literatura sobre rastreabilidade de software oferece um grande número de estudos, entre eles, alguns desenvolvidos a fim de reunir e avaliar as evidências disponíveis na
área. SPANOUDAKIS; ZISMAN (2004) apresentam um roteiro para o estado da arte e da
prática dos requisitos de rastreabilidade, discutem os principais avanços científicos e tecnológicos nesta área, apresentam as possíveis formas de estabelecer rastreabilidade que estão

1.1. OBJETIVOS

16

disponíveis pela tecnologia, e identificam questões que requerem mais pesquisas neste campo.
Em (TORKAR et al., 2012) os autores examinam a definição de requisitos de rastreabilidade,
desafios, ferramentas e técnicas, através da realização de uma revisão sistemática dos anos
1997 a 2007. Com foco na rastreabilidade de requisitos, a revisão realizada considera estudos
que não apresentam evidências empíricas e complementam os resultados e análise com uma
validação estática na indústria através de uma série de entrevistas. Em (BORG; RUNESON;
ARDO, 2014) os autores conduziram um mapeamento sistemático que agrupa as publicações
sobre a recuperação de rastreamento baseados em IR, onde foram considerados estudos
publicados até 2012. No entanto, apenas foram incluídas publicações que utilizam texto em
linguagem natural como entrada.

1.1

Objetivos
Apesar de vários autores apontarem soluções relacionadas à rastreabilidade de soft-

ware, até o momento nenhum estudo apresentou uma visão holística dos estudos empíricos
existentes. Motivado pela necessidade de se produzir melhores evidências, e como um primeiro
esforço neste sentido, o presente trabalho se propõe a:
Identificar os experimentos, classificá-los através de guias existentes na literatura, e de maneira sistemática analisar as abordagens, técnicas, os artefatos, os desafios e os contextos utilizados na aplicação da rastreabilidade entre artefatos heterogêneos na engenharia de software.
Deste modo, será conduzido um estudo de mapeamento sistemático, executado por
um único pesquisador, a fim de consolidar e categorizar as evidências produzidas através
dos estudos empíricos publicados na área. Escolheu-se a rastreabilidade pois essa é uma
das características mais marcantes no suporte as mudanças constantes dos processos na
engenharia de software, mais mudança significa uma maior necessidade de apoio da rastreabilidade. Qualquer projeto de desenvolvimento de software envolve muitas informações, que estão
representadas em grande parte em artefatos heterogêneos. Entende-se por artefato heterogêneo, todo e qualquer documento utilizado para registrar informações que apresenta diferença
quanto a estrutura, formato, terminologia, granularidade e partes interessadas. Focar-se em
artefatos heterogêneos foi necessário pois não era possível, por limitações de tempo e espaço,
abranger experimentos de toda e qualquer relação de rastreamento na engenharia de software.
Além disso, focar-se em artefatos heterogêneos, embora reduzindo a quantidade de estudos
primários avaliados, mantém a representatividade do conjunto de estudos selecionados em
relação à área como um todo, tanto em número, quanto em relação à área de investigação dos
estudos primários, já que a rastreabilidade de artefatos é uma característica bastante abordada
na engenharia de software.

1.2. CONTRIBUIÇÃO

1.2

17

Contribuição
Para pesquisadores e profissionais é importante entender qual o estado atual da prática

dos relatos de experimentos em rastreabilidade de software e se as evidências apresentadas
por eles podem ser interpretadas corretamente. A rastreabilidade de software quando bem
aplicada tem sido reconhecida como um fator importante para qualquer fase de desenvolvimento ou manutenção de um software, pois contribui para produtividade, assertividade das
tarefas e para a qualidade do produto final.

1.3

Estrutura da Dissertação
Além deste capítulo introdutório a presente dissertação está organizada de acordo com

a seguinte estrutura: 

Capítulo 2 (Referencial Teórico): este capítulo trata de toda a fundamentação teórica
para o entendimento do trabalho. Primeiramente é apresentada uma visão dos
Artefatos da Engenharia de Software. Em seguida a Rastreabilidade de Software
é abordada em relação a sua definição, corpo de conhecimento e tendências de
pesquisas. Na sequência a Engenharia de Software Baseada em Evidências é
discutida em sua definição, métodos e aplicação na pesquisa. 

Capítulo 3 (Metodologia): o capítulo apresenta toda a abordagem metodológica
e os métodos empregados na pesquisa. São discutidos aspectos relacionados à
classificação, ciclo da pesquisa, a utilização do método de pesquisa de Mapeamento
Sistemático da Literatura e as peculiaridades de sua instanciação. 

Capítulo 4 (Execução e Resultados): o capítulo apresenta e discute os resultados
obtidos nesta pesquisa por meio de uma análise geral dos estudos selecionados.
As perguntas de pesquisas são respondidas e os principais achados são discutidos. 

Capítulo 5 (Guidelines de Rastreabilidade Aplicado a Artefatos Heterogêneos):
este capítulo lista um conjunto de boas práticas para aplicação da rastreabilidade
sobre artefatos heterogêneos, que envolvem a criação de um ambiente favorável,
a estruturação e o conteúdo dos artefatos, e meios de buscar a eficiência das
atividades e a eficácia dos objetivos. 

Capítulo 6 (Considerações Finais): são apresentadas as ameaças à validade da
pesquisa e respectivas mitigações. Apresenta as perspectivas de trabalhos futuros
para que a comunidade possa dar prosseguimento à pesquisa. E por fim as
conclusões são enunciadas.

18

2
Referencial Teórico
Neste capítulo, são apresentados os principais conceitos e estudos utilizados como
base para a presente pesquisa. Deste modo, através de três seções, os conceitos centrais
sobre rastreabilidade de software e seus desdobramentos serão explanados. A primeira seção
aborda uma visão dos artefatos do processo de desenvolvimento de software. A segunda
seção expõe os conceitos da Rastreabilidade de Software, suas atividades e aplicações. A
terceira aborda a Engenharia de Software Baseado em Evidências.

2.1

Artefatos da Engenharia de Software
A engenharia de software é definida como a aplicação de uma abordagem de desenvol-

vimento sistêmica, disciplinada e quantificável para o desenvolvimento, operação e manutenção
de software (IEEE STD 24765, 2010). Os fundamentos científicos para a engenharia de software envolvem o uso de modelos abstratos e precisos, os quais estabelecem uma estrutura
para os métodos e processos que permite ao engenheiro desenvolver, manter, operar e avaliar
a qualidade do software (IEEE STD 12207, 2008). Um processo de engenharia consiste em um
conjunto de atividades inter-relacionadas que transformam uma ou mais entradas em saídas,
enquanto consome recursos para realizar a transformação (SOMMERVILLE, 2010). Aplicado
à engenharia de software, essa definição inclui a especificação de funções e competências,
suporte tecnológico, técnicas e ferramentas de engenharia de software e ambiente de trabalho necessário para realizar o processo, bem como as abordagens e medidas usadas para
determinar a eficiência e eficácia da execução do processo (SWEBOK, 2014).
O desenvolvimento de software envolve tipicamente o uso, a criação e modificação
de muitos produtos de trabalho, tais como documentos de planejamento, especificações de
processo, requisitos de software, diagramas, modelos, códigos, casos de teste manuais e
automatizados, relatórios, arquivos e dados. O termo produto de trabalho (SWEBOK, 2014) é
atribuído a qualquer artefato (KRUCHTEN, 2003) que é o resultado de um processo utilizado
para criar o produto final de software. Estes produtos de trabalho podem estar associados
através de várias relações de dependência devido ao processo estabelecido entre as diversas

2.1. ARTEFATOS DA ENGENHARIA DE SOFTWARE

19

áreas de conhecimento de ciclo de vida do software.
Projetos de software focados no desenvolvimento sequencial de artefatos seguem
estágios distintos e bem definidos da especificação dos requisitos aos testes de software e
manutenção do sistema. Este modelo pode atender projetos específicos, onde as evoluções
dos produtos de trabalho estão estreitamente alinhadas. No entanto, esta abordagem não
funciona muito bem para boa parte dos sistemas de software atuais, em que a complexidade
do sistema resulta em inúmeros riscos e relacionamentos em várias dimensões. Onde uma
transformação sequencial simplista não pode ser usada de forma eficiente (ROYCE, 1998),
onde seus componentes estão inseridos numa rede heterogênea de plataformas distribuídas.
Sistemas complexos exigem uma sequência muito diferente da evolução dos artefatos e uma
abordagem muito diferente para sua análise e compreensão à medida que aumentam suas
relações, pois se torna mais difícil de entender seu comportamento e propriedades, assim
como sua previsibilidade (SOMMERVILLE et al., 2012).
Para realização do desenvolvimento de um software gerenciável, coleções distintas de
informações estão organizadas em artefatos. Cada artefato ou conjunto destes, representam
a visão de um sistema a partir de uma determinada perspectiva e são persistidos em um
formato de representação uniforme. Segundo ROYCE (1998), os artefatos do ciclo de vida do
software estão organizados em cinco conjuntos distintos, que são particionado pela linguagem
subjacente que os une. O conjunto deste artefatos é mostrado na Figura 2.1 e seus propósitos
e notações são descritas a seguir.

[H]

Figura 2.1: Visão Geral do Conjunto de Artefatos

1. Gestão: O conjunto de gestão captura os artefatos associados com o planejamento e execução do processo. Esses artefatos usam notações ad hoc, incluindo
texto, gráficos, ou qualquer que seja a representação necessária para capturar os
“contratos” entre o pessoal do projeto e as partes interessadas.

2.1. ARTEFATOS DA ENGENHARIA DE SOFTWARE

20

2. Requisitos: Neste conjunto o texto estruturado é usado para a declaração da visão,
que documenta o escopo do projeto e suporta o contrato entre a entidade financiadora e a equipe do projeto. Formatos ad hoc também podem ser usados para
obter as especificações complementares (tais como requisitos regulamentares) e
protótipos de interface. Notação UML é utilizada para representação de modelos
da engenharia de requisitos (modelos de caso de uso, modelos de domínio).
3. Projeto: O conjunto de projeto contém vários níveis de abstração que representam
os componentes no espaço da solução (suas entidades, atributos, relações estáticas, interações dinâmicas). Os modelos de design incluem informações estruturais
e comportamentais da solução e a descrição de arquitetura do software. Em cenários específicos, a modelagem dos testes é realizada e os casos de testes de
integração são desenvolvidos.
4. Implementação: O conjunto de implementação inclui o código fonte (notações
de linguagem de programação) que representam as implementações tangíveis
de componentes (sua forma, interface e relações de dependência) e quaisquer
arquivos executáveis necessários para o teste independente de componentes.
Neste conjunto inclui-se também os procedimentos de testes do sistema e os
scripts de execução dos testes automatizados.
5. Implantação: O conjunto de implantação inclui as entregas de usuário em notações
de linguagem de máquina, ou seja, software executável, além dos arquivos de instalação e dados específicos necessários para usar o produto em seu ambiente destino
(manual de usuário).
O desenvolvimento de software envolve tipicamente o uso, a criação e modificação de
muitos produtos de trabalho durante o desenvolvimento, gestão, manutenção e/ou evolução
do software. Cada conjunto de artefatos é o foco do desenvolvimento predominante de
uma fase do ciclo de vida, e oferecem insumos para o avanço e desenvolvimento de outras
atividades subsequentes. Ou seja, com o avanço do desenvolvimento, cada uma das áreas
de conhecimento evolui de forma mais detalhada, e na sua conclusão todas as áreas devem
estar completamente elaboradas e consistentes umas com as outras. Mas para isso, é preciso
mapear e controlar estes relacionamentos. Com o propósito de identificar a configuração
de um sistema em pontos distintos no tempo e controlar sistematicamente alterações dos
artefatos de software, o gerenciamento da configuração é a disciplina responsável por garantir
a integridade e possibilitar a rastreabilidade da configuração ao longo do ciclo de vida do
sistema (SWEBOK, 2014). Os conceitos de gerenciamento de configuração aplicam-se a todos
os itens de configuração a serem controlados e está intimamente relacionada com a atividade
de garantia da qualidade do software (Carnegie Mellon University, 2010).

2.2. RASTREABILIDADE DE SOFTWARE

2.2

21

Rastreabilidade de Software
A rastreabilidade tem sido identificada na literatura como um fator de qualidade, uma

característica que o software deve possuir e incluir como requisito não-funcional (ROETZHEIM,
1991). Segundo IEEE STD 24765 (2010) rastreabilidade é o grau em que uma relação pode
ser estabelecida entre dois ou mais produtos do processo de desenvolvimento, especialmente produtos com um predecessor e sucessor ou mestre-subordinado relacionando um
ao outro. EDWARDS; HOWELL (1991) definem a rastreabilidade como uma técnica usada
para fornecer uma relação entre os requisitos, o design e a implementação final do sistema.
Para SPANOUDAKIS; ZISMAN (2004) rastreabilidade é a capacidade de relacionar artefatos
criados durante o desenvolvimento de um sistema de software, e assim descrever o sistema a
partir de diferentes perspectivas e níveis de abstração, envolvendo os atores que têm contribuído para a criação dos artefatos, bem como a lógica que explica a forma dos artefatos. Uma
definição recente empregada a rastreabilidade é a capacidade de criar, manter e utilizar rastros
estabelecidos entre os artefatos ou elementos que a compõe. Os quais devem ser adquiridos,
representados, armazenados, e posteriormente recuperados para permitir o uso nas atividades
e tarefas da engenharia de software (HUANG; GOTEL; ZISMAN, 2014).
A importância da rastreabilidade é bem compreendida na comunidade de engenharia
de software e adotada em inúmeros padrões de desenvolvimento de software (IEEE STD
12207, 2008; IEEE STD 29148, 2011; IEEE STD 828, 2012). As indústrias são muitas vezes
obrigadas a implementar práticas de rastreabilidade por regulamentações governamentais, por
exemplo, nos Estados Unidos a Food and Drug Administration (FDA)1 afirma que a análise
da rastreabilidade deve ser utilizada para verificar se um projeto de software implementa
todos os requisitos especificados, e que todos os aspectos do design, código e teste são
rastreáveis para os requisitos de software. Outros exemplos encontrados são: a Federal
Aviation Administration (FAA)2 , que afirma que os desenvolvedores de software precisam ter
maneiras de demonstrar a rastreabilidade entre design e requisitos, e as normas Capability
Maturity Model Integration (CMMI)3 e Melhoria de Processo do Software Brasileiro (MPS-BR)4 ,
que exigem práticas de rastreabilidade semelhantes.
Em suma, no nível mais fundamental, a rastreabilidade é simplesmente o potencial de
se relacionar dados que são armazenados dentro de artefatos de algum tipo, juntamente com
a capacidade de examinar esta relação (HUANG; GOTEL; ZISMAN, 2014), fornecendo visibilidade sobre aspectos necessários do processo de desenvolvimento e contribuindo para uma
melhor compreensão do software do desenvolvimento à manutenção (MADER; EGYED, 2011).
O valor da rastreabilidade encontra-se em muitas atividades da engenharia de software, onde
as informações fornecidas através dessas inter-relações podem permitir a análise de impacto
1

http://www.fda.gov/
http://www.faa.gov/
3
http://cmmiinstitute.com/
4
http://www.softex.br/mpsbr/
2

2.2. RASTREABILIDADE DE SOFTWARE

22

das mudanças, análise de cobertura e dependência (GOTEL; FINKELSTEIN, 1994; LINDVALL;
SANDAHL, 1996; RAMESH; JARKE, 2001).
Na prática, a rastreabilidade é tipicamente criada e mantida através da utilização de ferramentas de gerenciamento de requisitos ou realizada manualmente, com o uso de planilhas
(ARKLEY; RIDDLE, 2005; CLELAND-HUANG et al., 2014). No entanto, há diversos problemas
que tornam difícil conseguir rastreabilidade bem sucedido na prática (REMPEL; MADER; KUSCHKE, 2013). Essas questões incluem a comunicação e relações sociais relacionadas entre
os participantes do projeto, bem como questões técnicas relacionadas com a criação física,
manutenção e uso dos links de rastreabilidade (MADER; GOTEL; PHILIPPOW, 2009a). A
capacidade de atingir plenamente os benefícios da rastreabilidade, portanto, depende da criação de ligações navegáveis entre os dados mantidos em artefatos que estão desconectados,
de forma econômica, precisa e significativa, em consonância aos propósitos estabelecidos
(CLELAND-HUANG et al., 2007; GOTEL et al., 2012).

2.2.1

Fundamentos Essenciais
Nas próximas subseções serão apresentados, de maneira sucinta e objetiva, aspectos

e termos5 importantes relacionados à rastreabilidade que são necessários para o entendimento
desta pesquisa: artefato de rastreamento, ligação de rastreamento, e rastreabilidade, que são
os blocos de construção da rastreabilidade.
2.2.1.1

Artefatos de Rastreamento
Artefatos de rastreamento são unidades rastreáveis de dados. O termo pode ser apli-

cado a todos os dados residuais ou a qualquer item tangível produzido durante o processo de
desenvolvimento ou manutenção de software que são passíveis de ser rastreado (HUANG; GOTEL; ZISMAN, 2014). O termo work product (produto de trabalho) é utilizado pelo (SWEBOK,
2014) para referenciar qualquer artefato que é resultado de um processo utilizado para criar o
produto final de software. Exemplos de um produto de trabalho incluem uma especificação do
sistema, uma especificação dos requisitos de software para um componente, uma descrição
do projeto de arquitetura do software, o código fonte, a documentação de teste e o manual de
usuário. O gerenciamento da configuração é a disciplina que promove o acompanhamento
adequado das evoluções e relações destes artefatos.
O termo artefato é aplicado tanto ao objeto como um todo e/ou qualquer delimitação
interna nele. Isto significa que a granularidade de um artefato de rastreamento não é prédeterminada. Três outros termos são intimamente associados com o artefato de rastreamento,
são eles: tipo de artefato, artefato fonte e artefato alvo. O tipo de artefato serve para classificar
a natureza e a função do artefato, e caracteriza os artefatos de rastreamento que têm a mesma
5

(http://www.coest.org/index.php/traceability/glossary)

2.2. RASTREABILIDADE DE SOFTWARE

23

ou uma estrutura semelhante (sintaxe) e / ou de uso (semântica). Os termos artefato fonte e
artefato alvo servem para caracterizar o sentido do rastreamento numa determinada relação
de rastreabilidade, especificando, o artefato de origem e o destino, respectivamente.
2.2.1.2

Relação de Rastreabilidade
Uma relação de rastreabilidade é uma associação entre dois artefatos, compreendendo

o artefato de origem e o artefato destino. Essa definição de ligação implica que o link tem
um sentido principal para a detecção, a partir do artefato fonte para o artefato alvo. O
direcionamento entre os dois artefatos de rastreio prevê a capacidade de atravessar a ligação
de rastreamento, ou para segui-lo, de modo a associar as duas partes de dados. É essa
orientação que é procurada através da rastreabilidade (HUANG; GOTEL; ZISMAN, 2014).
2.2.1.3

Modalidade de Estabelecimento da Rastreabilidade
A atividade de rastreamento demanda alguma forma de atuação, e leva a três termos

associados quando se refere à natureza da atividade que coloca a rastreabilidade em prática.
A seguir são apresentadas as diferentes abordagens para a geração de rastreabilidade com
base no nível de automação que é oferecido (GOTEL et al., 2012), são elas: 

Rastreamento manual - Quando a rastreabilidade é estabelecida pelas atividades
de um humano. Isso inclui todas as decisões de criação, manutenção e busca das
relações de rastreabilidade realizadas manualmente por um analista ou um grupo
deles. 

Rastreamento semiautomático - Quando a rastreabilidade é estabelecida através
de uma combinação de técnicas automatizadas, métodos, ferramentas e atividades
humanas. Um exemplo disso é quando técnicas automatizadas podem sugerir
relações candidatas ou suspeitas de rastreamento entre artefatos, em seguida, o
humano é solicitado a verificá-las. 

Rastreamento automatizado - Quando a rastreabilidade é estabelecida através
de técnicas automatizadas, métodos e ferramentas. Ou seja, um processo de
rastreamento totalmente automatizado é aquele em que os analistas humanos não
realizam quaisquer atividades de busca e onde todas as decisões de rastreio são
suportadas por software.

Manter manualmente ligações de rastreamento é uma abordagem que não escala
(HEINDL; BIFFL, 2005). Além disso, aliada a dinâmica de desenvolvimento do software
torna-se tedioso e propenso a erros (DOMGES; POHL, 1998). O nível atual de suporte das
ferramentas de rastreabilidade é uma das principais razões para a sua utilização limitada em
ambientes industriais (SPANOUDAKIS; ZISMAN, 2004). Isso ocorre porque a maioria das

2.2. RASTREABILIDADE DE SOFTWARE

24

ferramentas industriais e ambientes não fornecem suporte para todos os tipos de artefatos
que são construídos no ciclo de vida de desenvolvimento de software, bem como todos os
tipos de relações de rastreabilidade que pode existir entre estes artefatos. Além do mais, os
ambientes e ferramentas existentes não se comunicam de forma transparente, pois são muitas
vezes insuficientemente programadas e configuradas para suportar aos interesses específicos
dos stakeholders do projeto. Com isso, não suportando plenamente os processos nem se
adaptando às novas necessidades para serem usadas em ambientes de desenvolvimento de
software distribuídos e heterogêneos.
2.2.1.4

Termos Adicionais
Os termos adicionais que delineiam diferentes tipos de rastreabilidade são destacados

e definidos a seguir.
Rastreabilidade para Frente: O termo é comumente usado quando o rastreamento segue os passos subsequentes em um caminho de desenvolvimento, que não é necessariamente
um caminho cronológico, como exemplo, partindo dos requisitos para o código.
Rastreabilidade para trás - O termo é comumente usado quando o rastreamento segue
passos antecedentes em um caminho de desenvolvimento, que não é necessariamente um
caminho cronológico, como exemplo, partindo do código para o modelo de arquitetura.
Rastreabilidade Horizontal - Termo comumente usado quando o rastreamento envolve
artefatos em diferentes níveis de abstração, de modo a acomodar a rastreabilidade de ponta-aponta no ciclo de vida de desenvolvimento do software. Inclui as relações entre os diferentes
modelos, tal como de requisitos para o código. A rastreabilidade horizontal pode empregar
tanto o rastreamento para frente quanto o rastreamento para trás (LINDVALL; SANDAHL,
1996).
Rastreabilidade Vertical – O termo é comumente usado quando o rastreamento dos
artefatos acontece no mesmo nível de abstração, tais como: (i) rastrear todos os requisitos
criados (ii) rastrear os requisitos não funcionais do sistema, ou (iii) rastrear entre as versões
de um requisito particular em diferentes momentos no tempo. A rastreabilidade vertical pode
empregar tanto o rastreamento para frente quanto a rastreabilidade para trás (LINDVALL;
SANDAHL, 1996).

2.2.2

Modelo de Processo Genérico
Um modelo do processo genérico de rastreabilidade é uma descrição abstrata da série

de atividades que servem para estabelecer a rastreabilidade e torná-la utilizável, juntamente
com uma descrição das responsabilidades típicas e mobilização de recursos necessários para
realizá-las, bem como as suas entradas e saídas. A Figura 2.2 representa um modelo do
processo genérico de rastreabilidade. Ela mostra as atividades essenciais que são necessárias
para a criação até a eventual retirada das ligações (HUANG; GOTEL; ZISMAN, 2014). As

2.2. RASTREABILIDADE DE SOFTWARE

25

etapas distintas do processo compreendem:
1. Estratégia de Rastreabilidade: Decisões tomadas a fim de determinar os requisitos
das partes interessadas e do sistema de rastreabilidade, de projetar uma solução
de rastreabilidade adequada, e para fornecer o controle necessário para manter
estes requisitos e soluções relevantes e eficazes durante a vida de um projeto.
A estratégia de rastreabilidade compreende o planejamento e as atividades de
gerenciamento da rastreabilidade, as quais envolvem decisões complexas quanto
à granularidade, categorização e armazenamento de artefatos em formatos variados. Ela também envolve escolhas quanto à abordagem para gerar, classificar,
representar e, em seguida, manter as suas ligações inter-artefato e intra-artefato.
2. Criação de Rastreabilidade: A atividade geral de associar dois ou mais artefatos,
fornecendo uma relação de rastreabilidade entre eles, para fins de rastreamento.
Essa relação pode ser construída manualmente, automaticamente ou semiautomaticamente e anotações adicionais podem ser fornecidas como desejado para
caracterizar atributos da ligação. As relações de rastreabilidade são criadas, todas
dentro do âmbito de uma estratégia mais ampla de rastreabilidade. Essa estratégia fornece o detalhe das necessidades das partes interessadas, as decisões
relativas aos mecanismos de automação, os artefatos e semânticas das ligações
estabelecidas e a forma acordada em que atividades e tarefas serão necessárias.
3. Manutenção da Rastreabilidade: São atividades associados à atualização de relações pré-existentes, através de mudanças feitas aos artefatos rastreados a rastreabilidade evolui, criando novos traços onde for necessário para manter a rastreabilidade
relevante e atualizada.
4. Uso da rastreabilidade - São atividades associadas com a utilização das relações de
rastreabilidade para apoiar diversas atividades de software, tais como a verificação e
validação, análise de impacto e gestão da mudança. Um componente importante do
processo de utilização é avaliar a qualidade da rastreabilidade que é fornecida em
termos de adequação à finalidade em relação à tarefa ou atividade para a qual é
exigida. Essa informação fornece um ciclo de feedback para melhorar a estratégia
global de rastreabilidade.

2.2. RASTREABILIDADE DE SOFTWARE

[H]

2.2.3

26

Figura 2.2: Um modelo genérico do processo de rastreabilidade

Tipos de Abordagens da Rastreabilidade
As relações estabelecidas entre artefatos são vitais para a compreensão de sistemas

de software e para apoiar as tarefas de engenharia de software. Existem basicamente duas
formas de adquirir as ligações de rastreamento (ASUNCION; ASUNCION; TAYLOR, 2010): 

Rastreamento Prospectivo: Uma abordagem que implica a captura de ligações
de rastreamento simultaneamente com a criação dos artefatos que eles se associam. Estas relações de rastreamento podem ser criadas automaticamente ou
semi-automaticamente usando ferramentas. Em abordagens prospectivas, as ligações de rastreamento são criadas por meio da análise das interações do usuário
com o artefato dentro do contexto de uma tarefa de desenvolvimento particular,
ou seja, as ligações são definidas no instante em que os artefatos são criados e
modificados pelos usuários durante o desenvolvimento. 

Rastreamento Retrospectivo: Abordagem que implica a recuperação de ligações
de rastreamento após os artefatos que se associam foram gerados ou manipulados. Esses links de rastreamento podem ser criados automaticamente ou semiautomaticamente usando ferramentas. Na aquisição de rastreamento retrospectiva,

2.2. RASTREABILIDADE DE SOFTWARE

27

as relações de rastreamento são identificadas através da análise estática dos
artefatos.
Uma vantagem inerente das abordagens prospectivas é que elas são eficientes e escaláveis, porque são, por natureza, incremental. No entanto, elas exigem uma estreita integração
entre os ambientes ou tecnologias existentes. Trabalhos nesta área estão divididos entre técnicas que monitoram as ações dos desenvolvedores (MADER; GOTEL; PHILIPPOW, 2009b;
ASUNCION; ASUNCION; TAYLOR, 2010), a Engenharia Orientada a Modelos (ALEKSY et al.,
2009; JOUAULT et al., 2010) e abordagens que inferem as ligações de rastreamento sobre
os itens encontrados nos logs dos sistemas de controle de versão e outros tipos de repositórios (JIANG et al., 2008; DELATER; PAECH, 2013a).
As abordagens clássicas de rastreabilidade são retrospectivas, ou seja, as ligações
são recuperadas a partir de artefatos existentes, e contam com métodos baseados em texto
usando técnicas de recuperação de informação ou de aprendizado de máquina para analisar documentos (KAGDI; MALETIC; SHARIF, 2007; GRECHANIK; MCKINLEY; PERRY, 2007;
LUCIA; PENTA; OLIVETO, 2011).

2.2.4

Abordagens da Rastreabilidade
O objetivo da rastreabilidade de software é identificar relações relevantes entre artefatos

produzidos num ciclo de vida do software. Quando plenamente realizado, a rastreabilidade
permite a recuperação eficiente dos artefatos relacionados, que é útil em uma variedade de
tarefas da engenharia de software. Enquanto isso, projetos de desenvolvimento de software
são cada vez mais distribuídos e descentralizados, e dependente de software de terceiros,
motivando a necessidade de técnicas eficazes de rastreabilidade (FIGUEIREDO; SOUZA,
2012; CHAUHAN; BABAR, 2014).
Um grande desafio na recuperação de vínculos de rastreabilidade entre artefatos de
software é o fato de que esses artefatos estão em formatos diferentes e em diferentes níveis
de abstração (WIJESINGHE et al., 2014). Mais do que isso, às vezes a semântica de tais links
é interpretada de forma diferente por várias pessoas. A criação automatizada das relações de
rastreabilidade é necessária porque milhares de dependências entre todos os tipos de artefatos
de software pode existir implicitamente. Uma abordagem de rastreabilidade deve considerar
a redução de esforços no processo de criação e evolução das relações de rastreabilidade
(ROCHIMAH; KADIR; ABDULLAH, 2007). Várias técnicas e heurísticas para apoiar a aquisição
e evolução dos links de rastreabilidade foram propostas e serão apresentadas a seguir.
2.2.4.1

Hipertexto
O modelo de hipertexto pode ser definido como um conjunto de conteúdos textuais e

suas inter-relações, representado por links, em combinação com uma interface de usuário

2.2. RASTREABILIDADE DE SOFTWARE

28

para a visualização e navegação de instâncias destes conteúdos através de links. No modelo
de hipertexto, um link (ou hyperlink ) é uma entidade de primeira classe, definida como uma
associação entre um conjunto de artefatos ou âncoras para conteúdos dentro de um artefato,
e formam os terminais para as ligações, e podem ser representados por um modelo de
marcação baseado em XML (MALETIC et al., 2003). As abordagens baseadas em linguagem de
marcação favorecem a rastreabilidade em ambientes de engenharia de software heterogêneos
amplamente distribuídos (SONG et al., 1998).
2.2.4.2

Eventos
As abordagens baseada em eventos oferecem um mecanismo de notificação que

implementa regras invariáveis de padrões de projeto, que são usados para identificar os componentes críticos do software. Mais especificamente, as dependências entre os artefatos são
registradas durante a criação do software. Após o registro das dependências, o sistema
monitora os artefatos e quando qualquer um deles é modificado, ele notifica todos os dependentes sobre a mudança (CLELAND-HUANG; CHANG; GE, 2002; CLELAND-HUANG;
CHANG; CHRISTENSEN, 2003).
2.2.4.3

Regras
A principal motivação para as abordagens de rastreabilidade baseados em regras

é o apoio a criação de rastreabilidade automática em vários tipos de documentos gerados
durante as diferentes fases do ciclo de vida de desenvolvimento de software (SPANOUDAKIS
et al., 2004). Outras motivações estão preocupadas com (a) a necessidade de apoiar a
criação de diferentes tipos de relações de rastreamento com significados semânticos em vez
de hiperlinks simples; e (b) a existência de grande número de artefatos heterogêneos que
representam diferentes aspectos de um sistema de software, especificado com diferentes
níveis de abstração e granularidade, produzidos por diferentes atores e criados de forma
independente por ferramentas não interoperáveis (MADER; GOTEL; PHILIPPOW, 2008).
2.2.4.4

Cenários
Uma abordagem baseada em cenários foi proposta por EGYED; GRUNBACHER

(2002), onde as dependências de rastreabilidade são geradas e validadas com base em
rastros hipotéticos definidos manualmente, para isso, cenários de testes são executados
em um sistema em desenvolvimento e informações são obtidas usando uma ferramenta de
monitoramento. Sobreposições detectadas entre os cenários e os elementos do sistema são
representados no formato de gráfico, para geração automática das ligações de rastreamento.

2.2. RASTREABILIDADE DE SOFTWARE
2.2.4.5

29

Recuperação da Informação
Na recuperação de vínculos de rastreabilidade entre artefatos de software, boa parte

destes artefatos apresentam formatos e níveis de abstração diferentes (GOTEL et al., 2012).
No entanto, existe um tipo de dado presente em todos os artefatos de software, que são os
dados textuais. Extrair e analisar este tipo de dado é essencial para o desenvolvimento de
técnicas e ferramentas de recuperação de relações de rastreabilidade. Na maioria dos artefatos
as partes textuais são de natureza descritiva, ou seja, dois artefatos que são conceitualmente
relacionados podem possivelmente conter ligações de rastreabilidade entre eles.
Uma solução eficaz adotada por pesquisadores e profissionais para extrair e analisar
os dados textuais incorporados em artefatos heterogêneos de software é o uso de técnicas de
recuperação de informação, do inglês Information Retrieval (IR) (MARCUS; MALETIC, 2003;
LUCIA et al., 2004; HAYES; DEKHTYAR; SUNDARAM, 2006). A abordagem IR se baseia no
pressuposto que se os engenheiros referem-se aos mesmos aspectos do sistema usando
uma língua semelhante em diferentes artefatos do software. Métodos de recuperação de
rastreabilidade baseado em IR operam sobre a semelhança entre os textos contidos nos
artefatos de software. Assim, quanto maior for a semelhança entre dois artefatos textuais,
maior a probabilidade de que exista uma ligação entre eles (BAEZA-YATES; RIBEIRO-NETO,
1999). As etapas gerais desta abordagem incluem:
(i) análise, extração e pré-processamento dos documentos: os artefatos de software
são extraídos dado o nível de granularidade estabelecido, em seguida, pre-processados
para remoção de tokens não textuais e representados como um conjunto de fragmentos do
documentos resultante.
(ii) indexação dos termos: Um método de recuperação de rastreabilidade é utilizado
para indexar diversos fragmentos do artefato de software e representá-los de forma homogênea
para extração de informação sobre a ocorrência dos termos (ou palavras) dentro deles. Esta
informação é usada para definir medidas de similaridade entre os vários documentos.
(iii) geração da lista de priorização: um conjunto de artefatos de origem e destino
são usados com relação a medida de similaridade definida para classificar todos os pares
possíveis pelas suas semelhanças, assim gerando uma lista dos links de rastreabilidade
candidatos.
(iv) análise das ligações candidatas: uma vez que as ligações candidatas foram geradas,
elas são fornecidas como resultado para confirmação ou rejeição. O processo de avaliação
das ligações pode ser realizado baseado no julgamento humano ou automatizado.
Os métodos de IR mais utilizados representam um documento como uma coleção
desordenada de palavras, desconsiderando a ordem com que palavras são apresentadas,
podendo ser classificados como algébrico ou probabilístico, dependendo de como a relevância
entre as consultas e os documentos é medida (MANNING; RAGHAVAN; SCHUTZE, 2008). Em
modelos de IR algébricos, a relevância é assumida correlacionado a similaridade dos termos

2.3. ENGENHARIA DE SOFTWARE BASEADO EM EVIDÊNCIAS

30

existentes. Em recuperação probabilístico, a relevância entre uma consulta e um documento
é expressa como um problema de classificação, os documentos são então classificados de
acordo com sua probabilidade de ser relevante.
Várias técnicas de rastreabilidade tem sido propostas baseadas no modelo de recuperação de informação algébrico, MALETIC et al. (2003) apresenta uma visão holística de
como combinar a técnica de recuperação de informação LSI, juntamente com a análise de
conformidade que é facilitado por um modelo de hipertexto formal. HAYES et al. (2007) apresentam RETRO uma ferramenta para tratar a recuperação de rastreabilidade para os artefatos
que contenham narrativa textual desestruturada usando IR e métodos de mineração de texto
para construir as ligações candidatas. Já PANICHELLA; LUCIA; ZAIDMAN (2015) propõe
a utilização do feedback humano para melhorar relevância da lista de ligações candidatas
retornadas pela abordagem de IR utilizada.
A recuperação de rastreamento suportado por modelos probabilísticos tem sido explorada por diversos pesquisadores, dentre eles, CLELAND-HUANG et al. (2005) onde apresentam três estratégias para a incorporação de informações de apoio em um algoritmo de
recuperação probabilístico, a fim de melhorar o desempenho dos requisitos de rastreabilidade
dinâmica. LIN et al. (2006) apresenta uma ferramenta web de suporte a rastreabilidade que
implementa um modelo de rede probabilística para gerar ligações entre requisitos, elementos
de design, código e outros artefatos armazenados em ferramentas heterogêneas e distribuídas.
Já ZOU (2009) apresenta três estratégias com objetivo de melhorar a precisão dos resultados
da recuperação de informação em relação ao desenvolvimento e aplicação de ferramentas de
rastreamento automatizadas. Atualmente pesquisadores tem destinado esforços para desenvolver uma abordagem integrada sobre uma combinação destas técnicas, a fim de superar os
desafios da precisão e recuperação das relações de rastreabilidade (GETHERS et al., 2011).

2.3

Engenharia de Software Baseado em Evidências
Com o amadurecimento e relevância de uma área de pesquisa, muitas vezes há

um aumento acentuado no número de estudos e resultados disponibilizados, e torna-se
importante resumir e fornecer uma visão geral do assunto. Inspirado nas pesquisas médicas, a
Engenharia de Software Baseada em Evidências (ESBE) é um paradigma da ES que permite
identificar, selecionar e sintetizar evidências de estudos primários. EBSE visa melhorar a
tomada de decisão relacionada ao desenvolvimento e manutenção de software proporcionado
por melhores evidências das pesquisas atuais integradas às experiências práticas e valores
humanos (KITCHENHAM; DYBA; JORGENSEN, 2004).
Os estudos secundários são os instrumentos que analisam todos os estudos primários
relativos a uma questão específica de pesquisa com o objetivo de integrar e sintetizar as
provas relacionadas ao tema (KITCHENHAM; CHARTERS, 2007). Revisões Sistemáticas e
Mapeamentos Sistemáticos da literatura são métodos de estudos secundários aplicados a

2.4. CONSIDERAÇÕES FINAIS DO CAPÍTULO

31

conduzir pesquisas com base nos princípios da ESBE:
Revisão Sistemática (RS): considerado um meio de identificar, analisar e interpretar
todas as evidências disponíveis relacionadas a uma questão específica de pesquisa, área
temática, ou fenômeno de interesse. Agregam resultados sobre a efetividade de um tratamento,
intervenção ou tecnologia. Uma RS tem uma metodologia bem definida e a questão de
pesquisa é tratada de maneira imparcial e repetível.
Mapeamento Sistemático (MS): destinado para fornecer uma visão geral de uma área
de pesquisa, estabelecer a existência de evidências de pesquisa e fornecer uma indicação
da quantidade de provas sobre um tema. Os resultados de um estudo de mapeamento pode
identificar áreas adequadas para a realização de Revisões Sistemáticas da Literatura e também
áreas onde um estudo preliminar é mais apropriado. Um MS permite que as evidências possam
ser plotados em um alto nível de granularidade. Isto permite a identificação de concentração e
ausência de evidências para orientar o enfoque de futuras revisões sistemáticas e identificar
as áreas onde estudos primárias devem ser mais realizados.

2.4

Considerações Finais do Capítulo
Neste capítulo foi apresentada a fundamentação teórica utilizada durante esta pes-

quisa. Foram apresentados os seguintes conceitos: Artefatos da Engenharia de Software,
Rastreabilidade de Software e Engenharia de Software Baseada em Evidência. Uma vez que
evidências na literatura apontam dificuldades em identificar, analisar e interpretar os relatos de
experimentos em rastreabilidade de software com artefatos heterogêneos, o presente trabalho
utilizou o método de Mapeamento Sistemático da Literatura para construir um panorama da
atual situação neste contexto.

32

3
Método
O objetivo deste capítulo é detalhar a abordagem metodológica utilizada na presente
pesquisa. Neste sentido, ele descreve a estrutura adotada no Mapeamento Sistemático. A
descrição detalhada do método se propõe a demonstrar a credibilidade e a confiabilidade da
pesquisa, além de possibilitar a replicação do estudo por outros pesquisadores, a validação e a
comparação dos resultados obtidos com pesquisas semelhantes realizadas em outro contexto.
A primeira seção apresenta a classificação da pesquisa perante quatro aspectos; já a segunda
apresenta os detalhes do planejamento metodológico da pesquisa através de suas etapas e
atividades.

3.1

Classificação da Pesquisa
A pesquisa realizada adota o método de abordagem indutivo baseado em dados de

natureza qualitativa, coletados através de um estudo de mapeamento sistemático da literatura.
A Tabela 3.1 apresenta o quadro metodológico que resume estes elementos.
Tabela 3.1: Classificação Geral da Pesquisa

Quadro Metodológico
Método de Abordagem

Indutivo

Quanto ao Objetivo

Pesquisa Descritiva

Método de Procedimento

Mapeamento Sistemático da Literatura

Natureza dos Dados

Qualitativa

Quanto ao método de abordagem essa dissertação é de caráter indutivo. A indução é
uma forma de raciocínio que tira conclusões generalizadas com base em premissas particulares.
É um processo que partindo de dados particulares, suficientemente constatados, infere-se
uma verdade geral ou universal, não contida nas partes examinadas (LAKATOS; MARCONI,
2010), uma vez que se baseia em estudos primários particulares para delinear o cenário geral

3.2. CLASSIFICAÇÃO DO ESTUDO SEGUNDO COOPER

33

do tema em discussão. LAKATOS; MARCONI (2010) recomendam a divisão deste método de
abordagem em três etapas fundamentais: 

Observação dos fenômenos: etapa onde os fatos ou fenômenos são observados e
analisados com a finalidade de descobrir as causas de sua manifestação; 

Descoberta da relação entre os fenômenos: busca-se, por intermédio da comparação, aproximar os fatos ou fenômenos com a finalidade de descobrir a relação
constante existente entre eles; 

Generalização da relação: nesta etapa ocorre a generalização da relação encontrada entre os fenômenos e fatos semelhantes.

Em relação ao objetivo, essa pesquisa é de caráter descritivo, como o nome sugere,
objetiva descrever as características de uma população, fenômeno, ou relação entre variáveis.
Pela natureza exploratória das perguntas deste trabalho, o método de procedimento adotado foi
o Mapeamento Sistemático da Literatura (PETERSEN et al., 2008), que através dele busca-se
obter dados mais consistentes sobre determinada realidade, uma vez, que a engenharia de
software empírica dispõe de estudos primários que investigam a rastreabilidade dos artefatos
heterogêneos de software.
No que diz respeito à natureza dos dados podemos afirmar que a pesquisa caracterizase como qualitativa, quando a mesmo procura analisar, classificar e interpretar aspectos mais
profundos, descrevendo a complexidade e o contexto do objeto de pesquisa (CRESWELL,
2013). Fornecendo assim, informações exploratórias e análises mais detalhadas sobre as
investigações, hábitos, atitudes e tendências.

3.2

Classificação do Estudo Segundo Cooper
A fim de complementar a delimitação da metodologia de pesquisa utilizada neste estudo,

esta seção apresenta sua classificação de acordo com a Taxonomia de Cooper (COOPER,
1988). A taxonomia sugere a classificação de estudos sistemáticos perante seis características,
conforme pode ser observado a seguir.
O presente estudo tem como foco as práticas e aplicações utilizadas nos relatos de
experimentos em rastreabilidade de artefatos heterogêneos do software, com importante valor
para representar a evolução e compreender as tendências na área.
Quanto ao objetivo espera-se integrar, organizar e sintetizar o conhecimento por meio
da agregação e consolidação das evidências existentes na literatura e identificar lacunas.
No que diz respeito à perspectiva, a neutralidade assumida busca apresentar os
diferentes argumentos, interpretações e evidências existentes na literatura, dando espaço aos
diversos pontos de vista dos autores.

3.3. CICLO DA PESQUISA

34

Em relação a cobertura a inclusão de estudos relevantes limitou-se a buscas manuais
e automáticas em fontes de pesquisas determinadas, entretanto o período de cobertura foi
ilimitado, classificando assim esta pesquisa como exaustiva com citação seletiva.
No quesito organização a dissertação está disposta de maneira conceitual onde os
estudos relacionados às mesmas ideias aparecem agrupados, e metodologicamente onde são
agrupados pela similaridade dos métodos de pesquisa que empregam.
Por fim, a audiência ao qual se dirige esta pesquisa é voltada a pesquisadores especializados, acadêmicos em geral ou praticantes, tanto da rastreabilidade, quanto da engenharia
de software.

3.3

Ciclo da Pesquisa
Esta seção tem como objetivo apresentar o planejamento e a metodologia utilizada

para realização deste estudo em suas etapas e atividades. A Figura 3.1 apresenta o fluxo das
atividades distribuídas em suas respectivas etapas que constituíram o ciclo desta pesquisa,
são elas: Etapa de Definição da Pesquisa, Etapa de Planejamento do Mapeamento, Etapa de
Execução do Mapeamento e Etapa de Divulgação dos Resultados.
A seguir serão detalhadas as etapas e apresentada as particularidades de cada decisão
de pesquisa.

3.3.1

Etapa de Definição da Pesquisa
Esta etapa foi fundamental para o delineamento da pesquisa e contou com os seguintes

objetivos: (i) identificação das oportunidades de pesquisa, (ii) definição do tema a ser pesquisado, (iii) delimitação do escopo, (iv) concepção das perguntas de pesquisa e (v) definição da
metodologia a ser utilizada.
3.3.1.1

Revisão Informal da Literatura
Inicialmente foi realizada uma revisão informal da literatura em rastreabilidade sobre

as abordagens aplicadas aos artefatos heterogêneos de software, com finalidade de obter
embasamento teórico sobre o assunto. Foram selecionados e analisados artigos e livros a
respeito das áreas mencionadas, muitos dos quais foram utilizados para a elaboração da
fundamentação teórica deste trabalho (Capítulo 2). Através deste estudo exploratório inicial foi
possível perceber a relevância do tema e, ao mesmo tempo, a ausência de estudos sistemáticos
e criteriosos que consolidem o conhecimento na área.

3.3. CICLO DA PESQUISA

35

Figura 3.1: Ciclo geral da pesquisa de mestrado apresentado em suas etapas e
atividades

3.3.1.2

Definição do Tema, Objetivo e Escopo
Através da observação e análise dos estudos encontrados ficou evidente a importância

do tema para a engenharia de software, e verificou-se uma mobilização dos pesquisadores
da engenharia de software experimental para melhorar os resultados da precisão e recall das
relações entre artefatos através do desenvolvimento de novas técnicas e abordagens. Além
disso, os estudos sistemáticos encontrados (BORG; RUNESON; ARDO, 2014; TORKAR
et al., 2012) consolidam e sumarizam o conhecimento da área com objetivos específicos
na recuperação de rastreamento baseado em IR e nas definições, desafios, ferramentas e
técnicas de rastreabilidade aplicado aos requisitos, respectivamente.
Assim, concluímos que até o inicio da presente pesquisa não haviam estudos sistemáticos que consolidem os estudos do tema proposto e concluímos que o problema apresentava
relevância para gerar contribuições importantes conforme discussão apresentada na Seção
1. Diante destes fatos, o foco desta pesquisa foi direcionada a compreender o estado da prática
sobre a rastreabilidade entre artefatos heterogêneos da engenharia de software. Portanto, ficou
clara a necessidade de executar um mapeamento sistemático da área. Visto que é necessária
uma visão mais ampla e de natureza exploratória das evidências dos estudos. A partir deste
ponto, o foco desta pesquisa foi definido e expresso em questões de pesquisa que serão
apresentadas na Seção 3.3.2.1.1.

3.3. CICLO DA PESQUISA
3.3.1.3

36

Definição da Metodologia
Decorrente a definição do tema, objetivo e escopo da pesquisa, o método considerado

mais adequado tomando como base o objetivo, o tipo das perguntas e o resultado esperado foi
o Mapeamento Sistemático. Um mapeamento sistemático é usado para descrever os tipos de
atividades de pesquisa realizados e apresentar uma síntese dos estudos em vez de extrair
detalhes específicos. Sendo indicado sobre temas os quais a produção científica é ainda
incipiente (BUDGEN et al., 2008). Outro aspecto que foi decisivo na escolha do método foi
quanto a forma de apresentação dos resultados, pois em um MS eles são apresentados de
forma categorizada e proporcionam uma visão sumária que permite a melhor visualização dos
dados em forma de gráficos e mapas (PETERSEN et al., 2008).

3.3.2

Etapas de Planejamento do Mapeamento Sistemático
Com o conhecimento desenvolvido na etapa anterior, iniciou-se o Planejamento do

Mapeamento Sistemático. Tendo como principais atividades: (i) a definição do protocolo de
mapeamento sistemático, que foi utilizado como guia durante toda a pesquisa para a coleta
das evidências, e (ii) a revisão do protocolo. Nesta etapa o principal artefato produzido é o
protocolo do mapeamento. Ao decorrer desta seção serão apresentados tópicos do protocolo
de pesquisa que guiou o estudo.
3.3.2.1

Definição do Protocolo
O protocolo do mapeamento sistemático especifica os métodos que serão usados

para realização do estudo secundário, fazendo que este diminua a possibilidade de viés
do pesquisador e forneça um processo reproduzível e transparente para a realização da
pesquisa (KITCHENHAM, 2004). Os estágios para condução de mapeamentos sistemáticos
previsto pelo protocolo envolvem os seguintes pontos:
1. Identificar as questões de pesquisa;
2. Estabelecer a estratégia de busca dos estudos;
3. Prescrever a estratégia de seleção dos estudos relevantes;
4. Avaliar a qualidade dos estudos selecionados;
5. Determinar a forma de extração dos dados.
A seguir serão apresentados de forma breve os elementos relacionados ao planejamento do mapeamento. A íntegra do protocolo pode ser obtida no Apêndice B desta dissertação. O protocolo do mapeamento desta pesquisa foi construído com base em guias existentes
na literatura (KITCHENHAM; DYBA; JORGENSEN, 2004; KITCHENHAM; CHARTERS, 2007;
PETERSEN et al., 2008).

3.3. CICLO DA PESQUISA
3.3.2.1.1

Questões de Pesquisa

37
Com o objetivo de delinear o escopo da pesquisa e de

identificar os elementos que vieram a fazer parte das questões de pesquisa, foi utilizado
uma estrutura citada por KITCHENHAM; CHARTERS (2007), que recomenda considerar
as questões de pesquisa a partir da seguinte estrutura denominada PICOC (Population,
Intervention, Comparison, Outcome, Context): 

População (Population): Artefatos Heterogêneos 

Intervenção (Intervention): Rastreabilidade de Software 

Contexto (Context): Engenharia de Software

O item comparação (Comparison) não foi utilizado, uma vez que o estudo não realiza
comparações entre os mecanismos para guiar estudos empíricos. Com relação ao item da
estrutura denominado Resultado (Outcomes) não foi utilizado porque busca-se uma visão
ampla da área de pesquisa como um todo, evitando assim restringir resultados específicos.
As perguntas desta pesquisa são de natureza exploratória, pois têm o intuito de obter
uma visão ampla de uma área de investigação. Assim, o objetivo deste mapeamento é consolidar informações a respeito da rastreabilidade entre artefatos heterogêneos na engenharia de
software. No entanto, este tema é demasiadamente genérica para uma avaliação completa.
Assim, ele foi dividido em cinco questões (Q), com foco em aspectos específicos da pesquisa. 

Q1 - Quais abordagens de rastreamento têm sido frequentemente aplicadas para
suportar a heterogeneidade dos artefatos na engenharia de software? 

Q2 - Quais os artefatos utilizados para estabelecimento da rastreabilidade? 

Q3 - Quais meios têm sido empregados para a criação das relações entre os
artefatos? 

Q4 - Quais as métricas aplicadas a rastreabilidade entre artefatos heterogêneos? 

Q5 - Quais os principais contextos, objetivos e desafios na aplicação de rastreabilidade entre artefatos heterogêneos de software?

3.3.2.1.2

Estratégia de Busca dos Estudos

A procura por estudos primários foi realizada

utilizando pesquisa automática e manual. A pesquisa manual incluiu uma dos mais importantes
eventos da área, a fonte de busca manual planejada e o respectivo período de coleta é
apresentado na Tabela 3.2.

3.3. CICLO DA PESQUISA

38

Tabela 3.2: Fontes de Busca Manual e Período de Coleta
Fonte
TEFSE - International Workshop on Traceability
in Emerging Forms of Software Engineering

Período

Tipo

Área

2002 - 2013

workshop

ICSE

Para a estratégia automática planejou-se a utilização dos mecanismos IEEE Xplore
Digital Library1 , ACM Digital Library2 , Elsevier Scopus3 , Science Direct4 e EI Compendex5 .
Não foi estabelecido qualquer limite inferior em relação ao ano de publicação dos estudos.
A construção da string de busca utilizada nas bibliotecas digitais selecionadas segue uma estratégia baseada em KITCHENHAM; MENDES; TRAVASSOS (2007), que consiste
em: (i) derivar a partir das questões de pesquisa as principais palavras-chaves da estrutura
PICOC (ii) procurar por palavras chaves em artigos relevantes já consultados em uma revisão
informal (iii) identificar sinônimos e termos alternativos as palavras-chaves (iv) usar os conectores (OR , AND) para incorporar os sinônimos e ligar as palavras chaves, respectivamente. A
string de busca definida é apresentada na Tabela 3.3.
Tabela 3.3: String de Busca utilizada na pesquisa dos estudos do MS
Search String
(traceability OR tracing OR “trace links” OR “trace recovery” OR “information retrieval” OR “trace
retrieval”) AND (artefact OR artifact OR document OR tool) AND (heterogeneous OR different OR
variety OR diverse OR diversified OR varied OR inhomogeneous) AND (“software engineering” OR
“software development” OR “software process” OR “systems engineering” OR “systems development”
OR “software project” OR “development environment” OR “software system”)

3.3.2.1.3

Estratégia de Seleção dos Estudos

A seleção de estudos primários foi plane-

jada em duas fases, sucedidas de uma atividade de teste e reteste, uma alternativa para
garantia da confiabilidade das decisões em estudos realizados por único pesquisador (KITCHENHAM; CHARTERS, 2007). Após obter o resultado das buscas, cada estudo retornado foi
avaliado pelo seu título, resumo e palavras chave. Nessa primeira fase apenas os estudos que
claramente fugiram do escopo do mapeamento foram excluídos, mantendo-se para análise posterior todos os estudos que geraram alguma dúvida quanto ao sua permanência. Na segunda
fase, os estudos potencialmente relevantes são revistos com base nos critérios de inclusão
e exclusão para obter uma lista final dos estudos primários selecionados. Todos os estudos
foram lidos sinteticamente e analisados com objetivo de filtrar a inclusão no mapeamento dos
1

http://ieeexplore.ieee.org
http://portal.acm.org
3
http://www.scopus.com
4
http://www.sciencedirect.com/
5
https://www.engineeringvillage.com/search/quick.url
2

3.3. CICLO DA PESQUISA

39

estudos pela sua relevância em relação as questões de pesquisa. A lista dos critérios pode ser
observada na Tabela 3.4.
Tabela 3.4: Lista dos Critérios de Inclusão/Exclusão em ordem alfabética.

Código

Critérios de Inclusão

Código

Critérios de Exclusão

Estudos empíricos relacionados à
CI01

rastreabilidade entre artefatos

CE01

Estudo não disponível

CE02

Estudo Duplicado

CE03

Estudo Incompleto

CE04

Estudo não escrito em inglês

heterogêneos de software
CI02

Trabalhos publicados até outubro de
2015

Estudo que apenas propõe uma
CE05

abordagem ou descreve lições
aprendidas
Estudo onde a criação, recuperação

CE06

ou manutenção da rastreabilidade
entre artefatos não é o objetivo
principal da pesquisa

CE07

Estudo que apresenta apenas
um benchmarking

Os critérios de inclusão foram definidos de acordo com o alinhamento ao tema da pesquisa e do período planejado para a realização do estudo. Depois de aplicados os critérios de
inclusão serão aplicados os critérios de exclusão, que busca eliminar os estudos que abordam
questões de rastreabilidade, mas não estão preocupados com a criação, recuperação ou
manutenção das relações. Assim como, estudos sem resultados empíricos ou sem nenhuma
análise científica. Quanto ao critério de exclusão CE04 justifica-se pelo seu caráter universal,
tendo em vista que a maior parte dos trabalhos publicados nas principais bases de dados na
área de Computação são escritos na língua inglesa, inclusive artigos brasileiros.
Quando dois ou mais pesquisadores avaliam cada estudo, o grau de concordância
entre os pesquisadores pode ser medida usando a estatística Kappa (COHEN, 1968), para
garantir que o resultado obtido não foi meramente ao acaso. No entanto, em caso de pesquisa
realizada por um único pesquisador, KITCHENHAM; CHARTERS (2007) sugerem a inclusão
de uma atividade de teste e reteste, que consiste em reavaliar uma amostra aleatória dos
estudos primários retornados e dos estudos considerados relevantes após a triagem inicial, ou
seja, insumos da primeira e segunda fase da estratégia de seleção.
Essa atividade tem como objetivo verificar a consistência das decisões aplicadas ao
critérios de inclusão e exclusão do próprio pesquisador ao final de cada fase de seleção. Uma
visão geral da estratégia de seleção pode ser obtida na Figura 3.2. Para isso, na primeira fase

3.3. CICLO DA PESQUISA

40

serão testados 5% de todos os estudos recuperados por fonte de busca automática e manual,
e caso encontrado alguma divergência no critério aplicado, o estudo deverá ser considerado
potencialmente relevante e por consequência incluído a segunda fase. A medida que desentendimentos forem identificados, mais 2% destes estudos serão avaliados. Para determinar
quais estudos serão revisitados uma função que retorna números aleatórios será utilizada. Na
segunda fase o percentual da amostra dos estudos a testar será 20%, selecionados utilizando
os mesmo critérios de aleatoriedade definido anteriormente. Em caso de discordância, outros
10% serão revisitados e o estudo em questão deverá ser reavaliado (reteste).
O método de teste e reteste foi aplicado a todos os estudos retornados durante o
projeto piloto desta pesquisa, a medida que o índices de discordância foram analisados. O que
fez definir uma característica incremental a nível de percentual para cada fase de seleção dos
estudos. Devido a importância atribuída ao filtro estabelecido na segunda fase do processo,
o percentual definido (20%) para a atividade de teste nesta fase, foi calculado levando em
consideração uma boa margem de segurança em relação ao percentual de discordância
medido no projeto piloto, que foi de aproximadamente 10%, portanto, atribuiu-se o dobro
deste valor para esta fase. O que corrobora com a medida de estudos comparados obtida no
mapeamento realizado por BORG; RUNESON; ARDO (2014), que trata de estudos primários na
recuperação de rastreamento baseados em IR.

Figura 3.2: Processo de Seleção dos Estudos Primários

3.3. CICLO DA PESQUISA
3.3.2.1.4

Avaliação de Qualidade

41
Cada estudo persistido após análise dos critérios de

inclusão e exclusão foi avaliado por sua qualidade, fornecendo critérios ainda mais detalhados
com objetivo de assegurar que os estudos filtrados apresentam uma contribuição valorosa para
o mapeamento e investigar se as diferenças de qualidade estão associadas com diferentes
resultados do estudo primário. Uma adaptação dos critérios de BRERETON; KYRIACOU;
PEARL (2011) foi considerada adequada para uso durante este MS, uma vez que está previsto
incluir exemplos de vários tipos de estudos. A avaliação de qualidade foi realizada através de
perguntas a serem respondidas com três valores possíveis: 

Sim (S): Se a questão é totalmente atendida, esta resposta conta o valor 1.0; 

Parcialmente (P): Se a pergunta é parcialmente respondida, esta resposta conta o
valor de 0,5; 

Não (N): Se a pergunta não foi respondida ou não satisfatoriamente respondida,
esta resposta conta o valor 0,0.

A Tabela 3.5 apresenta as perguntas definidas para avaliação de qualidade. O primeiro
destes critérios foi utilizado para excluir publicações não empíricas, tendo sido transformado
em critério de exclusão na fase de seleção dos estudos. Como tal, este critério representa o
limiar mínimo de qualidade que será observado durante a avaliação, apenas aceitando valor
igual a 1,0. A literatura que não satisfaz este critério será excluída do MS. Os outros critérios
restantes visam determinar o rigor e credibilidade dos métodos de pesquisa utilizados em um
estudo particular, bem como a relevância de cada papel para o MS que está sendo realizado.
Os estudos primários foram classificados em quatro grupos diferentes: Muito Bom (entre 9,0 e
10,0), Bom (entre 7,5 e 8,5), Regular (de 5,5 a 7,0) e Pobre (< 5,5). O guia com o detalhamento
de cada pergunta e o modelo da planilha utilizada para registro de cada avaliação pode ser
encontrado no Apêndice B.

3.3. CICLO DA PESQUISA

42
Tabela 3.5: Avaliação de Qualidade

Perguntas da Avaliação de Qualidade
É um trabalho de pesquisa?
Os objetivos da pesquisa foram claramente relatados?
Houve uma descrição adequada do contexto em qual a pesquisa foi realizada?
Havia uma descrição adequada da amostra utilizada e os métodos para identificar e recrutar a
amostra?
Havia um grupo de controle com o qual comparar os tratamentos?
Os dados recolhidos foram descritos e abordados em relação à questão de pesquisa?
Houve uma descrição adequada dos métodos utilizados para analisar os dados?
O estudo proporcionou resultados claramente definidos e conclusões fundamentadas?
As ameaças à validade do estudo foram abordadas de forma sistemática?
O estudo forneceu valor para a pesquisa ou a prática?

3.3.2.1.5

Estratégia de Extração

O objetivo desta etapa é criar formas de extração dos

dados para registrar com precisão as informações obtidas a partir dos estudos primários
selecionados. Para o processo foi planejado uma extração em duas partes: extração dos
metadados e extração de toda informação relevante para responder às questões de pesquisa.
Na primeira parte extrai-se título, autores, país de origem, ano de publicação, instituição de
origem e engenho de busca que retornou o estudo. Já a segunda parte, deve ser extraída da
leitura integral dos estudos, no intuito de extrair de cada um deles informações que sirvam
de evidência para responder as questões de pesquisa investigadas neste mapeamento. Para
tanto, dois formulários foram desenvolvidos para servir de instrumentos de coleta para ambas
as partes, e estão disponíveis no Apêndice B desta dissertação. Para esta etapa mais uma
vez foi definida uma atividade de teste e reteste para verificação da consistência de extração
de dados, agora, sobre todos os estudos primários selecionados. Com isso, reduzindo viés
interno da pesquisa.
3.3.2.2

Revisão do Protocolo
Conforme orientação dos guias utilizados, o protocolo foi desenvolvido e apreciado por

especialistas em engenharia de software experimental e engenharia de software baseada em
evidências. Após a realização dos sucessivos ajustes propostos, a versão final do protocolo foi
então estabelecida para permitir assim o início da etapa de execução da pesquisa.

3.3.3

Etapa de Execução da Pesquisa
A condução da pesquisa deve seguir rigorosamente o protocolo que foi elaborado.

Os resultados das atividades de execução do mapeamento sistemático serão apresentos no

3.4. CONSIDERAÇÕES FINAIS DO CAPÍTULO

43

Capítulo 4.

3.3.4

Etapa de Divulgação dos Resultados
A fase final de um mapeamento sistemático envolve escrever os resultados da pesquisa

e a divulgação para os potenciais interessados. As atividades relacionadas a esta etapa
inclui: (i) Escrita da Dissertação e (ii) Submissão Jornal. Os resultados e demais detalhes
relacionados à execução e planejamento da pesquisa estão sendo divulgados por meio
desta dissertação. A execução da escrita da dissertação foi realizada de forma sequencial,
sendo redigida após a conclusão de todas as etapas da pesquisa. Ao dissertar tentou-se
acrescentar a maior quantidade de informações possíveis em relação ao método da pesquisa,
de forma a propiciar uma melhor visualização do planejamento e da execução do método,
transparecer a credibilidade da pesquisa e facilitar possíveis replicações. A segunda atividade,
submissão jornal, visa apresentar à comunidade os resultados desta pesquisa de maneira
mais ampla. Após apresentação desta dissertação, buscam-se incorporar as sugestões e
melhorias colocadas, para submissão aos periódicos da área de engenharia de software.

3.4

Considerações Finais do Capítulo
Neste capítulo foi descrita a metodologia utilizada nesta pesquisa, como foi estruturada,

conduzida e as razões de uso dos procedimentos e métodos. Além de, uma breve descrição do protocolo usado para guiar a execução do mapeamento sistemático proposto pelo
estudo. Como consequência, espera-se atingir o rigor necessário para obter validade científica,
essencial para a confiabilidade dos resultados deste estudo.

44

4
Resultados
Este capítulo tem como objetivo expor informações sobre a etapa de execução do
mapeamento sistemático, conforme definido no capítulo anterior e apresentar os resultados
encontrados na análise das evidências. Com este intuito, na seção Execução do Mapeamento
Sistemático serão apresentados os detalhes da execução do mapeamento compreendendo as
atividades de busca, seleção, avaliação de qualidade, extração dos dados e sintetização dos
resultados.
Subsequentemente, a análise e discussão dos resultados obtidos constituem as principais contribuições desta pesquisa e serão apresentados em três seções distintas: Análise
Geral, Análise das Evidências e Discussão dos Resultados. Os dados quantitativos do processo de mapeamento sistemático e características gerais dos estudos analisados serão
apontados na primeira seção. A segunda seção apresenta a análise das evidências identificadas respondendo a cada uma das perguntas de pesquisa. E por fim a última seção se dedica
a discutir os principais resultados obtidos.

4.1

Execução do Mapeamento Sistemático
A finalidade desta seção é apresentar os detalhes da etapa de execução do mapea-

mento sistemático que inicia com a seleção dos estudos e resulta na sintetização da informação.
Assim como esclarecer os motivos para a inclusão e execução de um projeto piloto sobre
escopo reduzido executado preliminarmente a pesquisa geral.

4.1.1

Projeto Piloto
Com intuito de experimentar o protocolo definido e minimizar o viés em relação a

validade interna da pesquisa, foi planejado e executado um Projeto Piloto do protocolo estabelecido, devido ao fato de ter sido executado por um único pesquisador inexperiente em
mapeamento sistemático. A atividade foi guiada pelo planejamento realizado na Seção 3.3.2 e
incluiu todas as etapas apresentadas sobre um escopo reduzido das fontes de busca definidas
para este mapeamento.

4.1. EXECUÇÃO DO MAPEAMENTO SISTEMÁTICO

45

Foi selecionado como fonte de busca dos estudos primários o portal de busca Scopus
para busca automática e do International Workshop on Traceability in Emerging Forms of
Software Engineering (TEFSE) para busca manual. O período utilizado para as atividades
comprendeu os meses de Abril a Junho de 2015.
Na ocasião, a string de pesquisa foi aplicada a busca automática que retornou 544
estudos. Buscas manuais também foram realizadas, limitado aos trabalhos da TEFSE 2005,
TEFSE 2009, TEFSE 2011 e TEFSE 2013, onde foram encontrados 59 trabalhos disponíveis na
web. A quantidade de estudos primários envolvidos foi de 603 no total. Este número foi reduzido
na primeira sessão de triagem, que consistiu em avaliar o título, resumo e palavras-chave,
deixando apenas 140 estudos primários potencialmente relevantes. Depois da segunda fase,
que consistiu na leitura e análise de todo o estudo, foi definido o conjunto final de documentos.
O conjunto final resumiu em 7 estudos primários.
É importante ressaltar que durante esta atividade foi preciso um certo volume de
trabalho manual e repetitivo na montagem e organização das informações que são apreciadas
na atividade de seleção dos estudos primários. Neste quesito, foi estabelecido o uso da
ferramenta JabRef1 , essencial para diminuir a propensão a erros e acelerar o andamento da
pesquisa.
Após a extração, análise e síntese dos dados, foi possível realizar pequenos ajustes nos
critérios de inclusão e exclusão, com objetivo de simplificar o entendimento e a aplicação dos
mesmos. Em virtude destas atividades, também foi possível alinhar as perguntas de pesquisa
de acordo com o conteúdo encontrado nos estudos primários. Um exemplo deste ajuste foi
remover da questão de pesquisa 1 a direcionalidade da ligação entre os artefatos rastreados,
pelo fato de que os estudos analisados não apresentam explicitamente essa informação.

4.1.2

Busca dos Estudos
Nesta etapa de execução do mapeamento, com o protocolo ajustado após o projeto

piloto, as buscas foram realizadas sobre todas as fontes planejadas, conforme apresentadas
na Seção 3.3.2.1.2. O resultado da busca de todos os estudos foram coletados juntamente
com seus metadados, em seguida importados e devidamente tratados pela ferramenta JabRef.
Excepcionalmente, a realização da busca e a organização da atividade de seleção dos estudos
primários sobre a ACM Digital Library 2 foi realizada utilizando a ferramenta REviewER,3 em
virtude da facilidade em exportar e acompanhar os resultados da consulta realizada. Não foi
imposta nenhuma restrição de tempo em relação ao intervalo inferior do período de publicação
dos estudos. para efeitos desta dissertação foram admitidos trabalhos publicados até Outubro
de 2015.
No primeiro momento foram executadas as buscas automáticas e para todas elas a
1

http://www.jabref.org/
http://dl.acm.org/
3
http://sites.google.com/site/eseportal/tools/reviewer
2

4.1. EXECUÇÃO DO MAPEAMENTO SISTEMÁTICO

46

string de busca foi adaptada para atender à sintaxe dos mecanismos das fontes utilizadas. Toda
a lógica e semântica definidas foram inteiramente mantidas. Todos os metadados necessários
para a interpretação dos estudos foram adquiridos e importados no formato bibtex, apenas foi
encontrado dificuldade na obtenção deste dados na fonte ACM Digital Library, justificando a
utilização de ferramenta específica, conforme mencionado anteriormente.
Quanto a busca manual, os resultados foram limitados aos trabalhos da TEFSE 2005,
TEFSE 2009, TEFSE 2011 e TEFSE 2013, onde foram encontrados trabalhos disponíveis na
web. Outras edições da conferência como TEFSE 2002, TEFSE 2003 e TEFSE 2007 não
possuem páginas disponíveis na web e o motor de busca Google não retornou nenhuma
referência aos estudos apresentados nestas edições. Ao término das atividades desta etapa
foram identificados 2.488 estudos candidatos para análise. A contabilização dos resultados
por fonte de origem pode ser vista na Tabela 4.1. Mais detalhes em relação a análise dos
engenhos utilizados pode ser conferido nas seções posteriores deste capítulo.
Tabela 4.1: Quantitativo de estudos candidatos localizados por fonte de dados.
Fonte de Dados

Tipo

Quantidade de Estudos

ACM Digital Library

Automática

1009

Ei Compendex

Automática

430

Elsevier Scopus

Automática

574

IEEEXplorer Digital Library

Automática

353

Science Direct

Automática

63

Manual

59

TEFSE

4.1.3

Seleção dos Estudos Primários
No processo estabelecido para este mapeamento foi previsto a seleção dos estudos

em três estágios. Aos estudos primários retornados após a execução das buscas automáticas
foram adicionados os estudos primários provenientes da pesquisa realizada diretamente nos
sites dos eventos relacionados a fonte de busca manual. O primeiro estágio consistiu na leitura
dos títulos, abstracts e palavras-chave de cada artigo, e na eliminação daqueles julgados
como sendo claramente irrelevantes para os fins deste mapeamento. As análises desta rodada
foram feitas pelo autor do estudo através das ferramentas JabRef e Reviewer. Apenas os
indícios de duplicações sobre os resultados oriunda da mesma fonte foram verificados para
ratificar a veracidade da informação. Ou seja, a não verificação de duplicidade por outras fontes
neste estágio foi proposital, com objetivo de aceitar o maior número de artigo e reduzir o viés
pela avaliação do único pesquisador envolvido na pesquisa. Ao final desta rodada restaram
388 estudos.
Por meio destes dados foi possível perceber a proporção dos estudos relevantes
proveniente das fontes de busca. Através de tal análise chegou-se aos dados da Tabela 4.2,

4.1. EXECUÇÃO DO MAPEAMENTO SISTEMÁTICO

47

um dado que chamou bastante atenção foi à baixa quantidade de estudos incluídos da fonte
que retornou mais trabalhos, onde esperava-se que existisse grande possibilidade de encontrar
estudos expressivos para a pesquisa.
Tabela 4.2: Quantitativo de estudos incluídos no primeiro estágio de seleção dos
estudos
Recuperados

Relevantes

% inclusão

ACM Digital Library

1009

92

9,1

Ei Compendex

430

73

17,0

Elsevier Scopus

574

128

22,3

IEEEXplorer Digital Library

353

74

21,0

Science Direct

63

9

14,3

TEFSE

59

12

20,3

Origem dos Dados

Fez parte do protocolo definido, uma atividade da estratégia de seleção dos estudos,
que corresponde a garantia da confiabilidade das decisões aplicadas aos critérios de inclusão
e exclusão. Para isso, foi definido que seriam testados 5% de todos os estudos recuperados
por fonte de busca, e caso fosse encontrado divergência no critério aplicado, o estudo seria
considerado relevante, consequentemente, seria incluído ou permaneceria para a segunda
fase. Ou seja, na identificação de discordância de opinião, incluir ou permanecer com o estudo
para segunda fase seriam as únicas decisões possíveis a ser tomada. À medida que os
desentendimentos foram identificados, mais 2% destes estudos seriam reavaliados. No total,
127 estudos foram selecionados de forma aleatória e reavaliados pelo seu título, abstract
e palavras chave. Os números duplicados gerados pela função executada foram descartados. A função ALEATÓRIOENTRE(X;Y) do excel foi utilizada para determinar os estudos
e a sequência de análise pelos números gerados. Onde o parâmetro x recebeu sempre o
valor 1 (um) e o parâmetro y identificou o número de estudos retornados de cada fonte de
busca. A Tabela 4.3 apresenta a função executada, o quantitativo de estudos selecionados aleatoriamente para cada fonte de busca e o número de estudos incluídos pelo encontro de
divergência no critério de seleção aplicado. Tanto na feramenta JabRef quanto na Reviewer,
utilizadas para gestão dos estudos retornados na busca automática, os estudos importados via
arquivo bibtex recebem um código de identificação sequencial. Através deles os estudos foram
identificados unicamente por fonte de busca. No caso da busca manual, que os metadados
foram gerenciados em planilha excel, os estudos foram listados por ordem alfabética (a-z) e
atribuídos números de identificação sequencial.

4.1. EXECUÇÃO DO MAPEAMENTO SISTEMÁTICO

48

Tabela 4.3: Valores do teste dos estudos retornados

Fonte dos Dados

Função executada

Nº de Estudos

Nº de Estudos

Testados

Incluídos

ACM Digital Library

ALEATÓRIOENTRE(1;1009)

51

1

Ei Compendex

ALEATÓRIOENTRE(1;430)

22

0

Elsevier Scopus

ALEATÓRIOENTRE(1;574)

29

0

IEEEXplorer Digital Library

ALEATÓRIOENTRE(1;353)

18

0

Science Direct

ALEATÓRIOENTRE(1;63)

4

0

TEFSE

ALEATÓRIOENTRE(1;59)

3

0

Após reavaliação dos estudos retornados, apenas um artigo da fonte de busca automática ACM foi considerado duvidoso, portanto foi habilitado a próxima etapa. Consequentemente,
novos artigos da mesma fonte ACM Digital Library foram testados, agora correspondendo a
2% dos estudos. Outros 20 novos estudos tiveram de ser revisados, onde foram selecionados
utilizando os mesmos critérios descritos anteriormente, totalizando 147 estudos analisados na
primeira fase, como ilustra a Figura 4.1. No entanto, nenhum mais foi considerado relevante. Ao
analisar o principal motivo ao qual o estudo foi excluído no primeiro filtro, entende-se que houve
dificuldade em atestar se o experimento avaliava uma abordagem de rastreabilidade. Entretanto, acredita-se que a discordância do ponto foi causada pelo falta de clareza e objetividade
apresentada no abstract do estudo. Com isso, o segundo estágio da estratégia de seleção dos
estudos contou com o incremento de um estudo aos classificados potencialmente relevantes,
contabilizando 93 a fonte ACM e 389 ao total.

Figura 4.1: Primeira Etapa de Seleção

Para a execução do segundo estágio do processo foi necessário adquirir a íntegra
de cada um dos artigos, sendo recuperados nas próprias fontes de busca. Os artigos não
recuperados, foram por este motivo, excluídos do mapeamento, em conformidade com o critério

4.1. EXECUÇÃO DO MAPEAMENTO SISTEMÁTICO

49

de exclusão CE01. A Tabela 4.4 exibe o quantitativo de estudos excluídos por não estarem
disponíveis e os duplicados na mesma fonte, em concordância com o critério CE02.
Tabela 4.4: Quantitativo de estudos excluídos por duplicidade e indisponibilidade

Origem dos Dados

Relevantes

Duplicado

Indisponível

% exclusão

ACM Digital Library

93

0

4

4,3

Ei Compendex

73

1

7

11,0

Elsevier Scopus

128

1

108

85,2

IEEEXplorer Digital Library

74

0

0

0

Science Direct

9

0

0

0

TEFSE

12

0

0

0

De acordo com os dados apresentados na Tabela 4.4, nota-se que um grande número
de estudos indisponíveis na fonte Scopus, até o momento nenhum motivo concreto para o
inconveniente foi obtido. No entanto, um email foi enviado a Elsevier em busca de respostas.
O mesmo inconveniente foi observado no projeto piloto executado.
Entre os artigos recuperados, totalizando 268 para a segunda fase, todos tiveram a
introdução, a conclusão e, quando necessário, outras seções dos artigos analisadas, em busca
de enquadrá-los no critério de inclusão ou em algum dos critérios de exclusão descritos na
Seção 3.3.2.1.4. Nesta fase todos os estudos relevantes provenientes do primeiro filtro foram
analisados, sendo registrados os critérios aplicados. Ao final desta etapa foram selecionados
39 estudos.
Como programado, ao fim de cada fase uma amostra dos estudos deve ser testada. Do
total de 268 artigos, 54 deles foram visitados, o que corresponde ao percentual (20%) programado, dentre eles 6 incluídos a pesquisa e 48 excluídos por algum dos critérios estabelecidos.
Após o primeiro estágio dos testes sobre os estudos relevantes, uma discrepância entre os
resultados foi encontrada em 2 (dois) estudos que anteriormente teriam sido selecionados
para pesquisa, e após teste foram julgados excluídos. Nesta situação, a atividade planejada
é o reteste dos estudos em questão, os mesmos foram retestados e confirmadas as exclusões pelo critério CE06, que trata do principal objetivo do estudo não estar alinhado a criação,
recuperação ou manutenção da rastreabilidade entre artefatos. Um resumo da segunda etapa
é apresentado na Figura 4.2.
No protocolo definido foi planejado que em caso de divergência outros 10% devem ser
testados. Novamente através de uma função aleatória outros 27 estudos foram selecionados
e revisitados, na ocasião, cinco números repetidos foram desconsiderados, a composição
de artigos do novo estágio de teste são: 4 incluídos à pesquisa e 23 julgado excluídos na
primeira avaliação desta segunda fase. Como resultado do reteste nenhuma outra disparidade
foi encontrada, encerrando assim as fases e atividades planejadas para estratégia de seleção

4.1. EXECUÇÃO DO MAPEAMENTO SISTEMÁTICO

50

dos estudos.

Figura 4.2: Segunda Etapa de Seleção

Ao analisar as discordâncias apresentadas em relação aos dois estudos, foi observado
que o principal motivo do conflito foi atestar se os estudos reportavam um experimento sobre
a rastreabilidade entre artefatos. Ambos, apenas avaliavam os impactos da rastreabilidade,
entretanto, o uso indiscriminado da terminologia nos estudos empíricos foi considerada a causa
das discordâncias.
Ao final desta etapa foram selecionados 37 estudos para extração e síntese dos dados.
A listagem dos estudos elegidos, juntamente com seu respectivo código, título, ano, origem
dos dados e autores é apresentado no Apêndice A desta dissertação.

4.1.4

Avaliação de Qualidade
Após a seleção dos estudos primários relevantes para a pesquisa, iniciou-se a avaliação

de qualidade dos mesmos. Conforme disposto na Seção 3.3.2.1.4, sobre cada estudo procurouse responder dez perguntas que visam determinar o rigor a credibilidade dos métodos utilizados
e resultados obtidos de cada estudo. Através do formulário criado que orientou a avaliação,
os valores obtidos como resposta a cada pergunta foram capturados e registrados. Com o
somatório dos valores estabelecidos para cada pergunta foi possível determinar a classificação
de cada estudo. Na Figura 4.3 é possível verificar o quantitativo de estudos de acordo com
a classificação da qualidade dos estudos selecionados. Fica nítido que a maior parte dos
estudos apresenta um nível de qualidade considerado bom (35%) e muito bom (38%). No
Apêndice C podem ser encontrados os valores atribuídos a cada pergunta da avaliação de
qualidade dos 37 estudos selecionados.

4.1. EXECUÇÃO DO MAPEAMENTO SISTEMÁTICO

51

Figura 4.3: Participação nos níveis de qualidade do quantitativo de estudos candidatos

4.1.5

Extração dos Dados
A atividade de extração dos metadados ocorreu sem maiores intercorrências e foi reali-

zada utilizando-se o formulário criado em planilha excel. Já para a extração das informações
necessárias a responder as questões de pesquisa, apresentou algum nível de dificuldade.
Realizar uma nova extração foi essencial para verificação da consistência de extração de
dados, conforme planejado e justificado na Seção 3.3.2.1.5. Os formulários norteadores desta
atividade podem ser visto em detalhes no apêndice B. A dificuldade apresentada deve-se a
inconsistência na utilização da terminologia e nos conceitos aplicados a rastreabilidade, seja
ela entre pesquisadores ou profissionais. Em face esta dificuldade, recorreu-se ao Glossary
of Traceability Terms4 com intuito de interpretar e apresentar uma terminologia unificada na
pesquisa.

4.1.6

Sintetização dos Dados
Em particular, os dados coletados durante a extração podem ser distinguidos entre

metadados das publicações e dados sobre rastreabilidade entre artefatos heterogêneos de
software. Os metadados foram utilizados principalmente para realizar uma investigação
estatística dos estudos selecionados, enquanto que os dados de relato dos experimentos
foram analisados com o objetivo de responder às questões de pesquisa apresentadas na
Seção 3.3.2.1.1. Entretanto, por serem de natureza qualitativa, estes dados foram analisados
criteriosamente com o objetivo de encontrar conceitos-chave que permitissem a categorização
dos estudos e, com base nas categorias encontradas, possibilitassem o agrupamento de
estudos semelhantes ou relacionados de modo a permitir uma interpretação conjunta dos
dados qualitativos.
4

http://www.coest.org/index.php/traceability/glossary

4.2. ANÁLISE GERAL

52

Procurou-se, sobretudo, obter dos estudos primários selecionados uma compreensão
adequada acerca da aplicação da rastreabilidade nas diversas dimensões de projeto, dos seus
objetivos e limitações. Ao final, os resultados obtidos foram apresentados com o auxílio de
gráficos e tabelas.

4.2

Análise Geral
O objetivo desta seção é apresentar e analisar os resultados obtidos a partir da execu-

ção do Mapeamento Sistemático conforme a metodologia descrita no Capítulo 3. Inicialmente
serão apresentados os dados relacionados à busca, seleção e extração dos dados. Em seguida
serão expostos os dados relacionados aos estudos selecionados, seus metadados, grupos de
pesquisa, país e outras características gerais.
Os primeiros passos para a execução deste mapeamento foram dados no início de Abril
de 2015, com o planejamento e elaboração do protocolo de pesquisa apresentado no Apêndice
B deste trabalho. Após a execução das buscas no projeto piloto para experimentação do
protocolo apresentada na Seção 4.1.1, a busca final nas fontes automáticas e manuais ocorreu
entre a primeira e a última semana de outubro de 2015. Vale ressaltar que o processo de
busca sobre a fonte Scopus foi retomado posteriormente, resultando que os estudos primários
recuperados na busca após o projeto piloto obteve um acréscimo de 30 estudos.
Através do gráfico na Figura 4.4 é possível visualizar a participação das estratégias de
busca no quantitativo de estudos candidatos identificados. Fica nítido que a maior participação
na identificação dos estudos foi da estratégia automática (98%).

Figura 4.4: Participação das estratégias de busca no quantitativo de estudos
candidatos identificados

Dos 2488 estudos retornados em todas as buscas (sem desprezar os estudos repetidos
provenientes de fontes diversas), 2429 são provenientes da execução da string de busca em
cada uma das fontes automatizadas, enquanto apenas 59 são provenientes das buscas nas

4.2. ANÁLISE GERAL

53

fontes manuais. Este resultado discrepante é compreensível, uma vez que se adotou neste
mapeamento a estratégia de utilizar a busca manual apenas como complemento das fontes
automáticas, além de estar limitada a apenas uma fonte.
A Figura 4.5 analisa a distribuição do total de estudos primários retornados quanto às
fontes de busca automatizadas e manuais apresentadas na Seção 3.3.2.1.2, evidenciando a
participação de cada uma delas.

Figura 4.5: Participação das fontes de busca

Dos 2488 estudos resultantes da busca, é possível perceber que o engenho de busca
ACM se sobressai das demais bibliotecas digitais em relação à quantidade de estudos retornados. No entanto, quando analisado a eficácia de cada fonte após aplicação dos critérios de
seleção, tanto as bibliotecas digitais ACM (1,88%) e IEEEXplorer (2,83%), quanto os motores
de busca Scopus (0,69%), Science Direct (1,58%) e Ei Compendex (2,55%), foram superada
pela busca manual (3,38%). Os valores do cálculo da eficácia são apresentados na Tabela
4.5. Para a análise da distribuição dos 37 estudos relevantes incluídos após a execução do
processo de seleção descrito na Seção 3.3.2.1.3, com o intuito de avaliarmos a relevância
real de cada fonte de busca em particular para este mapeamento sistemático, levou-se em
consideração o fato de que um mesmo estudo primário pode ter sido recuperado em mais de
uma fonte.
Tabela 4.5: Eficácia das buscas realizadas em cada uma das fontes

4.2. ANÁLISE GERAL

54
Estudos

Estudos

retornados na

relevantes

busca (a)

selecionados (b)

ACM Digital Library

1009

19

1,88%

Ei Compendex

430

11

2,55%

Elsevier Scopus

574

4

0,69%

IEEEXplorer Digital Library

353

10

2,83%

Science Direct

63

1

1,58%

TEFSE

59

2

3,38%

Fonte

Eficácia da busca
(b/a)

É possível perceber que há índices de eficácia bem dispersos entre as fontes automatizadas, enquanto na busca manual que apresentou a menor quantidade de estudos retornados
superou a eficácia da busca. Ademais, não seria justo comparar em nosso trabalho os índices
de eficácia entre a busca automática e a busca manual, uma vez que as formas de recuperação
dos estudos em cada uma delas são diferentes: na primeira, é executada uma string que
busca palavras-chave presentes no texto, o que tem o potencial de trazer muitos estudos não
relevantes para a pesquisa; já na segunda, a busca é feita através de leitura direta na fonte
pesquisa, sendo um evento específico da área abordada, o que garante uma precisão maior
na detecção de estudos relevantes.
Tabela 4.6: Estudos duplicados entre as fontes de busca

ACM
ACM

Compendex

Scopus


2

Scopus

2

2

Science

TEFSE

3

1

TEFSE
1

3
1

1

Direct

Science Direct

2

Compendex

IEEEXplorer

IEEEXplorer

1

1

A partir da quantidade de estudos selecionados, calculou-se a relevância de cada fonte
sobre o montante total de estudos incluídos à pesquisa. Nesta visão, ACM Digital Library (51%),
Ei Compendex (30%) e IEEEXplorer Digital Library (27%), apresentaram a melhor cobertura
dos estudos sobre o tema. Tornando nesta pesquisa as bibliotecas digitais mais importantes
que os motores de busca. As demais fontes, Scopus retornou 11% dos estudos, TEFSE
retornou aproximadamente 6% e Science Direct 2.7%. Acredita-se que o grande número de
estudos indisponíveis tenha prejudicada a participação do Scopus na pesquisa.
Em uma análise mais aprofundada da eficácia das fontes de busca sobre os estudos

4.2. ANÁLISE GERAL

55

selecionados para esta pesquisa em virtude das duplicidades encontrados, é possível perceber que mesmo a busca manual tendo sido considerada de maior eficácia, seus estudos
incluídos (2) também foram retornados por outras fontes de busca. O mesmo aconteceu com
o único estudo incluído oriundo da fonte Science Direct. Uma visão sobre a duplicação dos
estudos selecionados para o mapeamento é representado na matriz encontrada na Tabela 4.6.
Já na Figura 4.6 pode ser conferido um resumo das análises realizadas na primeira e segunda
etapa do processo de seleção de estudos.

Figura 4.6: Resumo da busca e seleção de estudos

A distribuição temporal dos estudos relevantes selecionados em um mapeamento
sistemático contribui para a análise da evolução do interesse no tema pesquisado ao longo
do tempo. A fim de não limitar os seus resultados a um determinado período de tempo, no
presente trabalho optou-se por não adotar quaisquer restrições temporais, dada a cobertura
exaustiva desta pesquisa e a ausência de registros de outros estudos secundários anteriores
na área. O gráfico na Figura 4.7 ilustra a distribuição dos estudos primários selecionados ao
longo dos anos.

4.2. ANÁLISE GERAL

56

Figura 4.7: Distribuição temporal dos estudos selecionados

Deste modo, é possível observar que o primeiro estudo selecionado a considerar
rastreabilidade entre artefatos heterogêneos é do ano de 2003. É possível perceber o interesse
ainda incipiente nesta área de pesquisa, com leves variações entre 2003 a 2012 e ligeira
alta no ano de 2013, podendo estar relacionado ao trabalho da Coest (Center of Excellence
for Software Traceability ) que em 2011 publicou um relatório técnico para demonstração dos
problemas e principais desafios da rastreabilidade, base para as contribuições de pesquisas e
um meio para acompanhar o progresso da área (GOTEL et al., 2012). Mesmo assim, estudos
sobre o tema estão sendo publicados todos os anos desde 2003. Ademais, é necessário frisar
que o ano de 2015 deve ser observado com cautela quanto ao número de publicações, afinal,
as buscas manuais e automáticas deste mapeamento foram finalizadas no mês de outubro
deste mesmo ano, conforme exposto anteriormente. Sendo assim, é possível que entre os
meses de outubro a dezembro de 2015 outros estudos tenham sido publicados na área sem
que, pelas razões expostas, tenham sido mapeados nesta pesquisa.
Este mapeamento sistemático identificou o envolvimento de 126 pesquisadores diferentes dentre os 37 estudos selecionados. Entre os 126 pesquisadores, foi possível identificar 7
que figuram entre os principais colaboradores na pesquisa sobre rastreabilidade entre artefatos
heterogêneos, sendo 3 deles com 4 estudos publicados e outros 4 pesquisadores com 3
estudos publicados cada. O gráfico na Figura 4.8 apresenta os nomes e a quantidade de
publicações destes principais colaboradores. Ademais, outros 11 pesquisadores contribuíram
com 2 estudos cada, e os 108 restantes contribuíram, cada um, com um único estudo na área.
No Apêndice A é possível encontrar a lista completa dos estudos selecionados juntamente
com o nome dos autores envolvidos.

4.2. ANÁLISE GERAL

57

Figura 4.8: Principais colaboradores e a quantidade de publicações de cada um

Ao todo, este mapeamento detectou 37 instituições acadêmicas diferentes envolvidas
na pesquisa. Estas são as instituições às quais estão filiados 116 autores dos estudos
selecionados. Os resultados demonstram uma significativa participação da academia neste
ramo de pesquisa, uma vez que estas evidenciam 90% entre as instituições envolvidas.
Outras 4 instituições são departamentos de pesquisa pertencentes a empresas privadas,
aos quais estão associados 9 autores. Apenas 1 autor foi declarado autônomo, assim não
estando relacionado a nenhuma instituição privada ou acadêmica. A Figura 4.9 mostra a
representatividade de cada um destes tipos de instituição para a área pesquisada.

Figura 4.9: Representatividade por tipo de instituição

Poderíamos destacar três entre as instituições mais ativas no campo da rastreabilidade
de artefatos heterogêneos: a Universidade de Salerno na Itália contribuiu com 4 estudos
dentre os selecionados; a Universidade de Tecnologia de Delft na Holanda e a Universidade da

4.3. ANÁLISES DAS EVIDÊNCIAS

58

cidade de London no Reino Unido, ambas com 3 estudos. Vale ressaltar que nestas instituições
estão filiados alguns dos principais pesquisadores mencionados anteriormente, o que sugere
a presença de grupos de pesquisa emergentes estudando o tópico em questão.
As instituições afiliadas aos autores dos estudos desta pesquisa estão distribuídas
entre 19 países. O gráfico na Figura 4.10 apresenta a participação de cada país na publicação
dos estudos primários selecionados, levando em consideração que um mesmo estudo pode ter
sido publicado por instituições pertencentes a diferentes países, resultando numa contagem
geral de estudos maior que a quantidade de estudos selecionados. Destaque para os Estados
Unidos com 10 publicações, seguidos de Itália e Alemanha, com 4 publicações cada, e Holanda
com 3. O Brasil figura entre os países com menor número de publicações, com apenas 2
estudos publicados, envolvendo a contribuição de 6 pesquisadores das Universidades Federais
de Campina Grande (3), Pernambuco (2) e Bahia (1).

Figura 4.10: Participação dos países das instituições na publicação dos estudos
selecionados

4.3

Análises das Evidências
Todas as evidências aqui apresentadas foram extraídas dos 37 estudos primários

selecionados nesta pesquisa, que são referenciados através de seus respectivos códigos
atribuídos após o processo de seleção dos estudos. Visto que, durante a primeira e segunda
etapa do processo de seleção, os estudos foram identificados pelo código sequencial atribuído
pelas ferramentas utilizadas, exceto no caso dos estudos da busca manual, onde a gestão foi
realizada através de uma planilha e os estudos receberam seus respectivos códigos após serem
listados em ordem alfabética pelo Título. Cada um dos 37 estudos selecionados receberam

4.3. ANÁLISES DAS EVIDÊNCIAS

59

o identificador EP[X], onde EP é a abreviação para Estudo Primário e [X] corresponde à
sequência numérica que identifica o estudo específico classificados por ordem (A-Z) dos
títulos. As informações referentes a cada um dos estudos primários incluídos no mapeamento
podem ser encontradas no Apêndice A. Assim, ao longo desta seção, os estudos serão citados
através destes identificadores. A seguir são apresentadas cinco sub-seções para sintetizar as
evidências de cada uma das perguntas de pesquisa.
Numa primeira análise de conteúdo dos estudos foi possível apontar algumas relações. Os estudos EP03, EP05, EP10 e EP23 estão atrelados a um Sistema de Gestão
de Artefatos Avançado, chamado ADAMS. Outros dois estudos EP01 e EP14 são idênticos,
apenas aplicados a um conjunto diferente de dados. Portanto, qualquer relação não é mera
coincidência.

4.3.1

Q1 - Quais abordagens de rastreamento têm sido frequentemente
aplicada para suportar a heterogeneidade dos artefatos na engenharia de software?
Esta questão busca mapear quais abordagens utilizadas e as atividades suportadas

do processo de estabelecimento da rastreabilidade têm sido investigadas. As atividades
essenciais do processo de rastreabilidade são aquelas necessárias a trazer as ligações à
existência, manutenção ou uso, consideradas vitais para assegurada e permitir a sua utilização.
Desta forma, para responder a questão 1 foram observados três fatores: (i) a atividade
suportada, podendo ser de criação, manutenção ou uso; (ii) a natureza da atividade, que corresponde a forma de estabelecimento da ligação, classificadas como: manual, semiautomática
ou automática; e (iii) o momento da criação ou manutenção da relação estabelecida entre os
artefatos, podendo ser prospectiva ou retrospectiva, ou seja, implica a criação ou manutenção do rastreamento simultâneo ou posteriormente a criação ou manipulação dos artefatos
associados.
Muitos estudos referem-se em sua contextualização a uma abordagem que suporta mais
de uma atividade do processo de rastreabilidade, no entanto, apenas foram consideradas e
contabilizadas as informações extraidas das avaliações realizadas em cada estudo. Dentre
os estudos observados foram identificados 6 classes de atividades suportadas. A Figura 4.11
apresenta a distribuição dos estudos quanto as atividades suportadas.

4.3. ANÁLISES DAS EVIDÊNCIAS

60

Figura 4.11: Distribuição dos estudos por atividade suportada

É nítido a alta proporção (68%) de estudos que investigam apenas a criação das
relações entre os artefatos. Os estudos EP23 e EP34 se destacam por abordar não só a
criação, mais também a manutenção e o uso dos links criados, o que representa 5% do total
dos estudos. Foram classificados quanto a criação os estudos que tratam da atividade de
associar dois (ou mais) artefatos, fornecendo links entre eles, para fins de rastreamento. Já
quanto a manutenção, foram atribuídos aqueles estudos que retrataram atividades associados
à atualização de vestígios pré existentes, onde através das mudanças realizadas sobre os
artefatos rastreados à rastreabilidade evolui, criando novos traços onde for necessário para
manter a rastreabilidade relevante e atualizada. Como pode ser visto na Figura 4.11, a
manutenção foi a atividade menos investigada, contabilizando apenas 7 estudos. Com relação
ao uso, 8 estudos investigaram atividades associadas com a utilização dos vestígios para
apoiar diversas atividades da engenharia de software, tais como a verificação e validação,
análise de impacto e gestão de mudança.
Ao observar a natureza das atividades de criação e manutenção, ou seja, as formas responsáveis pelo estabelecimento da rastreabilidade, em geral as abordagens utilizam
alguma forma automatizada de auxílio. Tendo predominado o método automático em 59% nas
atividades de criação e 57% nas atividades de manutenção, isso, quando a rastreabilidade é
estabelecida através de técnicas, métodos e ferramentas. Onde atualmente apenas a decisão
para criar e manter ligações de rastreio entre os artefatos que é automatizada, sem intervenção
humana.

4.3. ANÁLISES DAS EVIDÊNCIAS

61

Figura 4.12: Distribuição dos estudos por natureza da atividade

O quantitativo de estudos de cada uma das formas pode ser visto no gráfico da Figura
4.12. Apenas no estudo EP07 foi utilizada a forma de criação manual dos links de rastreabilidade, pois o foco do mesmo está sobre manter automaticamente as ligações ao longo do
sucessivo alterações pegando carona em um sistema de controle de revisão.
Ao analisar individualmente cada estudo em busca do momento da realização das
ligações, que é determinada pelo instante em que o vínculo é estabelecido, apenas o estudo EP27 declarou explicitamente a utilização da rastreabilidade prospectiva, uma abordagem
particular que implica a criação de ligações de rastreamento simultâneo com a criação dos
artefatos que se associam. No entanto, durante a extração dos dados, um outro estudo
(EP15) chamou a atenção com uma proposta parecida, visto que os links podem ser estabelecidos durante a edição, através de comando do próprio usuário ou de forma automática no
momento da submissão ao sistema de controle de versão.

4.3.2

Q2 - Quais os artefatos utilizados para estabelecimento da rastreabilidade?
Para fazer o desenvolvimento de um software gerenciável, coleções distintas de in-

formações devem estar organizadas em um conjunto de artefatos. Inúmeras atividades da
engenharia de software criam e utilizam cada conjunto destes artefatos, que podem estar
relacionados uns aos outros. Assim, uma boa prática é identificar estas relações e mantê-las
sobre gestão. Artefatos de rastreamento são unidades rastreáveis de dados do processo de
desenvolvimento de software. O intuito desta pergunta é identificar os artefatos utilizados nos
diversos relacionamentos de rastreabilidade estabelecidos nos estudos investigados.

4.3. ANÁLISES DAS EVIDÊNCIAS

62

Entre os estudos observados, várias definições, termos, descrições e níveis de detalhes
foram encontradas para representar os artefatos trabalhados. Isso gerou a necessidade de
agrupá-las, com intuito de unificar os conceitos. Uma visão de alto nível foi estabelecida
para agrupar um conjunto de artefatos envolvidos. Para tanto, adotou-se a organização de
disciplinas proposta pelo RUP5 , onde uma disciplina reúne todas as atividades a serem realizar
para produzir determinado conjunto de artefatos. Deste modo, os artefatos foram organizados
em virtude das seguintes categorias apresentadas na Figura 4.13. Não faz parte da pesquisa
sub classificar os estudos de acordo com o tipo de informação encontrada nos artefatos
referenciados pelos autores no estudo, pois na maioria dos casos essa informação não está
explicita.
Note que foram incluídas duas novas categorias (Texto em Linguagem Natural e
Qualquer Artefato) em adição as disciplinas utilizadas pelo RUP. O motivo está associado a
generalização do tratamento dado aos artefatos em alguns estudos.

Figura 4.13: Distribuição dos estudos por agrupamento de artefatos

Para tanto, as informações relativas aos artefatos apontados pelos pesquisadores
foram extraídas dos estudos primários, e depois analisados e comparados com o objetivo
de encontrar categorias que possibilitassem o agrupamento dos estudos semelhantes ou
relacionados, conforme metodologia RUP.
Durante a análise observou-se que nos estudos (EP01, EP07, EP11, EP14, EP15
, EP27) e (EP16) deram um tratamento indiscriminado a alguns artefatos, para tanto, determinaram a necessidade da inclusão das novas categorias Texto em Linguagem Natural e
Qualquer Artefato para atender aos estudos. Na Figura 4.13 é possível constatar a predominância da rastreabilidade dos artefatos relacionados a Requisitos (27 estudos), Implementação
(23 estudos), Análise e Design (15 estudos) e Teste (11 estudos). Na Tabela 4.7 a lista de
todos os artefatos considerados em cada agrupamento pode ser visualizada.
5

http://www.wthreex.com/rup/process/ovu_proc.htm

4.3. ANÁLISES DAS EVIDÊNCIAS

63

Através desta abordagem foi possível mapear artefatos em 9 categorias, observadas na
Tabela 4.7. Foi comum identificar mais de uma categoria associada a um mesmo estudo, o que
implica em uma contagem geral de estudos maior que a quantidade de estudos selecionados.
Lembrando que, todos os estudos selecionados aplicaram a rastreabilidade entre artefatos
distintos, mesmo estando representados em apenas uma categoria, como é o caso dos estudos
EP26 (rastreabilidade entre Requisitos legais e de regulamentação -> Caso de Uso) e EP28
(rastreabilidade entre Requisitos->Caso de Uso).
Tabela 4.7: Mapeamento dos estudos por agrupamento de artefatos

Categoria

Estudos Primários
EP02, EP03, EP04, EP05, EP08, EP09, EP10,

Requisitos

EP12, EP13, EP17, EP18, EP20, EP21, EP22,
EP23, EP24, EP26, EP28, EP29, EP30, EP31,
EP32, EP33, EP34, EP35, EP36, EP37
EP03, EP05, EP08, EP10, EP18, EP19, EP23,

Análise e Design

EP24, EP25, EP27, EP29, EP31, EP33, EP36,
EP37
EP01, EP02, EP03, EP05, EP06, EP07, EP08,

Implementação

EP09, EP10, EP11, EP12, EP13, EP14, EP15,
EP16, EP19, EP20, EP21, EP22, EP23, EP25,
EP29, EP34

Teste
Implantação
Gerenciamento de
Configuração e Mudança

EP03, EP04, EP05, EP10, EP17, EP18, EP23,
EP25, EP30, EP32, EP35
EP08
EP06

Gerenciamento de Projeto

EP14 EP34

Texto em linguagem natural

EP01, EP07, EP11, EP14, EP15, EP27

Qualquer Artefato

EP16

Ao examinar individualmente cada estudo, foi possível observar que 26 (70%) deles
envolveram artefatos de duas categorias. A distribuição de estudos pela quantidade de
categorias de artefatos envolvidos é apresentada na Figura 4.14.

4.3. ANÁLISES DAS EVIDÊNCIAS

64

Figura 4.14: Distribuição dos estudos por quantidade de categorias dos artefatos
envolvidos

4.3.3

Q3 - Quais meios têm sido empregados para a criação das relações entre os artefatos?
Criação de links de rastreabilidade em um projeto pode parecer uma tarefa simples,

mas pode ser bastante difícil de realizar na prática. A dificuldade aumenta em projetos
onde pode haver uma grande diversidade de artefatos. Nestas circunstâncias, o esforço de
rastreabilidade pode ser esmagadora em termos de custo e esforço, e os links de rastreabilidade
resultantes são muitas vezes incompletos e imprecisos. Para enfrentar esses desafios, diversos
pesquisadores têm investigado o tema para tornar o processo de criação e manutenção da
rastreabilidade eficaz e preciso. Com essa questão buscou-se mapear os meios utilizados pelas
abordagens para criação e manutenção dos links de rastreabilidade. Nem todos os estudos
especificaram claramente os métodos ou técnicas utilizadas. Contudo, foi possível extrair as
informações apresentadas na Tabela 4.8.
A maioria das evidências quanto aos meios encontrados para estabelecimento da
rastreabilidade foram extraídas através de citações diretas dos estudos primários e, neste
caso, foi mantido o termo original empregado nos estudos, a fim de preservar com maior
confiabilidade o sentido original dos meios apresentados. É possível verificar a prevalência
(9 estudos) do uso de Latent Semantic Indexing (LSI) e Vector Space Model (VSM), ambos,
métodos de recuperação de informação que usam modelos algébricos.
Tabela 4.8: Meios encontrados para estabelecimento da rastreabilidade
Meio utilizado

Estudos encontrados

Qtd. Estudos

4.3. ANÁLISES DAS EVIDÊNCIAS

Meio utilizado
Latent Semantic Indexing
Vector Space Model

65

Estudos encontrados
EP03, EP04, EP05, EP10, EP12,
EP17, EP18, EP21, EP23
EP01, EP02, EP12, EP14, EP31,
EP32

Qtd.
Estudos
9
6

Rules

EP24, EP25, EP30, EP36, EP37

5

Ontology

EP08, EP26, EP31

3

Heuristics

EP16, EP31, EP35

3

Clustering

EP01, EP14, EP32

3

Text Mining

EP11, EP28

2

Key Phrases

EP01, EP14

2

Regular Expression

EP01, EP14

2

Levenshtein distance algorithm

EP29

1

Probabilistic ranking

EP35

1

Inference algorithm

EP34

1

Association Rule Mining

EP33

1

Latent Dirichlet Allocation

EP27

1

EP26

1

EP22

1

Intersection of set

EP20

1

Machine learning

EP19

1

EP15

1

Probabilistic network model

EP13

1

Formal Concept Analysis

EP12

1

Bayesian learning method

EP09

1

Detecção de Mudança em SCM

EP07

1

Cálculo de digrafo ponderado

EP06

1

Semantic-based textual
similarity analysis
Commonality and Variability
Analysis

Incremental latent semantic
indexing

A aplicação de LSI e VSM, ambas técnicas de recuperação da informação, baseam-se
no pressuposto de que os stakeholders referem-se aos mesmos aspectos do sistema usando
uma língua semelhante em diferentes artefatos de software, assim, é apropriado sugerir links
de rastreamento com base no conteúdo de Linguagem Natural.
LSI é uma técnica que tem sido utilizada por vários pesquisadores desde então, pois
reforça a técnica VSM com a redução das dimensões do espaço vector, encontrando semidimensões usando decomposição em valores singulares. Mesmo VSM tendo sido investigada
em um número menor de estudos, nos últimos anos tem se sobressaído sobre a técnica LSI,
conforme pode ser visto na Figura 4.15.

4.3. ANÁLISES DAS EVIDÊNCIAS

66

Figura 4.15: Distribuição dos estudos no tempo por técnica aplicada

4.3.4

Q4 - Quais as métricas aplicadas a rastreabilidade entre artefatos
heterogêneos?
O conjunto de relações recuperadas pelos métodos utilizados geralmente não coincide

com o conjunto de relações corretas. Acontece que o método de rastreabilidade deixa de
recuperar algumas das relações corretas, enquanto também recupera relações de rastreabilidade que não são relevantes. Esta questão procura extrair as principais medidas aplicadas ao
desempenho dos métodos utilizados nos estudos primários selecionados.
Ao todo foram identificadas 21 métricas diferentes adotadas entre os 37 estudos
primários selecionados. É importante frisar que vários estudos optaram pela adoção de mais
de uma métrica. Merecem destaque as métricas recall e precision que foram utilizadas
em conjunto por 30 (81%) dos estudos primários. O gráfico na Figura 4.16 apresenta as
métricas e o quantitativo de estudos aos quais foram encontradas. Recall é a relação entre o
número de ligações de rastreamento recuperados corretamente e o número total de ligações
de rastreamento corretamente existentes. Precision é a relação entre o número de ligações
de rastreamento corretamente recuperadas e o número total de ligações de rastreamento
extraídos (corretas ou não). O conjunto de links recuperados é obtido através da lista fornecida
pelo método utilizado, já o conjunto de ligações relevantes são geralmente fornecidas por
membros dos projetos onde foram desenvolvidos os artefatos em questão. Todas as demais
métricas extraídas são derivadas de recall e precision ou utilizam em sua essencial alguma
variável relacionada.

4.3. ANÁLISES DAS EVIDÊNCIAS

67

Figura 4.16: Lista de métricas e quantitativo de uso

4.3.5

Q5 - Quais os principais contextos, objetivos e desafios da aplicação de rastrabilidade entre artefatos heterogêneos de software?
Rastreabilidade de artefatos heterogêneos tem sido reconhecida como um fator im-

portante para apoiar diversas atividades no ciclo de vida do desenvolvimento de software.
Esta pergunta se destina a mapear o contexto dos projetos quer serviram como unidade de
análise nos estudos primários selecionados e identificar as limitações relatadas pelos pesquisadores. Para tanto, as informações relativas ao contexto e limitações apontados pelos
pesquisadores foram extraídas dos estudos primários, e depois foram analisadas e comparadas com o objetivo de encontrar categorias que possibilitassem o agrupamento dos estudos
semelhantes ou relacionados.
Deste modo, foram identificadas 3 categorias de contextos, 2 objetivos principais e
2 desafios dentre os 37 estudos selecionados. Estas informações serão apresentadas e
evidenciadas logo adiante.
4.3.5.1

Contextos
Suporte ao Gerenciamento de Informações
A rastreabilidade é usada para estabelecer e compreender as relações entre requisitos

e produtos de trabalho, tais como documentos de projeto, código fonte, e casos de teste. Este

4.3. ANÁLISES DAS EVIDÊNCIAS

68

contexto suporta as tarefas de análise de impacto, que ajudam os stakeholders a entender
onde e como as mudanças realizadas repercutem no demais artefatos. Este foi o contexto
apresentado na introdução de 31 (84%) estudos primários.
Linha de Produto de Software
A linha de produtos de software é um conjunto de sistemas de software intensivo
compartilhando um conjunto comum, gerido de recursos que satisfazem as necessidades
de um segmento de mercado específico. São desenvolvidas a partir de recursos do núcleo
e visam aumentar o grau de reutilização na engenharia de software para reduzir custos e
tempo de colocação no mercado e para aumentar a qualidade e confiabilidade do software.
Este contexto foi mapeado em 5 estudos (EP12, EP20, EP21, EP28 e EP37) que trataram da
variabilidade dos artefatos e características reutilizáveis.
Programação Orientada a Aspectos
Aspectos iniciais são interesses transversais tratados nas fases iniciais do ciclo de vida
do software, e a programação orientada a aspectos visa modularizar estes interesses com
aspectos de código, que são posteriormente, tecidos em tempo de compilação, tempo de carregamento e execução. O estudo EP09 apresenta EA-Tracer, uma ferramenta automatizada para
identificação de vínculos de rastreabilidade entre os aspectos iniciais dentro de documentos
de requisitos textuais e de aspectos de código dentro uma implementação orientada a objetos.
4.3.5.2

Objetivos
Extrair Relações com Alta Precisão e Recordação
Rastreabilidade eficaz raramente acontece por acaso ou por meio de esforços ad

hoc. No mínimo, isso requer a retenção dos artefatos a serem rastreados, juntamente com a
capacidade de estabelecer relações significativas entre estes artefatos e com procedimentos
para interrogar os traços resultantes de uma forma orientada para o objetivo. A pesquisa sobre
captura e recuperação de rastreamento automático e semiautomático fez amplo uso de uma
série de métricas comuns de recuperação de informação, tais como recall e precision das ligações de rastreio. Extrair os melhores resultados destas medidas foram os objetivos de 34 (92%)
dos estudos, seja eles, desenvolvendo uma nova solução, combinando ou aprimorando um
conjunto de técnicas.
Reconstruir Visões de Requisitos com Exibições de Cobertura e Status
Visões de requisitos como exibições de cobertura e status, são um importante trunfo
para monitorar e gerenciar projetos de desenvolvimento de software. Estas visões oferecem
uma perspectiva sobre o software no qual os requisitos assumem o papel de liderança,
indicando onde e como uma exigência é coberta por artefatos de design ou onde ele está
localizado na arquitetura do sistema. Este objetivo foi relatado nos estudos EP04, EP17
e EP18. Entretanto, em EP17 e EP04 os estudos apresentam uma investigação de como
visões de requisitos podem ser gerados automaticamente de modo a monitorar os requisitos
na prática industrial através da ferramenta ReqAnalyst, ambos publicados em 2006 e 2008,

4.3. ANÁLISES DAS EVIDÊNCIAS

69

respectivamente.
4.3.5.3

Desafios e Limitações
Dos 37 estudos primários selecionados 10 (19%) apontaram algum desafio ou limita-

ção da abordagem apresentada, que posteriormente foram analisados e enquandrados entre
os principais desafios da rastreabilidade apresentados pela Coest (Center of Excellence for
Software Traceability )6 . Foi possível identificar principalmente no relato destes 10 estudos a
correlação com dois dos oito desafios listados na visão da Coest. Assim os estudos a elas
relacionados podem ser observados na Tabela 4.9.
Tabela 4.9: Mapeamento dos desafios da aplicação de rastreabilidade entre artefatos
heterogêneos
Desafios

Qtd. Estudos

Estudos

Confiança

6

EP01, EP13, EP14, EP22, EP23, EP26

Escalável

4

EP26, EP27, EP28, EP29, EP35

Confiança
A confiança é o meio de sustentação pelo qual todas as partes interessadas possam
usar e depender da rastreabilidade fornecida. Assegurando assim, a análise e as decisões, e
eliminando a proveniência duvidosa de como ela é criada e mantida em face de inconsistências,
omissões e alterações. No entanto essa foi a limitação ou desafio relatado por 6 dos 10 estudos,
em virtude do descarte ou omissão na recuperação das ligações entre os artefatos, causados
pela imprecisão das técnicas. Abaixo são apresentados os trechos dos seis estudos primários
que relataram este desafio entre os seus resultados e/ou conclusões:
EP01: “[. . . ] In other words, our approach largely increases true links at high cut points
from 0.3 to 0.9, and significantly decreases fault links at all cut points. The main limitation of
our approach is that some true links are discarded after adding Clustering. [. . . ] It is a major
challenge for traceability recovery techniques to extract relationships between artifacts of a
system at high-levels of both precision and recall. Many recovery techniques based on IR
exist but none so far produces sufficiently consistent and high enough quality of results that
developers require”.
EP13: “The experimental results reported in this paper indicate the feasibility of using a
probabilistic approach to dynamically retrieve traceability links for non-functional requirements.
The imprecision problems introduced through use of this method are largely mitigated through
user inspection of retrieved links and through establishing a sufficiently low threshold that
minimizes the number of omission errors. Although users’ feedback is required to filter out
unwanted links, the effort is only a small fraction of that which would be required to perform the
trace manually”.
6

http://www.coest.org/index.php/research-directions/grand-traceability-challenges

4.3. ANÁLISES DAS EVIDÊNCIAS

70

EP14: “The main limitation of our approach is that some true links are discarded after
adding Clustering. This is because the group containing links related to a same class is totally
removed when no links in the group have a similarity value larger than the threshold s value,
this leads to no clusters for this group being created. True links in such groups are cut”.
EP22: “Our frame work is highly dependent on the quality of log messages. If engineers
do not record detailed information about modifications in log messages, our framework cannot
work well. For example, if a revision only contains “Fix” in the log message, our framework
cannot use such a revision to recover links [. . . ]”.
EP23: “The limitation of IR-based traceability recovery is the fact that these methods
cannot help in the identification of all correct links, without forcing the software engineer to
analyze and discard a high number of false positives. In addition, it is almost impossible to
automatically identify how many links the software engineer needs to analyze in the ranked list
to be sure that all correct links have been considered. This means that to be sure that also
the last correct link in the ranked list (the correct link with lowest similarity value) has been
considered, usually the software engineer has to analyze almost all the links in the ranked list.
Unfortunately, this limitation is not definitely mitigated by improving the IR-based traceability
method with other IR techniques, such as text pre-processing or relevance feedback analysis”.
EP26: “One limitation to our solution approach is due to the document structure where
the typical document writing standards like heading level, bullets etc. [. . . ] Our algorithm fails
to apply spatial feature in such cases and misclassifies the table as a non-system use case
table. False positives for system use case extraction are due to statements like declaration
statements written in the document”.
Com o objetivo de superar esta limitação, o estudo EP13 introduz a inspeção manual
dos links recuperados por um analista, através do estabelecimento de um limiar suficientemente
baixo para que minimize o número de erros de omissão.
Escalável
Em si, projetos contém uma grande variedade de artefatos em diferentes estruturas,
níveis de detalhes e atendem aos mais distintos stakeholders de um projeto. Em suma, rastreabilidade escalável é a possibilidade de variados tipos de artefatos, em níveis variáveis de
granularidade e quantidade poderem ser rastreados, que estendem-se do ciclo de vida as fronteiras organizacionais e de negócios. A seguir, os trechos extraídos dos estudos associados a
este desafio serão apresentados:
EP27: “There are limitations to our approach. First, we assume the existence of an
architecture, since we center our traceability links to the architecture. This is not an unrealistic
assumption, since we believe that every system has an underlying architecture, whether or not
it is explicitly documented. In the event that the architecture is not explicitly documented (or
incomplete), we can create virtual components to correspond to the source code. Secondly,
we perform our topic analysis on text-based artifacts. The non-text artifacts were ignored by
the topic model algorithm. In the future, we plan to use text metadata associated to non-text

4.4. DISCUSSÃO DOS RESULTADOS

71

artifacts in order to include them in the topic model”.
EP28: “It is important to highlight that we had to translate the original data to the English
language, because the stop-word removal and stemming algorithms implemented in TIRT tool
only considers the English language. It is a limitation to be solved in the future”.
EP29: “Treemap and hierarchical tree visualization techniques [15] which integrates
enclosure and node-link visualization representations to support the overall overview of traceability in the system and the detailed overview of each link while still being highly scalable and
interactive. There are some limitations in this approach such as the hierarchical structure of the
system is not well communicated in the treemap and not scalable well with nodes which have
large number of links”.
EP35: “One limitation of our approach is that it only applies to functional requirements
of software currently. Our approach can be complemented with existing approaches like IR to
detect non-functional requirements (robustness, security)”.

4.4

Discussão dos Resultados
Esta pesquisa consolida um conjunto de 37 estudos sobre a rastreabilidade entre

artefatos heterogêneos de software. Tema este relacionado ao dia a dia de diversas fábricas
de software que buscam desenvolver e manter seus produtos de forma otimizada e controlada.
Neste sentido, de modo a dar maior validade à pesquisa, este mapeamento entendeu como
desnecessária a adoção de restrições temporais e optou por formular questões de pesquisa
em um nível mais abrangente, a fim de levantar o conhecimento atual na área pesquisada
através da cobertura exaustiva dos estudos empíricos publicados.
A quantidade de estudos primários relevantes obtidos nesta pesquisa representa 1.49%
dos estudos retornados. Índice considerado baixo, face ao grande número de estudos não
científicos e transversais retornados pelas fontes de busca. Este fenômeno pode ser creditado
tanto à ausência de outros estudos secundários (RSL e MS) anteriores neste tópico de pesquisa
quanto ao fato de que, em decorrência disto, este mapeamento cobriu um período de quase
52 anos (de 1963 até abril de 2015) de pesquisa neste tópico, abrangendo os anos (a partir
de 2003) nos quais o interesse no tema definido registrou seu primeiro estudo. Daí em diante
marcou presença todos os anos, com ligeira crescente e significativa representação no ano
de 2013 em relação ao número de estudos publicados (como pode ser observado no gráfico
da Figura 4.7), sendo considerado recente o interesse da aplicação de rastreabilidade entre
artefatos heterogêneos.
Ademais, vale destacar que os estudos relacionados ao tema têm aparecido com maior
frequência nos Estados Unidos, país cujas instituições de pesquisa tiveram participação em 10
dos 37 estudos selecionados neste mapeamento, enquanto no Brasil este tópico de pesquisa
ainda tem sido pouco explorado, uma vez que este mapeamento registrou apenas dois estudos,
publicados nos a 2012 e 2015, com a participação de três instituições de pesquisa brasileira.

4.4. DISCUSSÃO DOS RESULTADOS

72

Em relação às fontes de busca utilizadas neste mapeamento, a busca manual tem
se mostrado de maior eficácia, no entanto, vale observar que todos os estudos selecionados
através das fontes manuais foram também retornados através das buscas automáticas. Este
fenômeno, verificado apenas após a realização das buscas, dá mostras de que os processos
de busca através de fontes automatizadas têm maior abrangência a ponto de alcançar uma
relevância cada vez maior em relação às buscas manuais para a realização de revisões e
mapeamentos sistemáticos, com destaque para as bibliotecas digitais ACM e IEEEXplorer que
retornaram ambas aproximadamente 79% (29) do total de estudos selecionados para pesquisa.
Dentre os motores de busca, destaque para Ei Compendex, que sozinho retornou 30% dos
estudos selecionados e Scopus que devido a um grande número de estudos indisponíveis,
acredito foi prejudicado.
A primeira das cinco questões específicas provenientes da subdivisão da questão mais
geral, relacionada ao panorama da aplicação de rastreabilidade entre artefatos heterogêneos,
oferece uma visão ampla sobre as abordagens que têm sido exploradas na engenharia de
software. As atividades suportadas assim como a quantidade de estudos, podem ser vistas
na Figura 4.11. Entre elas merece destaque as atividades de criação que recebeu a maior
atenção dos estudos, contabilizando 34 ao total, sendo 2 destes vinculados a manutenção, 5
relacionados ao uso e apenas 2 estudos envolvendo a criação, manutenção e uso. No que
diz respeito a natureza das atividades, podemos atribuir a predominância (24 estudos) das
atividades automáticas, ou seja, sem intervenção humana nas decisões de estabelecimento
das relações de rastreabilidade. Podemos inferir que o interesse nos métodos automáticos é
devido, sobretudo, a necessidade de reduzir esforços humanos em busca da rastreabilidade
ubíqua, que simplesmente atenda seu propósito de forma transparente para o software e as
tarefas da engenharia. No âmbito temporal, apenas o estudo EP27 tratou de forma prospectiva,
uma abordagem particular que implica a criação ou manutenção de ligações de rastreamento
simultâneo com a manipulação dos artefatos que se associam. Todos os demais estudos
estabelecem os links de forma retrospectiva. Estes fatos parecem indicar uma possível falta
de interesse dos pesquisadores especialistas na captura de rastreamento em tempo real,
ou até mesmo, uma lacuna a ser desbravada pela falta de técnicas, métodos e ferramentas
apropriadas. No que se refere às informações sobre os detalhes da abordagem utilizada o
cenário chamou bastante a atenção, tanto pela quantidade de informações relevantes omitidas
quanto pela superficialidade das informações apresentadas.
No quesito artefatos, as relações estabelecidas predominam sobre os produtos de
trabalho a nível de requisitos, análise e projeto, implementação e teste, em virtude da grande
maioria apresentar texto em linguagem natural, seja em relação aos metadados ou próprio
conteúdo. Em suma, 70% dos estudos utilizaram artefatos de duas disciplinas relacionadas
ao RUP, e apenas 4 estudos estabeleceram formas de rastreabilidade entre artefatos das
quatro disciplinas. Torna-se perceptível então a existência de uma lacuna nas abordagens em
estabelecer ligações com os diversos artefatos do ciclo de vida do software.

4.4. DISCUSSÃO DOS RESULTADOS

73

A terceira questão buscou investigar os meios utilizados pelas abordagens apresentadas para determinar a geração dos links de rastreabilidade. Foram identificados 24 métodos,
dentre eles, destacam-se LSI e VSM, ambas técnicas de recuperação de informação que usam
modelos algébricos, e ajudam a encontrar uma relação semântica entre os termos indexados
nos artefatos. LSI foi utilizado em 9 estudos e VSM em 6 estudos. Alguns pesquisadores têm
agrupado algumas técnicas em busca de um melhor desempenho na recuperação automatizada dos links de rastreabilidade, é o caso dos estudos EP01 e EP14, reduzindo assim as
lacunas deixadas pela imprecisão de cada uma das técnicas.
No que se refere as métricas, recall e precision foram utilizadas por 30 estudos (81%),
ambas as métricas estão relacionadas ao número de ligações recuperadas e existentes.
Este resultado está diretamente ligado ao fato das técnicas de recuperação (VSM e LSI) da
informação terem dominado grande parte dos estudos.
Por fim, na quinta questão foram analisados contextos, objetivos e desafios. Em
relação ao contexto, 84% dos estudos se enquadraram na proposta genérica de suporte ao
gerenciamento de informações. Os demais, dividiram-se em outros dois contextos: linha de
produtos de software (5 estudos) e programação orientada a aspectos (1 estudo). Já em relação
ao objetivo pretendido nos estudos, 94% (34) buscam extrair relações de rastreabilidade com
alta precisão e recordação. Outros 3 estudos oferecem visões de requisitos como exibições de
cobertura e status através da rastreabilidade. Um achado preocupante ligado aos desafios
relatados pelos pesquisadores, que justifica muito dos resultados encontrados, diz respeito
a confiança fornecida pelas abordagens. Apesar de apenas 6 estudos terem relatado o fato,
aumentar o desempenho dos meios automáticos de estabelecimento da rastreabilidade através
da recuperação da informação tem sido o principal desafio enfrentado, seguido pela dificuldade
de escalonamento. Ou seja, inserir e permitir uma grande variedade de artefatos em diferentes
estruturas, granularidade e atividades que atendem aos mais distintos papéis dos stakeholders
de um projeto.
Através do dados analisados, fica claro perceber que o processo de estabelecimento
e recuperação da rastreabilidade ainda é um desafio para os próprios pesquisadores, que
buscam oferecer praticidade e eficiência as atividades envolvidas. Impulsionado por desafios
de pesquisa claramente articulados, os pesquisadores procuram alcançar a rastreabilidade
onipresente. Nesta visão, o custo e esforço de estabelecer e manter a rastreabilidade desaparece basicamente quando as ligações são geradas automaticamente por ferramentas como
um subproduto do processo de desenvolvimento, e os benefícios são realizados em todos os
projetos, e não apenas naqueles escolhidos.
Os resultados deste estudo sistemático apresentam informações importantes sobre o
estado da prática do relato de experimentos em rastreabilidade entre artefatos heterogêneos.
É imprescindível a necessidade de melhoria dos relatos dos experimentos e uniformização
do vocabulário utilizado, tal aperfeiçoamento vai ajudar à comunidade da rastreabilidade de
software a melhor entender os resultados e limitações dos estudos reportados.

4.5. CONSIDERAÇÕES FINAIS DO CAPÍTULO

4.5

74

Considerações Finais do Capítulo
Neste capítulo foram discutidos os resultados extraídos nesta pesquisa, apresentado

as lacunas identificadas e evidências coletadas. Como consequência, espera-se contribuir
com a comunidade a fim de atingir um número maior de pesquisas no tema proposto através
dos resultados mapeados. A seguir as ameaças a validade e os trabalhos futuros serão
apresentados.

75

5
Guidelines de Rastreabilidade Aplicado a
Artefatos Heterogêneos
Para exercer a rastreabilidade sobre artefatos heterogêneos de software, os autores
dos estudos primários selecionados descrevem algumas práticas para implementação de uma
abordagem da rastreabilidade mais eficaz. Este capítulo lista um conjunto de boas práticas
para aplicação da rastreabilidade sobre artefatos heterogêneos, que envolvem a criação de um
ambiente favorável, a estruturação e o conteúdo dos artefatos, e meios de buscar a eficiência
das atividades e a eficácia dos objetivos.

5.1

Traçar um propósito.
Durante o ciclo de vida de desenvolvimento de software, os stakeholders do projeto

criam inúmeros produtos de trabalho que introduzem o potencial para um grande número de
links. Portanto, é relevante pensar sobre a rastreabilidade desde o início do projeto, onde seu
propósito deve ser claramente identificado. A rastreabilidade deve ser planejada e gerida se
for preparada para ser e permanecer eficaz em qualquer contexto determinado do projeto. As
partes interessadas devem ser identificadas e seus interesses determinados. Um processo de
rastreabilidade adequado precisa ser desenhado e potencialmente suportado pelas ferramentas
utilizadas. No entanto, todo esse esforço inicial é abafado se não houver uma compreensão
clara do retorno antecipado do investimento da implementação de rastreabilidade dentro de
uma organização.
Embora um conjunto de soluções comerciais automatizadas apoie a rastreabilidade,
estabelecendo um processo genérico de gestão das ligações, os stakeholders poderão realizar
a tarefa de rastreamento no seu dia-a-dia mais perfeitamente se determinar antecipadamente
quais os artefatos eles vão rastrear e quais os tipos de ligação que irão capturar (CLELANDHUANG et al., 2007). Assim, a abordagem de rastreabilidade adotada pode então ser adaptada
de forma adequada para as necessidades do projeto indivíduo a evitar situações em que
muito ou pouco dados de rastreio são criado (ASUNCION; ASUNCION; TAYLOR, 2010). Em

RASTREAMENTO.

5.2. DEFINIR OS ARTEFATOS E A GRANULARIDADE ADEQUADA DE
76

particular, se os dados de rastreio não são necessários para cumprir um objetivo específico,
então não deve ser recolhido e armazenado (ESPINOZA; GARBAJOSA, 2008).
Para cada link de rastreabilidade estabelecido na sua estratégia, os gestores devem
identificar o tipo de artefato na origem e no destino, estabelecer onde cada artefato está
fisicamente localizado, e determinar em qual ferramenta de formatação ou de terceiros o
artefato está armazenado. A gestão da configuração é um importante fator subjacente a muitos
esforços da rastreabilidade.
Qualquer esforço de rastreabilidade deve começar com a pergunta: qual é o principal
propósito dos dados de rastreabilidade? Pois as principais atividades que posteriormente serão
apoiadas por rastreabilidade e as ferramentas que serão utilizadas, devem ser identificados de
antemão. Uma vez identificados, os objetivos ditarão quais dados serão necessários, como
eles podem ser gerenciados e quais otimizações serão possíveis. As metas de rastreabilidade
devem ser consideradas durante a elicitação de requisitos, quando as partes interessadas
estiverem disponíveis para responder a perguntas sobre o uso futuro previsto.

5.2

Definir os artefatos e a granularidade adequada de rastreamento.
No projeto, os stakeholders também devem decidir sobre o nível adequado de granula-

ridade de rastreio para cada tipo de artefato. Por exemplo, quando o rastreamento tem como
destino os diagramas de classe UML, seria possível gerar o rastreio de pacote, classe ou em
nível de método. EGYED et al. (2005) avaliaram o valor económico do rastreamento em níveis
mais baixos de granularidade, medido pelo esforço necessário para criar os links contra o valor
devolvido por meio de rastreamento em vários níveis de precisão. Mesmo ignorando os custos
das ligações de manutenção, eles descobriram que os benefícios da melhorar a granularidade
de ligações de rastreamento para além de certo nível eram muito limitados.
A granularidade deve ser cuidadosamente determinada a apoiar eficazmente as partes
interessadas em suas tarefas de rastreabilidade, minimizando o esforço envolvido para analisar
e utilizar o conjunto de links retornados (RATANOTAYANON; SIM; RAYCRAFT, 2009). Isso
pode ser especialmente problemático em documentos grandes, fracamente estruturados que
podem não contêm componentes claramente definidas no nível de granularidade desejado
(TSUCHIYA et al., 2013).
A granularidade de um artefato de rastreamento não é pré-determinada e pode mesmo
não ser consistente a qualquer projeto. É esta incerteza sobre a granularidade dos artefatos
de rastreamento que pode levar a muitos problemas no estabelecimento e utilização da
rastreabilidade na prática. O tipo e a granularidade dos artefatos de rastreamento, e da
semântica da ligação de rastreio, são, portanto, detalhes que são melhor determinados projeto
a projeto. Através da definição do que será rastreado, qual nível de detalhe necessário, é que

5.3. DEFINIR UM GLOSSÁRIO DE TERMOS DO PROJETO.

77

eventualmente influenciará a definição de um modelo de processo de rastreabilidade.

5.3

Definir um glossário de termos do projeto.
Um glossário de projeto bem construído, definido durante as reuniões iniciais do projeto

com as partes interessadas e usado de forma consistente ao longo do desenvolvimento do
produto, geralmente, aumenta a consistência dos termos usados e, posteriormente, melhora a
rastreabilidade.
Em boa parte dos estudos selecionados, os autores descreveram um modelo de
referência de rastreabilidade e uma abordagem em que a geração das relações entre artefatos
são criadas com base nos seguintes aspectos: (i) a semântica dos documentos que estão
sendo comparadas (JAIN; GHAISAS; SUREKA, 2014), (ii) os vários tipos de relações de
rastreabilidade no domínio (STRASUNSKAS; HAKKARAINEN, 2012), (iii) os papéis gramaticais
das palavras nas partes textuais dos documentos, (iv) a análise do contexto original (ZHOU; LU;
LUNDQVIST, 2013) e (v) sinônimos e a distância das palavras que estão sendo comparados
em um texto . Nestes casos, a definição de um glossário contribui para a melhoria do recall e
precisão dos links recuperados.
A definição de um glossário de termos assegura a conformidade e a eficácia dos
objetivos da abordagem de rastreabilidade utilizada, em virtude das principais técnicas serem
baseadas na análise semântica e sintática dos termos em linguagem natural encontrada nos
artefatos. Em alguns casos o termo utilizado pode também levar em conta a importância para
um domínio específico. Em particular, os artefatos podem conter termos e frases críticas que
deveriam ser mais pesados do que outros, pois podem ser considerados mais significativos na
identificação de links de rastreabilidade. Onde estes termos podem ser extraídos do glossário
do projeto, que deve apresentar todos os sinônimos para cada termo encontrado.

5.4

Construir uma hierarquia significativa.
Utilizar uma hierarquia de informações consistente nos artefatos, tais como, títulos e

subtítulos dentro de um documento de requisitos, texto descritivo ou nomes de pacotes significativos, pode permitir que as técnicas de recuperação de rastreamento reforcem a semântica
das necessidades individuais e ajude a construir ligações mais precisas (SPANOUDAKIS et al.,
2004). Em geral, as formas padronizadas de representação do conhecimento são usadas
para inferir dados, com isso, facilitam a construção de regras de rastreabilidade para grandes
conjuntos de dados, assim como, a representação e apoio às dependências entre os elementos
constantes dos documentos (ZISMAN et al., 2003).
O conhecimento sobre a estrutura dos artefatos podem também ser explorado para
melhorar o desempenho de um método de recuperação de rastreabilidade. Uma estratégia,
que aumenta seu desempenho baseia-se na observação de que os artefatos são geralmente

5.5. INTRODUZIR UM MÉTODO AUTOMATIZADO DE RASTREAMENTO.

78

dispostas em um formato hierárquico. Essa estrutura hierárquica poderia ser explorada para
identificar melhor o contexto de cada artefato, uma vez que, em geral, as palavras usadas para
nomear e descrever os artefatos de nível mais alto capturam o significado (ou seja, o contexto)
de seus componentes de nível inferior. Os links hierárquicos são então explorados ao calcular
as probabilidades de que um artefato alvo é relevante para um determinado artefato de origem.

5.5

Introduzir um método automatizado de rastreamento.
O processo manual de recuperar e manter vínculos de rastreabilidade entre os artefatos

de software não é escalável, é tediosa e propensa a erros. Sobretudo porque, o número de
artefatos e partes interessadas cresce, gerando uma área em que a complexidade pode
aumentar exponencialmente. Portanto, vale a pena considerar o uso de ferramentas de apoio
à gestão da rastreabilidade, com objetivo de reduzir esforços manuais, identificar novos tipos
de relação e atingir maiores níveis de recall e precisão (KAMALABALAN et al., 2015). Utilizar
ferramentas para gerar ligações candidatas, reduz drasticamente o esforço de abordagens
manuais para construir e manter uma matriz de rastreabilidade, bem como proporciona a
análise da rastreabilidade retrospectiva, ou seja, sobre documentos já existentes (JIANG et al.,
2008).
Enquanto artefatos do projeto são geralmente pré-existente em um projeto, as ligações
entre eles pode ainda não estar definida. Uma estratégia de otimização simples é usar uma
ferramenta de rastreabilidade sobre os artefatos, a fim de verificar as possiveis ligações em um
subconjunto de itens. Variar o recall e precisão de dados de rastreamento é particularmente
pertinente ao usar ferramentas automatizadas, pois muitas ferramentas podem ser calibradas
para favorecer uma ou outra. O uso de técnicas automatizadas (como ferramentas de recuperação de informações) são susceptíveis de reduzir os custos para a criação do rastreamento,
mas aumentar os esfoço associados com atividades de validação, porque os dados podem
exigir algum refinamento manual no ponto de utilização.

5.6

Combinar técnicas.
Muitas técnicas de recuperação de rastreabilidade foram inventados para recuperar

vínculos de rastreabilidade entre artefatos, algumas precisam de intervenção humana, outros
podem gerar automaticamente links de rastreabilidade. Infelizmente, nenhuma abordagem de
recuperação têm a capacidade de recuperar todas as ligações possíveis entre os artefatos
automaticamente com 100% de precisão (GOTEL et al., 2012).
Abordagens de rastreabilidade automatizadas são confrontadas com um grande desafio,
que corresponde a como extrair estes links com alta precisão e recall. Um conjunto de links
candidatos de alta qualidade representa um elo definido entre estes artefatos que contém
o maior número de ligações corretas possível. Além disso, um conjunto de alta qualidade

5.7. REVISÃO DE LIGAÇÕES CANDIDATAS.

79

de ligação candidatas deverá conectar elementos de diferentes artefatos em um nível fino
de detalhes. No entanto, tem sido muito difícil extrair automaticamente ligações candidatas
de alta qualidade entre uma ampla variedade de artefatos criados durante o ciclo de vida de
desenvolvimento de software. Isto acontece devido, tanto à imprecisão inerente ao expressar
as coisas em linguagem natural e a perda ou ganho de informação inerente quando se
navega entre os artefatos de software em diferentes níveis de abstração. A maioria das
técnicas existentes de rastreabilidade automatizadas adota uma abordagem única para traçar
a recuperação dos links. No entanto, as diferentes abordagens de recuperação têm diferentes
pontos fortes e fracos.
A fim de melhorar o desempenho da rastreabilidade automatizada, combinar as técnicas
de recuperação de ligações pode extrair vantagem da soma das forças de cada uma destas
técnicas (CHEN; GRUNDY, 2011) (CLELAND-HUANG; ZEMONT; LUKASIK, 2004). Desta
forma, superando as limitações de recall e precisão encontrada nas abordagens criadas
através de uma única técnica (EYAL-SALMAN; SERIAI; DONY, 2013).

5.7

Revisão de ligações candidatas.
É interessante notar que o subconjunto de artefatos recuperados pelas ferramentas de

criação dos elos de rastreamento não coincide, em geral, com o conjunto de artefatos que
são de fato semelhantes, e que devem ser rastreados. Na verdade, as ferramentas falham ao
encontrar relações entre os artefatos, enquanto que por outro lado, também irão recuperar
artefatos que não estão relacionados. Estas considerações sugerem que uma ferramenta de
recuperação de rastreabilidade não pode substituir completamente o engenheiro de software
na tarefa de manter vínculos de rastreabilidade durante a evolução de software (GUO et al.,
2014)(DELATER; PAECH, 2013b). De acordo com os resultados observados, as ferramentas
são um bom suporte para o engenheiro de software durante o processo de recuperação de
rastreabilidade. Pois, reduz o espaço de artefatos a serem analisados, e, portanto, permite
que o engenheiro de software encontre ligações através da análise de uma lista menor de
ligações perdidas. Além disso, a ferramenta ajuda o engenheiro de software a verificar a
consistência do conteúdo dos artefatos, em particular, a ferramenta destaca inconsistências
prováveis no uso dos termos de domínio nos artefatos rastreados (LUCIA et al., 2007). Esta é
uma informação útil, que ajuda a melhorar o desempenho das abordagens de rastreabilidade,
ou seja, ferramenta e engenheiro de software trabalhando juntos para orientar os stakeholders
a realizar tarefas com mais eficiência e assertividade, aliadas a produzir produtos cada vez
melhores e com alto índice de qualidade.

80

6
Considerações Finais
Este capítulo apresenta as considerações finais do trabalho. Inicialmente, serão
discutidas as ameaças à validade do estudo, em seguida, abordado as recomendações para
trabalhos futuros e as conclusões obtidas com a pesquisa.

6.1

Limitações e Ameaças à Validade
Nesta seção serão apresentadas as limitações da pesquisa e as ameaças à validade

de seus resultados, assim como as estratégias adotadas para mitigá-las. Neste mapeamento
sistemático buscou-se seguir rigorosamente os procedimentos metodológicos estabelecidos
no protocolo de pesquisa descrito no Capítulo 3.
As principais ameaças à validade deste tipo de estudo apontadas por SJOBERG;
DYBA; JORGENSEN (2007) e KITCHENHAM (2010) são: (i) viés de seleção de publicações,
(ii) pouca acurácia na extração dos dados, (iii) erros de classificação, (iv) basear-se em apenas
um engenho de busca, (v) conduzir o processo de seleção e exclusão por apenas uma pessoa.
Uma outra ameaça incluída está relacionada a (vi) validade do guideline produzido. A seguir
serão explanadas as medidas tomadas para mitigar cada uma destas ameaças.
Com o intuito de mitigar tais ameaças foram adotadas algumas medidas, tais como:
(i) para evitar o viés na seleção das publicações buscou-se validar as fontes de busca automática adotadas neste estudo junto a especialistas nas áreas de Engenharia de Software
Experimental e EBSE. Também foi adotada uma fonte de busca manual que concentra os
estudos sobre Rastreabilidade de Software e um protocolo de pesquisa foi construído com
direcionamentos a serem seguidos.
Para conter o problema relacionado à extração dos dados (ii) foi criado um formulário
estruturado, a ser usado durante a fase de extração de dados, contendo a lista de informações
a serem extraídas.
A ameaça relacionada aos erros de classificação (iii) foi mitigada com o uso da referência mais atual e completa da área escrita por GOTEL et al. (2012) que contempla a terminologia
essencial a rastreabilidade em um glossário de termos.

6.2. TRABALHOS FUTUROS

81

Em relação ao item (iv) foram utilizados cinco engenhos de busca automática: ACM,
IEEE Xplore, Scopus, Ei Compendex e Science Direct. A fim de compreender estudos primários
de todos os períodos, não foram adotadas quaisquer restrições temporais neste mapeamento.
A estratégia de busca manual foi acrescentada ao estudo com o intuito de identificar estudos
que não fossem identificados através das strings de busca criadas.
Quanto ao viés apontado pelo item (v) foi contido através da introdução de atividades
de teste e reteste, conforme previsto por KITCHENHAM; CHARTERS (2007) em caso estudos
realizados por um único pesquisador. Tendo previsto todas estas ameaças à validade da
pesquisa, em especial para o item (v), foi planejado um estudo piloto do protocolo definido
sobre um escopo reduzido com objetivo de experimentar e capacitar-se na atividade de
executor individual. Tendo sido de extrema importância para mitigar ainda mais os vieses
apresentados.
Considerando a limitação apresentada no item (vi) a lista com boas práticas apresentadas (capítulo 6) tem uma ameaça à validade no que diz respeito a seu esboço, em virtude de,
não ter sido validada na prática. Além de, não discutir detalhes sobre como aplicar ou executar
o catálogo proposto, portanto, entende-se que as orientações existentes podem não ser fáceis
de aplicar, exigindo mais investigações.

6.2

Trabalhos Futuros
A partir da realização desta pesquisa, podem-se levantar algumas oportunidades de

trabalhos futuros, bem como direcionamentos para novas pesquisas, que poderão contribuir
para a melhoria de pesquisas no contexto da rastreabilidade de software. 

Avaliar o catálogo proposto (Capítulo 5) em um estudo de caso. 

Estender este mapeamento sistemático a outras fontes de modo a considerar novas
fontes de busca automatizadas e manuais. 

Realização de RSL sobre a eficácia das abordagens de rastreabilidade apresentadas. 

Desenvolver um framework, modelo, guia ou processo que apoie a avaliação do
desempenho das abordagens de rastreabilidade entre artefatos heterogêneos. 

Avaliar os resultados encontrados nesta dissertação através da replicação deste
estudo. 

Apresentar os resultados extraídos aos autores dos estudos primários, coletando
a avaliação deles quanto à síntese constatada a partir dos seus estudos, fazendo
assim uma análise qualitativa.

6.3. CONCLUSÕES 

82

Desenvolver novos recursos voltados a apoiar o relato de experimentos em rastreabilidade de software, de acordo com as lacunas observadas ao longo deste
trabalho.

6.3

Conclusões
Apesar de sua importância, a rastreabilidade é talvez uma das qualidades mais evasivas

do processo de desenvolvimento de software. O custo, esforço e disciplina necessária para
criar e manter ligações de rastreamento em um sistema de software em rápida evolução pode
ser extremamente elevado. Além disso, seus benefícios, muitas vezes seguem não realizados
na prática, devido a processos mal definidos e ad-hoc de rastreabilidade, a falta de ferramentas
eficazes, entre outros motivos. Problema que se agrava quando tratado da rastreabilidade
entre um conjunto de artefatos heterogêneos criados e mantidos durante o ciclo de vida do
software.
Este estudo se propôs a reunir, estruturar e sintetizar de maneira sistemática o conhecimento obtido através de pesquisas empíricas sobre a adoção de rastreabilidade entre artefatos
heterogêneos na engenharia de software. Com isso, um mapeamento sistemático da literatura
foi realizado sobre a literatura disponível em diversas fontes que retornaram 2488 estudos
primários. Após aplicação dos critérios de seleção estabelecidos, 37 estudos empíricos foram
selecionados, e foram publicados entre 2003 a 2015, initerruptamente, com breve oscilação
durante o período e ligeira crescente em 2013. O que caracteriza um tema ainda de baixo
interesse entre os pesquisadores da engenharia de software, apesar de ser um tanto complexo
e bastante relevante.
Utilizando 5 perguntas de pesquisa, foi capaz de identificar as principais abordagens
aplicadas a rastreabilidade dos artefatos heterogêneos. Em geral os estudos relatam a
recuperação das ligações de rasteio de forma automatizada, utilizando técnicas de Information
Retrieval de forma retrospectiva com base no conteúdo de Linguagem Natural, encontrado
nos artefatos de requisitos, casos de uso, diagramas UML, código fonte e casos de teste.
Em sua grande maioria, os estudos analisaram sua abordagem através do seu desempenho, medido pela relação entre as ligações retornadas corretamente e o total de ligações
corretas existentes. Suportar o gerenciamento das informações para a rastreabilidade foi o
contexto que a maioria dos estudos apresentaram, cujo objetivo é extrair relações com alta
precisão e recordação. Em face aos desafios abordados pelos estudos, a confiança e escalabilidade foram as mais citadas. De modo que estes problemas alinharam-se aos objetivos de
92% dos estudos, os quais buscam extrair ligações precisas e confiáveis de rastreamento que
possam ser criadas e mantidas ao longo de um projeto de software com baixo esforço humano.
As direções de pesquisa identificadas são bastante variadas. Alguns se concentram
em soluções algorítmicas, outras em melhorias do processo, e outros ainda em infraestrutura
precisa. Isto sugere que o avanço do estado-da-arte em rastreabilidade de software exige a

6.3. CONCLUSÕES

83

cooperação de pesquisadores com diferentes conjuntos de habilidades de diversas áreas como,
otimização de código, mineração de dados, visualização e engenharia de sistemas. Além disso,
a investigação sobre rastreabilidade necessita ser estreitada com a prática nas indústrias e,
portanto, requer também o engajamento dos profissionais do setor, onde os estudos de caso
exploram os sucessos e fracassos da rastreabilidade de software na prática. Assim, mantendo
os pesquisadores informados sobre os verdadeiros problemas a ser abordado, fornecendo
oportunidades inestimáveis para explorar a aplicação de pesquisa para a engenharia de
software.
Os resultados deste estudo sistemático apresentam informações importantes sobre o
estado da prática do relato de experimentos em rastreabilidade entre artefatos heterogêneos
de software. É imprescindível a necessidade de melhoria destes relatos quanto ao nível
de detalhes e terminologia apresentada, tal aperfeiçoamento vai ajudar à comunidade da
rastreabilidade de software a melhor entender e aproveitar os resultados dos experimentos
reportados.

84

Referências
ALEKSY, M. et al. A Pragmatic Approach to Traceability in Model-Driven Development. In:
PRIMIUM - PROCESS INNOVATION FOR ENTERPRISE SOFTWARE : 15.04.2009 IN
MANNHEIM, GERMANY, Bonn. Anais. . . Ges. für Informatik, 2009. v.151, p.113 – 127.
ALEXANDER, I. Towards automatic traceability in industrial practice. In: IN PROC. OF THE
1ST INT. WORKSHOP ON TRACEABILITY. Anais. . . [S.l.: s.n.], 2002. p.26 – 31.
ANDERSON, K. M.; SHERBA, S. A.; LEPTHIEN, W. V. Towards large-scale information
integration. In: SOFTWARE ENGINEERING, 2002. ICSE 2002. PROCEEDINGS OF THE
24RD INTERNATIONAL CONFERENCE ON. Anais. . . [S.l.: s.n.], 2002. p.524 – 534.
ARKLEY, P.; RIDDLE, S. Overcoming the traceability benefit problem. In: IEEE
INTERNATIONAL CONFERENCE ON REQUIREMENTS ENGINEERING (RE’05), 13.
Anais. . . [S.l.: s.n.], 2005. p.385 – 389.
ASUNCION, H. U.; ASUNCION, A. U.; TAYLOR, R. N. Software traceability with topic modeling.
In: ACM/IEEE 32ND INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING,
2010. Anais. . . [S.l.: s.n.], 2010. v.1, p.95 – 104.
BAEZA-YATES, R. A.; RIBEIRO-NETO, B. Modern Information Retrieval. Boston, MA, USA:
Addison-Wesley Longman Publishing Co., Inc., 1999.
BOEHM, B. W. Software Engineering. IEEE Transactions on Computers, [S.l.], v.C-25, n.12,
p.1226 – 1241, Dec 1976.
BORG, M.; RUNESON, P.; ARDO, A. Recovering from a Decade: a systematic mapping of
information retrieval approaches to software traceability. Empirical Softw. Engg., Hingham,
MA, USA, v.19, n.6, p.1565 – 1616, December 2014.
BRERETON, L. M.; KYRIACOU, T.; PEARL. Teaching Novices Programming Using a
Robot Simulator: case study protocol. 2011.
BUDGEN, D. et al. Using {M}apping {S}tudies in {S}oftware {E}ngineering. In: PPIG 2008.
Proceedings. . . Lancaster University, 2008. p.195 – 204.
Carnegie Mellon University. CMMI for Development, Version 1.3. Pittsburgh, PA: Software
Engineering Institute, Carnegie Mellon University, 2010. (CMU/SEI-2010-TR-033).
CHAUHAN, M. A.; BABAR, M. A. Towards a Reference Architecture to Provision Tools as a
Service for Global Software Development. In: SOFTWARE ARCHITECTURE (WICSA), 2014
IEEE/IFIP CONFERENCE ON. Anais. . . [S.l.: s.n.], 2014. p.167 – 170.
CHEN, X.; GRUNDY, J. Improving automated documentation to code traceability by combining
retrieval techniques. In: AUTOMATED SOFTWARE ENGINEERING (ASE), 2011 26TH
IEEE/ACM INTERNATIONAL CONFERENCE ON. Anais. . . [S.l.: s.n.], 2011. p.223 – 232.
CHEN, X.; HOSKING, J.; GRUNDY, J. Visualizing traceability links between source code and
documentation. In: IEEE SYMPOSIUM ON VISUAL LANGUAGES AND HUMAN-CENTRIC
COMPUTING (VL/HCC), 2012. Anais. . . [S.l.: s.n.], 2012. p.119 – 126.

REFERÊNCIAS

85

CLELAND-HUANG, J.; CHANG, C. K.; CHRISTENSEN, M. Event-based traceability for
managing evolutionary change. IEEE Transactions on Software Engineering, [S.l.], v.29,
n.9, p.796 – 810, Sept 2003.
CLELAND-HUANG, J.; CHANG, C. K.; GE, Y. Supporting event based traceability through
high-level recognition of change events. In: COMPUTER SOFTWARE AND APPLICATIONS
CONFERENCE, 2002. COMPSAC 2002. PROCEEDINGS. 26TH ANNUAL INTERNATIONAL.
Anais. . . [S.l.: s.n.], 2002. p.595 – 600.
CLELAND-HUANG, J. et al. Utilizing supporting evidence to improve dynamic requirements
traceability. In: IEEE INTERNATIONAL CONFERENCE ON REQUIREMENTS ENGINEERING
(RE’05), 13. Anais. . . [S.l.: s.n.], 2005. p.135 – 144.
CLELAND-HUANG, J. et al. Best Practices for Automated Traceability. Computer, [S.l.], v.40,
n.6, p.27 – 35, June 2007.
CLELAND-HUANG, J. et al. Trace Queries for Safety Requirements in High Assurance
Systems. In: INTERNATIONAL CONFERENCE ON REQUIREMENTS ENGINEERING:
FOUNDATION FOR SOFTWARE QUALITY, 18., Berlin, Heidelberg. Proceedings. . .
Springer-Verlag, 2012. p.179 – 193. (REFSQ’12).
CLELAND-HUANG, J. et al. Software Traceability: trends and future directions. In: FUTURE
OF SOFTWARE ENGINEERING, New York, NY, USA. Proceedings. . . ACM, 2014. p.55 – 69.
(FOSE 2014).
CLELAND-HUANG, J.; ZEMONT, G.; LUKASIK, W. A heterogeneous solution for improving the
return on investment of requirements traceability. In: REQUIREMENTS ENGINEERING
CONFERENCE, 2004. PROCEEDINGS. 12TH IEEE INTERNATIONAL. Anais. . . [S.l.: s.n.],
2004. p.230 – 239.
COHEN, J. Weighted kappa: nominal scale agreement with provision for scaled disagreement
or partial credit. Psychological bulletin, [S.l.], v.70, p.213 – 220, October 1968.
COOPER, H. M. Organizing knowledge syntheses: a taxonomy of literature reviews.
Knowledge in Society, [S.l.], v.1, n.1, p.104 – 126, 1988.
CRESWELL, J. Research Design: qualitative, quantitative, and mixed methods
approaches. [S.l.]: SAGE Publications, 2013.
DELATER, A.; PAECH, B. Analyzing the Tracing of Requirements and Source Code During
Software Development. In: INTERNATIONAL CONFERENCE ON REQUIREMENTS
ENGINEERING: FOUNDATION FOR SOFTWARE QUALITY, 19., Berlin, Heidelberg.
Proceedings. . . Springer-Verlag, 2013. p.308 – 314. (REFSQ’13).
DELATER, A.; PAECH, B. Tracing Requirements and Source Code during Software
Development: an empirical study. In: ACM / IEEE INTERNATIONAL SYMPOSIUM ON
EMPIRICAL SOFTWARE ENGINEERING AND MEASUREMENT, 2013. Anais. . . [S.l.: s.n.],
2013. p.25 – 34.
DOMGES, R.; POHL, K. Adapting Traceability Environments to Project-specific Needs.
Commun. ACM, New York, NY, USA, v.41, n.12, p.54 – 62, December 1998.

REFERÊNCIAS

86

EDWARDS, M.; HOWELL, S. L. A METHODOLOGY FOR SYSTEMS REQUIREMENTS
SPECIFICATION AND TRACEABILITY FOR LARGE REAL-TIME COMPLEX SYSTEMS. ,
[S.l.], 1991.
EGYED, A. et al. A Value-based Approach for Understanding Cost-benefit Trade-offs During
Automated Software Traceability. In: INTERNATIONAL WORKSHOP ON TRACEABILITY IN
EMERGING FORMS OF SOFTWARE ENGINEERING, 3., New York, NY, USA.
Proceedings. . . ACM, 2005. p.2 – 7. (TEFSE ’05).
EGYED, A. et al. Value-Based Requirements Traceability: lessons learned. In: IEEE
INTERNATIONAL REQUIREMENTS ENGINEERING CONFERENCE (RE 2007), 15. Anais. . .
[S.l.: s.n.], 2007. p.115 – 118.
EGYED, A.; GRUNBACHER, P. Automating requirements traceability: beyond the record replay
paradigm. In: AUTOMATED SOFTWARE ENGINEERING, 2002. PROCEEDINGS. ASE 2002.
17TH IEEE INTERNATIONAL CONFERENCE ON. Anais. . . [S.l.: s.n.], 2002. p.163 – 171.
ESPINOZA, A.; GARBAJOSA, J. A Proposal for Defining a Set of Basic Items for
Project-Specific Traceability Methodologies. In: SOFTWARE ENGINEERING WORKSHOP,
2008. SEW ’08. 32ND ANNUAL IEEE. Anais. . . [S.l.: s.n.], 2008. p.175 – 184.
ESPINOZA, A.; GARBAJOSA, J. A Study to Support Agile Methods More Effectively Through
Traceability. Innov. Syst. Softw. Eng., Secaucus, NJ, USA, v.7, n.1, p.53 – 69, March 2011.
EYAL-SALMAN, H.; SERIAI, A. D.; DONY, C. Feature-to-Code Traceability in Legacy Software
Variants. In: EUROMICRO CONFERENCE ON SOFTWARE ENGINEERING AND ADVANCED
APPLICATIONS, 2013. Anais. . . [S.l.: s.n.], 2013. p.57 – 61.
FIGUEIREDO, M. C.; SOUZA, C. R. B. de. Wolf: supporting impact analysis activities in
distributed software development. In: COOPERATIVE AND HUMAN ASPECTS OF
SOFTWARE ENGINEERING (CHASE), 2012 5TH INTERNATIONAL WORKSHOP ON.
Anais. . . [S.l.: s.n.], 2012. p.40 – 46.
GALVAO, I.; GOKNIL, A. Survey of Traceability Approaches in Model-Driven Engineering. In:
ENTERPRISE DISTRIBUTED OBJECT COMPUTING CONFERENCE, 2007. EDOC 2007.
11TH IEEE INTERNATIONAL. Anais. . . [S.l.: s.n.], 2007. p.313 – 313.
GETHERS, M. et al. On integrating orthogonal information retrieval methods to improve
traceability recovery. In: SOFTWARE MAINTENANCE (ICSM), 2011 27TH IEEE
INTERNATIONAL CONFERENCE ON. Anais. . . [S.l.: s.n.], 2011. p.133 – 142.
GOTEL, O. C. Z.; FINKELSTEIN, C. W. An analysis of the requirements traceability problem. In:
REQUIREMENTS ENGINEERING, 1994., PROCEEDINGS OF THE FIRST INTERNATIONAL
CONFERENCE ON. Anais. . . [S.l.: s.n.], 1994. p.94 – 101.
GOTEL, O. et al. Software and Systems Traceability. London: Springer London, 2012. p.343
– 409.
GRECHANIK, M.; MCKINLEY, K. S.; PERRY, D. E. Recovering and Using
Use-case-diagram-to-source-code Traceability Links. In: JOINT MEETING OF THE
EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND THE ACM SIGSOFT
SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING, 6., New York, NY,
USA. Proceedings. . . ACM, 2007. p.95 – 104. (ESEC-FSE ’07).

REFERÊNCIAS

87

GUO, J. et al. Towards an Intelligent Domain-specific Traceability Solution. In: ACM/IEEE
INTERNATIONAL CONFERENCE ON AUTOMATED SOFTWARE ENGINEERING, 29., New
York, NY, USA. Proceedings. . . ACM, 2014. p.755 – 766. (ASE ’14).
HAYES, J. H.; DEKHTYAR, A.; SUNDARAM, S. K. Advancing candidate link generation for
requirements tracing: the study of methods. IEEE Transactions on Software Engineering,
[S.l.], v.32, n.1, p.4 – 19, Jan 2006.
HAYES, J. H. et al. REquirements TRacing On target (RETRO): improving software
maintenance through traceability recovery. Innovations in Systems and Software
Engineering, [S.l.], v.3, n.3, p.193 – 202, 2007.
HEINDL, M.; BIFFL, S. A Case Study on Value-based Requirements Tracing. In: EUROPEAN
SOFTWARE ENGINEERING CONFERENCE HELD JOINTLY WITH 13TH ACM SIGSOFT
INTERNATIONAL SYMPOSIUM ON FOUNDATIONS OF SOFTWARE ENGINEERING, 10.,
New York, NY, USA. Proceedings. . . ACM, 2005. p.60 – 69. (ESEC/FSE-13).
HUANG, J.; GOTEL, O.; ZISMAN, A. Software and Systems Traceability. [S.l.]: Springer
Publishing Company, Incorporated, 2014.
IEEE STD 12207. ISO/IEC/IEEE Standard for Systems and Software Engineering - Software
Life Cycle Processes. IEEE STD 12207-2008, [S.l.], p.c1 – 138, Jan 2008.
IEEE STD 24765. Systems and software engineering – Vocabulary. ISO/IEC/IEEE
24765:2010(E), [S.l.], p.1 – 418, Dec 2010.
IEEE STD 29148. Systems and software engineering – Life cycle processes –Requirements
engineering. ISO/IEC/IEEE 29148:2011(E), [S.l.], p.1 – 94, Dec 2011.
IEEE STD 828. IEEE Standard for Configuration Management in Systems and Software
Engineering. IEEE Std 828-2012 (Revision of IEEE Std 828-2005), [S.l.], p.1 – 71,
March 2012.
JAIN, R.; GHAISAS, S.; SUREKA, A. SANAYOJAN: a framework for traceability link recovery
between use-cases in software requirement specification and regulatory documents. In:
INTERNATIONAL WORKSHOP ON REALIZING ARTIFICIAL INTELLIGENCE SYNERGIES IN
SOFTWARE ENGINEERING, 3., New York, NY, USA. Proceedings. . . ACM, 2014. p.12 – 18.
(RAISE 2014).
JIANG, H. Y. et al. Incremental Latent Semantic Indexing for Automatic Traceability Link
Evolution Management. In: AUTOMATED SOFTWARE ENGINEERING, 2008. ASE 2008.
23RD IEEE/ACM INTERNATIONAL CONFERENCE ON. Anais. . . [S.l.: s.n.], 2008. p.59 – 68.
JOUAULT, F. et al. Inter-DSL traceability and navigability support by combining megamodeling
and model weaving. Proceedings of Special Track on the Coordination Models,
Languages and Applications at the 25th Symposium on Applied Computing (SAC
2010), Sierre, Switzerland, 2010.
KAGDI, H.; MALETIC, J. I.; SHARIF, B. Mining software repositories for traceability links. In:
IEEE INTERNATIONAL CONFERENCE ON PROGRAM COMPREHENSION (ICPC ’07), 15.
Anais. . . [S.l.: s.n.], 2007. p.145 – 154.

REFERÊNCIAS

88

KAMALABALAN, K. et al. Tool support for traceability of software artefacts. In: MORATUWA
ENGINEERING RESEARCH CONFERENCE (MERCON), 2015. Anais. . . [S.l.: s.n.], 2015.
p.318 – 323.
KITCHENHAM, B. A.; DYBA, T.; JORGENSEN, M. Evidence-based software engineering. In:
SOFTWARE ENGINEERING, 2004. ICSE 2004. PROCEEDINGS. 26TH INTERNATIONAL
CONFERENCE ON. Anais. . . [S.l.: s.n.], 2004. p.273 – 281.
KITCHENHAM, B. A.; MENDES, E.; TRAVASSOS, G. H. Cross versus Within-Company Cost
Estimation Studies: a systematic review. IEEE Transactions on Software Engineering, [S.l.],
v.33, n.5, p.316 – 329, May 2007.
KITCHENHAM, B. Š Kitchenham, 2004 Procedures for Performing Systematic Reviews.
2004.
KITCHENHAM, B. What’s Up with Software Metrics? - A Preliminary Mapping Study. J. Syst.
Softw., New York, NY, USA, v.83, n.1, p.37 – 51, January 2010.
KITCHENHAM, B.; CHARTERS, S. Guidelines for performing Systematic Literature
Reviews in Software Engineering. 2007.
KRUCHTEN, P. The Rational Unified Process: an introduction. 3.ed. Boston, MA, USA:
Addison-Wesley Longman Publishing Co., Inc., 2003.
LAKATOS, E.; MARCONI, M. D. A. M. Fundamentos de metodologia cient{\’\i}fica. [S.l.]:
Atlas, 2010.
LI, Y.; MAALEJ, W. Which Traceability Visualization is Suitable in This Context? A Comparative
Study. In: INTERNATIONAL CONFERENCE ON REQUIREMENTS ENGINEERING:
FOUNDATION FOR SOFTWARE QUALITY, 18., Berlin, Heidelberg. Proceedings. . .
Springer-Verlag, 2012. p.194 – 210. (REFSQ’12).
LIN, J. et al. Poirot: a distributed tool supporting enterprise-wide automated traceability. In:
IEEE INTERNATIONAL REQUIREMENTS ENGINEERING CONFERENCE (RE’06), 14.
Anais. . . [S.l.: s.n.], 2006. p.363 – 364.
LINDVALL, M.; SANDAHL, K. Practical Implications of Traceability. Softw. Pract. Exper., New
York, NY, USA, v.26, n.10, p.1161 – 1180, October 1996.
LUCIA, A. D. et al. Enhancing an artefact management system with traceability recovery
features. In: SOFTWARE MAINTENANCE, 2004. PROCEEDINGS. 20TH IEEE
INTERNATIONAL CONFERENCE ON. Anais. . . [S.l.: s.n.], 2004. p.306 – 315.
LUCIA, A. D. et al. Recovering Traceability Links in Software Artifact Management Systems
Using Information Retrieval Methods. ACM Trans. Softw. Eng. Methodol., New York, NY,
USA, v.16, n.4, sep 2007.
LUCIA, A. D.; PENTA, M. D.; OLIVETO, R. Improving Source Code Lexicon via Traceability and
Information Retrieval. IEEE Transactions on Software Engineering, [S.l.], v.37, n.2, p.205 –
227, March 2011.
MADER, P.; CLELAND-HUANG, J. A Visual Language for Modeling and Executing Traceability
Queries. Softw. Syst. Model., Secaucus, NJ, USA, v.12, n.3, p.537 – 553, July 2013.

REFERÊNCIAS

89

MADER, P.; EGYED, A. Do software engineers benefit from source code navigation with
traceability? An experiment in software change management. In: AUTOMATED SOFTWARE
ENGINEERING (ASE), 2011 26TH IEEE/ACM INTERNATIONAL CONFERENCE ON. Anais. . .
[S.l.: s.n.], 2011. p.444 – 447.
MADER, P.; GOTEL, O.; PHILIPPOW, I. Rule-Based Maintenance of Post-Requirements
Traceability Relations. In: IEEE INTERNATIONAL REQUIREMENTS ENGINEERING
CONFERENCE, 2008. Anais. . . [S.l.: s.n.], 2008. p.23 – 32.
MADER, P.; GOTEL, O.; PHILIPPOW, I. Motivation Matters in the Traceability Trenches. In:
IEEE INTERNATIONAL REQUIREMENTS ENGINEERING CONFERENCE, 2009. Anais. . .
[S.l.: s.n.], 2009. p.143 – 148.
MADER, P.; GOTEL, O.; PHILIPPOW, I. Enabling Automated Traceability Maintenance Through
the Upkeep of Traceability Relations. In: EUROPEAN CONFERENCE ON MODEL DRIVEN
ARCHITECTURE - FOUNDATIONS AND APPLICATIONS, 5., Berlin, Heidelberg.
Proceedings. . . Springer-Verlag, 2009. p.174 – 189. (ECMDA-FA ’09).
MALETIC, J. I. et al. Using a Hypertext Model for Traceability Link Conformance Analysis. ,
[S.l.], 2003.
MANNING, C. D.; RAGHAVAN, P.; SCHUTZE, H. Introduction to Information Retrieval. New
York, NY, USA: Cambridge University Press, 2008.
MARCUS, A.; MALETIC, J. I. Recovering documentation-to-source-code traceability links using
latent semantic indexing. In: SOFTWARE ENGINEERING, 2003. PROCEEDINGS. 25TH
INTERNATIONAL CONFERENCE ON. Anais. . . [S.l.: s.n.], 2003. p.125 – 135.
PANICHELLA, A.; LUCIA, A. D.; ZAIDMAN, A. Adaptive User Feedback for IR-Based
Traceability Recovery. In: IEEE/ACM 8TH INTERNATIONAL SYMPOSIUM ON SOFTWARE
AND SYSTEMS TRACEABILITY, 2015. Anais. . . [S.l.: s.n.], 2015. p.15 – 21.
PETERSEN, K. et al. Systematic Mapping Studies in Software Engineering. In:
INTERNATIONAL CONFERENCE ON EVALUATION AND ASSESSMENT IN SOFTWARE
ENGINEERING, 12., Swinton, UK, UK. Proceedings. . . British Computer Society, 2008. p.68 –
77. (EASE’08).
POSHYVANYK, D. Using information retrieval to support software maintenance tasks. In:
SOFTWARE MAINTENANCE, 2009. ICSM 2009. IEEE INTERNATIONAL CONFERENCE ON.
Anais. . . [S.l.: s.n.], 2009. p.453 – 456.
RAMESH, B.; EDWARDS, M. Issues in the development of a requirements traceability model.
In: REQUIREMENTS ENGINEERING, 1993., PROCEEDINGS OF IEEE INTERNATIONAL
SYMPOSIUM ON. Anais. . . [S.l.: s.n.], 1993. p.256 – 259.
RAMESH, B.; JARKE, M. Toward Reference Models for Requirements Traceability. IEEE Trans.
Softw. Eng., Piscataway, NJ, USA, v.27, n.1, p.58 – 93, January 2001.
RANDELL, B. Towards a methodology of computing system design. In: SOFTWARE
ENGINEERING. Anais. . . [S.l.: s.n.], 1968.

REFERÊNCIAS

90

RATANOTAYANON, S.; SIM, S. E.; RAYCRAFT, D. J. Cross-artifact Traceability Using
Lightweight Links. In: ICSE WORKSHOP ON TRACEABILITY IN EMERGING FORMS OF
SOFTWARE ENGINEERING, 2009., Washington, DC, USA. Proceedings. . . IEEE Computer
Society, 2009. p.57 – 64. (TEFSE ’09).
REMPEL, P.; MADER, P.; KUSCHKE, T. An empirical study on project-specific traceability
strategies. In: IEEE INTERNATIONAL REQUIREMENTS ENGINEERING CONFERENCE
(RE), 2013. Anais. . . [S.l.: s.n.], 2013. p.195 – 204.
ROCHIMAH, S.; KADIR, W. M. N. W.; ABDULLAH, A. H. An Evaluation of Traceability
Approaches to Support Software Evolution. In: INTERNATIONAL CONFERENCE ON
SOFTWARE ENGINEERING ADVANCES (ICSEA 2007). Anais. . . [S.l.: s.n.], 2007. p.19 – 19.
ROETZHEIM, W. H. Developing Software to Government Standards. Upper Saddle River,
NJ, USA: Prentice-Hall, Inc., 1991.
ROYCE, W. Software Project Management: a unified framework. [S.l.]: Addison-Wesley
Professional, 1998.
SANTOS, W. B.; ALMEIDA, E. S. de; L. MEIRA, S. R. de. TIRT: a traceability information
retrieval tool for software product lines projects. In: EUROMICRO CONFERENCE ON
SOFTWARE ENGINEERING AND ADVANCED APPLICATIONS, 2012. Anais. . . [S.l.: s.n.],
2012. p.93 – 100.
SARDINHA, A. et al. EA-tracer: identifying traceability links between code aspects and early
aspects. In: ANNUAL ACM SYMPOSIUM ON APPLIED COMPUTING, 27., New York, NY,
USA. Proceedings. . . ACM, 2012. p.1035 – 1042. (SAC ’12).
SJOBERG, D. I. K.; DYBA, T.; JORGENSEN, M. The Future of Empirical Methods in Software
Engineering Research. In: FUTURE OF SOFTWARE ENGINEERING, 2007., Washington, DC,
USA. Anais. . . IEEE Computer Society, 2007. p.358 – 378. (FOSE ’07).
SOMMERVILLE, I. Software Engineering. 9.ed. Harlow, England: Addison-Wesley, 2010.
SOMMERVILLE, I. et al. Large-scale Complex IT Systems. Commun. ACM, New York, NY,
USA, v.55, n.7, p.71 – 77, July 2012.
SONG, X. et al. Lessons Learned from Building a Web-Based Requirements Tracing System.
In: INTERNATIONAL CONFERENCE ON REQUIREMENTS ENGINEERING: PUTTING
REQUIREMENTS ENGINEERING TO PRACTICE, 3., Washington, DC, USA. Proceedings. . .
IEEE Computer Society, 1998. p.41 – 50. (ICRE ’98).
SPANOUDAKIS, G. et al. Rule-based generation of requirements traceability relations. Journal
of Systems and Software, [S.l.], v.72, n.2, p.105 – 127, 2004.
SPANOUDAKIS, G. et al. Rule-based generation of requirements traceability relations. Journal
of Systems and Software, [S.l.], v.72, n.2, p.105 – 127, 2004.
SPANOUDAKIS, G.; ZISMAN, A. Software Traceability: a roadmap. In: HANDBOOK OF
SOFTWARE ENGINEERING AND KNOWLEDGE ENGINEERING. Anais. . . World Scientific
Publishing, 2004. p.395 – 428.

REFERÊNCIAS

91

STRASUNSKAS, D.; HAKKARAINEN, S. E. Domain Model-driven Software Engineering: a
method for discovery of dependency links. Inf. Softw. Technol., Newton, MA, USA, v.54, n.11,
p.1239 – 1249, nov 2012.
SWEBOK. SWEBOK: guide to the software engineering body of knowledge. Version
3.0.ed. Los Alamitos, CA: IEEE Computer Society, 2014.
TORKAR, R. et al. REQUIREMENTS TRACEABILITY: a systematic review and industry case
study. International Journal of Software Engineering and Knowledge Engineering, [S.l.],
v.22, n.03, p.385 – 433, 2012.
TSUCHIYA, R. et al. Recovering Traceability Links Between Requirements and Source Code in
the Same Series of Software Products. In: INTERNATIONAL SOFTWARE PRODUCT LINE
CONFERENCE, 17., New York, NY, USA. Proceedings. . . ACM, 2013. p.121 – 130. (SPLC
’13).
WIJESINGHE, D. B. et al. Establishing traceability links among software artefacts. In:
ADVANCES IN ICT FOR EMERGING REGIONS (ICTER), 2014 INTERNATIONAL
CONFERENCE ON. Anais. . . [S.l.: s.n.], 2014. p.55 – 62.
ZHOU, J.; LU, Y.; LUNDQVIST, K. A Context-based Information Retrieval Technique for
Recovering Use-Case-to-Source-Code Trace Links in Embedded Software Systems. In:
EUROMICRO CONFERENCE ON SOFTWARE ENGINEERING AND ADVANCED
APPLICATIONS, 2013. Anais. . . [S.l.: s.n.], 2013. p.252 – 259.
ZISMAN, A. et al. Tracing Software Requirements Artefacts. International Conference on
Software Engineering Research and Practice, [S.l.], 2003.
ZOU, X. Improving Automated Requirements Trace Retrieval Through Term-based
Enhancement Strategies. 2009. Tese (Doutorado em Ciência da Computação) — , Chicago,
IL, USA. AAI3351240.

Apêndice

93

A
Estudos Primários Incluídos
As informações apresentadas neste apêndice são detalhadas no Capítulo 4. Por causa
de limitações de espaço estão sendo apresentadas apenas informações de código, título, ano,
origem, autores e nota atribuída na avaliação de qualidade.
Tabela A.1: Estudos Incluídos em ordem alfabética
Cód.

Título

Ano

EP01

A combination approach for enhan-

2011

Autores

Nota

Xiaofan Chen; John Hos-

7,0

Origem
ACM; IEEE

cing automated traceability (NIER

king; John Grundy

track)
EP02

A Context-based Information Retri-

2013

IEEE

Jiale Zhou; Yue Lu; Kris-

eval Technique for Recovering Use-

8,0

tina Lundqvist

Case-to-Source-Code Trace Links
in Embedded Software Systems
EP03

ADAMS Re-Trace: a Traceability

2005

Recovery Tool

Ei Compen-

Andrea De Lucia; Fausto

dex

Fasano; Rocco Oliveto;

7,0

Genoveffa Tortora
EP04

An industrial case study in recons-

2008

tructing requirements views

Scopus;

Ei

Marco Lormans; Arie van

Compendex

Deursen; Hans-Gerhard

9,5

Gross
EP05

Assessing IR-based traceability re-

2009

covery tools through controlled ex-

Ei Compen-

Andrea De Lucia; Rocco

dex

Oliveto; Genoveffa Tor-

periments
EP06

Capturing software traceability links
from developers‘ eye gazes

10

tora
2014

ACM

Braden Walters; Timothy
Shaffer; Bonita Sharif; Huzefa Kagdi

7,5

94

EP07

Ano

Título

Cód.

Cross-artifact

traceability

using

2009

lightweight links

Autores

Origem

Nota

ACM;

Sukanya Ratanotayanon;

TEFSE

Susan Elliott Sim; Derek

10

J. Raycraft
EP08

Domain model-driven software en-

2012

Scopus

Darijus Strasunskas; Sari

gineering A method for discovery of

10

E. Hakkarainen

dependency links
EP09

EP10

EA-tracer: identifying traceability

2012

ACM

Alberto Sardinha; Nan

links between code aspects and

Niu;

early aspects

Rashid

Enhancing an artefact management

2004

system with traceability recovery fe-

Extraction and visualization of tra-

Awais

Ei Compen-

Andrea De Lucia; Fausto

dex

Fasano; Rocco Oliveto;

atures
EP11

Yijun Yu;

7,5

8,5

Genoveffa Tortora
2010

ACM

Xiaofan Chen

6,5

2013

Ei Compen-

Hamzeh

8,5

dex

Abdelhak-Djamel Seriai;

ceability relationships between documents and source code
EP12

Feature-to-code traceability in legacy software variants

Eyal-Salman;

Christophe Dony

EP13

Goal-centric traceability for mana-

2005

ACM

Jane Cleland-Huang; Raf-

ging non-functional requirements

9,0

faella Settimi; Oussama
BenKhadra; Eugenia Berezhanskaya; Selvia Christina

EP14

Improving automated documenta-

2011

ACM; IEEE

tion to code traceability by combi-

Xiaofan

Chen;

John

10

Tien N.

7,5

Grundy

ning retrieval techniques
EP15

Incremental Latent Semantic Inde-

2008

Hsin-yi Jiang;

ACM

xing for Automatic Traceability Link

Nguyen; Ing-Xiang Chen;

Evolution Management

Hojun Jaygarl; Carl K.
Chang

EP16

Mining software repositories for tra-

2007

IEEE

Huzefa Kagdi; Jonathan I.

ceability links
EP17

Monitoring Requirements Coverage
using Reconstructed Views - An Industrial Case Study

7,5

Maletic; Bonita Sharif
2006

IEEE,

Ei

Marco Lormans; Hans-

Compendex

Gerhard Gross; Arie van
Deursen; Rini van Solingen; André Stehouwer

7,0

95

EP18

Ano

Título

Cód.

Reconstructing requirements cove-

2005

Autores

Origem
ACM

rage views from design and test

Nota

Marco Lormans; Arie van

8,0

Deursen

using traceability recovery via LSI
EP19

EP20

Recovering and using use-case-

2007

ACM

Mark Grechanik; Kathryn

diagram-to-source-code traceability

S. McKinley; Dewayne E.

links

Perry

Recovering traceability between fe-

2013

ACM

atures and code in product variants

Lukas Linsbauer;

Ro-

9,0

7,0

berto E. Lopez-Herrejon;
Alexander Egyed

EP21

Recovering
between

traceability

feature

links

models

2012

ACM

and

Hamzeh

Eyal-Salman;

Christophe

source code of product variants

6,0

Dony;

Abdelhak-Djamel Seriai;
Ra’fat Al-msie’deen

EP22

Recovering

traceability

links

2013

ACM

Ryosuke Tsuchiya;

Hi-

between requirements and source

ronori Washizaki; Yoshi-

code in the same series of software

aki Fukazawa; Tadahisa

products

Kato; Masumi Kawakami;

10

Kentaro Yoshimura
EP23

EP24

Recovering traceability links in soft-

2007

ACM

Andrea de Lucia; Fausto

ware artifact management systems

Fasano; Rocco Oliveto;

using information retrieval methods

Genoveffa Tortora

Rule-based generation of require-

2014

ments traceability relations

Scopus; Sci-

George

Spanoudakis;

ence Direct

Andrea Zisman; Elena
Pérez-Miñana;

10

8,0

Paul

Krause
EP25

Rule-based Impact Analysis for He-

2013

IEEE

terogeneous Software Artifacts

Steffen Lehnert; Qurat-ul-

10

ann Farooq; Matthias Riebisch

EP26

SANAYOJAN: a framework for tra-

2014

ACM

ceability link recovery between use-

Ritika Jain; Smita Ghai-

8,0

sas; Ashish Sureka

cases in software requirement specification and regulatory documents
EP27

Software traceability with topic mo-

2010

ACM

deling

Hazeline U. Asuncion;

7,5

Arthur U. Asuncion; Richard N. Taylor

EP28

TIRT - A Traceability Information Re-

2012

IEEE

Wylliams Barbosa Santos;

trieval Tool for Software Product Li-

Eduardo Santana de Al-

nes Projects

meida; Silvio Romero de
L. Meira

7,0

96

Título

Cód.
EP29

Tool support for traceability of soft-

Ano
2015

ware artefacts

Autores

Origem

Nota

Ei Compen-

K.

dex

Uruththirakodeeswaran;
G.

Kamalabalan;

T.

Thiyagalingam;

B. Wijesinghe;

5,0

D.

I. Pe-

rera; D. Meedeniya; D.
Balasubramaniam
EP30

EP31

Towards a requirements traceability

2015

ACM

Arthur Marques; Franklin

process centered on the traceability

Ramalho; Wilkerson L.

model

Andrade

Towards an intelligent domain-

2014

Jin Guo; Natawut Monai-

ACM

specific traceability solution

8,5

9,5

kul; Cody Plepel; Jane
Cleland-Huang

EP32

Towards feature-aware retrieval of

2013

refinement traces
EP33

Traceability ReARMed

2009

IEEE;

Patrick Rempel; Patrick

TEFSE

Mader; Tobias Kuschke

IEEE,

Ei

Joern David; Maximilian

Compendex

Koegel; Helmut Naugh-

7,5

5,5

ton; Jonas Helming
EP34

Tracing Requirements and Source

2013

Code during Software Development

IEEE,

Ei

Alexander Delater; Bar-

9,5

Compendex

bara Paech

2011

ACM

Celal Ziftci; Ingolf Krueger

9,0

2013

Ei Compen-

Andrea Zisman; George

7,0

dex

Spanoudakis;

- An Empirical Study
EP35

Tracing requirements to tests with
high precision and recall

EP36

Tracing Software Requirements Artefacts

Pérez-Miñana;

Elena
Paul

Krause
EP37

XTraQue: Traceability for product
line systems

2009

Scopus,

Ei

Compendex

Waraporn Jirapanthong;
Andrea Zisman

9,0

97

B
Protocolo do Mapeamento Sistemático
A fim de superar os desafios significativos na criação, manutenção e utilização de
rastreabilidade, ao longo dos últimos 20 anos, a comunidade científica tem vindo a comunicar
ativamente as questões de rastreabilidade através da exploração de temas relacionados
com a automatização do processo de rastreabilidade. Apesar de vários autores apontarem
soluções relacionadas à rastreabilidade de software, até o momento nenhum estudo apresentou
uma visão holística dos estudos empíricos existentes. Motivado pela necessidade de se
produzir melhores evidências, e como um primeiro esforço neste sentido, o trabalho que gerou
a necessidade deste protocolo se propõs a: Identificar os experimentos, classifica-los
através de guias existentes na literatura, e de maneira sistemática analisar os desafios
e contextos da aplicação da rastreabilidade entre artefatos heterogêneos na engenharia
de software. Os estágios para condução de mapeamentos sistemáticos previsto pelo protocolo
envolvem os seguintes pontos:
1. Identificar as questões de pesquisa;
2. Estabelecer a estratégia de busca dos estudos;
3. Prescrever a estratégia de seleção dos estudos relevantes;
4. Avaliar a qualidade dos estudos selecionados;
5. Determinar a forma de extração dos dados.

B.1

Questões de Pesquisa
Com o objetivo de delinear o escopo da pesquisa e de identificar os elementos que

vieram a fazer parte das questões de pesquisa, foi utilizado uma estrutura citada por KITCHENHAM; CHARTERS (2007), o qual recomenda considerar as questões de pesquisa a partir
da seguinte estrutura denominada PICOC (Population, Intervention, Comparison, Outcome,
Context):

B.2. ESTRATÉGIA DE BUSCA DOS ESTUDOS 

População (Population): Artefatos Heterogêneos 

Intervenção (Intervention): Rastreabilidade de Software 

Contexto (Context): Engenharia de Software

98

O item comparação (Comparison) não foi utilizado, uma vez que o estudo não realiza
comparações entre os mecanismos para guiar estudos empíricos. Com relação ao item
da estrutura denominado Resultado (Outcomes) não foi utilizado porque não consideramos
resultados específicos, evitar essa restrição foi preciso uma vez que queria uma visão ampla
da área de pesquisa como um todo. As perguntas desta pesquisa são de natureza exploratória,
pois têm o intuito de obter uma visão ampla de uma área de investigação. Assim, o objetivo
deste mapeamento é consolidar informações a respeito da rastreabilidade entre artefatos
heterogêneos na engenharia de software. No entanto, este tema é demasiadamente genérica
para uma avaliação completa. Assim, ele foi dividida em cinco questões (Q), com foco em
aspectos específicos da pesquisa. 

Q1 - Quais abordagens de rastreamento têm sido frequentemente aplicada para
suportar a heterogeneidade dos artefatos na engenharia de software? 

Q2 - Quais os artefatos utilizados para estabelecimento da rastreabilidade? 

Q3 - Quais meios têm sido empregados para a criação das relações entre os
artefatos? 

Q4 - Quais as métricas aplicadas a rastreabilidade entre artefatos heterogêneos? 

Q5 - Quais os principais contextos, objetivos e desafios na aplicação de rastreabilidade entre artefatos heterogêneos de software?

B.2

Estratégia de Busca dos Estudos
A procura por estudos primários foi realizada utilizando pesquisa automática e manual.

A pesquisa manual incluiu uma dos mais importantes eventos da área, a fonte de busca manual
planejada e o respectivo período de coleta foram: 

TEFSE - International Workshop on Traceability in Emerging Forms of Software
Engineering (2002 - 2013)

Para a estratégia automática planejou-se a utilização dos seguintes mecanismos: 

1

IEEE Xplore Digital Library1

http://ieeexplore.ieee.org

B.2. ESTRATÉGIA DE BUSCA DOS ESTUDOS 

ACM Digital Library2 

Elsevier Scopus3 

Science Direct4 

EI Compendex5

99

Não foi estabelecido qualquer limite inferior em relação ao ano publicação dos estudos
com o objetivo de recuperar toda a literatura sobre o assunto, visto que, nenhum estudo
secundário sobre o tema foi identificado até o momento.
A construção da string de busca utilizada nas bibliotecas digitais selecionadas foi construída seguindo uma estratégia definida por KITCHENHAM; MENDES; TRAVASSOS (2007),
que consiste em: (i) derivar a partir das questões de pesquisa as principais palavras-chaves
da estrutura PICOC (ii) procurar por palavras chaves em artigos relevantes já consultados
em uma revisão informal (iii) identificar sinônimos e termos alternativos as palavras-chaves
(iv) usar os conectores (OR , AND) para incorporar os sinônimos e ligar as palavras chaves,
respectivamente. Os termos utilizados e a de string de busca definida foi a seguinte:
(traceability OR tracing OR “trace links” OR “trace recovery” OR “information retrieval”
OR “trace retrieval”) AND (artefact OR artifact OR document OR tool) AND (heterogeneous OR
different OR variety OR diverse OR diversified OR varied OR inhomogeneous) AND (“software
engineering” OR “software development” OR “software process” OR “systems engineering” OR
“systems development” OR “software project” OR “development environment” OR “software
system”)
Para ter acesso aos estudos de cada fonte informada foi utilizado a conta de estudante
filiado ao curso de pós-graduação da Universidade Federal de Pernambuco (UFPE). Os
resultados das buscas foram exportados no formato bibtex e utilizados na ferramenta de gestão
JabRef6 . Excepcionamente a consulta e gestão dos resultados de ACM foram realizadas
através da ferramenta ReviewER7 , devido as dificuldades apresentadas destas atividades no
site da instituição8 .
A seleção de estudos primários foi planejada em duas fases, sucedidas de uma
atividade de teste e reteste, uma alternativa para garantia da confiabilidade das decisões
em estudos realizados por único pesquisador (KITCHENHAM; CHARTERS, 2007). Após
obter o resultado das buscas, cada estudo retornado foi avaliado pelo seu título, resumo e
palavras chave. Nessa primeira fase apenas os estudos que claramente fugiram do escopo
do mapeamento foram excluídos, mantendo-se para análise posterior todos os estudos que
2

http://portal.acm.org
http://www.scopus.com
4
http://www.sciencedirect.com/
5
https://www.engineeringvillage.com/search/quick.url
6
http://www.jabref.org/
7
http://sites.google.com/site/eseportal/tools/reviewer
8
http://dl.acm.org/
3

B.2. ESTRATÉGIA DE BUSCA DOS ESTUDOS

100

geraram alguma dúvida quanto ao sua permanência. Na segunda fase, os trabalhos de
pesquisa selecionados são revistos com base nos critérios de inclusão e exclusão para obter
uma lista final dos estudos primários selecionados. Todos os estudos foram lidos sinteticamente
e analisados com objetivo de filtrar a inclusão no mapeamento dos estudos pela sua relevância
em relação as questões de pesquisa. Os critérios utilizados podem ser observados a seguir.
Critérios de Inclusão 

CI01 - Estudos empíricos relacionados à rastreabilidade entre artefatos heterogêneos de software 

CI02 - Trabalhos publicados até outubrode 2015

Critérios de Exclusão 

CE01 - Estudo não disponível 

CE02 - Estudo Duplicado 

CE03 - Estudo Incompleto 

CE04 - Estudo não escrito em inglês 

CE05 - Estudo que apenas propõe uma abordagem ou descreve lições aprendidas 

CE06 - Estudo onde a criação ou manutenção da rastreabilidade entre artefatos
não é o objetivo principal da pesquisa 

CE07 - Estudo que apresenta apenas um benchmarking

Pelo fato desta pesquisa ser realizada por um único pesquisador, a atividade de
teste consistem em reavaliar uma amostra aleatória dos estudos primários retornados e dos
estudos considerados relevantes após triagem inicial, ou seja, insumos da primeira e segunda fase da estratégia de seleção. Essa atividade tem como objetivo verificar a consistência
das decisões aplicadas ao critérios de inclusão / exclusão ao final de cada fase de seleção.
Para isso, serão avaliados 5% de todos os estudos recuperados por fonte de busca automática
e manual, e caso encontrado alguma divergência no critério aplicado o estudo deverá ser
considerado potencialmente relevante e por consequência incluido a segunda fase. A medida
que desentendimentos forem identificados, mais 2% destes estudos serão avaliados. Para
determinar quais estudos serão revisitados uma função que retorna números aleatórios será
utilizada. Na segunda fase o percentual da amostra dos estudos a testar será 20%, selecionados utilizando os mesmo critérios de aleatoriedade definido anteriormente. Em caso
de discordância, outros 10% serão revisitados e o estudo em questão deverá ser reavaliado
(reteste).
A gestão dos critérios de exclusão aplicado a cada estudo na segunda fase da estratégia de seleção foi realizada através das ferramentas JabRef e Reviewer anteriormente
mencionadas.

B.3. AVALIAÇÃO DE QUALIDADE

B.3

101

Avaliação de Qualidade
Cada estudo persistido após análise dos critérios de inclusão e exclusão foi avaliado

por sua qualidade, fornecendo critérios ainda mais detalhados com objetivo de assegurar que
os estudos filtrados apresentam uma contribuição valorosa para o mapeamento e investigar se
as diferenças de qualidade estão associadas com diferentes resultados do estudo primário.
Uma adaptação dos critérios de BRERETON; KYRIACOU; PEARL (2011) foi considerada
adequada para uso durante este MS, uma vez que está previsto que ele irá incluir exemplos de
vários tipos de estudos diferentes. A avaliação de qualidade foi realizada através de perguntas
a serem respondidas com três valores possíveis: 

Sim (S): Se a questão é totalmente atendida, esta resposta conta o valor 1.0; 

Parcialmente (P): Se a pergunta é parcialmente respondida, esta resposta conta o
valor de 0,5; 

Não (N): Se a pergunta não foi respondida ou não satisfatoriamente respondida,
esta resposta conta o valor 0,0.

O primeiro destes critérios foi utilizado para excluir publicações não empíricas, tendo
sido transformado em critério de exclusão na fase de seleção dos estudos. Como tal, este
critério representa o limiar mínimo de qualidade que será observado durante a avaliação,
apenas aceitando valor igual a 1,0. A literatura que não satisfaz este critério será excluída
do MS. Os outros critérios restantes visam determinar o rigor e credibilidade dos métodos de
pesquisa utilizados em um estudo particular, bem como a relevância de cada papel para o
MS que está sendo realizado. Os estudos primários foram classificados em quatro grupos
diferentes: Muito Bom (entre 9,0 e 10,0), Bom (entre 7,5 e 8,5), Regular (de 5,5 a 7,0) e Pobre
(< 5,5). A Figura B.1 exibe o guia utilizado com as perguntas definidas para avaliação de
qualidade foram as seguintes:

B.3. AVALIAÇÃO DE QUALIDADE

102

Figura B.1: Guia das perguntas de qualidade

Para auxiliar na captura dos valores de cada pergunta foi utilizado uma planilha excel,
semelhante a exibida na Figura , onde foram registrados os valores atribuídos, o somatório
destes e a classificação conforme as categorias criadas.

B.4. ESTRATÉGIA DE EXTRAÇÃO

103

Figura B.2: Formulário de registro dos valores da avaliação de qualidade

B.4

Estratégia de Extração
O objetivo desta etapa foi criar formas de extração dos dados para registrar com

precisão as informações obtidas a partir dos estudos primários selecionados. Para o processo
foi planejado uma extração em duas partes: extração dos metadados e extração de toda
informação relevante para responder às questões de pesquisa. Na primeira parte extrai-se
título, autores, país de origem, ano de publicação, instituição de origem e engenhos de busca
que retornaram o estudo. Já a segunda parte, deve ser extraída da leitura integral dos estudos,
no intuito de extrair de cada um deles informações que sirvam de evidência para responder as
questões de pesquisa investigadas neste mapeamento. Para tanto, duas planilhas semelhantes
as da Figura B.3 e Figura B.4 foram utilizadas para servir de instrumentos de coleta para ambas
as partes.

Figura B.3: Formulário de extração dos metadados

Figura B.4: Formulário extração de informações

B.5. PROCESSO DE SÍNTESE

104

Assim como nas duas fases da estratégia de seleção dos estudos, aqui também foi
realizada uma atividade de teste e reteste para verificação da consistência de extração de
dados, neste caso, sobre todos os dados extraídos dos estudos primários selecionados, com
isso, reduzindo o viés interno da pesquisa.

B.5

Processo de Síntese
Em particular, os dados coletados deverão ser distinguidos entre metadados das

publicações e dados sobre o relato dos experimentos em rastreabilidade. Os metadados
devem ser utilizados principalmente para realizar uma investigação estatística dos estudos
selecionados, enquanto os dados de relato dos experimentos devem ser analisados com o
objetivo de responder às questões de pesquisa elaboradas.

105

C
Resultados da Avaliação de Qualidade

Figura C.1: Resultado da Avaliação de Qualidade dos estudos selecionados