CSE373: Data Structures & Algorithms Lecture 19: Software Design Interlude – Preserving Abstractions Aaron Bauer Winter 2014.