Enter your mobile number below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.
Getting the download link through email is temporarily not available. Please check back later.

  • Apple
  • Android
  • Windows Phone
  • Android

To get the free app, enter your mobile phone number.

Software Architecture: Organizational Principles and Patterns 1st Edition

4.4 out of 5 stars 8 customer reviews
ISBN-13: 978-0130290328
ISBN-10: 0130290327
Why is ISBN important?
This bar-code number lets you verify that you're getting exactly the right version or edition of a book. The 13-digit and 10-digit formats both work.
Scan an ISBN with your phone
Use the Amazon App to scan ISBNs and compare prices.
Have one to sell? Sell on Amazon
Buy used On clicking this link, a new layer will be open
$5.99 On clicking this link, a new layer will be open
Buy new On clicking this link, a new layer will be open
$67.50 On clicking this link, a new layer will be open
More Buying Choices
17 New from $0.40 26 Used from $0.01 1 Collectible from $9.85
Free Two-Day Shipping for College Students with Prime Student Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student

ITPro.TV Video Training
Take advantage of IT courses online anywhere, anytime with ITPro.TV. Learn more.
$67.50 FREE Shipping. In Stock. Ships from and sold by Amazon.com. Gift-wrap available.
click to open popover

Editorial Reviews


The three authors do a good job of highlighting the dual aspect of the architect’s job. -- Alistair Cockburn, Humans and Technology, and author of Surviving Object-Oriented Projects

From the Inside Flap


Building software has almost always involved fitting together products and organizations as well as developing code. Software architecture is fundamental to both activities, especially today. For example, an ordinary business transaction will traverse many layers of software architecture, leveraging shared platforms such as the Internet, client browsers, Web servers, business logic components, security systems, and back-end databases. In this environment, many partners must not only agree on a core set of interfaces and standards, but they must also agree on how to use those standards. Partners must also agree on the value they will add and receive for their contribution. All these agreements must remain workable and stay in place in the face of rapid changes in technologies, re-alignments of partners, shifts in business goals and requirements, as well as the ever-present mergers and acquisitions. If these agreements do not remain in place, the product and its architecture may fail, causing pain for developers and customers, as well as their managers and sponsors.

This book focuses on the interrelationship between software architecture and the organization. Software architecture serves as a framework that defines and orders not only the technical interactions needed to develop and implement a product, but also group and personal interactions. The ability of software architecture to fulfill this role over time relies on organizational factors.

It has long been observed that the structures of architectures and the organizations that build and use them influence one another. A close look reveals an extensive and complex relationship. Real-life architecture often is far removed from the intended structure, including hidden chunks of software, odd connections, hard-coded Òshortcuts,Ó missing pieces, and other irregularities. The same types of surprises come from an organizationÕs culture, its people, their beliefs, abilities, and behaviors. In practice, architecture and organization form a sensitive and highly volatile matrix. Done right, organization and architecture can deliver great value; failure can melt the core of the enterprise.

We have written this book to help people who have a critical stake in the success of software architecture understand and overcome the challenges of architecture and organization. These stakeholders form a large interdependent group that is getting larger as software products cross more organizational boundaries in their development and use. This group includes people who manage, develop, implement, maintain, acquire, and use software architecture. Each stands to benefit from a better understanding of how software architecture and organization interact. For example, partnering skills can decrease the time it takes for developers to find out about changes to a release of an architecture or platform, and increase the chances that they can negotiate to restore features that are critical to their continuing use of the architecture. Without these skills, the architect would soon lose customers; the customers would soon be maintaining a lot more code and creating a lot less product.

Our book is based on more than five years of research within some of the countryÕs best-known large-scale software development organizations and numerous workshops, as well as our work architecting product lines and implementing architectures for small, medium, and very large organizations. We also drew on work in other disciplines, especially organizational development. Our research yielded a model composed of five organizational principles that affect software architecture successÑVision, Rhythm, Anticipation, Partnering, and Simplification (VRAPS). We call this the VRAPS Model.

Together, the VRAPS principles provide a model you can use to get your arms around what to do and to improve your personal and corporate ability to get lasting value from products and ventures that depend on software architecture. The VRAPS model will help you to organize and interpret your observations and relate them to practices and patterns that others have used successfully. You can also use the model and principles to identify strengths and weaknesses, to communicate insights, and to encourage actions across roles, boundaries, and levels within and external to your organization.

You can take several paths through our book:

You can get a quick overview of the book in Chapter 1. Then go to Chapter 8 to find a case study that illustrates how the VRAPS principles worked within Allaire Corporation, as it grew from a small startup to become a leading provider of tools for building Internet applications.

You can find out more about each VRAPS principle in Chapters 3 through 7. After defining and describing the principle, these chapters provide criteria to help you gauge how well your organization applies the principle. Patterns, stories, and antipatterns provide practical guidance about what to do and what not to do to benefit from the principle.

You can get a detailed understanding of the VRAPS model and how it relates to other work in Chapter 2. Chapter 9 provides a real-world illustration of how to use the model, along with nine specific templates, tools, and guidance you can use to assess your organization and compare it with others. We describe how the templates were used in a commercial benchmark.

We invite you to read on and visit our Web site at VRAPS.David M. Dikel
David Kane
James R. Wilson


New York Times best sellers
Browse the New York Times best sellers in popular categories like Fiction, Nonfiction, Picture Books and more. See more

Product Details

  • Paperback: 320 pages
  • Publisher: Prentice Hall; 1 edition (January 7, 2001)
  • Language: English
  • ISBN-10: 0130290327
  • ISBN-13: 978-0130290328
  • Product Dimensions: 7 x 0.7 x 9.2 inches
  • Shipping Weight: 1.1 pounds (View shipping rates and policies)
  • Average Customer Review: 4.4 out of 5 stars  See all reviews (8 customer reviews)
  • Amazon Best Sellers Rank: #2,291,762 in Books (See Top 100 in Books)

Customer Reviews

Top Customer Reviews

Format: Paperback
Not quite sure what to expect when I started the book, I was pleasantly surprised. The book explores 5 principles behind Software Architecture; namely Vision, Rhythm, Anticipation, Partnering, and Simplification; or VRAPS for short. Not only will you learn these principles, but you'll get an introduction to patterns and antipatterns as well. Yet it is not a "How To" on Software Architecture.
Much of the book is devoted to VRAPS. After a few introductory chapters, each principle is defined, explained, and then illuminated with criteria, antipatterns and patterns.
Chapter 8 introduces a case study, based upon a well known Internet company. Allaire's jouney through each principle is discussed, including successful practices and warning signs.
Chapter 9 is added for completeness. It presents a case study about building and implementing a benchmark framework for VRAPS. The authors surveyed many organisations in compiling this book, and their results are published here in a summary form.
The book is rounded off with useful Appendixes. One provides a quick reference principles, criteria, antipatterns and patterns, the other is an index of patterns and antipatterns cross-referenced to principles. Overall I found the book to be well structured and well organised - and not too hard too read.
This is the third book I've read from the Software Architecture Series, and the most practical and useful so far. This book should go far in establishing a basic process for Software Architecture that is both theoretical and practical.
Comment 21 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
Format: Paperback
This book attempts to provide a unified theory of software architecture, their VRAPS (Vision, Rhythm, Anticipation, Partnering, Simplification) methodology. While the basic approach is reasonably sound, in order to prove their case, the authors delve into the highly speculative field of organizational patterns and antipatterns to provide justification for their model.
The book is divided into three parts. The first deals with and overview of the VRAPS model and the last deals with a presentation of its application in the context of the situation at Allaire. Both of these sections are fine. It is the middle portion, which attempts to "prove" the validity of their model with reference to object-oriented patterns, which stretches the credulity of the reader. The authors even admit that you can skip the chapters where these patterns are presented. Putting them in only serves to detract from the other meaningful chapters of their work.
Object-oriented analysis was developed to solve abstract problems in reusable code paradigms. Previously unknown to me, a group of eager souls has tried to extend this metaphor into the realm of individual and group psychology, with no attempts to provide an empirical basis for their efforts. Whimsical patterns such as "Antigravity Module," "Drop Pass," and "Loan Shark" are relied upon to produce a catalog of objectivist modes of development behavior.
Why a methodology with no basis in psychology is supposed to answer complex issues of organizational behavior is beyond me. Could anyone conceivably apply theories of database normalization or compiler design and hope that they would help you to manage your employees better?
Read more ›
Comment 15 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
Format: Paperback
Anyone who is caught up in the real world of software development knows that most books on the subject talk about what should happen and not so much what could and most likely will happen. That is, real people work in real organizations and, for example, dependencies between groups of people can slow things down or in other ways hamper the development progress. Dikel, et al, do a great job defining patterns and anti-patterns and their overiding principles. This book is a great guide for software development Project Managers who could use guidance when planning a project and when the going gets rough.
Comment 15 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
Format: Paperback
*Software Architecture: Organizational Principles and Patterns* is an important read both for architects and their managers. It is a very readable, even entertaining, discussion of the interplay between a technical architecture, the organization responsible for it, and the processes used to develop and maintain it.
While there are a number of good books on the technical aspects of developing, documenting, evaluating, and using architectures, this book by Dikel, Kane and Wilson is one of the few that offers insight into how technically superior architectures can fail, inferior architectures can succeed, and even the best architectures can deteriorate if not properly managed.
The principles and patterns described in the book derive from several case studies, two of which are reported in the book. A third case study, in which the principles were originally described, was published separately as "Applying Software Product-line Architecture," IEEE Computer, August, 1997. The authors of this original study, which included Dikel, Kane, Wilson, Bill Loftus and myself, developed the principles in an effort to predict the success or failure of software architectures for large telecommunications systems.
A good companion read is Grady Booch's *Object Solutions : Managing the Object-Oriented Project*,Addison-Wesley, 1995.
For more about me see my web site, [...]
Comment 2 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse

Set up an Amazon Giveaway

Software Architecture: Organizational Principles and Patterns
Amazon Giveaway allows you to run promotional giveaways in order to create buzz, reward your audience, and attract new followers and customers. Learn more about Amazon Giveaway
This item: Software Architecture: Organizational Principles and Patterns
Pages with Related Products. See and discover other items: computer programs