Fundamentals of Software Engineering - Mehdi Dastani, Marjan Sirjani (Springer, 2017)