|
Centers: The Architecture of Services and the Phenomenon of Life
Christopher Alexander's theory of centers helps explain the essential properties of service-oriented architectures.
by Richard C. Murphy
Posted March 30, 2004
Almost eight years ago, Christopher Alexander introduced centers as the successor to patterns and pattern language in his at OOPSLA 1996. Since then, software architects continue to embrace patterns as solutions to recurring problems.
The most adventurous of us embrace pattern language to create shared understanding among members of a cross-functional design team. But Alexander's keynote left us with a deeper understanding than patterns and pattern language. As I consider the architecture of services, I find Alexander's theory of centers and the science of complex systems better explain the essential properties of service-oriented architecture (SOA). Consider how the following description emphasizes the business problem services solve, and the changing nature of a service based on state and over time:
In an SOA, services encapsulate the enduring mission of a virtual organization as centers of value. Services, as centers of value, are living structures we choreograph through a common grammar subject to fitness and evolution. Customer demand determines fitness based on service discovery and service description. Choreography defines the sequence and conditions under which services evolve. These conditions may include economic, legislative, or organizational principles like cost minimization, taxation, or business rules.
In his most recent work, , Alexander defines centers as loosely bounded entities that are focal points at the core of all pattern, order, and wholeness. Centers are defined recursively in terms of other centers, and the relationship among centers creates a field-like effect that induces a coherent whole.
If, like me, your teachers taught you not to define recursively, you'll have to accept Alexander's argument against the prevailing Cartesian worldview that prohibits recursive definition. Alexander, in fact, argues that this recursive structure unlocks the door to a new way of understanding form and order as living structure. In a re-examination of his past work, Alexander says, "I began trying to get this straight in the later versions of A Pattern Language, where I noticed that even the entities which formed a pattern were in effect patterns, too, so that properly a pattern was not a pattern of entities, but a pattern of patterns. [...] All this finally became clear to me about ten years ago when I finally understood that all these troublesome entities, which were so important as the building blocks of nature were not truly bounded entities but were in fact non-bounded centers. Centers of influence, centers of action, centers of other centers—centers of some kind, appearing in the seething mass of wholeness."
I will show how Alexander's theory of centers better explains use cases. But first, let's look at how use cases best model services in a service-oriented architecture.
Back to top
|