module specification

CS4001 - Programming (2025/26)

Module specification Module approved to run in 2025/26
Module title Programming
Module level Certificate (04)
Credit rating for module 30
School School of Computing and Digital Media
Total study hours 300
 
72 hours Scheduled learning & teaching activities
139 hours Guided independent study
89 hours Assessment Preparation / Delivery
Assessment components
Type Weighting Qualifying mark Description
Coursework 50%   A set of MCQ questions testing the knowledge of programming theory (1 hour)
Coursework 50%   Design, implement and test a program (software and 2000 words report)
Running in 2025/26

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

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. It is expected that on completion of this module, students will be able to design, implement and test object-oriented programs.. The student is also expected to develop their confidence needed to program solutions to problems through a series of practical programming exercises.

Syllabus

  • Designing, coding, documenting and testing programs using an appropriate environment. (LO3, LO4, LO5)
  • 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. (LO3)
  • Abstract classes and interfaces. (LO2, LO3)
  • Introduction to collections. (LO3)
  • Graphical user interfaces. (LO3)
  • Exception handling Assertions. (LO1, LO3)

Balance of independent study and scheduled teaching activity

Topics will be introduced through appropriate mediums.

Theoretical content will usually be supported by multimedia technologies (e.g., slides, videos, podcasts, and screencasts) or asynchronous materials (e.g., videos, reading tasks, and small formative or summative tests). Tutorials will typically involve in-class discussions to encourage reflective learning. Workshops will typically involve hands-on experience. Students are strongly encouraged to engage in independent study prior to attending any scheduled sessions.

Theoretical understanding and practical programming skills will be developed and reinforced through provided learning materials and appropriate methods of delivery.

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 carryout to complete their work, e.g., in the form of an assessed section of their coursework report.

Learning outcomes

LO1 - Demonstrate an understanding of programming concepts

LO2 - Analyse a requirements specification and provide a software design satisfying the requirements

LO3 - Apply object-oriented concepts to solve programming problems in software implementation and build graphical user interfaces

LO4 - Describe and utilise known techniques for documenting and testing software

LO5 - Critically evaluate and reflect on their learning, development and achievements within the context of program development

Bibliography