Prerequisites:COS122 and COS212
Computer science courses mostly deal with sequential programs. This module looks at the fundamentals of concurrency; what it means, how it can be exploited, and what facilities are available to determine program correctness. Concurrent systems are designed, analysed and implemented.
Data abstraction is a fundamental concept in the design and implementation of correct and efficient software.