Fundamentals of Software Engineering - Arbab, Farhad (Springer Berlin Heidelberg, 2010)