Skip to content
Permalink
Browse files
first commit
  • Loading branch information
James Brusey committed Sep 27, 2022
0 parents commit fe56873c5b0454fd101aff7fc5dde3c769452229
Showing 1 changed file with 95 additions and 0 deletions.
@@ -0,0 +1,95 @@
#+title: How to do a master's project
#+options: toc:nil

* Introduction
This document is aimed at students attempting a master's dissertation in Data Science or similar discipline.
The guidance here is specifically for students being supervised at the Centre for Computational Science and Mathematical Methods.
Our overall aim for such students is to prepare them for entering into a PhD programme should they wish to.
For this reason, the recommendations here may differ somewhat from recommendations given to the rest of the faculty.

* About novelty
Doing a master's project is similar to doing a PhD but whereas a PhD dissertation is required to be novel, a master's dissertation is definitely not required to involve a novel element.
This does not mean that the work should not be rigorous and thorough.
Great projects need to demonstrate mastery of both the topic at hand and the skills and techniques used to research that topic.

It can be tempting to think that a few more marks will be available to the student that produces novel research.
However, this is a false hope.
In fact, many students get led astray in their attempt to `push the envelope' and end up failing to do a thorough analysis of the comparison of their work with past work because they are so convinced that they need to show that they have produced something /better/ than past work.

So, at the very start, consider this a reminder that the master's project does not need to have a novel element.

Nonetheless, there may be new knowledge generated.
For example, it may be that the student discovers that some past work is incorrect.
If this can be done, this is a significant finding.
However, some care is also needed here to ensure that there really is a fault with the past work.

* Aim to replicate an existing work
Our current scientific environment tends to emphasise publication quantity over quality.
Meta-studies of scientific literature have recently found that only a small percentage of existing published research is actually correct.
There are many reasons for this but one obvious failure is that there is little incentive for researchers to try to reproduce each other's work.
Thus, in the master's programme, we actively encourage students to try to reproduce the results in an existing paper rather than produce novel science of their own.

This approach has two benefits.
First, there is the obvious benefit of increasing the number of replication studies and thus improving the chance that bad science will be spotted and weeded out.
Second, the benefit is to the student.
The existing paper acts as a roadmap showing what sort of graphs and tables should be produced for the work to be successful.

* How to select a worthwhile paper
When looking for a topic, you will need to search for a research paper that explores that topic.
One way to do this is with https://scholar.google.com.
This provides a citation count, which is an indication of the quality of the paper (but by no means a guarantee).

To judge whether the paper is worthwhile, go through the following checks:
1. Is it readable and understandable?
If the writing is unclear (or not in correct English) move on to the next paper.
It is also worthwhile looking at the quality of the diagrams and figures and making sure that they look professional as this is a good indicator of quality.
Similarly, if it involves a topic that you don't understand, you should probably not invest too much time trying to understand before looking elsewhere.
2. Does it contain graphs and tables of results that you could potentially reproduce?
A purely theoretical paper may not be appropriate unless you are that way inclined.
If you cannot imagine how to reproduce the results then this may be a stumbling block too.
3. Check that source data is available.
If the paper relies on private or confidential data-sets, it will be hard (or impossible) to reproduce.
4. If you are unsure about a paper, ask your supervisor.

Once you have selected the paper, remember that your aim is to /reproduce/ the work rather than best it.
At every stage, you must make sure your results are comparable with the results in the paper.
When you discuss the aim of the project in the introduction to your thesis, the primary aim that you write should be to reproduce the paper but you can also discuss the paper's aim here.

* Write using appropriate tools
In this discipline, the appropriate document tool is LaTeX and not MS Word.
Please do not submit your thesis or even draft versions using MS Word.

It is not necessary for you to learn how to use LaTeX directly, however.
You can instead use some other tools that are simpler to learn but still produce LaTeX as an intermediary step.
For example, this document is written using Org-mode, which is available in GNU Emacs.
However, another easy option is to use RStudio and Markdown.

* Select an appropriate methodology
For some reason, many students seem to think that the `waterfall' methodology is an appropriate one.
The main advantage of this approach to the student seems to be that it is well aligned with `putting things off until the last minute'.

The recommended approach for the master's project is to a form of agile methodology similar to [[https://en.wikipedia.org/wiki/Feature-driven_development][Feature-driven development]].
Specifically, you should start by writing a list of features.
For example, given your selected paper, one `feature' might be to produce one line in a table of results.
You then develop /all parts/ of that feature.
That is, you should:
1. Write about any background literature that you needed to reference in your `background' chapter.
2. Describe the method that you are going to use in your `methods' chapter.
3. Write code that produces results and
4. Get those results (graphs or tables) into your `results' chapter along with any associated description.

Only when one feature is finished should you move on to the next feature.
At every stage, you can check the other parts of your document to make sure you have something that is ready to be submitted.
You may also need to update your plan of features to ensure that it makes sense.

* Develop a pipeline
A common problem when developing research is that results need to be revised as problems with code are resolved.
For example, it may be that initially results were generated in grams but later this was changed to kilograms (kilogram is the correct SI unit).
Perhaps this change requires replotting a graph or regenerating a table.
Thus, it can help if you automate the process of getting your results into the document (are you starting to see why non-MS-Word tools are preferred?).
For more information on methods of doing this, see the [[https://github.coventry.ac.uk/aa3172/presentations/blob/main/2022-03-replication/replication.org][presentation on making your work replicable]].

* Conclusion
The aim of this document is to help you produce a great master's dissertation.
As with any project, expect the unexpected---difficulties can arise and some parts may take longer than expected.
Thus it is important to adopt an approach that produces a document that is ready to submit as early as possible and then, through iteration, gradually improves and deepens the work.

0 comments on commit fe56873

Please sign in to comment.