Thursday, May 15, 2008

How Enhances SOA by increasing the reusability of information

Service Oriented Architecture aligns business projects’ technical architectures to a broader and more holistic, Enterprise IT Architecture strategy. These strategies are architecturally underpinned by the Services Oriented Patterns of publish and subscribe and other event driven service patterns. The patterns deliver orchestrated business processes through BPEL and BPM with the goal of enabling business agility. SOA also has the promise of delivering functional reusability from the underlying application code thus reducing the required software development aspect of IT projects and in turn, reducing the capital costs and time it takes to deliver business initiatives – projects – which execute business strategy. BUSINESS AGILITY!
Ahhhh, business agility, the new holy grail of business. SOA projects deliver flexibility from a technical perspective. Existing application software is decomposed, broken down into discrete chunks of business functionality – the steps in a process – which can be identified, managed and maintained independently through registry based governance. Very technical…. The challenge is how do you communicate such technical and abstract concepts from IT to business and back again, time after time after time, as business continually morphs to deal with a dynamic and volatile global business environment. How do you know how reusable a business process (or service) will be even before there is a real, business driven requirement to implement the process a second time? Without this foreknowledge of business requirement (which is to some degree, achievable through enterprise architecture) one runs the risk of over investing (over capitalizing) in IT infrastructure. SOA project can increase the short-term costs of projects with the promise of delivering reusability, thus reducing the cost the second time one needs to use the business process (or service) – and again, we’re on that slippery slope.
However, there are real world examples of reusability being delivered on the Internet today. Google Maps has all but become the ubiquitous de facto standard for mapping functionality (of business process or service). As Youtube has for video, as Flickr has for pictures, as Wikipedia has for reference, etc. , these Service Providers, Google, Yahoo!, Amazon, E-Bay, etc. are delivering services which are embedded into human driven (or orchestrated) business processes through Mash-ups.
Now comes the excitement of Web 2.0!
That right. That’s why business can get excited about Web 2.0. Because in Web 2.0, people – human beings – orchestrate business process on the fly (at runtime) when the appropriate tools are made available through computers and other processor based computing devices like PDA, mobile phones, video (television), etc.
O.K. this is a new phenomenon. This is the first time in human history that we can do this. Computers, the Internet, global communications network, technology convergence, etc., yes, this is the first time this is happening. What many, including myself, have observed is that people use access, use, re-use, step through and source information in different ways. The way we, people process information is unique to each and every one of us. This is what doctors are saying about the brain. Each human brain is unique. It has to be because each of us a completely unique life experience. So, providing the services (maps, video, reference, pictures, order entry, shopping basket, provisioning, training, etc.) … you see, the services can also emanate from existing legacy systems when exposed as services through a SOA.
As Dion Hinchcliffe has been telling us, Web 2.0 is where the SOA and business converge.
Web 2.0 tools or features or services, like wikis, blogs, comments, ratings, reviews, etc. let users generate content through collaboration. The Social Collaboration Layer is where the world of Web 2.0 and the world of SOA converge.
Resultantly,, the first and only complete implementation of the Social Collaboration Layer, (designed from inception as a lightweight, Web 2.0, RESTful, WOA implementation) is completely synergistic with SOA implementations. As a matter of fact, it will, undoubtedly increase the ROI of current SOA implementations by exposing users, people to services, that can be mashed up (into composite applications) and orchestrated into business processes on the fly through
Once services are embedded in they can be made available to users, when they need them, at runtime, just like Google Maps. Taking this approach lets users determine the scaling requirements of services based on actual use.
Exposing services to users through lets users orchestrate business process on-the-fly whilst adhering to SOA governance and application level access control.

No comments: