Foundation Programming (G6065)

15 credits, Level 3 (sub-degree)

Autumn teaching

The aim of the module is to provide you with an understanding of how to design algorithms to solve simple problems in a suitable high-level programming language and how to code, document and test those solutions.

Content may typically include:

  • Overview of range and types of programming languages
  • Introduction to a development environment and use of online help facilities
  • Algorithm design: using a top-down technique
  • Simple data types and naming conventions
  • Controlling flow using selection statements
  • Controlling flow using iteration
  • Using functions for re-use 
  • Modular programming
  • Complex data types: records and arrays
  • Programming standards: layout and documentation
  • Verification & testing


50%: Lecture
50%: Practical (Laboratory)


100%: Coursework (Computer-based examination, Project)

Contact hours and workload

This module is approximately 150 hours of work. This breaks down into about 44 hours of contact time and about 106 hours of independent study. The University may make minor variations to the contact hours for operational reasons, including timetabling requirements.

We regularly review our modules to incorporate student feedback, staff expertise, as well as the latest research and teaching methodology. We’re planning to run these modules in the academic year 2024/25. However, there may be changes to these modules in response to feedback, staff availability, student demand or updates to our curriculum. We’ll make sure to let you know of any material changes to modules at the earliest opportunity.


This module is offered on the following courses: