Software Development MSc
Software Engineering (M) COMPSCI5059
- Academic Session: 2024-25
- School: School of Computing Science
- Credits: 15
- Level: Level 5 (SCQF level 11)
- Typically Offered: Runs Throughout Semesters 1 and 2
- Available to Visiting Students: No
- Collaborative Online International Learning: No
Short Description
To introduce the basic concepts in software engineering;
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.
To introduce different approaches to software project management, and a variety of tools are available to support effective management of software development projects.
To introduce economic, legal, social, ethical and environmental, and professional issues involved in the widespread deployment of information technology.
Timetable
TBC.
Excluded Courses
None
Co-requisites
Programming
Assessment
Exam (70%), coursework (30%).
Main Assessment In: April/May
Are reassessment opportunities available for all summative assessments? No
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.
Students can resit the class test.
Course Aims
To introduce the basic concepts of software engineering and project management in the small;
To study the generic components of requirements gathering and specification.
To present methods for the design, implementation, testing and documentation of object-oriented programs;
To develop program comprehension and design skills.
To familiarize students with the inherent problems and components of managing software development projects and differing approaches to software project management.
To stimulate thinking about the economic, legal, social, ethical and environmental implications of the widespread and sustainable use of IT and to develop students' awareness of the laws and professional codes of conduct governing the IT industry.
Intended Learning Outcomes of Course
By the end of the course students will be able to:
1. Carry out a requirements analysis and write a requirements definition;
2. Create UML class diagrams which model aspects of the domain and the software solution;
3. Apply design principles and patterns while designing and implementing simple systems;
4. Carry out testing of programs and apply simple measurement techniques to software;
5. Produce clear, concise, and sufficiently formal documentation appropriate for the design and development of existing systems and programs developed in practical exercises;
6. Apply a variety of project management techniques to software project management scenarios of varying complexity;
7. Explain the principal economic, legal, social, ethical and environmental, and professional issues and regulations in information technology (IT);
8. Discuss the breadth of software engineering and project management 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.