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
- The selection and use of appropriate programing languages and software development tools for a software project
- Realistic estimates of the cost in time and effort required for a project of up to 20 KLOC
- Planning and execution of a professional user acceptance test schedule
- Teamwork and time management
Transferable and Generic Skills
Having successfully completed this module you will be able to:
- Make critical judgements of their own and other peoples work
- Handle some of the conflict inherent in a group project
- Take responsibility for scheduling and running group meetings
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
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 value and limitations of software tools in all phases of a software development
- Appreciate the interdependence and 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 |
---|---|
Completion of assessment task | 56 |
Wider reading or practice | 10 |
Follow-up work | 18 |
Lecture | 36 |
Preparation for scheduled sessions | 18 |
Tutorial | 12 |
Total study time | 150 |
Resources & Reading list
Textbooks
Sims and Johnson. Scrum: a Breathtakingly Brief and Agile Introduction.
Sommerville I, (2007). Software Engineering. Addison-Wesley.
Fowler M and Scott K, (1997). UML Distilled. Addison-Wesley.
Lethbridge T, Laganiere R (2005). Object-Oriented Software Engineering. McGraw Hill.
Fitzpatrick and Collins-Sussman. Debugging Teams.
Cohn. User Stories Applied.
Cockburn. Agile Software Development.
Assessment
Summative
Summative assessment description
Method | Percentage contribution |
---|---|
Continuous Assessment | 85% |
Final Assessment | 15% |
Referral
Referral assessment description
Method | Percentage contribution |
---|---|
Set Task | 100% |
Repeat
Repeat assessment description
Method | Percentage contribution |
---|---|
Set Task | 100% |
Repeat Information
Repeat type: Internal & External