Postgraduate Course: Software Development (INFR11172)
|School||School of Informatics
||College||College of Science and Engineering
|Credit level (Normal year taken)||SCQF Level 11 (Postgraduate)
||Availability||Available to all students
|Summary||Software development is more than just writing programs and this course provides an introduction to the complete range of software development activities, from gathering requirements through to evaluation of a finished product. The course describes how software development projects are created and managed to achieve the delivery of high-quality, efficient, robust, portable, usable software products. You will be introduced to areas of increasing prominence in both academia and industry including the importance of software sustainability and the rise of agile methods and extreme programming. The course should support in the understanding of the value of practical software development skills to the HPC, computational science and engineering.
- Software Development Projects and Processes
- Development Models
- Project Approaches including Agile and PRINCE2
- Project Planning: Task Scheduling and Risks
- Design: Requirements Capture and Prioritisation, Interfaces, Code, System
- Software Testing
- Usability and Evaluation
- Project Teams and Communications
- Project Reviews
Information for Visiting Students
|Pre-requisites||Programming Skills (Recommended). Relevant prerequisite material will be made available for self-study, but will not be directly taught as part of this course.
|High Demand Course?
Course Delivery Information
|Academic year 2022/23, Available to all students (SV1)
|Learning and Teaching activities (Further Info)
Lecture Hours 8,
Seminar/Tutorial Hours 20,
Programme Level Learning and Teaching Hours 2,
Directed Learning and Independent Learning Hours
|Assessment (Further Info)
|Additional Information (Assessment)
||100% coursework conducted in groups split into three linked assignments (40%, 20%, 40%)
||Feedback will be given to all students in written form for the assignments. Feedback for assignments one and two will be given in time for consideration before submission of the next assignment. Students are encouraged to consider the feedback and ask the course organiser about the feedback and how any changes or additions to working practices can be incorporated.
Students will give and receive feedback and comments from peers and involved staff during discussions and in-class presentations on content and practice.
|No Exam Information
On completion of this course, the student will be able to:
- Describe and execute the different processes in software development
- Develop and evaluate designs against prioritised requirements
- Identify, prioritise and develop strategies for change and risk management
- Identify, evaluate and propose communication methods for development projects
- Develop a professional approach to software development
|Provided via Learn|
|Graduate Attributes and Skills
||Effective written and diagrammatic communication.
Reflection on learning and practice.
Adaptation to circumstances.
Solution Exploration, Evaluation and Prioritisation.
||There are limited spaces on this course. Students not on the MSc in High Performance Computing or MSc High Performance Computing with Data Science should contact the course secretary to confirm availability and confirm that they have the required prerequisites before being enrolled on the course.
The course is available to PhD students for class-only study. PhD students requiring a form of assessment (e.g. SUPA/School of Physics and Astronomy CDT students) must contact the course secretary to confirm method of enrolment.
|Additional Class Delivery Information
||1x 2-hour practical class (Weeks 1-10) and 1x 1 hour lecture per week (Weeks 1-8)
|Keywords||Software development,planning,risk analysis,risk management,requirements,EPCC,HPC,HPCwDS
|Course organiser||Mr Alistair Grant
Tel: (0131 6)50 5028
|Course secretary||Mr James Richards
Tel: 90131 6)51 3578