SystematicLiteratureReviewinComputerScience-APracticalGuide
SystematicLiteratureReviewinComputerScience-APracticalGuide
net/publication/320704338
CITATIONS READS
69 29,612
2 authors:
All content following this page was uploaded by Rodrigo L. S. Silva on 29 October 2017.
RelaTeDCC 002/2016
Frâncila Weidt Neiva and Rodrigo Luis de Souza da Silva
This work aims to provide a practical guide to assist students of Computer Science
courses and related fields to conduct a systematic literature review. The steps proposed
in this paper to conduct a systematic review were extracted from a technical report
published by the researcher Bárbara Kitchenham [1] and arranged in a more objective
format, in order to make information more accessible and practical, especially for those
who are having their first contact with this technique. The target audience for this work
are undergraduate, master's and doctoral students that are in the initial phase of their
bibliographic research.
November 2016
Introduction
This document aims to provide a practical guide to assist students in conducting a systematic
literature (SLR). It is interesting to use this guide with examples of systematic reviews already
published, so that the researcher can view the steps outlined in this guide (for example, [2][3]). This
guide is based on the technical report proposed by Barbara Kitchenham in 2007 [1].
Before starting a systematic review, it is interesting to see if there is already a review covering the
defined scope. Considering there is no systematic review published covering the defined scope, the
following steps should be considered:
Here come the questions that guide what the author wants to figure out with the research. (For
example: What technique is being used to solve a particular problem on Software Engineering or
Computer Graphics?).
2. Defining keywords.
There are several techniques that can be used to find these keywords (the idea is to use one or more
of the items below):
a. Analyze the research questions and extract the first keywords;
b. Use papers from the area of interest to find new words and synonyms of the words already
found;
c. Define the PICOC [4] to better delineate the scope/ aims of the systematic review (optional).
The basic rule is to separate the keywords. For each separated word, find its synonyms and
concatenate them with the OR connector. After the definition of the groups of words with their
synonyms, concatenate them with AND to end the string. See below an example of a search string
extracted from [5]:
(pragmatic OR pragmatics OR pragmatism) AND (interoperability OR interoperate OR interoperable OR interoperation
OR similarity OR integrate OR integration) AND (solution OR method OR technique OR model OR tool OR framework OR
architecture OR infrastructure OR approach) AND (computational OR system OR application OR software)
2
4. Defining search engines
This definition depends on the area of systematic review. In general, considering the main electronic
search engines that include the researches produced in the area of Computer Science, the revision
should cover part (if not all) of the following bases:
a. IEEE Xplore (www.ieeexplore.com.br)
b. Scopus (www.scopus.com)
c. ScienceDirect (www.sciencedirect.com)
d. Springer (www.springerlink.com)
e. ACM (www.portal.acm.org)
f. Compendex (www.engineeringvillage.com)
5. String refinement
The idea is to test the string defined in the previous item in one of the search engines (for example,
Scopus). Once the string is performed, verify if the returned papers appear to be relevant. Known
papers that are potential candidates for primary studies of this review (which exist on these engines)
should appear in the search. If no relevant results appear, the search string must be parsed again to
be calibrated.
The refinement of the search criteria in each database (search by title, abstract and keywords or
complete, limitation or not per year, limitation or not by area, etc.) should be analyzed on a
case-by-case basis.
Figure 1 shows the example of a search string being created on the Scopus database.
Fig. 1: Advanced search example in the SCOPUS database (Extracted from [6]).
3
6. Search string execution
Once the search string is defined, it must be adapted to each of the search engines, since the syntax
used by each one is different. It is always interesting to keep in a document what string was used,
how many articles each base returned, and the date of execution. If it is necessary to run the search
again (either by the author or by a researcher who intends to continue the work), you can execute the
complete string or restrict to the period that the initial execution succeeds, just complementing the
results.
Fig. 2: Example of export option in SCOPUS database.
There are several reference management tools that can be used such as JabRef and Mendeley. For
a systematic review, we use these tools primarily to manage downloaded references and remove
duplicate papers returned from different search engines.
In this step the criteria to decide which papers will go to the next stage of the review will be defined.
The criteria should be defined from the research questions (see step 1). Other criteria that may be
4
used are: Restriction by language (only articles in English), restriction by area, restriction by primary
articles (excluding secondary studies such as other systematic reviews, area mapping and surveys),
etc.
The criteria, especially those of exclusion, may contain restrictions regarding the type of research that
one wishes to do. These criteria should be carefully defined and reviewed by your advisor before they
are implemented in order to align them with the research aims.
9. Selection of papers - First stage - Analysis by title and abstract
In this stage, only the title and abstract of the selected papers will be analyzed. The suggestion is to
export a CVS file (Jabref has this functionality) with the articles' data (with the duplicates removed)
and to import it into a worksheet (for example, from Google Drive).
The data that will be analyzed in this step (stored in the generated worksheet) is only title and
abstract. It is interesting to add a status column so that each researcher involved in this step can
assign one of the following values to the analyzed article: Included, excluded or doubtful (According
to the defined inclusion / exclusion criteria - see step 8). Each of the researchers will have their own
column to put the result of their analysis. It is important to highlight which analysis should be based
on the inclusion and exclusion criteria defined previously.
This step is quite subjective. Articles that are marked "doubtful" should be discussed by team
members, as well as possible disagreements. If those involved do not reach agreement, a diagonal
reading of the paper is suggested to resolve the doubt. It is suggested that the first author does the
first screening, followed by the others involved.
All papers selected in this step should be downloaded. It is suggested to make the papers available
to anyone involved in any cloud service (e.g. Dropbox).
10. Selection of papers - Second stage - Analysis by Introduction and Conclusion (Optional)
Depending on the number of papers selected in the previous step, an intermediate step is required to
refine the selection. In this stage, the introduction and conclusion of the selected papers will be
analyzed. The selection criterion is the same as in the previous step. A copy of the spreadsheet tab
used with the selected articles is created and the researchers involved re-mark the papers as
included, excluded or doubtful.
5
11. Selection of papers - Third stage - Complete reading and quality checklist
In this last stage, quality criteria (checklist) should be defined to verify the suitability of the papers
analyzed. Besides the checklist, it is interesting to set a cut-off point so that less-qualified papers
(according to the defined checklist) can be deleted. The lead author should do all the initial work
(reading all articles, applying the checklist, deleting the articles below the cutoff point). This stage
should be guided by the advisors.
At this stage, the research questions should be answered by analyzing the papers selected in the
previous step. You can create a spreadsheet with the papers (title or ID) in the rows and the query
questions in the columns. Then, when proceeding with the reading of the articles, the possible
answers extracted may be posted directly to the spreadsheet.
The synthesis of the extracted data can be presented in different forms. Usually, tables, graphs and
other artifacts are used to facilitate the visualization of this information. This step can be performed in
conjunction with the previous step.
Conclusion
Systematic literature reviews have been extensively used to identify, evaluate and interpret the
studies published in the literature. A systematic review allows the researcher to collect evidence in
order to identify research opportunities in a given field of study. Thus, systematic literature reviews
are highly recommended for students who are starting their research and wish to evaluate effectively
a particular area and clearly understand how their proposal may contribute considering what has
already been published.
The main contribution of this work is to assist in the construction of systematic literature review
focused on the Computer Science. To achieve this goal, we developed a practical and concise guide
that assists in simple and didactic steps the conduction of a systematic review in accordance with the
technique discussed by Barbara in Kitchenham [1].
We hope that with the use of this guide, the implementation of this valuable technique becomes
easier, more accessible and be encouraged as an important step towards the production of quality
research.
6
View publication stats
References
[1] Kitchenham, B., Charters, S. Guidelines for performing systematic literature reviews in software
engineering (version 2.3). Technical report, Keele University and University of Durham, 2007.
[2] Usman, M., Mendes, E., Weidt, F., Britto, R., Effort estimation in agile software development: A
systematic literature review, in Proceedings of the 10th International Conference on Predictive
Models in Software Engineering, New York, 2014, pp. 82–91.
[3] Santos, A., Delamaro, M., Nunes, F. The Relationship between Requirements Engineering and
Virtual Reality Systems: A Systematic Literature Review. In Symposium on Virtual and
Augmented Reality (SVR), 2013, pp. 53–62.
[4] Petticrew, M., Roberts, H. Systematic Reviews in the Social Sciences: A Practical Guide, John
Wiley & Sons, 2008.
[5] Neiva, F.W., David, J.M.N., Braga, R. and Campos, F. Towards pragmatic interoperability to
support collaboration: A systematic review and mapping of the literature. Information and
Software Technology, 2016, pp.137-150.
[6] Elsevier. Scopus - Acrescente valor a sua pesquisa. http://goo.gl/wIsQj2. Accessed in
June/2016.
@techreport{relateufjf022016,
author = {Neiva, F. and Silva, R.L.S.},
title = {Systematic Literature Review in Computer Science - A Practical Guide},
institution = {Federal University of Juiz de Fora},
year = {2016},
number = {1},
month = {November},
abstract = {This work aims to provide a practical guide to assist students of Computer
Science courses and related fields to conduct a systematic literature review. The steps
proposed in this paper to conduct a systematic review were extracted from a technical report
published by the researcher Bárbara Kitchenham [1] and arranged in a more objective format, in
order to make information more accessible and practical, especially for those who are having
their first contact with this technique. The target audience for this work are undergraduate,
master's and doctoral students that are in the initial phase of their bibliographic research.}
}