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.


  • 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


  • 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)


  • What might be the intended and unintended consequences of building this product?


  • 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)


  • 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)


  • 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)


  • 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?


  • 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)