Software AG interview question

classes and interfaces for Undo/redo functionality