Ode: A self-guided, scenario-based learning environment for object-oriented design principlesScott P. RobertsonJohn M. Carrollet al.1994ACM SIGPLAN Notices