Teaching

Teaching

EEE 4701/5702 Automated Hardware/Software Verification

This course helps students develop modeling, formal specification, and automated verification skills for analyzing complex hardware and/or software systems. The course covers both the theory behind automated verification techniques and practical aspects of verification via hands-on experience with various automated verification tools and guest lectures by practitioners (Fall 2014, 2015, 2016). This course is open to both undergrads and grads.

EEL 4732/5733 Advanced Systems Programming

This course helps students develop a deep understanding of operating system concepts and systems programming fundamentals and gain hands-on experience in systems programming by using Pthreads and by implementing Linux device drivers and testing/verifying systems code for deadlock and race-freedom (Spring 2015, 2016, and 2017). This course is open to both undergrads and grads.