Continuous Usage- and Rationale-based Evolution Decision Support (CURES)

Continuous software engineering (CSE) has emerged as an approach to develop, release and learn from software in short, rapid cycles. This supports developers during software evolution through enhanced user involvement based on rapid and continuous user feedback and through tool support for development, delivery, and change of feature increments.

CURES aims to extend this approach through innovative methods for user understanding, decision capture integrated with the feature increments, and exploitation of usage and rational knowledge for software evolution.

The overall vision of CURES is continuous usage and rationale-based software engineering where

  • developers continuously deliver feature-based increments of software to users and knowledge to (fellow) developers.
  • developers continuously reflect the user behavior and user feedback in their evolution decisions. After every feature release, user behavior is monitored and new user feedback is captured. This run-time knowledge is semi-automatically analyzed, visualized, and related to the corresponding feature and other knowledge so that necessary changes to the software can be identified and incorporated in future releases.
  • developers continuously reflect both design-time and run-time knowledge in their evolution decisions and in particular the rationale of decisions made for previous increments. Naturalistic and rational developer decisions and their related knowledge are captured in a lightweight process through annotations in the corresponding artifacts (code, issues/work items) and through semi-automatic support. This decision knowledge is semi-automatically analyzed and visualized to support knowledge exploitation during evolution, in particular for impact analysis.

In order to empirically underline this vision, we study how continuous software engineering is currently used in industry. To empirically validate this vision, we develop corresponding methods and tools and apply them in the CoCoME case study and in complex student projects with industry customers.

History

CURES is part of the DFG priority programme 1593. The URES project is continued with a focus on evolution in the context of continuous delivery and on the exploitation of the knowledge.

Keywords

Continuous Software Engineering, Continuous Integration, Continuous Delivery, User Behavior, User Understanding, User Monitoring, User Feedback, Decision Management, Knowledge Management, Rationale Management

Recent Publications

more...