Service Oriented Enterprise

Tuesday, May 24, 2005

Hiring SOA Consultants...  

Momentum is opening up new positions for SOA consultants. All positions are travel intensive and require a strong background in distributed computing and enterprise architecture. Interested candidates should send Melissa a note:

We're basing the consultants in one of three delivery centers:
- Austin / Dallas, Texas
- Reston / Washington D.C.
- San Francisco / Silicon Valley

The Service Architect
At Momentum, the Service Architect is responsible for analyzing architectural requirements and translating into service based solutions. The architect will work with various existing architectural styles (monolithic, client/server, 3-tiered) and modify those systems to accommodate a service based approach. The architect will also be responsible for identifying SOA based solutions to the non-functional requirements (security, transactional integrity, reliability, availability, agility, etc.) Lastly, the Service architect will be instrumental in creating Software Architecture Documents, identifying components, estimating time-to-transition, providing guidance to designers and developers and linking architectural investments back to financial returns.


The SOA Architect must be well versed in Enterprise Architecture, Service Oriented Architecture (SOA), J2EE and or .NET Architecture.
Full life-cycle implementation experience (requirements, design, implementation, integration, testing).
Experience designing and implementing n-tiered application architectures.
Fluency in first generation web services standards, technologies and tools (e.g., XML, SOAP, WSDL, UDDI, BPEL, etc.).
A strong distributed computing background is a requirement (CORBA, RPC, DCE, DCOM, RMI).
Familiarity with messaging systems is a plus (Tibco, WebMethods, MQ, SeeBeyond).
Familiarity with commercial Web service products is a plus (Systinet, Blue Titan, etc.).
Knowledgeable on WS-* standards.


  • Strong interpersonal, strategic oriented thinking and excellent written and verbal skills are essential.
  • Ability to present professionally and persuasively to C-level executives.
  • A minimum of 10 years experience overall in software development.
  • A degree in Computer Science is preferred.
  • Travel is required for this position.

About MomentumSI
MomentumSI is a pioneer in service oriented architecture, integration, and application development. Since 1997, the company has built a reputation as a leader in architecting large scale distributed computing solutions for IT organizations. Today, MomentumSI is at the forefront of service oriented architecture and integration for enterprises. We built the first Web service orchestration server for .NET and have been an active member of Web services standards groups, such as OASIS. Momentum continues to invest our SOA practice and is looking for the best of the best to join us.

posted by jeff | 12:15 AM

Monday, May 23, 2005

Entire Software Sector up on Web Services!  

Now this is interesting:

NEW YORK (MarketWatch) -- Goldman Sachs raised its rating on the software sector to attractive from neutral on the belief that the emergence of Web services architecture will accelerate industry growth and on expectations that share prices will rise as investors position for an anticipated year-end rally. Analyst Rick Sherlund believes a movement to a new generation of Web services base standards, which will result in more flexible and adaptable systems that can allow for changes in business processes, could reinvigorate growth for information technology vendors. He said the Phase I adoption of infrastructure software from IBM , BEA Systems , Oracle and Microsoft to enable the new standards is well underway, and the Phase II re-architecting of existing applications from SAP , Siebel and others is upcoming. He said Phase III will be integrating the new standard into desktop systems, which should stimulate a replacement cycle. Sherlund recommends positioning in the expected leaders of the next generation systems, even if the benefits aren't expected for a few years, given attractive valuation and the anticipation of a typical year-end rally.


posted by jeff | 9:49 AM

Increasing Reach  

Software reuse has always had issues. In my opinion, the most common types of reuse are:
1. "Copy & Paste Reuse".
2. Off-The-Shelf Reuse - Here, we leverage JVM's, .Net API's, J2EE libraries, open source offerings, etc. that are pre-built and providing immediate value.

The third (and elusive) category would be the homegrown libraries - often domain specific. Let's be clear - the more general the problem, the easier to reuse; conversely, the more specific the problem, the harder to reuse. The easy stuff is packaged in your favorite off-the-shelf library - leaving the more difficult stuff for the I.T. department.

Reuse is difficult - and reuse via language specific code snippets is often easy but fails to scale and provide real value. Reuse via off-the-shelf packages is great - but in many organizations - this one has already been tapped. This brings us to Reuse Through Reference.

Services are a great mechanism for providing reuse through reference - however, many people seem to forget one simple item: REACH.

Reach describes the 'reusability potential'. Imagine having 10 systems 9 of which were in COBOL mainframe apps and the 10th was a .Net application. Let's state that the COBOL applications don't have the ability to access the native services provided by the .Net application, but do have the ability to talk Web services. Interesting - I just stated that it can speak "Web services" - does that mean WS-I basic profile? Which other WS specs does that include?

In an attempt to increase reuse through reference, we (the enterprise architects) are finding the need to increase reach. This means that we must identify protocol ubiquity levels within our organizations and quickly create critical mass.

Generally speaking there are two methods for increasing the reach:
1. Modify the connector capabilities at the endpoints (COBOL apps, etc.) via service enablement (WS-PaintJob)
2. Provide protocol mediation/translation in the network.

WS-PaintJobs are an easy way to black box systems and increase reach. However, the total number of protocol permutations between any given client and any given service grows exponentially with the size of the service network. This leads to the realization that a protocol mediation strategy is not only useful but mandatory.

posted by jeff | 6:37 AM

Sunday, May 22, 2005

The Client-to-Service Ratio  

It is natural for people to think about their SOA in terms of the number of services that they have created. And as one person joked the other day, every company seem to report having between 200 and 500 services. The criteria for being a service tends to vary significantly - anything from XML over JMS to EJB's to WS-I compliant Web services.

Service Architects love to brag about the number of services - and I let them. Actually, I encourage them to brag. However, I'm quick to challenge these same people with a very simple question:

"200 SERVICES! That's great - but how many clients???"

This simple question usually makes the most pompous architect fall to their knees in shame.

You see, one of the reasons that guys like me go around shouting "SOA, SOA, SOA!" is because we believe that a sharable infrastructure can be used across "applications" to enable a new level of productivity. Yes, we believe in the unicorn called "reuse". The "how many client" question hits at the heart of the share/leverage/reuse debate. I know it - they know it.

Back to my story - I ask the question, "How many clients" - and I stare at their face like a CIA agent looking for twitches. Within seconds, I witness the five phases of panic :-)
Phase 1: "Oh crap. I should know this."
Phase 2: "I better make up a number - I told him 200 services - hence I'll tell him 200 clients!"
Phase 3: "Nope - that won't work - he'd realize that my client-to-service ratio would be 1:1 indicating that I wasn't getting any leverage."
Phase 4: "2:1 seems high at this stage; 1.5:1 seems believable... yea, (1.5 * 200)=300... but I can't tell him 300..."
Phase 5: The Service architect looks me squarely in the eye, head shifted slightly to the left and says "Currently, we have 322 clients."

And I say - "Excellent" followed by a slight grin and a playful stare indicating that I was 100% aware of what had just occurred. I usually then move to relieve the 5 seconds of torture and lies that I just put them through by saying something like, "Well - it is still early; SOA is still evolving and you won't see that number climb until more of the organization adopts it." And my friend gladly take the bait - "Absolutely! Right now, we're just building out the core services - we're confident that the ratio will increase over time."

And I move on to question number 2...

posted by jeff | 6:20 AM