Preconditions, Postconditions, and Provisional Execution in Software Processes

Stanley M. Sutton · 1995

Preconditions and postconditions are widely used in execution models for software processes. The conditions that control software processes, however, can be complex and difficult to evaluate in the context of ongoing development activities. If evaluations and tasks are conducted in parallel, evaluations may be blocked for lack of access to data that are held by tasks. Conversely, task initiations and terminations may be blocked because their controlling conditions cannot be evaluated. Costly delays or even deadlocks may result. Potential conflicts between condition evaluations and process tasks can be reduced by a number of strategies, such as limiting the extent of conditions, or serializing evaluations and tasks. However, each of these strategies has its drawbacks (such as failure to capture full process semantics, or reduced process concurrency). This paper introduces a new strategy for condition-based process execution, specifically, provisional execution of process tasks. When it ...

Read the paper · More papers on PaperTik