Don't just imagine your future at University, experience it first-hand!

Step into the shoes of an undergraduate student and join us for our upcoming on-campus Discover Days in Science, Engineering and Fashion. These days are tailored exclusively for Year 12s who are interested in taking their academic journey to the next level. Find your favourite subject now!

Find out more about our Discover Days in Science, Engineering and Fashion

BSc Computer Science and Mathematics with Industrial Experience

Year of entry: 2024

Course unit details:
Software Engineering 2

Course unit fact file
Unit code COMP23412
Credit rating 10
Unit level Level 2
Teaching period(s) Semester 2
Available as a free choice unit? No


In this course unit students work in teams to build their own web application, with a focus on architecture, planning, and meeting requirements through extensive testing. Students will get to grips with the Model-View-Controller architecture through the Spring web framework, integrating functionality from Twitter and Google maps, and developing their own API.


Unit title Unit code Requirement type Description
Software Engineering 1 COMP23311 Pre-Requisite Compulsory
Students who are not from the School of Computer Science must have permission from both Computer Science and their home School to enrol.


By the end of the course unit students will be able to:

  • Work in a team to deliver a new software product.
  • Implement a robust architecture for a web application.
  • Understand and break down requirements.
  • Ensure acceptance tests are met through unit and integration tests.
  • Work with APIs.

Learning outcomes

  • Apply the ‘golden rules’ of user interface design to a web application

  • Design a data model to efficiently represent entities and relationships within a software system

  • Map from acceptance tests to unit and integration tests to ensure a system meets specifications and is robust against regression

  • Use and develop REST APIs

  • In a team, design and develop a library to provide common functionality to multiple software projects


Working with the Model-View-Controller architecture User interface design Data modelling Specification by example Unit and integration testing Internal APIs Consuming REST APIs Providing a REST API

Teaching and learning methods

The course unit is entirely lab-based. The first 30 minutes is a lecture/demonstration, the remaining 1.5 hours is a chance to apply the techniques in practice in assessed coursework, with the support of lecturers and TAs.

1 lecture each week

2 hour lab each week

1 hour team study sessions

Use of online quizzes

Assessment methods

Method Weight
Written exam 30%
Practical skills assessment 70%

Feedback methods

Feedback is provided on a continuous basis; as students implement requirements, they can check that these meet client expectations in the lab each week.

Recommended reading

COMP23412 reading list can be found on the Department of Computer Science website for current students.

Study hours

Scheduled activity hours
Practical classes & workshops 20
Work based learning 2
Independent study hours
Independent study 78

Teaching staff

Staff member Role
Mustafa Mustafa Unit coordinator
Markel Vigo Unit coordinator

Additional notes

Course unit materials

Links to course unit teaching materials can be found on the School of Computer Science website for current students.

Return to course details