Command pattern with undo / redo UML model of the pattern usage Source of diagram in /command.plantuml