Undergraduate Final Year Individual Project Information, 2013-14
Undergraduate Final Year Individual Project Information, 2013-14
Contents
1 Introduction 3
2 Finding a Project 3
2.1 Finding a Topic and Supervisor . . . . . . . . . . . . . . . . . . . 3
2.2 External Supervisors . . . . . . . . . . . . . . . . . . . . . . . . . 5
2.2.1 Intellectual Property Rights . . . . . . . . . . . . . . . . . 6
2.3 Project Registration . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.4 Project Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
2.4.1 Additional Resources . . . . . . . . . . . . . . . . . . . . . 8
2.5 Backing up Your Work . . . . . . . . . . . . . . . . . . . . . . . . 8
2.6 Data Protection and Security Issues . . . . . . . . . . . . . . . . 9
1
4.5.6 Contents List Page . . . . . . . . . . . . . . . . . . . . . . 26
4.5.7 References and the Reference List . . . . . . . . . . . . . 26
4.5.8 Other Format Requirements . . . . . . . . . . . . . . . . . 28
4.5.9 Word Processing Tools . . . . . . . . . . . . . . . . . . . . 28
4.6 Style and Grammar . . . . . . . . . . . . . . . . . . . . . . . . . 29
5 Project Submission 30
5.1 Binding Your Project Reports . . . . . . . . . . . . . . . . . . . . 30
5.2 What to Submit . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
6 Plagiarism 31
6.1 Get Referencing Correct . . . . . . . . . . . . . . . . . . . . . . . 32
6.2 Turnitin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
6.3 Why It Happens... . . . . . . . . . . . . . . . . . . . . . . . . . . 33
7 Project Marking 33
2
1 Introduction
This document describes in detail how final year projects are structured and
covers many of the things you need to know about or do1 . Please read all of
this document carefully!
The key activities are summarised here and described in detail in the rest of the
document:
• During Summer 2013 think carefully about what kind of project you would
like to do, put together one or more project proposals based on either your
own ideas, those made available by staff or ideas from external people, find
a supervisor and do as much preparation as possible.
• Register for your project before 5pm Friday 4th October 2013 at the latest
and preferably a lot earlier. You must have a supervisor to register.
• Oct 2013 to late Feb 2014 do the project work.
– November 2013 submit a Project Plan.
– Late January 2014 submit an Interim Report.
• Late Feb through April 2014 write your Main Project Report.
• Submit your Project before noon Friday 2nd May 2014.
2 Finding a Project
2.1 Finding a Topic and Supervisor
Most members of the academic staff, and some members of the research staff,
are all potential project supervisors. However, it is not the case that any mem-
ber of staff is able to supervise any project. A number of staff, but not all, will
want to specialise in certain types of project, usually related to their research
area. You should aim to find someone whose interests are a good match for your
own. This person will be your internal supervisor. Some projects also have an
external supervisor.
• You are free to devise your own project idea. You will still need a super-
visor and before your ideas become too fixed it is best to talk to potential
supervisors, as they will be able to judge whether the idea is feasible.
Project proposals typically need adjustment and it is easy to get over am-
bitious! You need to be flexible and willing to take advice. If you have an
1 But if you find anything missing please let me know so I can add it!
2 http://www.cs.ucl.ac.uk/students/student information/individual projects/project ideas/
3
idea but don’t know who might supervise it, talk to your personal tutor
about who might be a good supervisor for your project, or contact the
projects organiser.
• Have you had any experience outside the department – for example, previ-
ous work experience, holiday work or an internship – that could generate
a project idea? This scenario could involve an external as well as inter-
nal supervisor, and many such projects have been successful in the past.
The projects suggestions web page also includes a number of ideas from
external people and organisations.
• Have an informal chat with staff members you know, either because you
have taken one of their modules, or because they tutored you. Many
projects get generated by this kind of informal contact. This works best
if you have some concrete ideas you can talk about.
• Have a look at staff research interests as described on their web pages. The
project suggestions web page has links to all the staff web pages. Research
interests are another good way to find out the kinds of projects staff may
be interested in supervising, even where there are no project suggestions
listed (as for a new member of staff). Email the relevant person and ask
them if they could supervise a project in an area of joint interest.
A good project will have depth and challenge, making good use of the Computer
Science material you have been learning about. Projects also provide a great
opportunity to learn about new ideas and concepts not covered in the other
modules you take. You can try out different programming languages, experi-
ment with cutting-edge technologies or explore a new area of Computer Science.
Don’t limit yourself to what you already know!
All projects are required to include research into the problems being investi-
gated, analysis of the issues and potential solutions, the design and implemen-
tation of the solution, and a thorough evaluation of the results.
Projects that do not involve a significant amount of programming are not im-
possible. For example, you may want to work in an area of theoretical Computer
Science perhaps involving a lot of mathematical analysis. Providing you have a
supervisor who agrees to supervise such a project and deems it to be suitable,
then it can be done. If you undertake such a project it should still demon-
strate relevant skills in areas such as mathematics, analysis, synthesis, critical
assessment and design.
4
2.2 External Supervisors
Every year there are a number of projects that have an ‘external supervisor’.
These projects generally arise either because of contacts that the student has
made themselves (e.g., with a former employer), or because CS staff have aca-
demic collaborations outside the department that have generated project ideas,
or because an external organisation or person has come to us with a project
proposal.
Every project with an external supervisor must also have an ‘internal supervi-
sor’, who is an examiner within the department. In general you cannot count
on your external supervisor being able to provide you with help in areas such
as technical support in programming, or how to write a good project report.
They will be an expert in the domain of application of the project, but not
necessarily expert in CS matters. So check how much technical support your
external supervisor can offer. If it will be limited, make sure that your CS in-
ternal supervisor is knowledgeable in the necessary areas.
You should, in addition to your weekly meetings with your internal supervisor,
be in regular contact with your external supervisor too. It is also helpful if your
internal and external supervisors can be in occasional contact – phone or email
contact is fine.
Where there is any difference of opinion between your internal and external su-
pervisors, you must be guided by that of your internal supervisor. That person
is more fully aware of the academic requirements that you must meet, and of
the rules and procedures of the department. If your external supervisor does
not easily accept this, get your internal supervisor to contact them and resolve
the situation.
5
examiner, will then provide a further independent mark.
Most IPR or similar issues can be easily resolved with a bit of goodwill and
common sense on both sides. If you have any reason to think that problems of
this sort may arise, get your two supervisors to talk to each other straight away;
don’t leave it until writing-up time.
However, not all details of a project have to go into the final report. Those that
are most sensitive as far as your external supervisor is concerned may not be
very important from our point of view. For example, in the case of a project
with a bank on using neural nets for credit rating purposes, all that was required
was that the origins of the vector components input to the neural network (re-
lating in some way to an individual’s credit-worthiness) not be discussed. Since
from the point of view of a neural net (and its trainer) these are just a string
of numbers, this didn’t really affect the write-up at all, and instantly converted
the report from very sensitive in the eyes of the external supervisor to totally
innocuous.
6
Finally, if the contents of your report are felt to be sensitive you have the option
of adding a restricted access disclaimer to your final report, stating that it can
be seen by supervisors and examiners only.
Please be prompt in registering when you have a project arranged! Don’t wait
until every detail of the project is finalised. It is most important that we know
as soon as possible (i) that you have a project; (ii) who your supervisor is; (iii) a
working title and basic description of the content (these latter can both change,
with your supervisor’s agreement, as the project develops).
The web, of course, has a great deal of material available but don’t ignore the
UCL Science library as it gives you access to the full digital libraries of societies
such as the ACM and IEEE. For research purposes, especially if you are doing
a research-oriented project, this will give you access to a very wide range of
research and academic publications. In addition, you can access the Safari e-
book service via the Science Library, which will give you access to a wide range
3 http://www.cs.ucl.ac.uk/fileadmin/UCL-CS/images/students/Projects/registrationform.txt
7
of CS text books.
For software design and development, there are many high quality Open Source
tools and other software available, particularly for languages like Java, Groovy,
Ruby, Python, C, C++ and UML. This software is available for free download
and many projects make use of this resource.
Do not pirate (i.e., steal) software or use any software that you don’t have a
proper license to use. Always respect copyright and licenses. Being found to
have used pirated or unlicensed software can have serious implications for your
project.
A wide variety of licenses are used with Open Source software (such software
may be free to download but will still be licensed). The licenses may have no
impact on your project but if you are planning to make your software available
to other people, make it Open Source, or you are developing software for an
external supervisor, you do need to take notice of which license is used and
what its consequences are. In particular, a license like the GNU Public Licence
(GPL)4 requires source code to be made available to users of the software, which
can have important implications for the code you write.
You should make emergency plans for any breakdowns, perform regular backups
(preferably by copying your files onto your Unix filestore at UCL) and not use
pirated or dubious software. If you use Microsoft Windows make sure you use
good virus checking software. On-line backup services, such as Dropbox, provide
a good way of keeping copies of your work, and many are free for up to two
gigabytes of data or so.
4 http://www.gnu.org/licenses/gpl.html
8
You should also make use of version control, especially for programming work,
so that your source code and other documents are properly managed. You can
set up your own version control server but cloud based services such as GitHub
or Bitbucket are recommended.
The UCL firewall imposes strict limits on external access to machines within
the department. While you can access departmental machines via secure mech-
anisms such as ssh and VPN, these are intended for personal use only, not to
provide more general access from outside UCL. It is not permitted to set up a
server, such as a web or database server, on a departmental machine and access
it from outside UCL, especially to run any sort of publicly available service.
There may be ways to circumvent the firewall, doing so would be considered a
serious security violation, so please don’t try!
If you need to run a server or cloud-based service then ask for access to a
Microsoft Azure student account. Azure will provide a robust and highly con-
figurable service, with full access from outside UCL.
3.2 Tutorials
As early as possible in October you should book regular weekly project tuto-
rials with your supervisor. This applies even if your project is in part being
5 Please note that if you do have a project arranged your supervisor will in general not
be available to see you over the summer period itself, as they have MSc summer projects to
supervise, and will also be heavily involved in their own research work.
9
supervised outside the department and you are also seeing your external su-
pervisor regularly. Tutorials should be held every week during term time, with
the possible exception of reading weeks. Outside of term time you should make
alternative arrangements if you need to see your supervisor.
At the start of each tutorial you should report on what you have done in the
last week, then move on to discuss any problems or issues, your plans for the
next week and so on. Your supervisor will give feedback (criticism and praise!),
help you plan your work and check that the project is running properly. It is
also a good idea to show examples of your work, demonstrate your program
code running or highlight results produced, so that your supervisor can build
a clear picture of what you have produced. Be honest with your supervisor,
especially if you progress is slower than you expect or you are having trouble
understanding things.
Always remember: this is your project. You should be the one in charge and
driving it forward. Your supervisor is there to give you help, advice and feedback
but not to do your work for you! Don’t expect to be given a list of instructions
on what to do each week; make your own decisions.
After you have thought about these issues, it should be possible for you to
reduce your project description and goals to one page of A4. If you can’t sum-
marise your goals in this way then you need to do some further thinking and
planning. Make sure that your supervisor is in agreement with your aims as
finally established.
It is strongly advised that you keep notes of your progress in the form of a
logbook, detailing the decisions you make as the project advances. You will find
this invaluable when it comes time to write your project report.
10
• Start of Term 1 in late September: Find a supervisor and register your
project if you have not already done so. Continue your preliminary work
on the project. This includes detailed background reading, analysis and
design work, coding small test programs and simple prototypes. Also
identifying and learning to use tools, programming languages and so on.
• Up to mid-October: Complete your preliminary work and ensure that
the aims and goals of your project are absolutely clear, documented and
approved by your supervisor.
• Mid-October to early February: The real work! The bulk of the detailed
requirements modelling, analysis, design and implementation (serious cod-
ing, not just small tests and prototypes) or equivalent work relevant to
your project.
Note that printer failure is not an acceptable excuse for missing the dead-
line, as you are expected to plan around such potential problems.
11
• The submission deadline: This is the date and time by which you must
submit your project report (see later for the date and detailed information
about the report). It is highly unusual for the date of the final project
deadline to change but if a change is necessary it will be announced by
email. You are required to check your UCL email regularly (at least once
every day, more regularly as deadlines and exams approach); not reading
your email is not an acceptable excuse for missing a deadline.
It is very easy to over-estimate what you can achieve in the time available. Also
your other modules and coursework will be competing for your time. Monitor
your progress carefully and focus on the elements that will have the most value
to your project. By far the most common lament supervisors hear is along the
lines of “I’ve only done half of what I expected by this time”. The chances are
you will say something like this too, it is quite normal!
The plan is not assessed as part of your final mark, but must be completed on
time and to an acceptable standard in order for you to proceed normally with
your project. You must also include an unedited copy of this document as part
of the Appendices in your main project report.
Your plan must include at least the information outlined below; your supervisor
may wish you to include further material.
• Your name
12
• Project title (see Section 3.5.1)
• Supervisor’s name
• External supervisor’s name (where relevant)
• Aims and objectives (see Section 3.5.2)
• Expected outcomes/deliverables (see Section 3.5.3)
• Work plan (see Section 3.5.4)
• Supervisor’s signature for copy submitted at the Reception Desk
Failure to submit a plan will be seen as evidence that your project is in trouble
and recovery action will be taken. Fortunately at this stage in the academic
year there is plenty of time left to catch up.
Don’t worry if you want to change your project title as the work develops.
Provided that it does not reflect a major change in topic, in which case you
should consult with your supervisor as to the advisability of submitting an
entirely new Project Plan, just use the new title when the time comes to prepare
your Interim and Final Reports.
Aims represent your project’s overall purpose; objectives are specific and mea-
surable achievements on the way to completion, the means by which you hope
to accomplish your aims. For example:
13
3.5.3 Deliverables
List the outputs or artefacts to be created during your project, which you feel
represent significant and useful pieces of work.
Start by reviewing your project’s objectives and break them down into appro-
priate sub-tasks (though it is probably not worthwhile trying to break down the
work so finely that you include activities expected to take one week or less).
Clarify the order in which these tasks must be performed, and estimate the time
that will be taken by each piece of work, and the particular time period over
which you expect to be working on it.
Present the plan in the following way, adding detail relevant to your specific
project (the project plan and interim report are not shown but you should add
items for them to your version of the plan):
14
• November (4 weeks) System design, coding small test programs and simple
prototypes.
• End November to mid-January (8 weeks) System implementation.
• Mid-January to mid-February (4 weeks) System testing and evaluation.
• Mid-February to end of March (6 weeks) Work on Final Report
The plan above presents a relatively linear sequence of activities. In practice
it is often a good strategy to take a much more iterative approach, where you
break down the work into a sequence of iterations based on the requirements
you identify. Each iteration then realises a small sub-set of the requirements,
chosen in order of priority. At the end of each iteration you can review and
update your requirements based on your progress so far and what you learnt
during the last iteration.
This is not assessed as part of your final project mark, but nevertheless must
be completed on time and to an acceptable standard. Completion of the re-
port should be done in collaboration with your supervisor, who should also
sign the document before you submit it. The deadline for submission of the In-
terim Report, which should be handed in at the 5th floor CS Reception Desk, is:
15
Deadline: Noon Wednesday 22nd January 2014
Aim to be clear and concise; try to limit your Interim Report to about two-three
pages of A4. The report must include at least the information outlined below.
Your supervisor may wish you to include further material, depending on the
progress of your project.
• Name
• Project title as given in your November Project Plan
• Current project title (if different to above)
• Supervisor
• External supervisor (where appropriate)
• Progress made to date
• Remaining work to be done before the final report deadline
• Supervisor’s signature
Don’t forget that you should have a project tutorial with your supervisor at
least once per week and you should always keep your supervisor up to date with
progress. If you are having problems talk to your supervisor about them earlier
rather than later, or talk to the Projects Organiser.
Before starting to write your report you should plan its structure by creating
a contents outline and getting your supervisor to review the outline. Then, as
you write your report, particularly during the second half of term 2, you should
be showing your supervisor draft chapters to get feedback. Note, however, that
it is not your supervisor’s job to be your editor or proof-reader, so don’t expect
your supervisor to fully proof-read everything and comment in minute detail on
your drafts.
16
It is strongly recommended that you plan your contents outline early in term
2 and also begin to do some writing in order to get started – getting started
is often the hardest part of writing the report so don’t keep putting it off! In
the second half of term 2 writing your report should become the main project
activity. Don’t underestimate how long it takes to write and edit a good report.
The worst mistake to make is to believe you can write your report quickly right
at the end of the project; you can’t, and won’t have time do a good job. Be
ruthless when editing to get the text into the best shape possible.
• What design choices did you have along the way, and why did you
make the choices you made?
• What was the most difficult part of the project?
• Why was it difficult? How did you overcome the difficulties?
• Did you discover anything novel?
• What did you learn?
2. Write about the context in which your work fits. You should provide
enough background to the reader for them to understand what the project
is all about. For example:
• What problem are you solving?
• Why are you solving it?
• How does this relate to other work in this area?
• What work does it build on?
• What is the scope of your work?
• What is included in the scope and what is outside the scope?
Your reader is technically literate, but may not understand in detail the
area of your project or all of the tools or building blocks you’ve used, so
help them understand.
3. Give an overview of your work. If your project involved designing a system,
give a good high-level overview of your design. In many projects, the
initial design and the final design differ somewhat. If the differences are
interesting, write about them, and why the changes were made.
If your design was not implemented fully, describe which parts you did
implement, and which you didn’t. If the reason you didn’t implement
everything is interesting (e.g., it turned out to be difficult for unexpected
reasons), write about it.
17
4. Describe any preparatory work you needed to do. Some projects involve
detailed requirements capture, and for others the requirements are essen-
tially handed to you. If you had to do detailed requirements capture (e.g.,
a survey of potential users, etc.), then this might be described in some de-
tail. If you didn’t do detailed requirements capture, then just summarise
the requirements.
5. Provide a User Manual. For all software projects, you need to include
enough information to show how to run the software (see “Appendices”
below). However, some projects are heavily user-centered, and so the user
interface is a key part of the project; in these cases a user manual would
not just be an appendix, but a core part of the project report. However,
structuring it as a user manual may not be the most effective way to
present your ideas, so use your discretion.
6. Describe how you evaluated your work. Most projects involve the cre-
ation of software. Building software that works well is difficult, and you
may have spent a lot of time on testing. In most cases your reader does
not want to know about all the detailed tests you ran, but they will be
interested in your testing strategy and philosophy. Some software is par-
ticularly hard to test, and in such cases you might need to go into quite
some detail on why it’s hard to test, and how you overcame this obstacle.
Some examples:
• Did the design did the job you intended, or were there problems?
• Is your solution fit for purpose?
• How does the resulting system compare against the competition?
• If you didn’t finish implementing all the features, how hard do you
think it would be to do so?
• What advice would you have for someone who wished to take your
system and use it or extend it?
• What would you do differently if you could start all over again?
18
4.2 Report Content Structure
The structure of a typical report is outlined below. Your report structure can
and should vary to suit your specific project. Don’t feel compelled to write
text to fill out each section described below, especially if there wasn’t anything
interesting to write about. Add sections that are relevant to your project.
A report should be broken down into a series of chapters, with each chapter
consisting of a sequence of numbered sections and sub-sections. A typical list of
chapters for a design and programming project is described here but, remember,
you can adapt or replace this to fit the needs of your project.
• Chapter 1 Introduction
– Outline the problem you are working on, why it is interesting and
what the challenges are.
– List your aims and goals. An aim is something you intend to achieve
(e.g., learn a new programming language and apply it in solving the
problem), while a goal is something specific you expect to deliver
(e.g., a working application with a particular set of features).
– Give an overview of how you carried out the project (e.g., an iterative
approach).
– A brief overview of the rest of the chapters in the report (a guide to
the reader of the overall structure of the report).
This chapter is relatively short (2-4 pages) and must leave the reader very
clear on what the project is about and what your goals are.
• Chapter 2 Context
19
You should not include well known things (e.g., HTML or Java) or try
to give tutorials on how to use a tool or code library (use references to
books and websites for that information). Everything you include should
be directly relevant to your work and the relationship made clear. This
chapter is likely to be fairly substantial, perhaps 8-10 pages.
• Chapter 3 Requirements and Analysis
– Give the detailed problem statement. This elaborates on what you
may have included in the introduction chapter, and represents the
starting point from which requirements were derived.
– A structured list of requirements.
– Use cases (a use diagram and list of use case titles, with the full use
cases appearing in the appendix).
– Results of analysing the requirements to extract information. For
example, data modelling to find the data to be stored (ER diagram),
views/web pages needed and so on.
The level of detail of the requirements and use cases will depend on the
nature of your project. If you are doing a Software Engineering based
design and implementation project, then they will need to be done thor-
oughly. If there is a substantial body of requirements and use cases, then
a summary should be given in the chapter, with the full set included in
an appendix section.
If your project is not Software Engineering oriented, then you still need
to describe the requirements you are working to and relevant analysis in-
formation. Use cases may not be needed or be relevant.
The length of this chapter depends on the kind of project, but you are
typically looking at 5-6 pages.
Find an ordering and form of words so that the design is clear, focusing on
the interesting design decisions. For example, what were the alternatives,
20
why select one particular solution? You have a limited number of pages so
be selective about details. Also remember that someone (your examiners!)
has to read this so don’t overwhelm them with intricate descriptions of
everything that only you can follow – but do make sure the key details of
the solution are in place. Use appropriate terminology and demonstrate
that you have a good understanding of the Computer Science principles
involved.
You can use diagrams and screen shots to help explain the design but
don’t overuse them. Diagrams and screen shots should add information,
not duplicate what is written in the text, and definitely avoid page after
page of diagrams as this will disrupt the flow of your text. Where rel-
evant, UML diagrams can certainly be used but, again, don’t flood the
chapter with diagrams. Additional diagrams can always be included in an
appendix section.
An alternative way to organise the content of both this chapter and the
preceding one, suitable for some projects, is to have a sequence of chapters
or sections for each major iteration of the project. This allows the pro-
gression of the project to be shown, with each iteration building on the
last, and the opportunity for interesting discussion about the decisions
that needed to be made.
This is a core chapter in your report and will usually be quite substantial,
10 pages or more.
• Chapter 5 Testing
– Describe your testing strategy (unit, functional, acceptance testing
and how they are carried out). How were test cases selected?
– Examples of specific tests and how they were carried out (e.g., using
mock objects to break dependencies). Focus on the interesting cases.
– A summary of the test results and what coverage was achieved. The
detailed test report(s) should appear in the appendix.
If your project requires substantial evaluation of data and results, or other
forms of testing that are not code-based, then adapt this chapter to suit.
21
This chapter will typically be 2-4 pages in length but could be more de-
pending on the depth of testing done.
The list of references and bibliography are often combined into one section
labelled Bibliography.
You are not limited to the chapters suggested above but do remember that the
report documents your results and is not meant to be a diary of progress or
a novel. For some projects it may make sense to have a separate evaluation
chapter before the conclusions and the way that requirements are specified can
also vary as techniques like developing use cases may not be appropriate for
your project.
1. System Manual – This should include all the technical details that would
enable a student to continue your project next year, and be able to amend
22
or extend your code. For example, Where is the code?, What do you do
to compile and install it?
2. User manual – This should give enough information for someone to use
what you have designed and implemented. It is a good place to include
screen shots of the application or output.
3. Supporting documentation or data – If you have additional data, diagrams
or things like a set of use case specifications that are relevant to the docu-
mentation of your work then they can be included in an appendix section.
Don’t just include everything, only items that are directly relevant to the
documentation or description of your work.
4. Test results and test reports – If you have test results that add to the value
of the report, but which would not fit within the page limit of the main
report, you can include then as an appendix. Don’t add them just to pad
the report, though.
5. Project Plan and Interim Report – Put copies of them into an appendix
section. They don’t need to be signed copies.
6. Code Listing – Your code should be properly presented and formatted
neatly. Don’t let long lines of code arbitrarily wrap round to the next
line, as this looks very messy. In order not to use up too many pages you
can switch the paper orientation to landscape and print the code in two
columns.
In general, don’t add more than about 25 pages of code listing to the re-
port. If your code does not fit within 25 pages, you can provide a listing of
the most interesting parts our your code (but include around 20-25 pages)
or parts of the code you may need to reference from the main chapters. If
you don’t include everything, it must be clear that this is not the complete
listing. State which parts you’ve included, add a brief explanation of why
you’ve included these particular parts, and provide a brief summary of
which code you have omitted.
Each copy of your report must include all the source code, including
project and build files, on a CD or DVD (or on a thin USB Thumb Drive).
See Section 5 for more about report submission. In addition a copy of the
report in pdf format should be included, along with any other files you
want to submit as part of the project.
23
If you opt for this approach you must first obtain the agreement of your super-
visor and then carefully follow their advice on how to proceed. Your supervisor
will guide you through the process of writing an academic paper. You will also
be encouraged to give a research group seminar on your work towards the end
of the project, which can be counted as one of the project deliverables.
By all means use plotting/drawing packages to create graphs and figures, but
if, for example, it is going to take you most of a week to learn to use a drawing
package, you would be better advised to hand-draw your figures neatly and get
on with something else.
The main chapters, excluding the appendices, should not really be more than
45 pages in length, ideally around 40 pages (where, again, a page is defined as
one side of an A4 sheet of paper, so 45 pages is roughly 23 physical sheets of
paper when printed double-sided). The goal is to be concise and to the point.
Examiners do not give credit for writing a longer report with every possible
detail included. Good writing matters!
If you include the UCL logo on the title page, make sure you use the new logo
as seen on most web pages and not the old logo with the large dome icon.
24
4.5.3 Title Page Disclaimer
On the title page, towards the bottom below the other items, you must also
include a disclaimer in the words given below.
“This report is submitted as part requirement for the [BSc or MEng] Degree
in [your degree title, ‘Computer Science’, etc.] at UCL. It is substantially the
result of my own work except where explicitly indicated in the text.”
“The report may be freely copied and distributed provided the source is explicitly
acknowledged.”
or, if your project includes information that prevents it being more widely cir-
culated, by
“The report will be distributed to the internal and external examiners, but there-
after may not be copied or distributed except with permission from the author.”
You should consult the Projects Organiser (Graham Roberts) if you intend to
use this statement.
You are reminded that the project is an individual project and that the work
submitted should be substantially your own as stated in the disclaimer. Within
your report you should identify clearly:
• Which work you have completed by yourself and represents your own
individual contribution.
• Which work you have completed in conjunction with other people with
whom you have collaborated (such as fellow students from your degree
programme).
• Which work you have incorporated from other sources, such as from pre-
vious years’ students, from external sources (e.g., third party algorithms,
methods, publications, source code or code libraries), or from Research
Projects with which you have been allied with during your project work
(e.g., those of your Supervisor or of external companies).
Do make sure that the title page is clearly readable and that your name is easy
to find and read.
6 http://www.cs.ucl.ac.uk/fileadmin/UCL-CS/images/students/Projects/ExampleTitlePage.pdf
25
4.5.5 Abstract
On the page immediately following the title page you must have a short abstract
giving a descriptive summary of your project. The abstract should be no more
than half a page and typically consists of three short paragraphs:
• What the project is about, the principle aims and goals, and specific
challenges.
• How you carried out the project and what work it involved.
• The results and achievements of the project.
The abstract needs to be read quickly by various people to get an overview of
what your project is about, so make sure it doesn’t get too long.
You will also need to submit three unbound copies of the abstract when you
submit your project. These copies should include your name, your supervisor’s
name, the project title and submission date.
There are a number of different styles for making references, several of which
will be outlined below. You should check with your supervisor for their advice
on which style to use for your project.
• Parenthesised or Harvard style. Parentheses are used to denote the ref-
erence, for example Bloggs (2002). If the reference forms a natural part
of the text and directly refers to someone’s work, the name or names are
not put inside the parentheses. For example, “The algorithm developed
by Smith & Jones (1997) is faster than ...”, “The paper by Dent (2010)
26
argues that ...” or “Simpson (1999, 2002, 2006) identifies ...”.
If the text refers to an idea or concept and just uses a reference to point
to an example in passing, then the name and date are put inside the
parentheses. For example, “It has been claimed that the algorithm is slow
(Patel 2003) but ...” or “Earlier work (Smith 1993, Shah 1997) supports
the claim that ...”.
• Alpha style. A label is placed in square brackets, for example [Simp01] or
[KNUTH87]. The label is formed from the surname of the first author,
often shortened to three to five characters, followed by the last two digits
of the year of publication.
• IEEE style numbered references in square brackets. The reference is a
number in square brackets, for example [1], [3].
Whatever style you use, you should use it consistently and not use any other
style.
The Reference List gives the full details of each reference, and appears immedi-
ately after the conclusions chapter as described in the report structure outline
earlier. Each reference starts with the tag or label used in the main text and is
followed by the reference details. For example:
Bloggs, J (2002), “The title of the paper”, Journal of Computer Science, vol.
45, no. 2, pp. 207-226
or
[BLOG02] Bloggs, J (2002), “The title of the paper”, Journal of Computer
Science, vol. 45, no. 2, pp. 207-226
or
[3] Bloggs, J (2002), “The title of the paper”, Journal of Computer Science, vol.
45, no. 2, pp. 207-226
The information included in the full reference should include volume and issue
numbers, page numbers and any other information needed to locate the refer-
enced text. References to information on the web should include the URL:
If you specify a URL you should have confidence that it will remain valid for
some time (at least until after the examiners have read your report!). If not,
then you may need to reference the site rather than the specific page, providing
additional information, such as a search term, to help locate the information.
However, if possible avoid providing references to unstable URLs.
Your program source code should also include references, for example to point to
information about an algorithm you have implemented based on one described
in a paper, or where a library being used comes from. If you have copied and
pasted someone else’s section of source code into yours, then it too must be
referenced. For source code you should include the full reference, as it appears
in the Reference List, in a comment in the code.
27
For further information about references, citations and avoiding plagiarism prob-
lems see the UCL web pages on ‘What is a Citation?’. 7
However, each project is unique and has its own natural length, and you need
to make a careful judgement over when you have written everything that you
think needs to be written. If in doubt, of course, ask for your supervisor’s ad-
vice. Also note that examiners are assessing your ability to describe your work
concisely and efficiently, and construct a good quality report. They will take
note of your academic writing ability, and how well you are able to choose what
to include and how to describe it.
You must use 1.5 line spacing and are strongly recommended to use 12 point
type. On no account should you use a typeface less than 10 points – it is un-
readable! Make sure that the page margins on the binding side are large enough
so that the page can be read without stretching open the binding. If possible
use double-sided printing.
Pages should be numbered and numbering should start from one on the first
page after the title page. Chapters should also be numbered and sections and
sub-sections should use hierarchal numbering as used in this document.
It must be possible for the whole work to be bound in a single volume, so please
use standard A4 paper throughout.
We would encourage you to learn and use LATEX to format your report. LATEX is
a document markup language and processing system widely used in academia,
and has many advantages for writing structured reports and scientific docu-
ments. This document is formatted using LATEX.
28
4.6 Style and Grammar
Some punctuation rules:
Full stops (.)
A full stop never has a space before it and is always followed by a space, except
when followed by a closing bracket (see below). A full stop used as a decimal
point should not have spaces on either side of it.
Commas (,)
A comma never has a space before it and always has a space after it. The only
exception is when it is used as a separator in large numbers, such as 5,789,567.
Commas – like brackets and hyphens (see below) – separate out subordinate
clauses or phrases that merely add information. Within a sentence you can tell
if commas are being used correctly if you can lift out the words involved and
have a sentence that still makes sense.
Slash (/)
A forward slash (used as in ‘his/hers’) should not have a space on either side of it.
Hyphens (-)
When these are used as a pair within a sentence, in a similar way to a pair of
brackets, then both hyphens have a space immediately before and after them
(you should really use an en-dash (–) rather than a hyphen). However, when a
single hyphen is part of a word (as in ‘criss-cross’) then there are no spaces to
either side of it.
Use of brackets
An opening bracket always has a space before it and never has a space after
it. Conversely a closing bracket never has a space before it and always has one
after it, unless followed by a punctuation mark such as a full stop or comma.
Just as in programming languages, in English text brackets have to come in
pairs (........). If the items between a pair of brackets form a sentence, then
there must be a full stop immediately preceding the closing bracket. Quotation
marks, showing what some speaker actually said, behave just like brackets with
regard to full stops.
Apostrophes (’)
These are used in two ways, to indicate possession, as in ‘John’s book’ and and
in contracted forms, such as ‘it’ll’ as a shortened form of ‘it will’. For possessives
the rule in relation to singular and plural nouns is:
29
ends in an ‘s’, for example in ‘The princess’s clothes...’.
If the noun is plural, there is an apostrophe after the ‘s’; for example in writing
about Oxford or Cambridge ‘the colleges’ buildings’ is appropriate in referring
to the buildings of all the colleges. Note, however, that there are some words
that denote possession that do not have an apostrophe: his, hers, its, ours,
theirs, yours.
No-one ever writes ‘her’s’ but the corresponding misuse of the apostrophe in
‘it’s’ is probably one of the commonest of all grammatical errors. ‘it’s’ always
means ‘it is’, and is an example of a contraction. Contractions such at ‘they’ll’
for ‘they will’ and ‘it’s’ for ‘it is’ reflect the rhythms of natural speech. Many
people hear a kind of inner voice as they write and it is natural for most of us
to write what we speak. Nevertheless, contractions are not recommended in a
formal report. Try not to use them.
5 Project Submission
The submission deadline for final year BSc and MEng projects is:
If the circumstances warrant it, a short extension (up to a week or so) can be
agreed between the Departmental Tutor and your supervisor, providing there
will be no problems with completing marking on time. A longer extension will
not allow enough time for marking to be completed before the exam board,
which would delay the award of your degree until the following year.
30
department strongly recommends using the spiral binding service from the ULU
Copycats Print Centre 8 . Further information9 is available on the ULU website,
or you can visit in person (ULU is just across the road from the department).
The binding used must be strong and not allow pages to easily fall out. Do not
use folders or ring binders, or any sort of cover that will not lie flat.
The front and back covers of the report should be robust enough to protect the
pages inside. In addition, the front cover must be a transparent plastic sheet
so that the full title page of the report is clearly visible. In particular, it must
be possible to see your name and the project title without having to open the
report. Transparent overhead slide projector sheets make suitable front covers.
6 Plagiarism
Detailed information about plagiarism can be found on the relevant web pages
on the main UCL Web Site 10 . Make sure you read through all the information
on these pages and understand the full implications.
31
reference to their source must be provided in the proper form. Remember that a
series of short quotations from several different sources, if not clearly identified
as such, constitutes plagiarism just as much as does a single unacknowledged
long quotation from a single source. Equally, if you summarise another person’s
ideas or judgements, you must refer to that person in your text, and include
the work referred to in your reference list. Failure to observe these rules may
result in an allegation of cheating. You should therefore consult your tutor or
programme director if you are in any doubt about what is permissible”
The examiner reading your report must be left in no doubt whatsoever which are
your words and ideas, and which are the words and ideas of others.
Any content in your report not tagged by reference is assumed to have been
written or created by yourself. Further, and of critical importance, when you
include a reference tag in your report (see 4.5.6) it must be clear what part of
your text the tag applies to. In particular, if you are quoting someone else’s
words then those words need to be clearly identified as written by that person.
Usually this is done by putting the words or sentence in double quotes, for
example:
Bloggs (2003) states that “A sentence quoted from a paper that someone has
written”.
or
“A short paragraph defining a concept relevant to your work, quoted from a
research paper”, Bloggs (2004).
Sometimes it is useful to put the quoted text in italics as well. The same need
to reference also applies to diagrams and images included in your report, with
the reference tag appearing in the figure or diagram label, for example:
What is absolutely not acceptable is to copy and paste some text, maybe up to
several paragraphs, and just scatter in one or two reference tags with no quotes
or other formatting. This fails to identify clearly which are your words and
which are being referenced. Even worse is to intermingle some text of your own
or to make edits to the copied text so it is not identical to the original but not
your own words either.
Don’t forget that the need to reference also applies to source code as well, or
any other additional material you include with your report.
32
6.2 Turnitin
You have the option of submitting your project report to Turnitin and it is
strongly recommended that you do so. Turnitin will do a detailed analysis of
your work to find text that matches entries in its extensive database, giving you
an indication of whether you might have an issue with plagiarised content.
Turnitin will always find some matches in your work due to its very rigorous
processing algorithms. Many of these matches are likely to be false positives and
it is important to recognise this. However, if Turnitin starts finding sentences
and paragraphs that match, and you see larger areas of text being highlighted,
then you have a problem.
If you feel that you are slipping behind, that your project has had to be neglected
in favour of coursework, that you have had family or other difficulties that have
impacted on your project work, that you don’t understand some of what your
project entails, then whatever the problem is talk to your supervisor about
it. Remember also that for more serious and/or wide-ranging problems, or if
you feel you cannot talk to your supervisor, the Departmental Tutor is always
available to see you.
7 Project Marking
The pass mark for BSc projects is 40% and for MEng projects is 50%. MEng
projects are marked more strictly and are expected to demonstrate the greater
depth and understanding obtained from having an extra year of study.
Your project report may be seen by up to three groups of people as part of the
assessment process.
33
The following criteria are taken into account (this is not an exhaustive
list):
A copy of the project marksheet11 completed by the first and second ex-
aminers is available on the CS web site. Reading this will help you fulfil
the criteria successfully.
After assigning individual marks to your project, the First and Second
Examiners discuss your project and allocate an ‘agreed mark’. It is usually
the case that the two examiners can agree on a mark. In those rare cases
where this cannot be achieved the situation is resolved by appointing a
Third Examiner or referring the project to the External Examiners (see
below).
2. Project Reading Party: Projects are additionally read by two further ex-
aminers at a ‘Reading Party’, where the aim is to ensure that a consistent
standard of marking is achieved (don’t worry, it is not really a party where
the examiners have fun!). If there is disagreement between the Reading
Party mark and that which was agreed by First and Second Markers this
is also resolved by appointing a third examiner and possibly referring the
project to the External Examiners; serious disagreements which need the
involvement of the External Examiners are rare. The Reading Party also
serves to moderate the marks of all projects to ensure projects of similar
quality get similar marks.
11 http://www.cs.ucl.ac.uk/fileadmin/UCL-CS/images/students/Projects/ProjectAssessmentForm.pdf
34
3. External Examiners: The External Examiners are experienced senior aca-
demics from computer science departments outside UCL. They are part
of the examining process for all subjects, but their role in relation to
projects is to confirm that the assessment process is being run properly,
that projects are of appropriate quality and to resolve any disputes be-
tween those involved in earlier stages of the project marking cycle. They do
not read all the projects, only those where there is a conflict over marking.
The decision of the External Examiners with respect to a project mark is
final.
35