Usage- and Rationale-based Evolution Decision Support (URES)

For software evolution decisions developers need knowledge of the current and future deployment context as well as knowledge of the software and its development artifacts. Typically this knowledge is documented only partially and often only in unrelated fragments, and therefore it is not fully exploitable. In addition, the reasoning underlying the decisions made in previous releases can also change. Thus, it is an important challenge to ease the capture of this knowledge and to improve the comprehension of former decisions through lightweight, but structured documentation.

The vision of the URES project is to enable developers to reflect user behavior in evolution decisions and systematically document and exploit this decision knowledge. Therefore, we investigate the following research questions:

  • How can high-level user interactions be captured?
  • How to detect mistmatches between use case specifcations and user interactions?
  • How can detected mismatches be exploited (e.g., as indicators for software improvements and use case updates)?
  • Which decision-making strategies are applied in development practice?
  • How can decision knowledge be structured in a flexible way?
  • How can decision knowledge be captured with minimal additional effort?

To empirically validate this vision we will develop corresponding methods and tools and apply them both, to the CoCoME case study and within the UNICASE project.


Analysis of User Behavior, Comparison of Observed and Specified Behavior, Decisions, Knowledge Management, Rationale, Traceability, Use Case Detection, User Monitoring

Recent Publications