Fundamentals of software engineering - Ghezzi, Carlo (Pearson Education, 2002)