Software Engineering - Sommerville, Ian 1951- (Addison Wesley, 2001)