course design of software design class