Postgraduate taught 

Civil Engineering MSc

Engineering Skills M ENG5322

  • Academic Session: 2023-24
  • School: School of Engineering
  • Credits: 10
  • Level: Level 5 (SCQF level 11)
  • Typically Offered: Runs Throughout Semesters 1 and 2
  • Available to Visiting Students: Yes

Short Description

This course consists of two main components.  Part one is an introduction to computer programming and developing algorithms, including its application to engineering problems; part two is a robust introduction to ethics in engineering and plagiarism.


2 x lectures per week or a seminar session per week depending on the topic

1 x lab per week (for most weeks) on the Computer Coding part of the course

Excluded Courses





20% Python Lab Write Up

30% Python Algorithm Assignment

20% Python Class Test

10% Robot Assignment

20% Written Report

Main Assessment In: December

Course Aims

The aims of this course are to:

■ provide an understanding of how engineering problems can be framed in computer programs and to develop a logical top-down problem-solving approach to this process in order to be able to write well-structured programming solutions;

■ develops the student's ability in academic and technical writing;

■ introduce the concepts of model validation and verification in creating computer models;

■ develop a conscious understanding in the student of the ethical expectations of them as engineering students and as practicing professional engineers including the concept of responsible innovation; 

■ Introduce and describe the issues around plagiarism as a student, how to avoid plagiarising or having your work plagiarised, and the consequences in the university system for plagiarism.

Intended Learning Outcomes of Course

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

■ solve simple engineering problems using Python or an alternative programming environment;

■ analyse a problem, adopt a logical sequential approach to its solution and be able to formalise this solution strategy within a programming environment;

■ demonstrate knowledge of basic programming techniques, such as input and output, iteration, branching and user-defined functions;

■ perform basic software testing and model verification and validation to validate programming code and engineering models;

■ demonstrate ability to use coding and modelling to solve basic engineering problems;

■ write a technical engineering report relating to the student's specific engineering discipline but more generally to the engineering profession;

■ show an appreciation of the ethical considerations relevant to their field of engineering and demonstrate a knowledge of responsible innovation and the global impact of engineering.

Minimum Requirement for Award of Credits

This course is a "skills based", practical course which includes a series of laboratory classes, several workshops and an "all day" competition. Students must attend all of the timetabled sessions and the class examination in order to gain the credit. Students must also submit two course assignments.