Skip to main content

Unit information: Software Engineering Project in 2020/21

Please note: you are viewing unit and programme information for a past academic year. Please see the current academic year for up to date information.

Unit name Software Engineering Project
Unit code COMS20006
Credit points 20
Level of study I/5
Teaching block(s) Teaching Block 4 (weeks 1-24)
Unit director Dr. Schien
Open unit status Not open
Pre-requisites

COMS10016 Imperative and Functional Programming and COMS10017 Object-Oriented Programming and Algorithms I or equivalent.

COMS10014 Mathematics for Computer Science A and COMS10013 Mathematics for Computer Science B or equivalent.

Reasonable proficiency in an imperative programming language.

Working knowledge of Java programming language.

Co-requisites

None

School/department School of Computer Science
Faculty Faculty of Engineering

Description including Unit Aims

The primary aim of this unit is to foster good software engineering practice and to introduce the software development lifecycle and principles of project management. The purpose of this is to instill in the students a professional attitude towards software development and encourage them to adopt a mature and repeatable software process.

This is a practical and experiential unit in which the learning outcomes will be achieved through a team project. The aim of this project will be to specify, design, implement and evaluate a large-scale software system.

The exact nature of the project will be informed by industrial input and, wherever possible, students will have a choice in the project upon which they work.

For more information about the unit in previous years, see the Project website:

http://www.bris.ac.uk/engineering/departments/computerscience/software-engineering-projects/

Intended Learning Outcomes

On completion of this unit, students will be able to:

  1. Develop software systems within a mature and repeatable Software Development process.
  2. Apply Agile Principles & Practices in the development of systems of significant scale.
  3. Select and employ development support tools (as appropriate to the project being undertaken).
  4. Apply basic principles of project management.
  5. Work effectively within real-world development contexts and with clients.
  6. Collaborate effectively within small teams.
  7. Identify the presence of (and employ techniques to mitigate the impact of) project uncertainty and risk.

Teaching Information

Teaching will be delivered through a combination of synchronous and asynchronous sessions, including lectures, group work, practical activities supported by drop-in sessions, and self-directed exercises.

Assessment Information

100% coursework

Reading and References

  • Sommerville, Ian, Software Engineering, 10th Edition (Pearson, 2016) ISBN: 978-1292096148

Feedback