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.
I am teaching:
- In Fall 2014, CSC 3200: Programming Languages and Software Design
- In Fall 2014, CSC 8110: Seminar in Software Engineering and Environments
- My Ph.D. student
successfully defended his Ph.D. dissertation.
His final dissertation is: Static Extraction of Dataflow Communication for Security.
Patent based on my Ph.D. dissertation work issued on Nov. 12, 2013 as US Patent 8584099, held jointly with my Ph.D. advisor, Jonathan Aldrich. The patent is titled: Apparatuses and methods for producing runtime architectures of computer program modules, and is assigned to Carnegie Mellon University.
- Full research paper with my Ph.D. student Radu Vanciu to appear at Automated Software Engineering (ASE) 2013. The acceptance rate for full research papers is 17%.
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.