Lehrstuhl für Angewandte Softwaretechnik


Applied Software Engineering

[ Home | People | Lectures & Praktika | FoPras & Diplomarbeiten | Projects | How to find us | Services | Send your comments ]

Integrating use case specification and rationale capture

In collaboration with:

Goal

Develop an integrated process, guidance, and dedicated tool support for capturing and negotiating requirements and their rationale under realistic cost and time constraints.

Problem

Requirements specifications fall short of capturing other useful information generated during the requirements engineering process, such as the justification for selected requirements, trade-offs made by stakeholders, and alternative requirements that were discarded. In the context of evolving systems and distributed development, this information, called rationale, is essential, as many stakeholders are involved in the development and many of them will not be available when changes occur. Rationale, however, is rarlely captured because:

  • It is difficult to elicit rationale information.
  • It is costly to maintain rationale information as requirements and systems evolve.
  • It requires the training of many participants.
  • It is perceived as a long term investment.

Approach

We assume that

  1. an integrated tool and accompanying guidance can significantly lower the initial cost of capturing rationale,
  2. a specialized rationale broker role can, within reasonable constraints, structure and filter the captured rationale for future use.

To test and refine these assumptions, we follow an experimental approach in which we incrementally develop a process, its associated tool and guidance, and evaluate them, initially in student project courses, and progressively in increasingly more realistic situations.

Accomplishments so far

So far, we have accomplished the following:

  • We integrated two existing techniques, use case specification and rationale capture in the form of QOC (Questions, Options, and Criteria) and focused on the activities where these two techniques interact, justification, review, and consolidation.
  • We developed a first version of REQuest, a tool providing integrated support for both techniques.
  • We developed a toy example, a SuperMarket checkout, for training new users, along with a tutorial lecture.
  • We evaluated the tool for rationale capture in the context of a software engineering project course, several seminars at TUM ( e.g., RE seminar 2000/01, DR seminar 2001), and a requriements engineering lecture at the University of Kaiserslautern.
  • We have been improving both the process and the tool as a result of these case studies. In particular, we introduced a taxonomy of questions and further refined our model of non-functional requirements.

Our next evaluation is planned in the context of the global software engineering praktikum during the winter semester 2001/02 during which we plan to investigate the use of rationale knowledge during testing and/or system and detailed design. We plan to release the tool after the winter evaluation under an open source license.

Contributors

Daniela Ahlisch (HiWi)
Kagan Aksit (Diplomarbeit)
Allen Dutoit (Researcher)
Barbara Paech (Researcher, Fraunhofer IESE)
Timo Wolf (SEP)

Publications

A.H. Dutoit, B. Paech
Rationale Management in Software Engineering.
In S.K.Chang (Ed.)Handbook of Software Engineering and Knowledge Engineering. World Scientific, To appear in 2001.

A.H. Dutoit, B. Paech
Developing Guidance and Tool Support for Use Case-Based Specification.
7th International Workshop on Requirements Engineering: Foundation for Software Quality. (REFSQ'2001). Interlaken, Switzerland, June 2001. (REFSQ'2001 Program)

A.H. Dutoit, B. Paech
Supporting Evolution: Using Rationale in Use Case Driven Software Development.
6th International Workshop on Requirements Engineering: Foundation for Software Quality. (REFSQ'2000), Stockholm, June 2000. (REFSQ'2000 Program)

K. Aksit
Designing and Implementing a Robust Issue Server.
Diplomarbeit. Technische Univeristät München. Feburary 2000. (pdf)

[ Home | People | Lectures & Praktika | FoPras & Diplomarbeiten | Projects | How to find us | Services | Send your comments ]