Information Technology MSc
Programming COMPSCI4039
- Academic Session: 2026-27
- School: School of Computing Science
- Credits: 20
- Level: Level 4 (SCQF level 10)
- Typically Offered: Semester 1
- Available to Visiting Students: No
- Collaborative Online International Learning: No
- Curriculum For Life: No
Short Description
■ To provide a firm foundation in skills and key concepts essential for programming fundamentally in Python which is the main language used in the programme, while introducing also to Java syntax.
■ To provide a thorough introduction to problem solving and Python programming, giving a basis for study in topics such as algorithms and data structures, object-oriented design, and human computer interaction.
■ To develop skills, required for implementing solutions to well-specified programming problems, which could then be transferred to other programming languages like Java.
Timetable
Three lectures, one tutorial and one lab session per week. Special timetable in week 1.
.
Excluded Courses
None
Co-requisites
None
Assessment
Assessed exercise: 25%, Examination: 75%.
Main Assessment In: December
Are reassessment opportunities available for all summative assessments? No
It is the default expectation that all courses will offer opportunities for reassessment or deferred assessment. Where it is not possible to offer this in some assessment components, the grade achieved at the first attempt will be counted towards the final course grade, and any exceptions for this course are described below.
[No exceptions]
Course Aims
■ To provide a firm foundation in skills and key concepts essential for programming fundamentally in Python which is the main language used in the programme, while also introducing to Java syntax.
■ To provide a thorough introduction to problem solving and Python programming, giving a basis for study in topics such as algorithms and data structures, object-oriented design, and human computer interaction.
■ To develop skills, required for implementing solutions to well-specified programming problems, which could then be transferred to other programming languages like Java.
Intended Learning Outcomes of Course
By the end of the course students will be able to:
1. Demonstrate familiarity with the relevant programming environment;
2. Perform simple programming using primitive data types and objects;
3. Implement simple algorithms using repetition and conditional execution;
4. Develop well-structured programs in Python, employing suitable elementary algorithms and data structures as required;
5. Write maintainable, robust, reliable, and reusable code, together with concise and informative documentation;
6. Provide evidence of program correctness through thorough testing.