The ObjectWatch Newsletter

Now In Our Tenth Year

 

A Quarterly Newsletter for Software Architects

by Roger Sessions

Issue # 49 - February 2005

 


This newsletter is sponsored by

Home

The International Association of Software Architects provides a forum for business, technology and systems architects to share knowledge about application architecture, multi-systems architectures, vertical and horizontal re-use strategies, architecture methodologies and strategies, and architecture definitions.

www.iasarchitects.org

 

Table of Contents

Quotation of the Month: Our Government At Work. 2

The Rings of the Enterprise. 3

ObjectWatch Architect Technology Advisory (ATA) 7

Subscription Information. 8

Legal Notices. 8

 


Quotation of the Month: Our Government At Work

"I did not get what I envisioned" from the project, the senior official acknowledged. But he said the F.B.I. today had a better understanding of its computer needs and limitations as a result of the effort. "The lesson we have learned from this $170 million is invaluable," he said.

- An unnamed senior official of the FBI explaining why the FBI spent $170 million on a computer system, once deemed critical to the war on terrorism, that is now described by the FBI itself as “unusable”, in F.B.I. May Scrap Vital Overhaul of Its Outdated Computer System By Eric Lichtblau, New York Times, January 14, 2005

The winner of the Quotation of the Month Contest is Martha Reilly who gets a choice of a personally autographed copy of Roger Sessions's book, Software Fortresses: Modeling Enterprise Architectures, or the ObjectWatch BBQ apron. Send in your nominations for Quotation of the Month to roger@objectwatch.com, and you too can get a personally autographed book/apron!


 

 

The Rings of the Enterprise

by Roger Sessions

 

Many readers of The ObjectWatch Newsletter know that my favorite place to sit while writing is the big comfy chair in the corner of the Starbucks at 183 and Anderson Mill Road in Austin Texas. The more loyal readers even know what I order there: Doppio Macchiato, one sugar, extra foam.

There are many reasons I order this particular drink. I like it. It’s cheap (well, by Starbuck’s standards, anyway). It is intense. It is crawling with caffeine.

But on a recent trip to Starbucks, I discovered a new reason for ordering a Doppio Macchiato. It’s illegal not too! On that trip, I was followed by our local Sheriff who was prepared to pull me over and give me a ticket if I didn’t go into the Starbucks and get my favorite drink.

How is this possible? It might help to understand how my favorite Starbucks is situated.  Figure 1 gives a map showing my Starbucks with the dotted line showing my path as I meander in from Anderson Mill Road, drive through the plaza, and, eventually, end up in my cozy chair in the corner.

Figure 1. Starbucks Map

Notice how close the Starbucks is to the 183 plaza entrance. Now it turns out that some unscrupulous people take an almost identical path to mine, except that at the last minute they don’t turn into Starbucks, they leave the plaza at the 183 entrance. In other words, they could care less about a Doppio Macchiato. They are trying to avoid the traffic at the corner of 183 and Anderson Mill Road!

So when the Sheriff, who was in the car right behind mine on Anderson Mill Road, saw me turn into the plaza, he followed me. Had I not turned into Starbucks but instead turned out again to 183, he would have pulled me over and ticketed me. The crime? Not buying a Doppio Macchiato.

If you think about this, you will realize that there are four distinct geographic regions arranged in concentric circles all emanating out from the counter of Starbucks. These circles are shown in Figure 2.

Figure 2. The Starbucks Rings

Ring Zero is the innermost ring. This is the space behind the counter at Starbucks. I don’t know what goes on there because I am never allowed behind the counter.

Ring One is the second ring. This is the space inside Starbucks. This is where I wait for my order, side by side with the rest of the shivering, huddled masses waiting for their drinks.

Ring Two is the third ring. I know this sounds confusing because I started counting with zero. But try to stay with me here. The third ring is the shopping plaza in which the Starbucks is located.

Ring Three is the fourth ring. This is the rest of the world, the area outside the plaza. For purposes of this discussion, Ring Three is Anderson Mill Road and the 183 highway.

Notice that each ring has its own rules and regulations. For example, Ring Three. If I had stayed in Ring Three (outside the plaza), the Sheriff never would have followed me. In Ring Three there is no law that you must get a Doppio Macchiato. This is why I avoid Ring Three whenever possible.

Once you enter Ring Two, you are accepting a new set of rules and regulations, namely, you are now required to buy a Doppio Macchiato. Maybe you are allowed to buy something else. I don’t know. I have never tried.

From here it is a short hop to Ring One. Now you are inside Starbucks and under a whole new set of rules. These rules govern issues like ordering, standing in line (forever, it seems), and paying, issues that nobody in Ring Two cares about.

I assume that Ring Zero (the barrista ring) has its own set of rules, such as when you must show up for work, when you are allowed to leave, and so forth. Like I said, I’m not allowed in Ring Zero, so I wouldn’t know.

It’s not just the Doppio Macchiato (or lack thereof) that differentiates ring from ring. There are also rules that govern movement. In Ring Three, I am allowed to drive my car up to 60 miles per hour. In Ring Two I am still allowed to drive my car, but now my speed is limited to 10 miles per hour. In Ring One, I am not allowed to drive at all; I am forced to abandon my car and walk. In Ring Zero, there is very little lateral movement at all, mostly just arm waving and shouting.

You can see that ordering a Doppio Macchiato is not as simple as it seems. It requires a detailed understanding of the Starbucks Ring Structure, a knowledge of which ring you are in at any given time, and a full grasp of the rules that govern life in each one of those rings. If I try driving my car into Ring One, for example, I will be in serious trouble, even though such an activity is encouraged in Ring Three.

Most people might have a difficult time understanding and grasping the significance of the Starbucks Ring Structure. As it turns out, I find the whole concept very intuitive. I would like to believe this is because of my advanced intellectual capability. In reality, it is because I have already seen a very similar ring structure, that of enterprise software systems, and especially enterprise software systems using Service-Oriented Architectures (SOAs). Since SOAs happen to be my particular specialty you can see that I have somewhat of a unfair advantage in navigating the Starbucks rings. The rest of you may have a little more trouble ordering your Doppio Macchiatos.

In an effort to help you better understand the Starbucks rings, I’m going to take some time to explain the SOA rings. Since most of my readers are technologists, I assume that SOA rings will be easier to grasp than Starbucks rings. Once you understand the SOA rings, you should be able to extrapolate what you have learned to the Starbucks rings and order your own Doppio Macchiato.

As you probably know, an SOA is an approach to interoperability between autonomous business systems, specifically autonomous business systems that are packaged as services. A service is an autonomous business system that is able to accept SOAP requests and whose interoperability is governed by the various Web service standards. The most important of these standards I covered in the November 2004 ObjectWatch Newsletter.

A typical enterprise has a number of these service, each one of which has a four-ring structure much like the Starbucks system. The enterprise rings are shown in Figure 3 which you can compare for similarity to Figure 2. Let’s go through the Enterprise Rings, one by one.


 

 

Figure 3. The Enterprise Rings

 

Ring Zero is the implementation of the service. This is where we have distributed components, processes, and armies of objects running around and doing their thing, together implementing a shipping service, a credit-card-authorization service, or whatever business functionality this particular service happens to implement.

Ring One is the collection of other services in the enterprise. A retail operation may have a point-of-sale service, an inventory service, a customer-management service, and any number of other services, each of which plays its role in the overall operation and each of which needs to interoperate with the other enterprise services.

Ring Two is the collection of services outside the enterprise that needs to collaborate with one or more of the enterprise services. This might include supplier services and banking services.

Ring Three is the rest of the world. This is the riff-raff we want to have nothing to do with.

Like the Starbucks rings, each of these rings has its own rules for how things are done. Take communications, for example. Communications with Ring Three is strongly discouraged. Communications in Ring Two will mostly be done asynchronously using the reliable messaging protocol I discussed in the last ObjectWatch Newsletter.  Communications in Ring One will also be asynchronous, but now will use a proprietary message queue system. Communications in Ring Zero is totally different. It is not asynchronous at all. It is synchronous, proprietary, and focused on speed.

Security is another issue that differs markedly as we move from ring to ring. Security at Ring Three is primarily based on firewalls. Security at Ring Two will primarily be based on the new Web-service security protocols that I discussed in the November issue of the ObjectWatch Newsletter). Security at Ring One will be based more on secure transport. And once we enter Ring Zero, security is no longer an issue.

Some issues are specific to certain rings only. Implementation of business functionality, for example, is strictly a Ring Zero issue. The rules that govern service implementation must be followed very carefully, if the service will be able to properly interact with other services. (I discussed the Ten Rules of Implementing Services in the February ObjectWatch Architect Technology Advisory). These rules must be well understood and assiduously followed, but they are only important inside Ring Zero. Once you are outside Ring Zero, these rules are no longer relevant.

Understanding the Enterprise Rings can help us focus our product comparisons. Consider a group trying to decide between using Microsoft’s C# and IBM’s Java for doing development. Should this decision be made at the project level or at the enterprise level?

Both C# and Java are Ring Zero technologies. In other words, they are technologies that are used  to do development inside a Ring Zero service. Since their impact is limited to Ring Zero, there is no reason the decision between C# and Java needs to be made at the enterprise level. Each Ring Zero group (say, the group implementing the Shipping service) can choose the programming language and software platform that works best for its project.

On the other hand, what about the decision between MSMQ and MQSeries, two message queue technologies? Message queues are Ring One technologies. Their is no reason the Ring Zero implementers would be impacted by the MSMQ/MQSeries choice. This decision needs to be made by the enterprise infrastructure architects who specialize in solving Ring One problems.

As you develop your enterprise architecture, the Enterprise Rings can be an important aid in understanding relationships between systems, choosing technologies, and codifying contracts.

And, of course, now you can much better appreciate the Starbucks rings. Let me know if you need any more help. In the meantime, I’m heading out for a Doppio Macchiato. Maybe two. After all, it’s not just a drink. It’s the law!

 

- Roger Sessions

Austin, Texas

February 6, 2004

 

ObjectWatch Architect Technology Advisory (ATA)

Our newest publication is now available.  The ObjectWatch Architect Technology Advisory (ATA) by Roger Sessions, a world recognized authority in high-end enterprise architectures, is written specifically for enterprise architects working with large organizations such as finance, retail, manufacturing, health-care, and government.

Every month, the ATA analyzes upcoming changes in the technology landscape. We assign Alerts based on the likelihood of those changes being widely adopted and their impact on existing software systems. Alerts designated serious and very serious are reserved for changes that will have major impacts on enterprise systems.  Alerts are partnered with Critical Action Plans (CAPs) that detail the steps needed to prepare for these upcoming changes.

The February issue gives the ten critical rules for architecting and building services. Get these rules right, and you are well on your way to designing and implementing a good SOA. Get any of them wrong and you are headed for disaster.

The information contained in just one of our Alerts and CAPs can save you hundreds of thousands of dollars in lost development costs. If you are an enterprise architect, the ATA will be your lifeline.

12-month Subscription:  $495.00

For more information on an ATA subscription, see www.objectwatch.com/ata.htm  or contact beverly@objectwatch.com.

 

 

Subscription Information

Feel free to copy, forward, or repost this newsletter, as long as you don’t make any changes to the newsletter (see the legal notices below). Thanks. For your own free subscription to The ObjectWatch Newsletter visit www.objectwatch.com.

Legal Notices

The ObjectWatch Newsletter does not rent out its subscription list.

This newsletter is Copyright (c) 2004 by ObjectWatch, Inc., Austin, Texas. All rights are reserved, except that it may be freely redistributed provided that it is redistributed in its entirety, and that absolutely no changes are made in any way, including the removal of these legal notices.

ObjectWatch and Software Fortresses are registered trademarks® of ObjectWatch, Inc., Austin, Texas. The green logo is a trademark™ of ObjectWatch, Inc. All other trademarks are owned by their respective companies. The Starbucks Logo is a registered trademark of Starbucks Corporation.