Supporting process undo and redo in software engineering decision making

Supporting process undo and redo in software engineering decision making
复制标题

支持软件工程决策中的流程撤消和重做

DOI:
--
复制
发表时间:
2013
期刊:
International Conference on Software and Systems Process
影响因子:
--
通讯作者:
L. Osterweil
L. Osterweil
中科院分区:
--
文献类型:
--
作者:
Xiang Zhao;Yuriy Brun;L. Osterweil

文献摘要

被引文献

相似文献

本文提出了一种基于起源的方法,支持撤销和重做的软件工程师。编写软件需要创建和重新处理错综复杂的软件工件。在发现早期完成的任务中的错误后,开发人员可能希望重做此任务,但不撤消此后完成的大部分工作。不幸的是,实践中的撤消和重做机制迫使开发人员手动重做自错误发生以来已完成的工作。这可能会导致相当多的额外工作,而且往往容易出错。 我们建议跟踪软件工程过程起源数据,并使用它来实现(1)通过恢复过程执行的状态来撤消任务,(2)在存储未撤消任务的起源的同时重新访问旧任务,以及(3)自动重做与修订一致的未撤消任务。我们对一个开发人员进行了一个很好理解但很复杂的重构的案例研究,展示了我们的方法如何大大减少早期犯下但后来发现的错误的成本。
This paper presents a provenance-based approach for supporting undo and redo for software engineers. Writing software entails creating and reworking intricately intertwined software artifacts. After discovering a mistake in an earlier-completed task, a developer may wish to redo this task, but without undoing much of the work done since. Unfortunately, state-of-the-practice undo and redo mechanisms force the developer to manually redo the work completed since the mistake. This can cause considerable extra, often error-prone work. We propose tracking the software engineering process provenance data, and using it to enable (1) undoing tasks by reverting the state of the process execution, (2) revisiting an old task while storing the provenance of undone tasks, and (3) automatically redoing those undone tasks that are consistent with the revision. Our case study of a developer performing a well-understood but complex refactoring demonstrates how our approach can greatly reduce the cost of mistakes made early but discovered late.