The Hypermedia Group of the Software Engineering Research Lab
(University of Colorado, Boulder, USA)
- People
-
- Kenneth M. Anderson (Prof.)
- Susanne A. Sherba
- William Van Lepthien
- Maha Faisal
- Description:
- The Hypermedia Group of the Software Engineering Research Lab of the Computer Science Deparment at the University of Colorado, Boulder is directed by Prof. Kenneth M. Anderson. It currently consists of three graduate students working on a number of hypermedia-related research projects and recently played host to a visiting graduate student from the Department of Software and Media Technology of Aalborg University Esbjerg. Dr. Anderson's group is looking at issues in the fields of open hypermedia, information integration, structural computing and requirements traceability.
- Projects:
- Chimera: Chimera is an open hypermedia system that has supported research on the issues of support for heterogeneity, application/infrastructure integration, integration with the WWW, and support for data scalability. Now in its fourth generation, it is being used to support the open hypermedia needs of the InfiniTe and TraceM projects.
InfiniTe: InfiniTe is a testbed for the investigation of issues surrounding the topic of information integration. Information integration is an approach to relationship management that supports two important tasks: discovering/creating relationships and maintaining/evolving sets of relationships over time. While Chimera concerns itself with navigational relationships between information, InfiniTe's focus is on the semantic relationships between information and it offers a framework that aids the construction of tools that can search for and create instances of these relationships in an information space. As reported in our ICSE 2002 paper, InfiniTe has initially been used to explore three different types of relationship management tasks. The first task involved discovering keyword-based relationships between software artifacts. The second task involved tracking module evolution relationships between multiple versions of an open source project. The third task involved discovering dependency relationships between software systems implementing W3C specifications and the specifications themselves. For instance, InfiniTe was able to discover key concepts of the DOM specification occurring in the source code of the Xerces parser, a DOM-based tool.
Themis: Structural computing is a new paradigm of computation that asserts the primacy of structure over data. The field of structural computing is working to produce a set of principles, techniques, and technologies to ease the task of developing domain-specific application infrastructure. In particular, a structure server is used to provide middleware services (creation, persistence, distribution, etc.) over a set of domain-specific structures and behaviors. Client applications can then be developed on top of this middleware. I and my graduate students have been exploring structural computing's relationship to software engineering via our Themis structural computing environment. Themis provides a structure server that implements a simple, but powerful, conceptual framework. We are using Themis as a testbed for investigating structural computing issues such as the support for structural templates and the ability to use formal type systems as a means to enable a wide range of behaviors over structures.
TraceM: TraceM is a project that is applying our work in structural computing, open hypermedia, and information integration to the problem of requirements traceability in software engineering. In particular, TraceM is a layer of services built on top of InfiniTe and Chimera that delivers requirements traceability services to a developer's fingertips. For instance, TraceM can ask InfiniTe to process a set of software artifacts and then ask Chimera to display any discovered relationships automatically. TraceM makes use of structural computing indirectly, since InfiniTe is hosted on top of a Themis structure server.
Automatic Link Discovery: This project is investigating techniques that can automate the discovery of semantic relationships among software artifacts. In particular, we are exploring how integrating machine learning techniques into InfiniTe integrators can increase InfiniTe's ability to discover relationships between multiple types of software documents (such as requirements documents, UML design diagrams, source code, test cases, mailing lists, etc.). We are developing a taxonomy of the types of relationships that exist between software artifacts and using this taxonomy as a means to guide the training of a decision tree classifier that will then be used to automatically detect these relationships on artifacts not in the training set. Since this classifier is implemented within the InfiniTe framework, all of its relationships immediately become available to the relationship management services of both InfiniTe and TraceM.
- Related Links:
- Lab Website
Chimera
InfiniTe
C: S Harper on 27 Nov 2003