Documenting Software Architectures: Views and Beyond (SEI Series in Software Engineering)
By Steve Eckols"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 develo
$12.00$51.00
PayPal & cryptocurrencyGuest checkout available
BETWEEN THE COVERS
About this book
"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-in other words, is not well documented-the project cannot be deemed a complete success. This revision of Documenting Software Architectures 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 use, maintain, and build 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 documentation for new architectural styles, such as service-oriented architectures, multi-tier architectures, and architectures for aspect-oriented systems Guidance oriented to documentation in an Agile development environment Deeper treatment of the systematic 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 Prologue: Software Architectures and Documentation Part I: A Collection of Software Architecture Styles Chapter 1: Module Views Chapter 2: A Tour of Some Module Styles Chapter 3: Component-and-Connector Views Chapter 4: A Tour of Some Component-and-Connector Styles Chapter 5: Allocation Views and a Tour of Some Allocation Styles Part II: Beyond Structure: Completing the Documentation Chapter 6: Beyond the Basics Chapter 7: Documenting Software Interfaces Chapter 8: Documenting Behavior Part III: Building the Architecture Documentation Chapter 9: Choosing the Views Chapter 10: Building the Documentation Package Chapter 11: Reviewing an Architecture Document Epilogue: Using Views and Beyond with Other Approaches Appendix A: UML-Unified Modeling Language Appendix B: SysML-Systems Modeling Language Appendix C: AADL-The SAE Architecture Analysis and Design Language