During the Academic Years 2009-2016, I was an assistant professor in the Department of Computer Science at Wayne State University. I earned a Ph.D. in Software Engineering from the School of Computer Science at Carnegie Mellon University. My former advisor is Professor Jonathan Aldrich. Before that, I worked in the industry as a software engineer.
I am interested in bringing a concrete architectural perspective to software development. I use software architectures, programming language type systems and program analysis techniques to help software architects and software engineers maintain intellectual control over the runtime architecture of their object-oriented systems, for the purpose of:
- Conformance: analyzing if the as-built architecture matches the as-designed one;
- Security: reasoning about vulnerabilities at the architectural level to find architectural flaws;
- Comprehension: helping developers to understand the system and make changes that respect the system architecture.
Please see my teaching page for the courses I taught.
- As of Aug. 2016, I am no longer a faculty member in the Department.
- Incoming students: I am not recruiting any new students.
View of downtown Detroit from the faculty offices on the 14th floor of the Maccabees Building at 5057 Woodward Avenue.