The Software Technologies Applied Research (STAR) laboratory
is a practice-oriented software engineering research laboratory,
located in the
Department
of Electrical and Computer Engineering,
University
of Waterloo, Canada. Our overall objective is to design
and implement new methodologies and tools to develop software
systems with a higher quality in a cost-effective manner.
Automated software development is a key to improve programmer
productivity, product quality, reduced maintenance costs,
and enhanced application performance. Our research group
is investigating ways to realize practical, domain-specific
component-based design methodologies for large scale application
synthesis.
Our research activities reflect two complementary themes:
a scientific approach to understand complex software systems,
and an engineering focus on the ability to control, modify,
and design such software systems. This spans the topics
of: program understanding, reverse engineering, feature-oriented
software designs, extensible software systems (software
that is easy to extend in order to match the customized
needs of application requirements), adaptive software systems
(software that reconfigures itself periodically to maximize
performance), software architectures (building customized
applications from components), and object-oriented design
patterns.