home · mobile · calendar · colloquia · 2004-2005 · 

Colloquium - Anderson

Automating Requirements Traceability for Large-Scale Software Development
Department of Computer Science

A bane of large-scale software development is the task of requirements traceability, i.e., managing the relationships that exist between the multiple types of software artifacts created during a typical software life cycle. It is extremely easy for artifacts to become out-of-date or inconsistent with each other since developers rarely have the time to keep their requirements and design artifacts consistent with rapidly evolving code. Such inconsistencies can lead to problems such as missed requirements, inadequate implementation of a software design, incomplete test coverage, and the like. Indeed this situation has led to a practice in recent software life cycles, such as Extreme Programming, to abandon or greatly minimize the creation of requirements, design, and documentation artifacts! While this leads to "light weight" development at first, it can have significant costs later in the life cycle when the management of the software is transferred from its development team to its users and/or maintainers.

To address this problem, my research has been designing and developing a set of techniques and technologies that are beginning to ease the task of maintaining the semantic relationships between a large set of heterogeneous software artifacts. In particular, we have developed a prototype environment for automating many tasks associated with requirements traceability, such as the ability to discover and create traceability relationships and to track their evolution over time. Our approach is based on a set of "structure-aware" technologies including open hypermedia, information integration, and structural computing, that provide a powerful infrastructure for building requirements traceability tools.

In this talk, I will present the software architecture and services of our requirements traceability environment, TraceM, that is built on top of three structure-aware systems developed as part of my research of the past six years: the Chimera open hypermedia environment, the InfiniTe information integration environment, and the Themis structural computing environment. As a result of using these technologies, TraceM's code is relatively compact and written at a high-level of abstraction. I will conclude the talk with a vision of where requirements traceability research is headed and how it can evolve to support today's modern software development life cycles.

Kenneth Anderson is an assistant professor in the Computer Science Department at the University of Colorado Boulder. Dr. Anderson conducts research in the software engineering and hypermedia fields. He is a member of ACM and is currently serving as the Vice Chair of the ACM Special Interest Group on Hypermedia and the Web (SIGWEB).

Department of Computer Science
University of Colorado Boulder
Boulder, CO 80309-0430 USA
May 5, 2012 (14:13)