The Agile Surface Engineering Group (ASE) at the University of Calgary conducts industry-oriented research on application engineering for digital surfaces, agile methods, and API design & usability.
ASE group projects fall under four broad and somewhat overlapping categories:
Innovative Software Applications
The ASE group works with several industrial partners to develop advanced prototypes of software applications. In addition to their inherent utility, the prototypes also serve as case studies for more philosophical questions about the field of software engineering, such as: "What is good software design?" or "How can we create complex systems in a simple way?"
APIs and Software Engineering Tools
Application programming interfaces (APIs) function as the basic elements of software system construction. They can be modified, enhanced, or redesigned with SE tools. The ASE team developes a number of APIs and tools.
By using iterative and incremental development techniques, software development becomes more flexible and is able to change rapidly to suit the requirements of a particular situation. The ASE group began to focus on agile methods in the late 1990s and is now one of the leading research groups in this area. Current research areas involve usability, reuse, and agile methods for cloud computing.
API Usability and Software Design
The ASE team is investigating what constitutes good software design by developing APIs and studying their usability.