Module Catalogues

C Programming and Software Engineering I

Module Title C Programming and Software Engineering I
Module Level Level 1
Module Credits 5.00

Aims and Fit of Module

Despite the popularity of newer languages such as C++ and Java the C language remains a core skill in the software business ranking in the top ten desired skills. 
C is one of the most popular languages for programming embedded systems that are found in automobiles, cameras, DVD players and many other modern appliances.
This module aims to enable students to:
Learn and use the C programming language
Use the C language to solve real engineering problems
Acquire fundamental software development skills covering program design, coding and testing

Learning outcomes

A. demonstrate knowledge and understanding of the basic principles of the C programming language;
B. demonstrate knowledge and understanding of the basic role and function of hardware and software components of a computer;
C. demonstrate knowledge and understanding of the software development process;
D. design, code, debug, test and document computer programs written in the ANSI C language to meet requirements supplied in a specification;
E. design modular programs following the top-down function-oriented approach.
F. analyse understand and modify existing code written in C;

Method of teaching and learning

This module is delivered as a two hour lecture and two hour practical session in the computer laboratory, each week. 
The concepts introduced during the lecture are illustrated using step-by-step analysis of example code, complete case studies and live programming tutorials.
Each week the students have to solve a set of exercises during the laboratory classes and submit the completed work electronically.
The students are assisted during the practical laboratory classes by demonstrators.