CS357: Software Verification
CS240: Operating Systems, Communications and Concurrency
CS335: Software Engineering and Software Process & CS264: Software Design
CS355: Theory of Computation & CS370: Computation and Complexity & CS310: Programme Languages and Compilers
CS265: Software Testing
CS220 & CS253: Computer Architecture
CS210 & CS211: Algorithms and Data Structure