Documenting Software Architectures: Views and Beyond and over one million other books are available for Amazon Kindle. Learn more
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See all 2 images
Sell yours for a Gift Card
We'll buy it for $27.27
Learn More
Trade in now
Have one to sell? Sell on Amazon

Documenting Software Architectures: Views and Beyond (2nd Edition) Hardcover – October 15, 2010

ISBN-13: 978-0321552686 ISBN-10: 0321552687 Edition: 2nd
Buy new
Used & new from other sellers Delivery options vary per offer
52 used & new from $45.34
Rent from Amazon Price New from Used from
"Please retry"
Hardcover, October 15, 2010
"Please retry"
$45.34 $45.48

Hero Quick Promo
Save up to 90% on Textbooks
Rent textbooks, buy textbooks, or get up to 80% back when you sell us your books. Shop Now
$61.11 FREE Shipping. In Stock. Ships from and sold by Gift-wrap available.

Frequently Bought Together

Documenting Software Architectures: Views and Beyond (2nd Edition) + Software Architecture in Practice (3rd Edition) (SEI Series in Software Engineering) + Software Systems Architecture: Working With Stakeholders Using Viewpoints and Perspectives (2nd Edition)
Price for all three: $167.14

Buy the selected items together

Editorial Reviews

From the Back Cover

“This new edition is brighter, shinier, more complete, more pragmatic, more focused than the previous one, and I wouldn't have thought it possible to improve on the original. As the field of software architecture has grown over these past decades, there is much more to be said, much more that we know, and much more that we can reflect upon of what's worked and what hasn't—and the authors here do all that, and more.

—From the Foreword by Grady Booch, IBM Fellow


Software architecture—the conceptual glue that holds every phase of a project together for its many stakeholders—is widely recognized as a critical element in modern software development. Practitioners have increasingly discovered that close attention to a software system's architecture pays valuable dividends. Without an architecture that is appropriate for the problem being solved, a project will stumble along or, most likely, fail. Even with a superb architecture, if that architecture is not well understood or well communicated the project is unlikely to succeed.


Documenting Software Architectures, Second Edition,provides the most complete and current guidance, independent of language or notation, on how to capture an architecture in a commonly understandable form. Drawing on their extensive experience, the authors first help you decide what information to document, and then, with guidelines and examples (in various notations, including UML), show you how to express an architecture so that others can successfully build, use, and maintain a system from it. The book features rules for sound documentation, the goals and strategies of documentation, architectural views and styles, documentation for software interfaces and software behavior, and templates for capturing and organizing information to generate a coherent package. New and improved in this second edition:


  • Coverage of architectural styles such as service-oriented architectures, multi-tier architectures, and data models
  • Guidance for documentation in an Agile development environment
  • Deeper treatment of documentation of rationale, reflecting best industrial practices
  • Improved templates, reflecting years of use and feedback, and more documentation layout options
  • A new, comprehensive example (available online), featuring documentation of a Web-based service-oriented system
  • Reference guides for three important architecture documentation languages: UML, AADL, and SySML

About the Author

Paul Clements is a Senior Member of the Technical Staff at the Carnegie Mellon Software Engineering Institute (SEI), where he has worked since 1994 leading or coleading projects in software product-line engineering and software architecture documentation and analysis. Besides this one, Clements is the coauthor of two other practitioner-oriented books about software architecture: Software Architecture in Practice (Addison-Wesley, 1998; Second Edition 2003) and Evaluating Software Architectures: Methods and Case Studies (Addison-Wesley, 2001). He also cowrote Software Product Lines: Practices and Patterns (Addison-Wesley, 2001) and was coauthor and editor of Constructing Superior Software (Sams, 1999). In addition, Clements has authored dozens of papers in software engineering, reflecting his longstanding interest in the design and specification of challenging software systems. In 2005 and 2006 he spent a year as a visiting faculty member at the Indian Institute of Technology in Mumbai. He received a Ph.D. in computer sciences from the University of Texas at Austin in 1994. He is a founding member of the IFIP Working Group on Software Architecture (WG2.10).


Felix Bachmann is a Senior Member of the Technical Staff at the SEI, working in the Architecture Centric Engineering Initiative. He is coauthor of the Attribute-Driven Design Method, a contributor to and instructor for the ATAM Evaluator Training course, and a contributor to the book Software Architecture in Practice, Second Edition. Before joining the SEI, he was a software engineer at Robert Bosch GmbH in corporate research, where he worked with software development departments to address the issues of software engineering in small and large embedded systems.


Len Bass is a Senior Member of the Technical Staff at the SEI. He has coauthored two award-winning books in software architecture as well as several other books and numerous papers in a wide variety of areas of computer science and software engineering. He has been a keynote speaker or a distinguished lecturer on six continents. He is currently working on applying the concepts of ultra-large-scale systems to the smart grid. He has been involved in the development of numerous different production or research software systems, ranging from operating systems to database management systems to automotive systems. He is a member of the IFIP Working Group on Software Architecture (WG2.10).


David Garlan is a Professor of Computer Science and Director of Software Engineering Professional Programs in the School of Computer Science at Carnegie Mellon University (CMU). He received his Ph.D. from CMU in 1987 and worked as a software architect in industry between 1987 and 1990. His interests include software architecture, self-adaptive systems, formal methods, and cyber-physical systems. He is considered to be one of the founders of the field of software architecture and, in particular, formal representation and analysis of architectural designs. In 2005 he received a Stevens Award Citation for fundamental contributions to the development and understanding of software architecture as a discipline in software engineering.


James Ivers is a Senior Member of the Technical Staff at the SEI, where he works in the areas of software architecture and program analysis. He received a Master of Software Engineering from CMU in 1996 and has worked for and with a variety of development organizations, from start-up to multinational corporations. He has written numerous papers, contributed to the development of an international standard for distributed simulations, and has recently been working in a public-private collaboration to draft security recommendations for the smart grid.


Reed Little is a Senior Member of the Technical Staff at the SEI. He applies more than 35 years of experience in computer simulation, software architecture, software product lines, man-machine interface, artificial intelligence, and programming language design to various aspects of applied research and hands-on customer assistance for large (more than three million lines of code) software systems.


Paulo Merson has more than 20 years of software development experience. He works for the SEI in the areas of software architecture, service-oriented architecture, and aspect-oriented software development. He is also a practicing software architect in industry. One of his assignments at the SEI is to teach a two-day course in “Documenting Software Architectures” for industry and government practitioners. His speaking experience also includes tutorials at various conferences, such as SD Best Practices, Dr. Dobb’s Architecture & Design World, and JavaOne. Prior to joining the SEI, he was a Java EE consultant. Paulo holds a B.Sc. in Computer Science from University of Brasilia, and a Master of Software Engineering from CMU.


Robert Nord is a Senior Member of the Technical Staff in the Research, Technology, and System Solutions Program at the SEI, where he works to develop and communicate effective methods and practices for software architecture. He is coauthor of the practitioner-oriented book Applied Software Architecture (Addison-Wesley, 2000) and lectures on architecture-centric approaches. He is a member of the IFIP Working Group on Software Architecture (WG2.10).


Judith Stafford is a Senior Lecturer at Tufts University and a Visiting Scientist at the SEI. Before joining the faculty at Tufts University, she was a Senior Member of the Technical Staff at the SEI in the Product Lines Systems Program, working in the Software Architecture Technologies Initiative. She has authored several book chapters on the topic of software architecture analysis, software architecture support for software component composition, and software architecture documentation. Stafford has been an organizer and program committee member for several conferences and workshops, and a guest editor on several leading software engineering journal special issues. She received her Ph.D. and M.S. degrees in Computer Science from the University of Colorado at Boulder. She is a member of the IEEE Computer Society, ACM SIGSOFT and SIGPLAN, and the IFIP Working Group on Software Architecture (WG2.10).


Shop the New Digital Design Bookstore
Check out the Digital Design Bookstore, a new hub for photographers, art directors, illustrators, web developers, and other creative individuals to find highly rated and highly relevant career resources. Shop books on web development and graphic design, or check out blog posts by authors and thought-leaders in the design industry. Shop now

Product Details

  • Hardcover: 592 pages
  • Publisher: Addison-Wesley Professional; 2 edition (October 15, 2010)
  • Language: English
  • ISBN-10: 0321552687
  • ISBN-13: 978-0321552686
  • Product Dimensions: 6.3 x 1.4 x 9.4 inches
  • Shipping Weight: 2.1 pounds (View shipping rates and policies)
  • Average Customer Review: 4.5 out of 5 stars  See all reviews (17 customer reviews)
  • Amazon Best Sellers Rank: #179,769 in Books (See Top 100 in Books)

More About the Authors

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

4.5 out of 5 stars
Share your thoughts with other customers

Most Helpful Customer Reviews

14 of 15 people found the following review helpful By T. Anderson VINE VOICE on October 25, 2010
Format: Hardcover Verified Purchase
This book is the bible of documenting software architectures. It is a mandatory read for all software architects. It should also be read by the various stakeholders who have invested in a software architect so they have some idea about what their investment should be accomplishing.

This version includes a lot of new content. It includes new architectural styles for SOA, database models, and multi-tier architectures.

The authors have expanded the epilogue which is the comparison of Views and Beyond to other documenting approaches. It now includes comparisons to ISO/IEC 42010 - ANSI/IEEE Std 1471-2000, the RUPs 4+1, Rozanski and Woods Viewpoint Set, agile projects, and DoDAF.

The book now includes 3 appendixes. One on UML, SysML, and AADL. Each is an overview of the language.

They have improved templates based on experience gained since the first version of the book.

The book's example is now on line. It documents a Web-based service-oriented system.

This book shows you how to communicate with your stakeholders and how to address quality attribute requirements like no other book out there. I am not saying it is the best book out there, I am saying it accomplishes what it tries to teach. It creates a view of a great method of documenting architecture. It then provides a cross reference with some other great methods of documenting software architecture in the epilogue I mentioned above.

It is a must read for any architect that takes there job serious. It will add a wealth of knowledge to your arsenal of tools.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
2 of 2 people found the following review helpful By Randy Rice on July 6, 2011
Format: Hardcover
As a software tester, I rely heavily on system documentation. Unfortunately, documentation is often missing, obsolete, or never created in the first place.

Also, I have a great appreciation for software architects and the work they produce. As a former developer, I used to struggle with the best ways to express system architecture diagrams. After all, there are so many methods available to document systems - UML being a major one, but there are others.

When I started reading this book, I was struck by its practicality, beautiful simplicity, and integration between authors. Everything I read in this book is written in a clear and understandable way. The authors understand that different audiences will read this book, so they give graphical (of course) guidance in which chapters are most applicable to architects, stakeholders and novices.

This book covers the basics, such as module views and module styles, component and connector views, allocation views and styles. Part two of the book goes beyond the basics and gets into issues regarding levels of detail, deciding among alternatives, documenting interfaces and documenting behavior. Part three is devoted to building the architecture documentation.

There are appendices devoted to UML, SysML and AADL to show how architectural documentation is shown in each of these.

It would be tempting to say that this book is needed for new technologies, such as SOA and the cloud, which is true, but too narrow. Actually, this book can be applied to any technology or approach - traditional, agile, iterative, or anything. That's because the one thing people ask for and struggle with is documentation. This is especially true for architectural documentation.

Read this book and apply the things in it and you will stand out on projects - in a good way. And, of course, that's a good thing!
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
1 of 1 people found the following review helpful By Perpetual Dreamer on April 13, 2012
Format: Hardcover Verified Purchase
Some of us have been practicing software modeling since the early days of Rational Rose (about 20 years ago!) And still we find this business of describing a system's architecture to be vexing. Just give us some rules! Ah, but it's not so simple. Our job as architects and designers is not to just fill out a template. It's to wrap our brains around requirements, ponder solutions, innovate, and sort it all out for ourselves and others. This book feels like modeling 5.0 or something like that. It's an evolutionary next step in the art and craft of communicating software architectures. Paul Clements and team have done a good job of proposing a framework for exploring and communicating designs. It's kind of easy to remember (three views). Yet they recognize that this problem doesn't have a formulaic solution. I might complain that the book doesn't actually work through a complete example--rather, it is rich with tiny examples of each view and style. The comprehensive example is online. Based on personal experience, I might add that this approach needs the support of modern presentation techniques. Audiences--even highly technical ones--may not warm up to a purely views-based presentation. All in all, I highly recommend this book to all software practitioners.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again
3 of 4 people found the following review helpful By Bob Savage on May 29, 2011
Format: Hardcover Verified Purchase
This is one of those books about which it is difficult to say enough good things. I found the first edition very influential on my on thinking to say nothing of enlightening. Impressively, the authors have improved this second edition, for example moving the comprehensive sample documentation online, thus making room for more of the lucid and rational explanation of documentation practices that made the first edition so useful.

I usually include a discussion of who would benefit from a reading in my reviews. Anybody who thinks they might be producers or consumers of software architecture documentation owes it to themselves to get a copy of this book now. Others might think they have no need for this book, but still should read it. This includes Business Analysts, who, this book makes clear, are stakeholders of software architectures. BAs will also their thinking sharpened on how to develop useful documentation and use graphical notation in a precise and meaningful fashion.

This book is on my short list of classics of software engineering. It is a book I return to often. Reading this second edition, even after being fully familiar with the first, was still a richly satisfying experience. I cannot recommend this book enough.
Comment Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback. If this review is inappropriate, please let us know.
Sorry, we failed to record your vote. Please try again

Most Recent Customer Reviews

Set up an Amazon Giveaway

Amazon Giveaway allows you to run promotional giveaways in order to create buzz, reward your audience, and attract new followers and customers. Learn more
Documenting Software Architectures: Views and Beyond (2nd Edition)
This item: Documenting Software Architectures: Views and Beyond (2nd Edition)
Price: $61.11
Ships from and sold by