Undergraduate 

Software Engineering BSc/MSci

Professional Software Development (H) COMPSCI4015

  • Academic Session: 2019-20
  • School: School of Computing Science
  • Credits: 10
  • Level: Level 4 (SCQF level 10)
  • Typically Offered: Runs Throughout Semesters 1 and 2
  • Available to Visiting Students: Yes
  • Available to Erasmus Students: Yes

Short Description

The aims of the course are to:

Introduce students to modern software development methods and techniques for building and maintaining large systems;

Prepare students to apply these methods and techniques presented to them in the context of an extended group-based software development exercise;

Make the students aware of the professional, social and ethical dimensions of software development; 

Instil in the students a professional attitude towards software development.

Timetable

Weekly full day laboratory in conjunction with Team Project.

Requirements of Entry

Object Oriented Software Engineering 2 (or equivalent)

Java Programming 2 (or equivalent)

Algorithms and Data Structures 2 (or equivalent)

Excluded Courses

None

Co-requisites

Systems Programming (H)

Level 3 Team Project (one of either: Team Project (H), Team Project (H) Minor, Team Project ESE or Team Project 3)

Assessment

This course is taught in conjunction with the Team Project. Practical assessment of material will be undertaken in the Team Project. Assessment of student understanding of the theoretical material presented in PSD (H) will be done through fortnightly class tests (20%) and a final written exam (80%).

Main Assessment In: April/May

Are reassessment opportunities available for all summative assessments? No

Reassessments are normally available for all courses, except those which contribute to the Honours classification. For non Honours courses, students are offered reassessment in all or any of the components of assessment if the satisfactory (threshold) grade for the overall course is not achieved at the first attempt. This is normally grade D3 for undergraduate students and grade C3 for postgraduate students. Exceptionally it may not be possible to offer reassessment of some coursework items, in which case the mark achieved at the first attempt will be counted towards the final course grade. Any such exceptions for this course are described below. 

 

The coursework cannot be redone because it is done as part of a group. The nature of the coursework is such that it takes a significant number of days to produce it and this effort is infeasible for supporting the redoing of such coursework over the summer.

Course Aims

The aims of the course are to:

Introduce students to modern software development methods and techniques for building and maintaining large systems;

Prepare students to apply these methods and techniques presented to them in the context of an extended group-based software development exercise (Team Project (H)); 

Make the students aware of the professional, social and ethical dimensions of software development; 

Instil in the students a professional attitude towards software development.

Intended Learning Outcomes of Course

By the end of this course students will be able to:

1. Identify the main phases of software development and how they are related in contemporary development methods;

2. Maintain an existing medium to large-scale system according to supplied requirements (this will include modifying some of the system documentation);

3. Identify and discuss critically professional, social and ethical issues involved in large-scale software development;

4. Plan, organise and schedule a substantial team based project;

5. Capture and specify functional and non-functional requirements;

6. Design, specify; implement and test a system which demonstrably meets project requirements;

7. Maintain appropriate, clear and accurate documentation;

8. Use appropriate QA techniques, including test suite planning;

9. Use appropriate configuration management tools and techniques;

10. Deliver articulate and informative presentations on project topics;

11. Communicate effectively within the project team;

12. Work successfully within a team.

Minimum Requirement for Award of Credits

Students must submit at least 75% by weight of the component (including examinations) of the course's summative assessment.