Final project report
For your final projects, both in-house and Tech for Better, you'll write a detailed README on the project.
The following sections are required. Your report is supposed to demonstrate a certain set of knowledge, skills and behaviours. These are listed alongside the relevant questions as quotes.
Introduction
What are you building?
Why are you building it?
Project scope
What are you not building?
How did you decide what features were important?
Project plan
How are you going to structure your sprints?
What order are you going to build in?
How did user research inform your plan?
Requirement analysis
How will you ensure your project is accessible to as many users as possible?
Are there any legal or regulatory requirements you should consider?
Project learnings
Did your team work effectively?
What would you do differently next time?
Research and findings
What did you find out from user testing?
Project outcomes
Were your assumptions right or wrong?
Recommendations and conclusions
What features would you prioritise to build next?
Was the project a success?
Software Development Lifecycle stages
Planning
What roles did your team take on?
Explain the roles and responsibilities of all people working within the software development lifecycle, and how they relate to the project (K2)
Did these roles help your team work effectively?
Outline how teams work effectively to produce software and how to contribute appropriately (K6) Compare and contrast the requirements of a software development team, and how they would ensure that each member (including themselves) were able to make a contribution (K6)
Analysis
What might be the intended and unintended consequences of building this product?
Design
How did you plan a user experience?
What technical decisions did you make?
Server-render vs client-render vs both
Relational or non-relational or no DB
Self-hosted or platform-as-a-service
Frontend first vs DB first
Did you create a technical specification?
Review methods of software design with reference to functional/technical specifications and apply a justified approach to software development (K11, S11, S12)
Implementation/Build
How did you ensure your code was good?
Create logical and maintainable code to deliver project outcomes, explaining their choice of approach. (S1)
What interesting technical problems did you have to solve?
Outline and apply the rationale and use of algorithms, logic and data structures. (K9, S16)
How did you debug issues that arose?
Apply structured techniques to problem solving to identify and resolve issues and debug basic flaws in code (S7)
Test
How did you verify your project worked correctly?
Identify and create test scenarios which satisfy the project specification (S6)
Did writing automated tests catch any bugs?
Analyse unit testing results and review the outcomes, correcting errors. (S4)
Deploy
Where/how did you deploy your application?
Review and justify their contribution to building, managing and deploying code into the relevant environment in accordance with the project specification (S10)
What problems did you encounter during deployment?
Maintain
Is it easy for someone make changes to the codebase?
Could a new person quickly be onboarded to contribute?
Establishes a logical thinking approach to areas of work which require valid reasoning and/or justified decision making (B2)
Describes how they have maintained a productive, professional and secure working environment throughout the project activity (B3)
Last updated