Software Architecture: Foundations, Theory, and Practice

Richard N. Taylor, Nenad Medvidovic, Eric M. Dashofy
Wiley, 2010

This comprehensive tome is, literally, the textbook for college-level introductory software architecture classes. As such, I consider it required reading for anyone who works, or aspires to work, as a software architect.

This book begins with the basics, defining software architecture and enumerating the discipline’s basic concepts. It expands into the design process, with separate chapters on modeling techniques, visualization (i.e., diagrams), and analysis. Further chapters discuss the specific challenges of mobile computing, the role of standards, domain-specific approaches, and more.

Two chapters are devoted to quality attributes. (In this text they are called "non-functional properties," but I prefer the term "quality attributes" from Software Architecture in Practice.) I have found the terms and definitions in this book endlessly useful in my work as teams struggle to talk precisely about concepts such as efficiency and dependability. If you are looking for a text that can give your architecture team a common grounding for such discussions, this is that book.

The authors do an admirable job of keeping a wide variety of architectural styles front-and-center. Most recent books on software architecture are really about cloud-based software, with a heavy focus on cloud-based services. That’s entirely fair, insofar as most software architects probably work on cloud-based software systems. But these are not the only systems that we build, and this is one of the few software architecture texts that devotes any time to architecture in areas such as robotics and sensor networks.

Last but not least, the book’s final chapter talks about the role of the software architect in teams and organizations. Ultimately, architects are people, and our effectiveness has as much to do with our ability to collaborate as with the strength of our designs. (This chapter includes a short but delightful section on "Bad Habits" that we will all do well to avoid.) The inclusion of this topic is further testament to the author’s comprehensive treatment of the subject.



© 2024 by Oliver Goldman