Pergunta de entrevista da empresa Continental

What approach should one use to design an "Undo-Redo" system?