2001 · 14 citations · 10 references
ComputingComputer ScienceComputer SystemsFormal MethodsProgramming LanguagesSystems ArchitectureConsistency ModelsModel CheckingVersion ControlVersion Control SystemsAlgebraic SpecificationEncapsulationFormal ModelingUndoUndo MechanismsUndo StateUndo Systems
When a system is extended by adding undo, the original system behaviour should be preserved within the new extended system. In this paper a formal framework is established which considers the state of the system before and after the extension and captures the relationship between the layers in a structure we call conservative encapsulation or the cube. Alternative algebraic properties of undo and examples of two specific undo policies are formalised within this framework. The framework afforded by conservative encapsulation is not just suitable for undo, but can be used to study other forms of system extension such as history mechanisms.
10
Reusable hierarchical command objects
Brad A. Myers, David S. Kosbie · 1996 · 145 citations · Full text