- COMP6452 Software Architecture for Blockchain Applications
- CS5102 IT Policy and Planning
- CS5114 E-Commerce: Principles and Infrastructure
- CS5122 Descriptive and Predictive Analytics
- CS5192 Skills for Research Project
- CS5202 Advanced Operating Systems
- CS5214 Principles of Operating Systems
- CS5225 Parallel and Concurrent Programming
- CS5242 Software Development on Cloud Platforms
- CS5312 High-Performance Computer Architecture
- CS5406 Performance Engineering of Computer Systems
- CS5429 Distributed Computing
- CS5440 Wireless Access Networks
- CS5442 Pervasive Computing
- CS5701 Advanced Algorithms
CS5122 Descriptive and Predictive Analytics
- Course outline
- Slides
- Introduction to Descriptive & Predictive Analytics
- Cluster Analysis
- Dimension Reduction
- Regression Analysis
- Time Series Analysis & Forecasting
- Machine Learning
- Project
- Exam Papers
CS5202 Advanced Operating Systems / CS5214 Principles of Operating Systems
- Course outline
- Slides
- Roles of Operating Systems
- Threads
- Process Synchronization
- CPU Scheduling
- Main memory
- Virtual memory
- Real-time systems
- Labs/Projects
- Exam Papers
CS5225 Parallel and Concurrent Programming (UoM)
- Course outline
- Slides
- Introduction to Concurrent & Parallel Programming
- How Much Parallelism?
- Basic Constructs – I
- Basic Constructs – II
- Shared Memory Programming with Pthreads
- Introduction to Accelerators
- Concurrent Programming Patterns
- Solution Patterns for Parallel Programming
- Distributed Memory Programming with MPI
- Embarrassingly Parallel Problems
- Map-Reduce Programming with Hadoop
- Hard to Parallelize Problems
- Concurrent Data Structures
- Labs
- Exam papers
CS5429 Distributed Computing
- Course outline
- Slides
- Labs/Projects
- Exam Papers
CS5440 Wireless Access Networks
- Course outline
- Slides
- Labs/Projects
- Exam Papers