In Chapter 1, we introduced the ABC as the unifying theme of this book. We exemplified and elaborated this cycle throughout the book and have tried to convey some of the principles of architectural creation, representation, evaluation, and development along the way. If the study of software architecture is to have stamina, there must be areas of research that create a more mature field, with results that can be transitioned into practice. In this context, we can now identify and discuss four different versions of the ABC that appear to have particular promise in terms of future research:
The simplest case, in which a single organization creates a single architecture for a single system
One in which a business creates not just a single system from an architecture but an entire product line of systems that are related by a common architecture and a common asset base
One in which, through a community-wide effort, a standard architecture or reference architecture is created from which large numbers of systems flow
One in which the architecture becomes so pervasive that the developing organization effectively becomes the world, as in the case of the World Wide Web
Each of these ABCs contains the same elements as the original: stakeholders, a technical environment, an existing experience base, a set of requirements to be achieved, an architect or architects, an architecture or architectures, and a system or systems. Different versions of the ABC result from the business environment, the size of the market, and the goals pursued.
We believe that future software cost and benefit models, of which CBAM is an early version, will incorporate all of these versions of the ABC. In particular, they will take into account the upfront cost that architecture-based development usually entails, and they will be able to predict the quantitative benefits that architectures yield.