Home > Store > Programming > Web Services/ XML/ SOA/ WebSphere/ WCF

larger cover

Add To My Wish List

Documenting Software Architectures: Views and Beyond, 2nd Edition

Register your product to gain access to bonus material or receive a coupon.

  • Description
  • Extras
  • Reviews
  • Sample Content

Product Author Bios

The authors are senior members of technical staff at Software Engineering Institute (SEI). Paul Clements’ areas of interest include architecture selection, evaluation, representation, and documentation; and software product lines. Paulo Merson draws on 18+ years’ software engineering experience to contribute to SEI’s Software Architecture Technologies (SAT) and Predictable Assembly from Certifiable Components (PACC) initiatives. Felix Bachmann, team lead for architecture-centric product line practices, co-authored the Attribute-Driven Design Method. Len Bass has written two award-winning books on software architecture. He now develops techniques for methodical software architecture design.

“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

Customer Reviews

11 of 11 people found the following review helpful
5.0 out of 5 stars The Best Just got Better...., October 25, 2010
By 
T. Anderson (PA USA) - See all my reviews
(VINE VOICE)    (TOP 1000 REVIEWER)    (REAL NAME)   
Amazon Verified Purchase(What's this?)
This review is from: Documenting Software Architectures: Views and Beyond (2nd Edition) (Hardcover)
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... Read more
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


3 of 3 people found the following review helpful
5.0 out of 5 stars Continues to impress, May 29, 2011
By 
Bob Savage (Watertown, MA United States) - See all my reviews
Amazon Verified Purchase(What's this?)
This review is from: Documenting Software Architectures: Views and Beyond (2nd Edition) (Hardcover)
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... Read more
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


1 of 1 people found the following review helpful
5.0 out of 5 stars Practical and understandable, July 6, 2011
This review is from: Documenting Software Architectures: Views and Beyond (2nd Edition) (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... Read more
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


Share your thoughts with other customers:
 See all 12 customer reviews...

Online Sample Chapter

Prologue: Software Architectures and Documentation

Table of Contents

About the Cover xxi

Foreword to the Second Edition xxiii

Foreword to the First Edition xxv

Preface xxix

Acknowledgments xxxiii

Reader’s Guide xxxv

 

Prologue: Software Architectures and Documentation 1

P.1: A Short Overview of Software Architecture 1

P.2: A Short Overview of Architecture Documentation 9

P.3: Architecture Views 22

P.4: Architecture Styles 25

P.5: Seven Rules for Sound Documentation 36

P.6: Summary Checklist 45

P.7: Discussion Questions 46

P.8: For Further Reading 47

 

Part I: A Collection of Software Architecture Styles 49

I.1: Three Categories of Styles 49

I.2: Style Guides: A Standard Organization for Explaining a Style 50

I.3: Choosing Which Element and Relation Properties to Document 52

I.4: Notations for Architecture Views 53

I.5: Examples 54

 

Chapter 1: Module Views 55

1.1: Overview 55

1.2: Elements, Relations, and Properties of Module Views 56

1.3: What Module Views Are For 59

1.4: Notations for Module Views 60

1.5: Relation to Other Views 63

1.6: Summary Checklist 63

1.7: Discussion Questions 64

1.8: For Further Reading 64

 

Chapter 2: A Tour of Some Module Styles 65

2.1: Decomposition Style 65

2.2: Uses Style 74

2.3: Generalization Style 82

2.4: Layered Style 87

2.5: Aspects Style 104

2.6: Data Model 109

2.7: Summary Checklist 120

2.8: Discussion Questions 120

2.9: For Further Reading 121

 

Chapter 3: Component-and-Connector Views 123

3.1: Overview 123

3.2: Elements, Relations, and Properties of C&C Views 126

3.3: What C&C Views Are For 136

3.4: Notations for C&C Views 139

3.5: Relation to Other Kinds of Views 148

3.6: Summary Checklist 150

3.7: Discussion Questions 151

3.8: For Further Reading 152

 

Chapter 4: A Tour of Some Component-and-Connector Styles 155

4.1: An Introduction to C&C Styles 155

4.2: Data Flow Styles 157

4.3: Call-Return Styles 161

4.4: Event-Based Styles 172

4.5: Repository Styles 178

4.6: Crosscutting Issues for C&C Styles 182

4.7: Summary Checklist 185

4.8: Discussion Questions 186

4.9: For Further Reading 187

 

Chapter 5: Allocation Views and a Tour of Some Allocation Styles 189

5.1: Overview 189

5.2: Deployment Style 191

5.3: Install Style 198

5.4: Work Assignment Style 202

5.5: Other Allocation Styles 206

5.6: Summary Checklist 213

5.7: Discussion Questions 213

5.8: For Further Reading 214

 

Part II: Beyond Structure: Completing the Documentation 215

 

Chapter 6: Beyond the Basics 217

6.1: Refinement 218

6.2: Descriptive Completeness 222

6.3: Documenting Context Diagrams 225

6.4: Documenting Variation Points 231

6.5: Documenting Architectural Decisions 239

6.6: Combining Views 250

6.7: Summary Checklist 258

6.8: Discussion Questions 259

6.9: For Further Reading 260

 

Chapter 7: Documenting Software Interfaces 261

7.1: Overview 261

7.2: Interface Documentation 265

7.3: A Standard Organization for Interface Documentation 271

7.4: Stakeholders of Interface Documentation 278

7.5: Conveying Syntactic Information 279

7.6: Conveying Semantic Information 280

7.7: Examples of Interface Documentation 281

7.8: Summary Checklist 285

7.9: Discussion Questions 286

7.10: For Further Reading 286

 

Chapter 8: Documenting Behavior 289

8.1: Beyond Structure 289

8.2: How to Document Behavior 290

8.3: Notations for Documenting Behavior 295

8.4: Where to Document Behavior 306

8.5: Why to Document Behavior 306

8.6: Summary Checklist 308

8.7: Discussion Questions 309

8.8: For Further Reading 311

 

Part III: Building the Architecture Documentation 313

 

Chapter 9: Choosing the Views 315

9.1: Stakeholders and Their Documentation Needs 316

9.2: A Method for Choosing the Views 326

9.3: Example 329

9.4: Summary Checklist 335

9.5: Discussion Questions 335

9.6: For Further Reading 335

 

Chapter 10: Building the Documentation Package 337

10.1: Documenting a View 337

10.2: Documentation Beyond Views 350

10.3: Documenting a Mapping to Requirements 357

10.4: Packaging the Architecture Documentation 362

10.5: Summary Checklist 372

10.6: For Further Reading 373

 

Chapter 11: Reviewing an Architecture Document 375

11.1: Steps of the Procedure 376

11.2: Sample Question Sets for Reviewing the Architecture Document 382

11.3: An Example of Constructing and Conducting a Review 393

11.4: Summary Checklist 395

11.5: Discussion Questions 396

11.6: For Further Reading 396

 

Epilogue: Using Views and Beyond with Other Approaches 399

E.1: ISO/IEC 42010, née ANSI/IEEE Std 1471-2000 400

E.2: Rational Unified Process/Kruchten 4+1 406

E.3: Using the Rozanski and Woods Viewpoint Set 408

E.4: Documenting Architecture in an Agile Development Project 414

E.5: U.S. Department of Defense Architecture Framework 419

E.6: Where Architecture Documentation Ends 428

E.7: A Final Word 429

E.8: For Further Reading 429

 

Appendix A: UML—Unified Modeling Language 431

A.1: Introduction 431

A.2: Documenting a Module View 433

A.3: Documenting a Component-and-Connector View 438

A.4: Documenting an Allocation View 443

A.5: Documenting Behavior 449

A.6: Documenting Interfaces 460

 

Appendix B: SysML—Systems Modeling Language 465

B.1: Architecture Documentation 466

B.2: Requirements 466

B.3: Documenting a Module View 468

B.4: Documenting a Component-and-Connector View 469

B.5: Documenting an Allocation View 470

B.6: Documenting Behavior 471

B.7: Documenting Interfaces 472

B.8: Summary 472

 

Appendix C: AADL—The SAE Architecture Analysis and Design Language 473

C.1: Introduction 473

C.2: Documenting a Module Style 475

C.3: Documenting a Component-and-Connector View 478

C.4: Documenting a Deployment View 481

C.5: Documenting Behavior 482

C.6: Documenting Interfaces 484

C.7: Summary 484

 

Acronyms 487

Glossary 491

References 497

About the Authors 509

About the Contributors 513

Index 517

Sample Pages

Download the sample pages (includes Prologue and Index)

 
Best Value

Book + eBook Bundle  $121.98  $74.19

Book Price $55.99
eBook Price $18.20
eBook formats included

Buy

This book includes free shipping!

Buy

Book  $69.99  $55.99

Usually ships in 24 hours.

This book includes free shipping!

Buy

eBook (Watermarked)  $51.99  $41.59

Includes EPUB, MOBI, and PDF
About eBook Formats

This eBook includes the following formats, accessible from your Account page after purchase:

ePubEPUBThe open industry format known for its reflowable content and usability on supported mobile devices.

MOBIMOBIThe eBook format compatible with the Amazon Kindle and Amazon Kindle applications.

Adobe ReaderPDFThe popular standard, used most often with the free Adobe® Reader® software.

This eBook requires no passwords or activation to read. We customize your eBook by discretely watermarking it with your name, making it uniquely yours.

Purchase Reward: One Month Free Subscription
By completing any purchase on InformIT, you become eligible for an unlimited access one-month subscription to Safari Books Online.

Get access to thousands of books and training videos about technology, professional development and digital media from more than 40 leading publishers, including Addison-Wesley, Prentice Hall, Cisco Press, IBM Press, O'Reilly Media, Wrox, Apress, and many more. If you continue your subscription after your 30-day trial, you can receive 30% off a monthly subscription to the Safari Library for up to 12 months. That's a total savings of $199.