DCU Home | Our Courses | Loop | Registry | Library | Search DCU
<< Back to Module List

Latest Module Specifications

Current Academic Year 2025 - 2026

Module Title Programming & Software Development for Engineers
Module Code EEG1002 (ITS: EM108)
Faculty Electronic Engineering School Engineering & Computing
NFQ level 8 Credit Rating 5
Description

The aim of the module is to develop familiarity with basic concepts and techniques of software engineering and apply them in the context of engineering problem solving using computer programmes. The basic notions of programming as well as concepts of compiling/interpretation and debugging will be introduced. A selection of simple programs will be developed first and then more complex programming issues will be introduced along with more complex programmes. The Python language is employed.

Learning Outcomes

1. demonstrate basic and more advanced programming skills
2. apply good style in writing, improving, and modularizing programs using the Python language
3. make use of functions and various structures to store and process data
4. solve quickly, creatively and efficiently complex problems
5. write programmes, test and debug them.
6. apply programming techniques for designing and creating engineering applications


WorkloadFull time hours per semester
TypeHoursDescription
Laboratory36No Description
Lecture24No Description
Independent Study65No Description
Total Workload: 125
Section Breakdown
CRN11861Part of TermSemester 1 & 2
Coursework0%Examination Weight0%
Grade Scale40PASSPass Both ElementsY
Resit CategoryRC1Best MarkN
Module Co-ordinatorGabriel MunteanModule Teacher
Assessment Breakdown
TypeDescription% of totalAssessment Date
Laboratory PortfolioRegular assignments, including a mid-course invigilated assignment and a problem-based learning assignment.50%Other
Formal ExaminationStudents are required to design a solution to real-life problems, write code and test them.50%End-of-Semester
Reassessment Requirement Type
Resit arrangements are explained by the following categories;
RC1: A resit is available for both* components of the module.
RC2: No resit is available for a 100% coursework module.
RC3: No resit is available for the coursework component where there is a coursework and summative examination element.

* ‘Both’ is used in the context of the module having a coursework/summative examination split; where the module is 100% coursework, there will also be a resit of the assessment

Pre-requisite None
Co-requisite None
Compatibles None
Incompatibles None

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

PART ONE

Introduction to programming. A minimal program. Interpretation. Execution. Debugging
Concept of identifiers. Keywords. Data: constants, and variables. Using variables. Data types: character strings, integers, rational numbers, logical values. Operators: Arithmetic, relational, logical, assignment. Operator precedence and associativity; parentheses. Expressions. I/O functions. Sequential evaluation. Programmes. The concept of flow of control. Sequential, conditional, and iterative statements. Python statements: assignment, if and match, for and while statements. Development Cycle: specification, algorithm design, coding, testing, debugging.

PART TWO

Functions. Functional Decomposition
Function definition and invocation. Parameters. Variable and parameter scope. Return value.

Strings. Basic data structures. Files. Modules
Engineering applications

Complex data structures: lists, sets, dictionaries, tuples
Create, add item, delete item, update data, search for items.

Indicative Reading List

Books:
  • Leonard J. Ledger: 0, "Python Programming For Beginners", Independent Publishing, 2022, ISBN 979-8354411122,
  • Y. Daniel Liang: 0, "Introduction to Python Programming and Data Structures", Pearson Education, 2022, ISBN 978-1292424125,
  • Eric Matthes: 0, "Python Crash Course: A Hands-On, Project-Based Introduction to Programming", 3rd Edition, No Starch Press, 2023, ISBN 978-1718502703,


Articles:
None
Other Resources

None

<< Back to Module List View 2024/25 Module Record for EM108