Module Code - Title:
CE4703
-
COMPUTER SOFTWARE 3
Year Last Offered:
2025/6
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
Research Findings Incorporated in to the Syllabus (If Relevant):
Prime Texts:
Dietel and Dietel (2007)
Java - How to Program, 7th ed
, Prentice hall
Cormen, T. H., Leiserson, C.E., Rivest, R. L., Stein (2001)
Introduction to Algorithms 2e
, MIT Press
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:
Semester(s) Module is Offered:
Module Leader:
Reiner.Dojen@ul.ie