Project Overview
The honours year project provides an opportunity to carry out a substantial piece of work for which you are individually responsible. It is a key element of your degree and its BCS accreditation. You are required to apply and explore in more depth some of the things you have learned elsewhere in the course, and to show initiative in expanding and applying your knowledge.
You should not expect to be told everything you need to know, nor exactly what to do. You will have to find much of the information for yourself, drive the project forward, take the initiative, and manage your own time. You'll have a supervisor who will provide advice and guidance, but it's your project and you are expected to take responsibility for it.
Module Synopsis
The honours year project gives students the opportunity to study independently on an extended piece of work under the guidance of an academic supervisor. Many diverse projects are available for selection, inspired by the research of the department. Each student is encouraged to propose a project in an area that meets their own personal needs, whether it's related to their career aspirations or simply an interesting academic pursuit. The project consolidates learning from the taught part of the course, with authentic assessment that is designed to encourage communication of complex ideas via a range of media. On completion of the module, students will have the confidence to pursue their career, having developed proficiency in their chosen topic and an ability to communicate clearly and effectively.
Educational Aims
- To provide the opportunity for students to successfully complete a self-directed project culminating in a detailed written dissertation and either an original piece of software or a research contribution derived from the practical application of technology.
- To allow students to reflect on and use tools and techniques acquired from other taught modules within the programme.
- To encourage students to consider and address the legal and ethical issues surrounding their project topic and relate these to the professional standards of the Chartered Institute for IT.
- To enable students to demonstrate technical competency and proficiency with time management, risk assessment, project planning and communication.
Learning Outcomes
- LO1 — Conduct background reading and user analysis (where appropriate) to develop a set of requirements for a large-scale technical project.
- LO2 — Demonstrate competence in project planning, risk assessment, time management, independent study, and adaptability.
- LO3 — Design and implement a technically competent piece of software that meets the needs of its users, employing recognised contemporary notations and tools.
- LO4 — Evaluate project outcomes with reference to the original requirements, wider background context, and the expectations of the Chartered Institute for IT.
- LO5 — Articulate the legal, social, ethical and professional issues surrounding the project, including a clear statement of ethical compliance.
- LO6 — Communicate project outcomes and technical information clearly and succinctly to a broad, non-specialist audience.
Project Supervision
You will be allocated a supervisor who will offer help and advice throughout the project. The role of the supervisor is to ensure you stick to the deadlines, and advise you when writing your final report and other documents that form part of the assessment.
In general, you should not treat your supervisor as a guru who can solve all your problems. Very often you might find that you have more detailed knowledge than them, especially if you are working in a new development environment. Your supervisor might not be willing or able to help with tricky coding problems, although they will be able to refer you to the right resources.
Your working relationship with your supervisor will be unique. You shouldn't worry if your experience differs to those of your friends. You'll be treated as an individual, so your meetings will vary in scope and content depending on the project topic. Remember that each supervisor has to balance their workload across many areas, so they might not always be available to meet with you urgently.
You should meet with your supervisor for a 30 minute session every two weeks, but this is only a guideline and it will vary across the period of the project. If you are progressing well and your supervisor agrees, you can meet less often.
Stages of a Project
The module learning outcomes are based on the typical stages of software development. Whilst each project is unique and will be driven by you, every project follows this general process. Even if you're not developing original software (for example, if your project has more of a research focus) these steps are still applicable.
| Stage | Development Focus | Research Focus |
|---|---|---|
| Reading | This provides the context for your project. Identify and absorb related work, pinpoint the key ideas you will build on within the project, and acquire any new skills and techniques you will need. | |
| Requirements | Establish the user requirements for your software by speaking to your supervisor and any other stakeholders. | Determine the overarching research question and establish an experimental hypothesis. |
| Design | Produce a formal design using a standard notation, including a detailed explanation of the component parts and how they fit together. | Produce a detailed plan of activity, explain how technology will be employed, and list the criteria that will determine successful completion. |
| Realisation | Implement the software according to the design, including technical development (coding) and organisation of the working environment (such as version control). | Carry out the research plan by applying a suitable technology (or combination of technologies) to solve a problem or prove a hypothesis. |
| Evaluation | Check that the software implementation works as expected (testing) and demonstrate that it meets the needs of its users (evaluation). | Analyse and discuss experimental results, ensuring the research method is robust and replicable, and show that the technology was applied correctly. |
Although this table is presented as discrete and sequential steps, we recognise that modern software development no longer follows the traditional waterfall model. Your approach might be agile or involve rapid prototyping (or one of many other development methods) but these activities are still present in some form.
The project spans both semesters, so it's a good idea to keep some kind of written record of your thoughts and activity, even things that don't work or lead you down the wrong path. We recommend you use a notebook (either physical or electronic) to keep a log of your progress. This won't be seen by anyone, and it's not assessed, but it will help you to remember what you did so you can refer back to it when you produce your final dissertation.
Transferable Skills
You will be using skills you've learned in other modules, but you will also need to develop and demonstrate new skills. Some of these will be technical, but there's a wide range of other skills that are just as important. These also form part of the module learning outcomes.
- Planning — A long-term piece of work requires careful planning to ensure a successful outcome. You need to work out what needs to be done, in what order, and with what importance. You need to establish how long to spend on each part of the project, to ensure you hit the required deadlines and your own internal goals.
- Risk Analysis — All projects involve an element of risk. You need to identify what could go wrong and have a plan to mitigate problems as they arise. It's not possible to foresee all risks, but you can prepare for the most likely scenarios.
- Ethical Conduct — You must consider the legal, social and ethical aspects of your project, and ensure you follow our ethical guidance. This is a key part of the professional accreditation of your degree.
- Communication — You should be able to communicate complex technical details to non-specialists (verbally, visually and in writing). The project assessments expect you to demonstrate an ability to communicate clearly. This is a skill that will remain useful throughout your future career.
- Self-Reflection — You need to be able to look critically and objectively at your work and the progess you've made. This includes identifying the negative aspects of your project (anything that didn't go to plan) and demonstrating that you've learned something valuable from the experience.
The Chartered Institute for IT (BCS) has a Code of Conduct. This sets out guidelines for the proper conduct of a software professional undertaking a project. Some of these are intended for large, multi-person teams in a commercial setting, but you should be aware of them and apply their principles where it makes sense for your project.