Module overview
This module aims to give students experience of working in a team, and of the problems of communication and scale in software engineering. It will consolidate and integrate the techniques and concepts introduced in earlier courses (principally COMP1216 Software Modelling and Design) and demonstrate the need for a professional approach to all aspects of software development.
Linked modules
Pre-requisites: COMP1202 and COMP1206 and COMP1216 OR COMP1209 and COMP1215 or COMP1217
Aims and Objectives
Learning Outcomes
Knowledge and Understanding
Having successfully completed this module, you will be able to demonstrate knowledge and understanding of:
- The professional development of a prototype software system from defined requirements
- Realistic estimates of the cost in time and effort required for a project of up to 20 KLOC
- Teamwork and time management
- The selection and use of appropriate programing languages and software development tools for a software project
- Planning and execution of a professional user acceptance test schedule
Subject Specific Intellectual and Research Skills
Having successfully completed this module you will be able to:
- Appreciate the difficulties of professional software development
- Appreciate the interdependence and conflict inherent in a group project
- Appreciate the value and limitations of software tools in all phases of a software development
Subject Specific Practical Skills
Having successfully completed this module you will be able to:
- Develop, deliver and test a significant prototype software system
- Pick up and use new software tools and environments without formal training
Transferable and Generic Skills
Having successfully completed this module you will be able to:
- Make critical judgements of their own and other peoples work
- Take responsibility for scheduling and running group meetings
- Handle some of the conflict inherent in a group project
Syllabus
There is a little formal teaching on the unit. Students will exercise and develop skills in the following areas:
- Software production methodology, design, implementation and testing
- The value and limitations of software tools in all phases of a software development
- Teamwork and time management
- Ability to "pick up" and use new tools and environments without formal training
- Planning and execution of a professional user acceptance test schedule
- Realistic estimates of the cost in time and effort required for a -project of up to 20 KLOC
- Responsibility for scheduling and running group meetings
Learning and Teaching
Type | Hours |
---|---|
Follow-up work | 18 |
Tutorial | 12 |
Completion of assessment task | 56 |
Lecture | 36 |
Wider reading or practice | 10 |
Preparation for scheduled sessions | 18 |
Total study time | 150 |
Resources & Reading list
Textbooks
Sommerville I, (2007). Software Engineering. Addison-Wesley.
Fitzpatrick and Collins-Sussman. Debugging Teams.
Fowler M and Scott K, (1997). UML Distilled. Addison-Wesley.
Cockburn. Agile Software Development.
Lethbridge T, Laganiere R (2005). Object-Oriented Software Engineering. McGraw Hill.
Sims and Johnson. Scrum: a Breathtakingly Brief and Agile Introduction.
Cohn. User Stories Applied.
Assessment
Summative
This is how we’ll formally assess what you have learned in this module.
Method | Percentage contribution |
---|---|
Continuous Assessment | 85% |
Final Assessment | 15% |
Referral
This is how we’ll assess you if you don’t meet the criteria to pass this module.
Method | Percentage contribution |
---|---|
Set Task | 100% |
Repeat
An internal repeat is where you take all of your modules again, including any you passed. An external repeat is where you only re-take the modules you failed.
Method | Percentage contribution |
---|---|
Set Task | 100% |
Repeat Information
Repeat type: Internal & External