EQUIS Group Logo


[ Publications | EQUIS Lab | Equites | Wiki | STL ]

EQUIS Lab

This is the archived EQUIS Lab home page. For newer information, please look here.

The EQUIS Lab conducts research on how software engineering can contribute to the design and development of more usable computer systems.

For more information, see the EQUIS Lab Bibliography, the list of group members and the Equis Wiki.

Current Projects

IconWorkspace Model: This is an architectural model supporting the design and development of interactive systems involving multiple users collaborating via heterogeneous computing devices. The novel aspects of the workspace model are its support for runtime evolution of the structure of the interactive system, and its principled refinement from conceptual to implementation architecture. Two implementations of the workspace model are ongoing, one in C++ and one in Python.

IconSoftware Design Board: This tool supports the collaborative work of software engineers. The novel aspect of the software design board is its support for transitions between different styles of work: from asynchronous to same-time collaboration, from brainstorming to formal work, and from one location to another. The design of the software design board was based on ethnographic study of six development teams at IBM. The software design board implementation was based on the use of architectural tactics for groupware systems.

IconModel-Based Testing of Collaborative Systems: Systems allowing groups of people to collaborate over a distance are notoriously difficult to test, as they involve the interaction of numerous components distributed over a network. This project attempts to use formal models of critical parts of collaborative systems to automatically generate runtime tests to validate correct operation over time. This project is joint work with Juergen Dingel and Namzak Labs.

IconComputer-Aided Exercise: The goal of this research is to investigate whether it is possible to combine video games, an activity that many children love, with beneficial exercise. There are two primary components to this work: to ascertain whether it is possible to develop compelling and entertaining computer games with an exercise component, and to determine whether such games are good exercise that will improve the health of children who play them.

Earlier Projects

Clock: Clock is a programming language supporting the development of distributed, multimedia groupware systems. This project investigated software architecture for groupware systems and implementation techniques for distributed multiuser applications. The project showed how visual programming can be a useful technique in developing and refining software architectures for multiuser, multimedia systems, and that pure functional programming is a very powerful notation for scripting user interface prototypes.

Rosetta: This project led to the development of a process-neutral tool for object-oriented analysis and design. Rosetta was constructed using a web-based architecture, allowing easy access to design documents by distributed members of a project team. Rosetta featured both static and dynamic checkers that validated the conformance of implementations to their UML designs. Rosetta is joint work with Arthur Ryman of the IBM Toronto Software Solutions Laboratory.

Vista: Vista is a visual environment that helps link the differing perspectives of user interface designers with software engineers. Designers and engineers could use Vista to view links between design artifacts such as task models, scenario descriptions, software architectures and task-oriented specifications. The Adligo tool was used to semi-automatically generate links between existing design artifacts. Vista was joint work with Judy Brown of Victoria University of Wellington, New Zealand.

EQUIS

The name of the lab is derived from the Latin eques, referring to a Roman cavalryman or knight.


[ Publications | EQUIS Lab | Equites | Wiki | STL ]