Explore UCD

UCD Home >

EEEN20010

Academic Year 2024/2025

Computer Engineering (EEEN20010)

Subject:
Electronic & Electrical Eng
College:
Engineering & Architecture
School:
Electrical & Electronic Eng
Level:
2 (Intermediate)
Credits:
5
Module Coordinator:
Professor Mark Flanagan
Trimester:
Autumn
Mode of Delivery:
On Campus
Internship Module:
No
How will I be graded?
Letter grades

Curricular information is subject to change.

This module provides a comprehensive foundation in computer programming using the medium of the C programming language. It covers basic programming concepts common to all programming languages (such as data types and expressions, flow of control, file I/O) as well as advanced features of the C language such as pointers and multidimensional arrays. More advanced synthetic data structures are also covered, including linked lists and stacks. An introduction to algorithmic complexity analysis is provided, using sorting algorithms as an illustration. The module has a strong laboratory component as students are provided with a structured set of programming exercises to guide them through the concepts covered in lectures. The programming exercises require students to design their own algorithmic solutions as well as to program their solutions in C.

Specific topics covered include:

* Types, operators and expressions
* Basic input/output
* Flow of control
* Functions
* The C preprocessor
* Arrays, pointers and strings
* User-defined types
* Structures
* File handling
* Program organisation
* Elementary data structures
* Sorting algorithms
* Analysis of algorithms

About this Module

Learning Outcomes:

On successful completion of this module, a student will be able to:

1. Write a program to solve a specific problem
2. Use basic tools common to software engineering such as compiling and linking of multiple source files into a single executable
3. Recognise and interpret the purpose of a piece of C code
4. Carry out an analytical comparison of the computational complexity of two algorithms which solve the same problem
5. Use advanced data structures such as linked lists and stacks.

Student Effort Hours:
Student Effort Type Hours
Lectures

30

Computer Aided Lab

12

Specified Learning Activities

18

Autonomous Student Learning

60

Total

120


Approaches to Teaching and Learning:
Classes will explain C programming concepts and show illustrative examples of these concepts in action. In class we will also work through specific problems of problem solving through programming. There will be an emphasis on developing the key skill of breaking a problem into smaller parts, developing an algorithmic solution to the problem, and then finally translating that solution into software. Comprehensive electronic notes will be provided, and many extra worked examples and problems will be solved in class.

Requirements, Exclusions and Recommendations
Learning Recommendations:

It is strongly recommended that students have some prior experience of computer programming such as would be provided by module COMP10060 "Computer Science for Engineers".


Module Requisites and Incompatibles
Not applicable to this module.
 

Assessment Strategy
Description Timing Component Scale Must Pass Component % of Final Grade In Module Component Repeat Offered
Quizzes/Short Exercises: In-class test. This will take place in person during a class period. Week 12 Alternative linear conversion grade scale 40% No
25
No
Assignment(Including Essay):
Lab Programming Assignments
Week 2, Week 3, Week 4, Week 5, Week 6, Week 7, Week 8, Week 9, Week 10, Week 11 Alternative linear conversion grade scale 40% No
50
No
Quizzes/Short Exercises: In-class Brightspace Quiz. This will take place in person during a class period. Week 8 Alternative linear conversion grade scale 40% No
25
No

Carry forward of passed components
Yes
 

Resit In Terminal Exam
Spring Yes - 2 Hour
Please see Student Jargon Buster for more information about remediation types and timing. 

Feedback Strategy/Strategies

• Feedback individually to students, post-assessment

How will my Feedback be Delivered?

There will be 3 programming assignments throughout the trimester. For each assignment, individual-level feedback will be provided as well as the overall grade for each submission. For the in-class Brightspace quiz, high-level feedback at class level will be provided in lectures. The in-class test is a summative assessment and thus no feedback will be provided apart from the grade for this particular assessment component.

Name Role
Sajedeh Aghababaei Tutor
Ms Zhe Cui Tutor
Yixin Deng Tutor
Mr Cian Kelly Tutor

Timetabling information is displayed only for guidance purposes, relates to the current Academic Year only and is subject to change.
Autumn Lecture Offering 1 Week(s) - Autumn: All Weeks Fri 14:00 - 14:50
Autumn Lecture Offering 1 Week(s) - 1, 2, 3, 4, 5, 6, 7, 9, 10, 11, 12 Mon 11:00 - 11:50
Autumn Lecture Offering 1 Week(s) - Autumn: All Weeks Tues 11:00 - 11:50
Autumn Computer Aided Lab Offering 1 Week(s) - 2, 3, 5, 6, 9, 10 Thurs 15:00 - 16:50
Autumn Computer Aided Lab Offering 2 Week(s) - 2, 3, 5, 6, 9, 10 Fri 15:00 - 16:50