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
code;
LO7. Use arrays where appropriate in the design and implementation of a
programme;
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
Weekly programming11 weekly programming exercises carried out during laboratory sessions.All20Each teaching week.
Weekly mini-quizzesWeekly online quizzes to be completed after review of each week’s materialLO1, LO2, LO5, LO6, LO7, LO85Each teaching week.
Mid-semester testIn-person real-time test.LO1, LO2, LO510Week 6
End-of-semester examIn-lab real-time exam.LO1, LO2, LO3, LO5, LO6, LO7, LO8
65In exam period

Attendance at laboratory sessions 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

In-lab real-time 2 hour exam (100%)

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)
52 hours
Completion of tests3 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

None

Module Website

Blackboard