I am an assistant professor in the Department of Computer Science at Wayne State University (WSU). I obtained a Ph.D. in Software Engineering from the School of Computer Science at Carnegie Mellon University (CMU). 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.
I am interested in better understanding and securing existing legacy code that has high business value. I do not ask developers to throw away their investment and rewrite their existing code in a new programming language or to use some new code generation development environment.
Please see my teaching page for the courses I taught.
- See what I am teaching!
Contact InformationDepartment of Computer Science
Wayne State University
5057 Woodward Avenue
14th Floor, Suite 14110
Detroit, MI 48202
Direct Phone: (313) 577-2831
Shared Fax: (313) 577-6868
View of downtown Detroit from the faculty offices on the 14th floor of the Maccabees Building at 5057 Woodward Avenue.