Supporting the CANCEL Command Through Software Architecture
December 2002 • Technical Note
This report, published in 2002, details the responsibilities that a system must implement to support command cancellation.
Software Engineering Institute
CMU/SEI Report Number
A system that supports the user's ability to cancel a command should be designed to achieve particular results. These results include the responses the system should make to the user, such as providing feedback to the user about the command's receipt, predicting the time the cancellation should take (for long-running cancellations), and indicating the state to which the system was returned after the completion of the cancellation. To support a cancellation command, a system should be designed so that the command is handled on a thread separate from that of the command being cancelled, the resources being used by the command being cancelled should be freed, and any processes collaborating with the command being cancelled should be informed of the cancellation. This note details the responsibilities that a system must implement to support command cancellation.