Software Architecture Homework!