Software Engineering (M) COMPSCI5059

  • Academic Session: 2018-19
  • School: School of Computing Science
  • Credits: 10
  • Level: Level 5 (SCQF level 11)
  • Typically Offered: Semester 2
  • Available to Visiting Students: No
  • Available to Erasmus Students: No

Short Description

To introduce the basic concepts of software engineering in the small; To present methods for the design, implementation, testing and documentation of object-oriented programs; To develop program comprehension and design skills by studying and extending existing programs.

Timetable

3 hours per week.

Requirements of Entry

None

Excluded Courses

None

Co-requisites

Programming

Assessment

1.5 hour examination (70%), coursework (30%).

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 the feedback provided to the students after the original coursework would give any student redoing the coursework an unfair advantage. 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 re-doing of such coursework over the summer. The coursework is linked to another piece of coursework and cannot be completed in isolation.

Course Aims

To introduce the basic concepts of software engineering in the small;

To present methods for the design, implementation, testing and documentation of object-oriented programs;

To develop program comprehension and design skills by studying and extending existing programs.

Intended Learning Outcomes of Course

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

1. Develop clear, concise, and sufficiently formal documentation of extensions to an existing system, based on the true needs of users and other stakeholders;

2. Apply design principles and patterns while designing and implementing simple systems, based on reusable technology;

3. Produce documentation appropriate for programs developed in practical exercises;

4. Create UML class diagrams which model aspects of the domain and the software architecture;

5. Carry out testing of programs and apply simple measurement techniques to software;

6. Discuss the breadth of software engineering practices.

Minimum Requirement for Award of Credits

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