Welcome!

SOA & WOA Authors: Kevin Jackson, Maureen O'Gara, John Savageau, Greg Ness, Bruce Johnston

Related Topics: SOA & WOA

SOA & WOA: Article

Sun Distinguished Engineer John Crupi On SOA and Kitchen Renovation

"I keep seeing similarities between renovating a kitchen and building a SOA"

We're in the process of renovating our kitchen. In our kitchen design, we're actually constructing a new structure to extend the current kitchen. If any of you have gone through this, I'm sure you have lots of war stories. But, as my wife and I go through this process,  I keep seeing similarities between renovating a kitchen and building a SOA. 

To understand what I'm talking about,  I'll start by making some role comparisons:

Kitchen Renovation Roles
SOA Roles
Home Owner Business Manager
Kitchen Designer Business Analyst
Building Architect
SOA Architect
Construction Crew
Development Team

When renovating a kitchen there are usually four key roles: home owner, kitchen designer, architect and construction crew. In SOA, there are similar key roles: business manager, business analyst, SOA architect and development team. These four roles tend to have similar responsibilities as shown below.

Renovation Roles Renovation Responsibilities SOA Roles
SOA Responsibilities
Home Owner Overall requirements and budget Business Manager Overall requirements and budget
Kitchen Designer Kitchen requirements and design Business Analyst Business requirements and features
Building Architect Overall architecture
SOA Architect Overall architecture
Construction Team
Project construction
Development Team
Project implementation

The most important person in a kitchen renovation is the home owner. In SOA, the most important person is the business owner, who is usually the business manager.  Essentially, it's who owns the budget and writes the check.

You can renovate a kitchen without a kitchen designer, but I don't recommend it. Kitchen designers have the best  understanding of the requirements and features of a kitchen. Even building architects will tell you to bring in a kitchen designer to insure good flow, appliance placement, cabinetry, flooring, zoning, etc.

Similar to a kitchen designer is the SOA business analyst. Just as you can renovate a kitchen without a designer, you can build a SOA without a business analyst.  But, I don't recommend this either. The business analyst understands the business and business requirements and acts as a liaison between the SOA architect and the business unit. It's the business analyst who translates business requirements into information to help the SOA architect design the system. Kitchen designers tend to act as a liaison between the home owner and the building architect. Just as the business analyst is driven by the business unit and has to support the business objectives, so the kitchen designer supports the home owner's objectives.

Then there's the building architect who is core to the overall kitchen design. He/she is the one who has to take all the requirements of the kitchen designer and the home owner and turn that vision into a set of architectural blueprints. These blueprints are used for permits, cabinet sizing/layout, construction cost estimates and eventually become the master construction plans. If the blueprints are wrong or incomplete it trickles down to all levels and eventually ends up costing the home owner much, much more.

Finally, there's the kitchen construction team. The construction company bids on a project based on the complexity of implementing the blueprints, material and labor costs and a slew of other cost factors. You can probably imagine what can and will possibly go wrong in this model if all parties aren't aligned. If the homeowner changes the requirements mid-stream, change order costs incur. If the kitchen designer miscalculates the cabinet dimensions and the cabinets don't fit, it delays the overall schedule, which translates to added costs. You get the idea. So much can go wrong  if all stakeholders are not in complete sync – in both the kitchen renovation and SOA world.


More Stories By John Crupi

John Crupi is the CTO of JackBe Corporation. As CTO he is entrusted with understanding market forces and business drivers to drive JackBe's technical vision and strategy. He has 20 years experience in OO and enterprise distributed computing.Previously, Crupi spent eight years with Sun Microsystems, serving as a Distinguished Engineer and CTO for Sun's Enterprise Web Services Practice. He is co-author of the highly popular 'Core J2EE Patterns' book, has written many articles for various magazines and is a well-known speaker around the globe. He is a frequent blogger and was selected to join the International Advisory board for SYS-CON's AJAX & RIA Journal.

Comments (2) View Comments

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Most Recent Comments
Anonymous CTO 02/21/06 06:52:29 PM EST

Sorry to say, but I am not clear what was so brilliant here.

YI

Anonymous CTO 02/21/06 06:52:24 PM EST

Sorry to say, but I am not clear what was so brilliant here.

YI