Software engineering - Sommerville, Ian (Pearson Education Limited, 2016)