Page 1 of 1

Module Code - Title:

CE4703 - COMPUTER SOFTWARE 3

Year Last Offered:

2026/7

Hours Per Week:

Lecture

2

Lab

2

Tutorial

0

Other

6

Private

0

Credits

6

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