Wednesday, May 14, 2008

JBOWS is Bad

JBOWS stands for Just a Bunch of Web Services, and is unfortunately something seen quite frequently in organisations first delving into SOA, or where there is an emphasis on tooling and technology rather than architecture and analysis.

It refers to the scenario where random/unplanned functionality is exposed within an enterprise as Web services. It is a build it and they will come mentality. We usually tend to find this with IT led (rather than business led) SOA initiatives.

This may in fact not be the fault of the IT department(s) involved. It may be that they are given a mandate for an SOA transformation, but there is little or no cooperation from the business in supporting that effort.

Services need to support an explicitly designed enterprise architecture, where each service has a well defined specific responsibility in the context of that architecture. We need a governance framework in place to ensure that services are created, modified, versioned and deployed in such a way that they are properly designed, compatible with each other and consistent with the enterprise architecture.

Where the enterprise architecture, governance and planning processes are lacking or non-existent, then services will be defined with arbitrary responsibilities and boundaries. This leads to overlapping responsibilities between services, which in turn leads to low cohesion and by extension high coupling between services. That is, we get JBOWS.

JBOWS architectures deliver little or no value to the business. If anything, overall business agility will decrease over time as more and more disorganised services spring up with considerably more complex and brittle dependencies that need to be maintained.

Part of the problem is the lack of guidance in the SOA space. Many vendors are pushing SOA as a badge on a technology solution and the message of how to properly design SOA systems is getting lost in the noise.

As I've said before, there are good and bad service oriented architectures. JBOWS is the worst kind of SOA. It costs a lot and very likely will see you worse off than where you started. Avoid it like the plague.

1 comment:

Calvin Brock said...

Great post full of useful tips! My site is fairly new and I am also having a hard time getting my readers to leave comments. Analytics shows they are coming to the site but I have a feeling “nobody wants to be first”. Andy