Software Engineering Practice - COMP6003

Looking for a different module?

Module delivery information

Location Term Level1 Credits (ECTS)2 Current Convenor3 2026 to 2027
Canterbury
Autumn Term 6 20 (10) Rogerio De Lemos checkmark-circle

Overview

For a successful career as a software developer, engineering skills enable us to solve complex problems and build innovative solutions.

To deepen your knowledge, you will explore critical tools and practices essential for contemporary software development. You will expand on previous knowledge and deepen your expertise with version control, containerization, continuous integration and deployment technologies. You will learn about the principles of infrastructure-as-code for scalable and maintainable software projects and gain hands-on experience with technologies used in the industry. You will learn how to use profiling and debugging techniques to enable you to analyse, correct, and optimise code more effectively. Hands-on experience with technical aspects such as build systems, as well as the breadth of approaches for effective communication from issue tracking to versioning will empower you to contribute to the complete lifecycle of complex software systems.

By the end of the module, you will be well-equipped with practical knowledge and skills, preparing yourself to contribute meaningfully to modern software engineering projects and navigate the intricacies of collaborative development in dynamic environments, based on experience with real-world scenarios.

Details

Contact hours

Total contact time (Lectures and Classes) 38, Independent Study 112, Assessment Preparation 50

Availability

Autumn

Method of assessment

Group Software Development Project 1 - 20%
Group Software Development Project 2 - 30%
Examination - 50%
Reassessment Method: Like-for-like - Including composite form of reassessment for failed practical components – Practical individual mini project, and Examination.

Indicative reading

Learning outcomes

On successfully completing the module, students will be able to: 
Design and create and use complex software systems.
Apply dynamic analysis tools for system understanding and debugging.
Analyse and critique the software development lifecycle of existing complex software projects.
Evaluate and use modern tooling for developing, testing, and deploying software.
Identify, select, and use the effective techniques to communicate and collaborate with other software engineers.

Notes

  1. Credit level 6. Higher level module usually taken in Stage 3 of an undergraduate degree.
  2. ECTS credits are recognised throughout the EU and allow you to transfer credit easily from one university to another.
  3. The named convenor is the convenor for the current academic session.
Back to top

University of Kent makes every effort to ensure that module information is accurate for the relevant academic session and to provide educational services as described. However, courses, services and other matters may be subject to change. Please read our full disclaimer.