Software engineering - Sommerville, Ian, 1951- (Addison-Wesley; Pearson Education, 2004)