Skip to main content

Module

CSC2022 : Software Engineering Team Project (Inactive)

  • Inactive for Year: 2020/21
  • Module Leader(s): Dr John Colquhoun
  • Demonstrator: Dr Dan Nesbitt
  • Other Staff: Dr Rouaa Yassin Kassab, Mr Chris Napier
  • Owning School: Computing
  • Teaching Location: Newcastle City Campus
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

Module leaders are revising this content in light of the Covid 19 restrictions.
Revised and approved detail information will be available by 17 August.

Assessment Methods

Module leaders are revising this content in light of the Covid 19 restrictions.
Revised and approved detail information will be available by 17 August.

Reading Lists

Timetable