CSU11E03 – Computer Engineering I

Module CodeCSU11E03
Module NameComputer Engineering I
ECTS Weighting[1]5 ECTS
Semester taughtSemester 2
Module Coordinator/s  Prof. Lucy Hederman

Module Learning Outcomes

On successful completion of this module, students will be able to:
LO1. Analyse simple programming problems
LO2. Specify and design algorithms to solve simple programming problems;
LO3. Write C++ programmes to solve simple programming problems;
LO4. Compile, run, test and debug C++ programmes;
LO5. Select and use correctly appropriate control structures for specific
programming sub-problems;
LO6. Recognise the value of procedural abstraction and be able to use
procedures to simplify programme design, hide detail and allow reuse of
LO7. Use arrays where appropriate in the design and implementation of a
LO8. Predict the behaviour of a given C++ program that uses the concepts and
constructs covered by the course.

Module Content

This module aims to equip students with the skills to design and develop simple
imperative programs. It provides a solid grounding in algorithm design and
programming techniques, in preparation for later courses that require
programming. Topics include

  • Introduction to computers and computing;
  • Programming, compiling and running programmes;
  • Basic C++ programmes; expressions, variables and data types, assignment;
  • Selection and the IF-ELSE statement;
  • Iteration, WHILE loops and FOR loops;
  • Programme design process, algorithms and pseudocode;
  • Advanced control flow: nested loops, nested Ifs;
  • Procedural abstraction, functions in C++;
  • Arrays and array algorithms.

Teaching and Learning Methods

Recorded content, interactive lectures & programming laboratories.

Assessment Details

Assessment ComponentBrief DescriptionLearning Outcomes Addressed% of totalWeek setWeek Due
Mid-semester TestOnline or in-lab real-time MCQ and/or programming test, 1.5 hours.LO1, LO2, LO3,
25week 6week 6
End-of-semester TestOnline or in-lab real-time MCQ and/or programming test, 2 hours.LO1, LO2, LO3,
LO5, LO6, LO7, LO8
Mini-quizzesWeekly online quizzes to be completed after review of each week’s online material5Each weekEach week
Coursework11 weekly programming exercises carried out during laboratory sessions. LO1, LO2,
LO3, LO4, LO5, LO6, LO7, LO8

Attendance at laboratory sessions, even where these may be online, is mandatory. Non-submission of either test or of fewer than 7 of the 11 weekly exercises will result in failure of the module. Otherwise the pass mark for the module is 40%.

Reassessment Details

Online or in-lab real-time 2 hour MCQ and programming test (100%) (TBC)

Contact Hours and Indicative Student Workload

Contact Hours (scheduled hours per student over full module), broken down by:55 hours
Lectures/Recorded lectures33 hours
Laboratory 22 hours
Independent study (outside scheduled contact hours), broken down by:55 hours
Preparation for classes, preparation for laboratories/assignments and
review of material
(including preparation for tests)
51 hours
Completion of tests4 hours
Total Hours110 hours

Recommended Reading List

C++ Programming: Program Design Including Data Structures, DS Malik, 8th edition,
Cengage Learning, ISBN 978-1-337-11756-2 (Older editions are acceptable)

Module Pre-requisites

Prerequisite modules: None.

Other/alternative non-module prerequisites: This module assumes a grasp of high school mathematics.

Module Co-requisites


Module Website