DCU Home | Our Courses | Loop | Registry | Library | Search DCU

Module Specifications..

Current Academic Year 2023 - 2024

Please note that this information is subject to change.

Module Title Software Development for Engineers
Module Code EM108
School School of Electronic Engineering
Module Co-ordinatorSemester 1: Gabriel-Miro Muntean
Semester 2: Gabriel-Miro Muntean
Autumn: Gabriel-Miro Muntean
Module TeachersGabriel-Miro Muntean
NFQ level 8 Credit Rating 5
Pre-requisite None
Co-requisite None
Compatibles None
Incompatibles None
The resit assessment consists of a complex assignment which covers most material from the lab sessions and problem-based learning assignment and the same learning outcomes. The resit exam is similar with that in the Summer examination.

The aim of the module is to develop familiarity with basic concepts and techniques of software engineering in C. The notion of a programming language will be introduced, as well as compiling and debugging issues. A selection of simple C programs will be developed first and then more complex programming issues will be introduced along with more complex programs.

Learning Outcomes

1. demonstrate basic and more advanced programming skills
2. apply good style in writing, improving, and modularizing programs using the C language
3. make use of functions, arrays, structured data types and pointers
4. solve quickly, creatively and efficiently complex problems
5. write programs, test and debug them.
6. apply programming techniques for building engineering applications

Workload Full-time hours per semester
Type Hours Description
Laboratory36No Description
Lecture24No Description
Independent Study65No Description
Total Workload: 125

All module information is indicative and subject to change. For further information,students are advised to refer to the University's Marks and Standards and Programme Specific Regulations at: http://www.dcu.ie/registry/examinations/index.shtml

Indicative Content and Learning Activities


Introduction to programming. A minimal C program. Translation. Execution. Translation time defects. Execution time defects. Basic programming concepts. Structure of a C source file (translation unit). Introduction to C syntax. Identifiers
Concept of identifiers. Identifier uniqueness. Syntax of identifiers in C programs. Reserved identifiers in C (keywords). Conventions and guidelines on identifier usage. Data: Concepts of data type, constants, and variables. Types int, double, char. Declaring variables. Data types for character strings, integer and rational numbers, logical values. Operators: Arithmetic, relational, logical, assignment. Expressions: Forming expressions. Introduction to I/O functions and I/O redirection. The C standard library. Sequential evaluation. Operator procedence and associativity; parentheses. Programs: Skeleton structure of a C program: the main function. Declarations and statements. Sequential, conditional, and iterative statement execution. The concept of flow of control. Types of statements: expression, if, if-else and switch statements. Compound statement. Iteration: the for and while statements. Development Cycle: Specification. Algorithm design. Coding. Compilation and linkage. Testing: selection of test cases. Exception handling. Debugging.


Functions. Functional Decomposition
Function definition and invocation. Parameters. Passing by value versus passing by reference. Variable scope.

Arrays. Strings. Structures. Files.
Engineering applications

Pointers. Lists.
Add, delete, search for items.

Assessment Breakdown
Continuous Assessment40% Examination Weight60%
Course Work Breakdown
TypeDescription% of totalAssessment Date
Laboratory PortfolioAssignments every two weeks, including a problem-based learning assignment in mid semester40%Every Second Week
Reassessment Requirement Type
Resit arrangements are explained by the following categories;
1 = A resit is available for all components of the module
2 = No resit is available for 100% continuous assessment module
3 = No resit is available for the continuous assessment component
This module is category 1
Indicative Reading List

  • Deitel et al: 0, Recommended & Reference Texts:1) Harvey Deitel, Paul Deitel, "C How To Program", Fourth Edition, Prentice Hall, Pearson Education, 2003, ISBN 013122543X2) Brian Kernighan, Dennis Ritchie, "C Programming Language", Second Edition, Prentice Hall, Pearson Ed,
  • Deitel et al: 2003, C How To Program, 4, Prentice Hall, 013122543X
Other Resources

Programme or List of Programmes
BMEDB.Eng. in Biomedical Engineering
CAMB.Eng. Mechanical & Manufacturing Eng
CECommon Entry into Engineering
ECEBEng Electronic & Computer Engineering
HDEATH.Dip Engineering Analysis & Technology
MEB.Eng. in Mechatronic Engineering
SSEBEng in Mechanical & Sustainability Eng
Date of Last Revision12-MAR-07

My DCU | Loop | Disclaimer | Privacy Statement