Study Abroad and Exchanges

Modules

Modules

CSC2022 : Software Engineering Team Project

Semesters
Semester 1 Credit Value: 10
Semester 2 Credit Value: 10
ECTS Credits: 10.0

Aims

To introduce the real world experience of team working.
To provide practical experience of large scale software development.

This module gives students the opportunity to work within a team situation that simulates a real-world environment. The project work draws on several topics covered in lectures including project planning where you must define an organisational structure for your team. Next you will have to choose a software design methodology, plan out the software design, estimate the amount of work needed, consider the schedule for implementation to meet the deadlines set, and allocate the work. You will need to consider the plan for testing your software. You will need to plan the software integration, testing and the final demonstration - and throughout the whole process there will be the planning and allocation of documentation tasks and report writing.
The class will be divided into a number of teams with around seven students in each team. Team membership will be determined by the module leader - expect to find in your team students with diverse backgrounds, abilities and skills. Some students will be competent programmers, others will have limited capabilities in this area but have skills in other areas such as documentation, organisation, communication etc. You will need to make the most of the skills within your team and allocate tasks and roles accordingly.
Whilst the end product is a documented piece of software, the way you operate as a team is an important aspect of this module. You are expected to hold a formal team meeting once each week.

Outline Of Syllabus

Software Engineering - Software Processes
- Life-cycle and Process Models
- Process Capability Maturity Models
- Approaches to Process Improvement

Software Engineering - Software Project Management
- Team Management
- Team processes
- Team organisation and decision-making
- Roles and responsibilities in a software team
- Role identification and assignment
- Team problem resolution
- Project Tracking
- Project Scheduling
- The role of risk in the lifecycle
- The role of measurements
- Software Configuration management and version control; release management

Software Engineering - Risk Assessment
- Definition of terms - in security, vulnerability, threat, security breach, in safety, hazard.
- The concept of risk; hazard and identification
- Risk Analysis- including evaluation
- Need for a system wide approach including hazards associated with tools
- Risk and immature technologies
- Cost/benefit Analysis
- Principles of Risk Management

Software Engineering - Professional Skills
- CVs and covering letters
- Interview techniques (Mock Interviews)
- Professionalism
- Entrepreneurship

Teaching Methods

Teaching Activities
Category Activity Number Length Student Hours Comment
Scheduled Learning And Teaching ActivitiesLecture221:0022:00Lectures
Guided Independent StudyAssessment preparation and completion221:0022:00Lecture follow-up
Scheduled Learning And Teaching ActivitiesSmall group teaching441:0044:00Informal project meetings
Scheduled Learning And Teaching ActivitiesSmall group teaching221:0022:00Formal project meetings
Guided Independent StudyProject work441:0044:00Coursework
Guided Independent StudyIndependent study232:0046:00Background reading
Total200:00
Teaching Rationale And Relationship

This is a practically-oriented course with students learning and developing skills within a team environment. Lectures are used to introduce the main topics. Thereafter students are expected to work together and individually to develop a large piece of software and provide appropriate documentation.

Assessment Methods

The format of resits will be determined by the Board of Examiners

Other Assessment
Description Semester When Set Percentage Comment
Practical/lab report2M20Individual Work - Reflective Log (Report and Log Book) - 2000 words
Design/Creative proj1M10Team Based Assignments (Team Contract - 5%, Dragon's Den - 5%)
Design/Creative proj2M55Team Based Assignments (Final Specification - 15%, Code - 25%, Poster - 5%, Trade Fair - 5%, Final Technical Demonstration - 5%)
Prof skill assessmnt1M10Individual Work (CV and Covering Letter - 5%, Mock Interview - 5%)
Report2M5Individual Work - "Professional Behaviour" - 5%, 1 hours.
Assessment Rationale And Relationship

Assessment is through a number of individual deliverables (worth 35%) and team deliverables (worth 65%), emphasising the practical nature of the module. Individual deliverables are designed to allow students to demonstrate their understanding of the problem to be solved, what their role within the group will be to provide a reflection on what they have learnt from the module. Team deliverables require students to work together to produce software and its documentation and to demonstrate that students are able to work collectively to produce an end product. To simulate the real world environment, students will use oral presentations to a "customer" and receive feedback. Peer assessment is employed to identify each individual's contribution to the team. Details of the deliverables may vary from year to year depending on the involvement of an industrial consultant and students from other universities. Full details will be available at the beginning of the year on the year-specific module web page.

Reading Lists

Timetable