module specification

CS4001 - Programming (2022/23)

Module specification Module approved to run in 2022/23
Module title Programming
Module level Certificate (04)
Credit rating for module 30
School School of Computing and Digital Media
Total study hours 300
90 hours Scheduled learning & teaching activities
139 hours Guided independent study
71 hours Assessment Preparation / Delivery
Assessment components
Type Weighting Qualifying mark Description
Coursework 30%   Software and 1200 words Report
Coursework 30%   Software and 1200 words Report
In-Course Test 40%   1.5-hour MCQ Test
Running in 2022/23

(Please note that module timeslots are subject to change)
Period Campus Day Time Module Leader
Year North Tuesday Morning

Module summary

This is an introductory programming module, designed to develop interest, ability and confidence in using a programming language. Students will gain the basic knowledge and experience to solve simple programming problems using established techniques in program design, development and documentation.

The student is also expected to develop their confidence needed to program solutions to problems through a series of practical programming exercises.

Assessment: Coursework 1 (30%) + Coursework 2 (30%) + Multiple choice test (40%) [Pass on aggregate]

Prior learning requirements



The main topics of study include:

Designing, coding, documenting and testing programs using an appropriate environment.

LO5, LO6

Object-oriented elements, including the use of classes and objects.

LO1, LO3

Data storage and memory concepts.

LO1, LO2

Method calls and parameter passing.

LO1, LO2

Iteration and selection constructs.

LO1, LO2

Relational, logical and arithmetic operators.

LO1, LO2

Inheritance and polymorphism.


Abstract classes and interfaces.

LO2, LO3

Introduction to collections.


Graphical user interfaces.

LO3, LO4

Exception handling and assertions.

LO1, LO3

Command prompt compilation and execution.


Balance of independent study and scheduled teaching activity

Students will develop theoretical understanding and practical programming skills based on weekly lectures, and workshops. Workshops consist of programming exercises designed to test and reinforce concepts that are introduced during the lectures.


Appropriate blended learning approaches and technologies, such as, the University’s VLE and online tools, will be used to facilitate and support student learning to:

  • Deliver content;
  • Encourage active learning;
  • Provide formative and summative assessments, and prompt feedback;
  • Enhance student engagement and learning experience.


Students will be expected and encouraged to produce reflective commentaries and an action plan for personal development on the learning activities and tasks that they carry out to complete their work, e.g. in the form of an assessed section of their coursework report.

Learning outcomes

Indicative syllabus – for full details see section C in Module Booklet

Assessment strategy

Coursework consists of two parts and takes the form of software development including documentation. It integrates concepts that have been assessed formatively by workshop exercises.

Short practice tests prepare students for the multiple-choice test at the end of the module.

Consistent with University policy, formative and summative feedback will be provided at various points throughout the teaching year.


Link to the books:




Core Text:

Barnes, D.J. & Kölling, M., 2016, Objects First with Java (6th edition), Pearson.

Other Texts:

Deitel, H. and Deitel, P., 2018, Java How to Program, 11th edition (or later). Pearson.

Savitch, W., 2019, Java: An Introduction to Problem Solving and Programming, Global Edition, 8/E. Pearson.

Gaddis, T., 2019, Starting Out with Java: From Control Structures through Objects, 7/E, Pearson.


The Computer Journal of the British Computer Society, ISSN 1460-2067 (Electronic); Publisher: Oxford: Oxford Journals, Oxford, UK: Oxford University Press.



Java API:

Oracle Java home page:

Safari Books Online

Electronic Databases (available from the University Library)

ACM Digital Library

IEEE Xplore/IET Digital Library