CA326 Third Year Project (2018-2019)
CA326 dashboard
Project Status
Submitting a Proposal
Ethical Approval
Project Suggestions

In the 2nd semester of Year 3 all B.Sc. in Computer Applications students must carry out a 3rd-year project. These pages give information about the process of submitting your proposal, conducting your project and a timetable of deadlines for carrying out your project.

  • The 3rd year project is a team-based project. Each team should consist of 2 people. Teams of 3 people are allowed in exceptional circumstances and the project proposal must justify that there is sufficient content for 3 people.
  • In the 1st semester you have to submit your project proposal, give a brief 5 minute presentation about your proposed project and if it is approved submit a Functional Specification for the project. You must discuss your proposal with a member of staff before you submit it. A completed project proposal form must be submitted and be available on theSchool's GitHub no later than 5pm on Friday 2nd November 2018. The project proposal must also be accepted by a staff member on the School's GitHub as the project's supervisor. See Documentation section for detail on contents of project proposal.
  • Any proposal form which is submittedbut not accepted by a member of staff as its supervisor will be deemed to be automatically rejected. Therefore, please make sure that a submited project proposal form has staff approval.
  • Each project team will be required to give a 5 minute presentation about their project during the week Monday 12th to Friday 16th November 2018. Projects will be presented in groups of 5 and the timetable will be circulated in the previous week. This presentation should describe the goals of the project, an outline of how these goals will be achieved and an outline of the user interface. You may be required to modify your proposal after your presentation.
  • If you fail to submit a project proposal form with staff approval by the deadline, you will be automatically assigned a supervisor and project that you must complete. You will have no choice in this matter. Therefore, you are strongly advised to submit a suitable project well in advance of the submission deadline.
  • Your project team must use the School's GitLab to store all project deliverables, including source code, documentation and video walkthroughs. More details on the use of GitLab can be found here.
  • Deadlines are set so that there is sufficient time for the tasks to be completed and submitted. Therefore, deadlines will be rigorously enforced.
  • All projects must be demonstrated during the allocated time.
  • If you have a specific reason (e.g., illness) for not demonstrating you should submit a Extenuating Circumstances Form or a Deferral of Examination Form. Otherwise you will still be awarded a mark of zero.
  • Students must remain in regular contact with their supervisor (you have access to the  email system - use it) throughout their project. Not just at the beginning and the end.

How to submit a proposal

You submit a proposal by completing the following steps:

  1. Make contact with a potential supervisor and agree a project
  2. Fill in the proposal form which includes a project description, as described in  the Documentation section.
  3. Have your supervisor accept to supervise the project through the CA326 dashboard.

Proposal Approval Process

When a project has been submitted and approved, it will appear on the Proposal Status page. If your project does not appear on the final list of approved projects, then email a status enquiry to david.sinclair AT


You will either submit an approved project in association with a supervisor, or you will be assigned a supervisor and a project if you do not make the submission deadline. The following are some notes on the student-supervisor relationship

  • Students must make contact with their supervisor immediately after the project is approved after the presentations.
  • A supervisors job is to supervise, not to do the work.
  • Supervisors expect students to be honest when reporting on their progress. If you are falling behind, tell your supervisor.
  • Supervisors expect students to follow the advice that they are given.
  • When in doubt, consult your supervisor.
  • Students who fail to meet regularly with the their supervisor will not be allowed to demonstrate and will therefore fail CA326. It is your responsibility to arrange these supervision meetings.

Ethical Approval

Your project may require Ethical Approval if it involves:

  • User studies or surveys
  • Personal information
  • User Tracking
or related issues.

The process for ethical approval is a light-touch notification process for the above types of issues. Full details can be found at the School Research Ethics Page.


Each team is required to maintain a blog which documents their software engineering process. Typically it will describe their development processes and major design decisions. The blog must be publically accessible. The blog is assessed.

Video Walkthrough

Each team is required to submit a viseo walkthrough of their project that shows the major features of the project in action. This video should be no more than 15 minutes in length. The video walkthrough is assessed.


All projects consist of the following standard deliverables:
  • Proposal
    • Submission deadline is 5pm on Friday 2/11/2018.
    • Submitted to project coordinator
  • Functional Specification
    • Submission deadline is 5pm on Friday 7/12/2018.
    • Submitted to project coordinator via the project box in L114 and on Gitlab.
  • The project
    • Submission deadline is 5pm Friday 8/3/2019.
    • Submitted to your supervisor only and on Gitlab, not to project coordinator.
    • The project consists of  the following
      • The System (ie. code, etc.)
      • Technical Specification
      • User Guide
      • Blog
      • A video walkthrough.

See the Documentation section for further details.

Marking Scheme

If you fail to submit a "signed" project proposal form before the deadline you will be automatically assigned a supervisor and a project that you must complete. You will have no choice in this matter. If you do not accept/complete this project you will be automatically deemed to have failed CA326.

All projects will be marked on 4 main sections as follows:

  1. Functional Specification
    • 10% of the overall mark is allocated for this deliverable. If you do not submit a functional specification by the deadline you will automatically receive a mark of 0 out of 10. There will be no exceptions to this.
  2. The remaining 90% of the overall marks is allocated to the developed system (or research in the case of non-development based project). The marks out of 100 are:
    • Design (20)
    • Implementation (40)
    • Testing and Validation (20)
  3. Documentation (Technical Specification and User Guide) (10)
  4. Demonstration (5)
  5. Video Walkthrough (5)

This mark breakdown is just for guidence and may be adjusted during the year.


All projects must be demonstrated. Demonstrations will be scheduled starting at 9am Monday  11/3/2019 until Friday 22/3/2019. All students must be available from 9am to 6pm each day to demonstrate their project. A timetable will be made available a week in advance. We will strive to do the demonstrations during the first week, but they may spill over into the second week. You must be available in either week.

If you have a specific reason (e.g., illness) for not demonstrating you should submit a Extenuating Circumstances Form or a Deferral of Examination Form. Otherwise you will still be awarded a mark of zero.

The timetable for the demonstrations is available at here.


The results of CA326 will be made available at the same time as all other semester 2 results. Please see official University timetable for exact date.

You will be deemed to have failed CA326 and required to repeat it if:

  • You have not regularly attended supervision meeting with your supervisor.
  • You do not submit a project.
  • You do not demonstrate your project.
  • Your projects is awarded a mark of less than 40%.
    • Please note, it is not possible to compensate CA326 as it is a 15 credit module.

As CA326 is 100% continuous assessment it is not possible to resit this module in the Autumn.

Repeating the Project

If you do fail CA326, there is no resit and you must repeat the following year. In this case you will not be allowed to progress into 4th year.


Please see Statement on Intellectual Property Student Projects.


Please see the policy on plagiarism

Questions, Clarifications and General Assistance


All questions should be emailed to the year 3 project coordinator David Sinclair (david.sinclair AT

5pm Friday 2nd November 2018 Submission of Project Proposals
Monday 12th to Friday 16th November 2018 Presentation of Project Proposals. Detailed Schedule here.
5pm Friday 7th December 2018 Submission of Functional Specification
5pm Friday 8th March 2019 Submission of Project
9am Monday 11th March 2019 -
5pm Friday 22nd March 2019
Project Demonstrations
GitLab and the Project

Your project team must use the School's GitLab to store all project deliverables including source code, documentation and video walkthroughs. Documentation must be generated using the Markdown language. The GitLab repository for your project must be created by you using the following rules:

  • The School's GitLab instance is at
  • The repository should be created by the team member whose surname appears first in the alphabet. If the project's title is "Project Manager" and the team consists of John Smith and Jane Bloggs, then the repository should be named:
  • The repository creator invites the other team member(s) and their supervisor as collaborators to the repository.
  • The repository should contain the following directories.
    • code
    • functional_spec
    • user_manual
    • technical_manual
    • proposal
  • The repository should also contain a file called video (at the top level) that contains the address of the video walkthrough.
  • The repository should also contain a file called blog (at the top level) that contains the address of the project blog.


Markdown is a simple, lightweight markup language with plain text formatting syntax. It can be converted to HTML and many other formats. Beacuse it is text based, it is a more suitable tool for generating documentation in conjunction with Git repositories. The following is a set of useful resources for Markdown.

Project Suggestions

You can (and are encouraged to) come up with your own ideas and not just accept the projects proposed by staff. In all cases, you must discuss your proposal with a member of staff and get their approval before you submit it and get their signature on the completed proposal form.

Proposal Tips

  • Pick a project which addresses a real problem. A project which does not address a real problem will be pointless, both to you and to examiners. If your project addresses a real problem, the requirements and constraints of that problem will provide a natural structure for your work. Without a real problem the project may be vague and hard to get to grips with. In industry (and while on INTRA) you'll be solving real problems: the project will give you a taste of that.
  • Pick a project you are interested in: ideally something you would use yourself. Or something a friend or relation would use, a person or business you know would use, etc.
  • Use technology you're happy with. If you want to learn a new programming language or system, the project could be a good time to do so, but make sure you allocate extra time for learning!

Staff suggested projects

Below is a set of links supplied by staff members with some project ideas. Please note if you wish to take one of these projects, you must discuss with the staff member who is suggesting the project.