CS 5331 Software Engineering A treatment of advanced topics in the area of software engineering including formal techniques for design, verification, and specification of software systems. Other topics include testing, security, analysis of algorithms, program synthesis and simulation. This course will include advanced logic programming techniques as well as an in-depth study of semantics of Prolog, more advanced logic programming systems, and deductive databases. The study of multiple processes executing in parallel. Formal methods of concurrency.
Hardware architectures for concurrency.
A review of process synchronization, deadlocks and memory allocation paradigm, followed by in depth coverage of distributed systems, computer security and queuing theory. Advanced topics of contemporary interest in Computer Science. May be repeated for credit when topic varies. CS 5391 Individual Studies Individual variable-credit research, design or analysis on advanced phases of Computer Science problems conducted under the direct supervision of a faculty member. A maximum of 3 credit hours may be applied towards the M.S. degree.