Kamran Sartipi, Ph.D., P.Eng.
I have designed two new graduate courses where I broadly discuss my research topics; these courses are: (CAS 747) Software Architecture Modeling and Reverse Engineering; and (CAS 757): Modern Software Technology for eHealth. 
M.Sc. eHealth Program. I was one of three developers of a new graduate program among three faculties: Health Sciences, Engineering, and Business at McMaster University. I developed one of the three core-courses in this program: CAS 757.
Publications
Tools:
Professional Activities
Teaching
Graduate Students
(McMaster University)
Research Interests
(Click the links for details)
My research is on different aspects of software engineering, reverse engineering, web
systems, and knowledge management. In particular, I am interested in “models, techniques and
tools for developing and analyzing collaborative, smart, and interoperable SOA-based
information systems that incorporate mobile devices.” In this respect, I have
done research in the following fields: smart services, software system analysis and architecture
recovery, knowledge management and data mining, decision support systems, HL7 standard
information and semantic interoperability, work-flow analysis, data privacy and access control,
and utilization of mined-knowledge for decision making. I have also investigated hardware
systems including embedded systems, hardware software co-design, PBX switching systems, and
assembly coded micro-control systems. Recently, I have been working on the applications of software technology and middleware in electronic health (eHealth). For software reverse engineering, I worked on both static and dynamic analysis of software systems. Static analysis addresses the design and development of an
incremental software architecture recovery and evaluation environment using data
mining techniques. The environment is interactive and provides: pattern-based
architectural recovery using a query language and approximate graph pattern
matching; optimization clustering; partitioning; and view-based architectural design
evaluation. These techniques have been implemented within my Alborz toolkit. Dynamic analysis identifies the implementation of specific software
functionality within a software system without any prior knowledge about the source
code, known as feature localization, and is based on execution pattern mining and concept lattice analysis. Currently, we are expanding this approach
by applying it on the service oriented architecture (SOA) to measure the quality of
web services in service selection and composition. I have collaborated with researchers in Engineering, Health Sciences, and Business for several years.
Students (McMaster University):
Graduated Students (McMaster University):
Teaching
Winter
Winter
Alborz Tool-kit (On Refine Environment):
An Interactive Environment for Software Architecture Recovery and Evaluation