A software architect's digest of core practices, pragmatically applied Designing effective architecture is your best strategy for managing project complexity-and improving your results. But the principles and practices of software architecting-what the authors call the "science of hard decisions"-have been evolving for cloud, mobile, and other shifts. Now fully revised and updated, this book shares the knowledge and real-world...