Public profile
Research areas
Computer Architecture, Operating Systems, Virtualization, Memory Systems, Networking
Computer Science
Director, Professional Programs
Professor of Computer Science and of Electrical and Computer Engineering
Average rating
4.2
7 temporary mock ratings
Difficulty
2.7
course-linked average
Courses
3
in seeded sections
Computer Architecture, Operating Systems, Virtualization, Memory Systems, Networking
COMP 318
Modern software systems are typically complex, event-driven, and require coordination across multiple components. Such systems require careful design to ensure that they uphold best practices in software design while supporting concurrency. This course will introduce principles of designing large-scale concurrent software and give students practice implementing these principles in the context of large-scale, highly concurrent software systems. Topics covered will include concurrency vs. parallelism, concurrency concepts and mechanisms, and principles of software design including encapsulation, composition, decoupling, and accessibility. Mutually Exclusive: Cannot register for COMP 318 if student has credit for COMP 310.
COMP 590
Advanced theoretical and experimental investigations under staff direction. The student must have a full-time internship to receive 4 credits for this course. Repeatable for Credit.
COMP 800
Repeatable for Credit.