Module Code - Title:
CE4703
-
COMPUTER SOFTWARE 3
Year Last Offered:
2026/7
Hours Per Week:
Grading Type:
N
Prerequisite Modules:
CE4702
Rationale and Purpose of the Module:
To introduce the student to algorithms and dynamic data structures (e.g. queue, trees, and dynamic arrays).
Introduce software engineering practices, Flow diagrams and class diagrams.
Use good software practice to develop a significant application
Syllabus:
The following will be covered:
* Algorithms
* Growth of functions
* Data structures - Linked lists, Stacks, Queues and Red-Black Trees.
* Greedy Algorithms
* Hash functions and search minimisation techniques
* Class/Object unit testing
* Analysis of algorithms
* Case study/Project
Learning Outcomes:
Cognitive (Knowledge, Understanding, Application, Analysis, Evaluation, Synthesis)
1. Select an appropriate algorithm for a given application and understand the impact of the growth of functions.
2. Develop sophisticated algorithms to manage large amounts of data
3. Demonstrate the use of hash functions and search minimisation techniques
4. Use sophisticated software development environments to manage large projects
5. Demonstrate an understanding of the limitations of algorithms and NP-completeness
6. Develop a application that compares two algorithms application.
Affective (Attitudes and Values)
None
Psychomotor (Physical Skills)
None
How the Module will be Taught and what will be the Learning Experiences of the Students:
Lectures, Labs and software development projects
Prime Texts:
Cormen, T. H., Leiserson, C.E., Rivest, R. L., Stein (2001)
Introduction to Algorithms 2e
, MIT Press
Dietel and Dietel (2007)
Java - How to Program, 7th ed
, Prentice hall
Other Relevant Texts:
1 Liang, Y. D. (2007)
Introduction to Java Programming 6e
, Pearson
Malik DS and Nair PS (2006)
Java Programming, From Problem Analysis to Program Design (2e)
, Thompson
Programme(s) in which this Module is Offered:
BACHELOR OF ENGINEERING IN DIGITAL MECHATRONIC ENGINEERING
BACHELOR OF ENGINEERING IN ELECTRICAL ENGINEERING
BACHELOR OF ENGINEERING IN ELECTRONIC AND COMPUTER ENGINEERING
BACHELOR OF SCIENCE IN CYBER SECURITY
BACHELOR OF SCIENCE IN CYBER SECURITY AND IT FORENSICS
BACHELOR OF SCIENCE IN ELECTRONICS
BACHELOR OF SCIENCE IN MOBILE COMMUNICATIONS AND SECURITY
Semester(s) Module is Offered:
Module Leader:
Reiner.Dojen@ul.ie