Guidance – Performing the Literature Review

The Goal

The goal of the literature review is to better understand the existing knowledge and research results in your space and to avoid redundancies. It also aims to establish how your topic relates to others in the field, providing a broader context and facilitating interdisciplinary connections. Additionally, the literature review helps to identify gaps in existing research, supporting your argumentation/justification for why your research should be conducted and emphasizing its relevance. Furthermore, it assists in recognizing patterns and gaining insights into effectively designing and implementing the study, selecting appropriate measures, and extracting meaningful information from the data. Overall, the literature review gives credibility to and the foundation for your work.

 

Finding the right papers

The search for related work is an iterative process that can follow several paths. In most cases, your supervisor will provide one or more relevant papers to start with. Studying the references of these papers and the ones that cite them is usually a great start to find closely related work, as in a backward/forward snowballing.

The next steps are searching in relevant conference proceedings and known libraries. It’s usually a good idea to search the publications of a specific conference or journal that is important in the area your project falls into for specific key words related to your project. Some examples in our area of research are:

  • Conferences: ESEC/FSE, ICSE, CHI, CSCW; ASE, ESEM, MSR.
  • Journals: TSE, TOSEM, ToCHI.

In addition, you can search more openly using known libraries such as ACM and IEE Xplore. ResearchGate, arXiv, and Google Scholar can also be good options. Be aware that, in these cases, not all papers are peer-reviewed and have attested quality.

A general suggestion is to carefully think about the keywords of your search. Some platforms allow you to use expressions with “AND” and “OR” operators. Consider synonymous and polysemous words. Associate your search with words that remove the ambiguity. For example, if you are working with “data processing”, you can also search for “data analysis”. If you are investigating keyboards input data, searching for “keyboard” can return papers from music area.

Finally, a good strategy is searching for systematic literature reviews related to your project. They (usually) summarize part of the results in the area and have a great list of references. Try to identify the main papers related to your work. The ones that proposed the field, big changes, and the possible contrary ideas. That way you can write a history in your mind about how it was constructed and where you want to go. Pay attention to the date of publication. In computer science, a few years may make information in a paper obsolete. Due to technological changes, the described behavior, tool or results can be different, but still serve as inspiration. For example, an old paper could say that it is impossible to run two processes at the same time on a computer.

 

Organizing the information

When reading many papers, it can easily happen that you cannot remember every one of them. Find a way that works for you to keep track of what you already read. Take advantage of professional tools for citation management such as Mendeley and Zotero. They can help you group the papers by subjects and tags and keep notes. Alternatively, you can also use an Excel worksheet or even a notebook app (OneNote or Notion) to structure your notes.

It is recommended to create a table for the (main) related papers with columns that are useful for your current research topic and to showcase the differences. These columns can represent different methods or tools used, different validation methods, or different scopes of research. For the related work section, you can then group the papers by these columns, e.g. looking at all papers at once that did an evaluation with data only vs papers that evaluated with lab or field experiments, or that look at a certain aspect of the topic.

Example Comparison of related work by Alexander Lill

Putting it into a Related Work section

The best way to prepare for writing the Related Work section, is to read the Related Work sections in (good!) papers. You do not need to include everything you read. Filter the information that is really relevant for the paper you are writing.  Try to write the history that you build in your mind while looking for the papers. Who came up with the theme? What approaches are similar to yours? What is missing in these approaches? Describe the lacuna/gap: it is crucial to show the relevance of your work.

In general, you want to give the reader an overview of the (research) space and find a good way to divide it into higher-level themes / dimensions (which will usually form your subsections). For each theme/dimension you then want to state what others have done, giving an overview and thereby also providing some specific examples.

Each section of the related work should end with a summary of what the current gap is, and how this thesis will try to fill this gap. (“While prior work has focused on X, we aim to generate insights about Y”).

As an example if you talk about approaches that make web site recommendations, you should not just enumerate one after the other, but you could state that the space can be divided based on the information used to make the recommendation, including textual or recency/frequency information. Obviously, there are many more ways to divide the space, e.g. by approach used (ML vs heuristics, vs …) or by the way the recommendations are presented. This really depends on your topic and what you want to get across.

Additional suggestions can be found in the Guidance – Writing Theses and Project Reports.

 

Properly cite your references

Different areas of research as well as different journals/conferences use different citation formats. For theses and projects in the HASEL group, please consistently use the IEEE citation format (activated in the HASEL template on Overleaf). Remember that all works cited in the text should be included in the references and all works in the reference section should be cited in the text.

Example:
Citation in the text:
Parnin and Rugaber found that only one out of ten interrupted programming tasks is being continued within a minute after the interruption [1].

Item in the reference’s session:
[1] C. Parnin and S. Rugaber, “Resumption strategies for interrupted programming tasks,” Software Quality Journal, vol. 19, no. 1, pp. 5–34, 2011.

Note that we’ll also use a plagiarism scanner to check for issues with citations and paraphrases.

 

Additional Sources for further reading

Stol, K.J. and Fitzgerald, B., 2018. The ABC of software engineering research. ACM Transactions on Software Engineering and Methodology (TOSEM), 27(3), pp.1-51.

 

 

Note: This guide aims to guide students in writing good theses/project reports with/for HASEL. It is subject to change. Not all the suggestions might always apply. Ask your supervisor in case of questions.