homework 2 of software engineering