MSc_UoR_Computer_Science_Report_Template_and_Guide_2024
MSc_UoR_Computer_Science_Report_Template_and_Guide_2024
i
Abstract
This is an undergraduate project report template and instruction on how to write a report. It
also has some useful examples to use LATEX. Do read this template carefully. The number of
chapters and their titles may vary depending on the type of project and personal preference.
Section titles in this template are illustrative should be updated accordingly. For example,
sections named “A section...” and “Example of ...” should be updated. The number of
sections in each chapter may also vary. This template may or may not suit your project.
Discuss the structure of your report with your supervisor.
Report’s total word count: Following the abstract, the word count must be stated.
We expect at least 10,000 words in length and at most 15,000 words (starting from Chapter 1
and finishing at the end of the conclusions chapter, excluding references, appendices, abstract,
text in figures, tables, listings, and captions), about 40 - 50 pages.
Program code should be uploaded to gitlab, and the gitlab link should be included
alongside the word count, following the abstract.
You must submit your dissertation report (preferred in a PDF file) via the “Turnitin assign-
ment” in Blackboard Learn by the deadline. If a student has resits from the taught modules,
the dissertation deadline will be extended for 3 weeks from the original dissertation deadline.
ii
Acknowledgements
An acknowledgements section is optional. You may like to acknowledge the support and help
of your supervisor(s), friends, or any other person(s), department(s), institute(s), etc. If you
have been provided specific facility from department/school acknowledged so.
iii
Contents
1 Introduction 1
1.1 Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 Problem statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.3 Aims and objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.4 Solution approach . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.4.1 A subsection 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.4.2 A subsection 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.5 Summary of contributions and achievements . . . . . . . . . . . . . . . . . . 3
1.6 Organization of the report . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
iv
CONTENTS v
7 Challenges in Implementation 17
Appendices 19
vi
List of Tables
vii
List of Abbreviations
viii
Chapter 1
Introduction
Guidance on introduction chapter writing: Introductions are written in the following parts:
• A brief description of the investigated problem.
• A summary of the scope and context of the project, i.e., what is the background
of the topic/problem/application/system/algorithm/experiment/research question/hy-
pothesis/etc. under investigation/implementation/development [whichever is applicable
to your project].
• A description of the problem and the methodological approach adopted to solve the
problem.
1
CHAPTER 1. INTRODUCTION 2
1.1 Background
Describe to a reader the context of your project. That is, what is your project and what its mo-
tivation. Briefly explain the major theories, applications, and/or products/systems/algorithms
whichever is relevant to your project.
Cautions: Do not say you choose this project because of your interest, or your supervisor
proposed/suggested this project, or you were assigned this project as your final year project.
This all may be true, but it is not meant to be written here.
1.4.1 A subsection 1
You may or may not need subsections here. Depending on your project’s needs, add two or
more subsection(s). A section takes at least two subsections.
1.4.2 A subsection 2
Depending on your project’s needs, add more section(s) and subsection(s).
A subsection 1 of a subsection
The command \subsubsection{} creates a paragraph heading in LATEX.
A subsection 2 of a subsection
Write your text here...
CHAPTER 1. INTRODUCTION 3
A literature review chapter can be organized in a few sections with appropriate titles. A
literature review chapter might contain the following:
1. A review of the state-of-the-art (include theories and solutions) of the field of research.
Note that your literature review should demonstrate the significance of the project.
4
CHAPTER 2. DESIGN PRINCIPLES OF DISASTER RESILIENT INFRASTRUCTURE 5
• If LATEX is used efficiently and effectively, it helps in writing a very high-quality project
report (Lamport, 1994) [Example of \citep{} ].
• A detailed APA, Harvard, and Chicago referencing style guide are available in (University
of Reading, 2023b).
2. If LATEXis used efficiently and effectively, it helps in writing a very high-quality project
report (Lamport, 1994).
2.4 Summary
Write a summary of this chapter
Chapter 3
We mentioned in Chapter 1 that a project report’s structure could follow a particular paradigm.
Hence, the organization of a report (effectively the Table of Content of a report) can vary
depending on the type of project you are doing. Check which of the given examples suit your
project. Alternatively, follow your supervisor’s advice.
6
CHAPTER 3. MATERIALS AND TECHNOLOGIES FOR RESILIENCE 7
Title Page
Abstract
Acknowledgements
Frontmatter Table of Contents
List of Figures
List of Tables
List of Abbreviations
Chapter 1 Introduction
Chapter 2 Literature Review
Chapter 3 Methodology
Main text Chapter 4 Results
Chapter 5 Discussion and Analysis
Chapter 6 Conclusions and Future Work
Chapter 7 Refection
References
End matter
Appendices (Optional)
Index (Optional)
Chapter 1 Introduction
Chapter 2 Literature Review
Chapter 3 Methodology
Requirements specifications
Analysis
Design
Implementations
Chapter 4 Testing and Validation
Chapter 5 Results and Discussion
Chapter 6 Conclusions and Future Work
Chapter 7 Reflection
Chapter 1 Introduction
Chapter 2 Literature Review
Chapter 3 Methodology
Algorithms descriptions
Implementations
Experiments design
Chapter 4 Results
Chapter 5 Discussion and Analysis
Chapter 6 Conclusion and Future Work
Chapter 7 Reflection
Chapter 1 Introduction
Chapter 2 Literature Review
Chapter 3 Methodology
Problems (tasks) descriptions
Algorithms/tools/technologies/etc. descriptions
Implementations
Experiments design and setup
Chapter 4 Results
Chapter 5 Discussion and Analysis
Chapter 6 Conclusion and Future Work
Chapter 7 Reflection
Chapter 1 Introduction
Chapter 2 Literature Review
Chapter 3 Materials and Methods
Problems (tasks) description
Materials
Procedures
Implementations
Experiment set-up
Chapter 4 Results
Chapter 5 Discussion and Analysis
Chapter 6 Conclusion and Future Work
Chapter 7 Reflection
N
1 X
s= xi . (3.1)
N
i=1
Have you noticed that all the variables of the equation are defined using the in-text maths
command $.$, and Eq. (3.1) is treated as a part of the sentence with proper punctuation?
Always treat an equation or expression as a part of the sentence.
CHAPTER 3. MATERIALS AND TECHNOLOGIES FOR RESILIENCE 9
Main
Input
False True
If
Call
End
1: function EvenSummation(x)
2: E v enSum ← 0
3: N ← length(x)
4: for i ← 1 to N do
5: if xi mod 2 == 0 then ▷ Check whether a number is even.
6: E v enSum ← E v enSum + xi
7: end if
8: end for
9: return E v enSum
10: end function
• do not paste your entire code (implementation) or everything you have coded. Add
code snippets only.
• The algorithm shown in Algorithm 1 is usually preferred over code snippets in a techni-
cal/scientific report.
• Make sure the entire code snippet or algorithm stays on a single page and does not
overflow to another page(s).
Here are three examples of code snippets for three different languages (Python, Java, and
CPP) illustrated in Listings 3.1, 3.2, and 3.3 respectively.
1 import numpy as np
2
3 x = [0 , 1 , 2 , 3 , 4 , 5] # assign values to an array
4 evenSum = evenSummation ( x ) # call a function
5
6 def evenSummation ( x ) :
7 evenSum = 0
8 n = len ( x )
9 for i in range ( n ) :
10 if np . mod ( x [ i ] ,2) == 0: # check if a number is even ?
11 evenSum = evenSum + x [ i ]
12 return evenSum
Listing 3.1: Code snippet in LATEX and this is a Python code example
Here we used the “\clearpage” command and forced-out the second listing example onto
the next page.
CHAPTER 3. MATERIALS AND TECHNOLOGIES FOR RESILIENCE 11
the articles “a,” “an,” and “the” before the words Eq., Figure, Table, and Listing, but you
may use an article for referring the words figure, table, etc. in general.
For example, the sentence “A report structure is shown in the Table 3.1” should be written
as “A report structure is shown in Table 3.1.”
3.7 Summary
Write a summary of this chapter.
Note: In the case of software engineering project a Chapter “Testing and Validation”
should precede the “Results” chapter. See Section 3.1.1 for report organization of such project.
Chapter 4
The results chapter tells a reader about your findings based on the methodology you have
used to solve the investigated problem. For example:
• If your project aims to develop a software/web application, the results may be the
developed software/system/performance of the system, etc., obtained using a relevant
methodological approach in software engineering.
• If your project aims to implement an algorithm for its analysis, the results may be the
performance of the algorithm obtained using a relevant experiment design.
• If your project aims to solve some problems/research questions over a collected dataset,
the results may be the findings obtained using the applied tools/algorithms/etc.
4.1 A section
...
13
CHAPTER 4. STRUCTURAL SYSTEMS AND INNOVATIONS 14
Bike
Type Color Price (£)
Electric black 700
Hybrid blue 500
Road blue 300
Mountain red 300
Folding black 500
• The caption of a Table goes above the table. See the example in Table 4.1.
• The caption of an Algorithm goes above the algorithm. See the example in Algo-
rithm 1.
• The caption of a Listing goes below the Listing (Code snippet). See example listing
in Listing 3.1.
4.4 Summary
Write a summary of this chapter.
Chapter 5
Depending on the type of project you are doing, this chapter can be merged with “Results”
Chapter as “ Results and Discussion” as suggested by your supervisor.
In the case of software development and the standalone applications, describe the signifi-
cance of the obtained results/performance of the system.
5.1 A section
The Discussion and Analysis chapter evaluates and analyses the results. It interprets the
obtained results.
5.3 Limitations
Discuss the key limitations and potential implications or improvements of the findings.
5.4 Summary
Write a summary of this chapter.
15
Chapter 6
6.1 Conclusions
Typically a conclusions chapter first summarizes the investigated problem and its aims and
objectives. It summaries the critical/significant/major findings/results about the aims and
objectives that have been obtained by applying the key methods/implementations/experiment
set-ups. A conclusions chapter draws a picture/outline of your project’s central and the most
signification contributions and achievements.
A good conclusions summary could be approximately 300–500 words long, but this is just
a recommendation.
A conclusions chapter followed by an abstract is the last things you write in your project
report.
16
Chapter 7
Challenges in Implementation
Write a short paragraph on the substantial learning experience. This can include your decision-
making approach in problem-solving.
Some hints: You obviously learned how to use different programming languages, write
reports in LATEXand use other technical tools. In this section, we are more interested in what
you thought about the experience. Take some time to think and reflect on your individual
project as an experience, rather than just a list of technical skills and knowledge. You may
describe things you have learned from the research approach and strategy, the process of
identifying and solving a problem, the process research inquiry, and the understanding of the
impact of the project on your learning experience and future work.
Also think in terms of:
• what you could do this project differently if the same or similar problem would come
• rationalize the divisions from your initial planed aims and objectives.
A good reflective summary could be approximately 300–500 words long, but this is just a
recommendation.
Note: The next chapter is “References,” which will be automatically generated if you
are using BibTeX referencing method. This template uses BibTeX referencing. Also, note
that there is difference between “References” and “Bibliography.” The list of “References”
strictly only contain the list of articles, paper, and content you have cited (i.e., refereed) in
the report. Whereas Bibliography is a list that contains the list of articles, paper, and content
you have cited in the report plus the list of articles, paper, and content you have read in order
to gain knowledge from. We recommend to use only the list of “References.”
17
References
Lamport, L. (1994), LATEX: a document preparation system: user’s guide and reference
manual, Addison-wesley.
University of Reading (2023b), ‘Different styles & systems of referencing: Guidance on citing
references for students at the university of reading’. (accessed June 6, 2023).
URL: https://libguides.reading.ac.uk/citing-references/referencingstyles
18
Appendix A
Some lengthy tables, codes, raw data, length proofs, etc. which are very important but not
essential part of the project report goes into an Appendix. An appendix is something a reader
would consult if he/she needs extra information and a more comprehensive understating of
the report. Also, note that you should use one appendix for one idea.
An appendix is optional. If you feel you do not need to include an appendix in your report,
avoid including it. Sometime including irrelevant and unnecessary materials in the Appendices
may unreasonably increase the total number of pages in your report and distract the reader.
19
Appendix B
...
20