Fundamentals of Software Engineering - Arbab, Farhad; Sirjani, Marjan; Sirjani, Marjan (Springer Berlin Heidelberg, 2013)