homework 5 - still needs use cases