Engineering Design in Computing – Semester 1, 2015
- Assignment 1: Hotel Booking System. Stores information about hotel bookings provided in a particular format.
- Assignment 2: Flight Scheduler. Implements A* to solve a travelling-salesman-style problem with a consistent heuristic.
- Lab 2: Classes and Inheritance.
- Lab 3: Preconditions and Postconditions. Includes JUnit tests.
- Lab 4: Object-Oriented Design. Enrolment system. Includes JUnit tests.
- Lab 5: Generic Types and Polymorphism. Generic set implemented using ArrayLists. Includes JUnit tests.
- Lab 6: Basic Search Algorithms. Depth-first search and breadth-first search on the Romania map using a generic graph implementation. Includes JUnit tests.
- Lab 7: Problem Solving Algorithms. A* search on the Romania map using straight-line distance heuristic.
- Lab 10: Composite and Decorator Design Patterns. Includes JUnit tests.
- Lab 11: Concurrency. Thread-safe wrap-around queue.
Includes questions from and solutions to the labs.