module specification

CC5064 - Programming with Data (2022/23)

Module specification Module approved to run in 2022/23
Module title Programming with Data
Module level Intermediate (05)
Credit rating for module 15
School School of Computing and Digital Media
Total study hours 150
36 hours Assessment Preparation / Delivery
69 hours Guided independent study
45 hours Scheduled learning & teaching activities
Assessment components
Type Weighting Qualifying mark Description
Coursework 70% 40 Coursework - apply programming techniques in a real-world business problem (3000 words report with evidence of artefacts
Unseen Examination 30% 40 MCQ assessment to test the knowledge of programming principles of processing, manipulation and analysis of data.
Running in 2022/23

(Please note that module timeslots are subject to change)
Period Campus Day Time Module Leader
Autumn semester North Thursday Morning

Module summary

The module is designed to introduce data programming through various programming concepts related to data. The module covers data structures, selection, iteration, data input and output with error handling. In particular the module focuses on creating data science solutions for business applications. Programming language Python is integrated into the module practical element to prepare, analyse, process and present data science solutions.

  1. Students will gain knowledge and skills of the principles of data programming, design and coding.
  2. Develop programming skills for data manipulation and presentation.
  3. Develop skills to create data solutions for business applications using programming.
  4. Enhance skills for logical reasoning, problem solving and evaluation.

Prior learning requirements

CS4001 Fundamentals of Computing


1. Programming principles for data processing (e.g. Python: NumPy, Panda) LO1, LO4

  • Sequence, selection, iteration, Data structures, files, databases, error and exception handling, search, sort, recursion

2. Programming for data preparation, manipulation presentation (e.g. Python: Plotly Matplotlib, geopandas for geo-spatial data)

  • Data loading, storing, transformation, visualisation LO2, LO4 

3. Programming for Data analysis (e.g. Python: Scikit, Statsmodels): LO3, LO4

  • Descriptive (e.g. summarisation, clustering, association) and predictive statistics (e.g. classification and regression).

Balance of independent study and scheduled teaching activity

Topics will be introduced through the medium of formal lectures, supported by tutorial
and workshop sessions, and blended learning as follows:
- Lecture (1 hour / week):
Introduction of the major topics identified in the syllabus, plus practical exercises,
directed reading and other further studies
- Workshop (2 hour / week):
Programming technical skills will be further developed through lab-based
workshops. Specific practical exercises are set to support students and development of
skills with relevant libraries.
- Blended learning:
Using the University’s VLE and online tools to provide deliver content, assessment
and feedback, to encourage active learning, and to enhance student engagement
and learning experience.
Students will be expected and encouraged to produce reflective commen

Learning outcomes

[LO1] Demonstrate a sound understanding of programming principles for data processing.
[LO2] Present sufficient level of proficiency in problem identification, data preparation, manipulation and presentation in the context of defined data science scenario.
[LO3] Create well-constructed programmes with data analysis for business cases showing the judgement in the selection of libraries and techniques.
[LO4] Evidence logical reasoning, problem solving, and evaluation skills needed for high quality solutions.

Assessment strategy

The assessments of the module consist of a coursework of (70%) and 30% of a 1.5-hour unseen exam.
The coursework will provide students an opportunity to research on current issues, practical techniques in the programming for data science and its application in the real world [LO1, LO2, LO3, LO4]. It will also improve the application of reasoning, problem solving skills and evaluation skills.

The unseen examination will provide an opportunity for students to demonstrate their understanding of programming principles for data processing of the materials from the module and ability to apply these techniques to a given problem [LO1, LO2].


The link to the following books can be found on

  • Wes McKinney (2017) Python for Data Analysis: Data Wrangling with Pandas, NumPy, and IPython. O’Reilly Media. [CORE]
  • Paul J. Deitel and Harvey Deitel (2019) Intro to Python for Computer Science and Data Science: Learning to Program with AI, Big Data and The Cloud. Pearson. [CORE]
  • Jackson, C. (2014) Learning to program using Python. 2nd ed. CreateSpace Independent Publishing Platform
  • Fabio Nelli (2015) Python Data Analytics: Data Analysis and Science using PANDAs, matplotlib and the Python Programming Language, Apress