At the same time as building up a service oriented architecture, enterprises need to equip business managers to take charge of processes from the top down. Two articles this week provide valuable tips for implementing each prong of this two-way pincer movement.
First of all, IBM's Bob Sutor describes The path to SOA, starting with a handy definition:
"In an SOA world, business tasks are accomplished by executing a series of 'services,' jobs that have well defined ways of talking to them and well-defined ways in which they talk back. It doesn't really matter how a particular service is implemented, as long as it responds in the expected way to your commands and offers the quality of service you require. This means that the service must be appropriately secure and reliable as well as fast enough. This makes SOA a near ideal technology to use in an IT environment where software and hardware from multiple vendors is deployed."
Then some step-by-step tips:
"The first point of entry is to start making individual applications available as web services to multiple consumers via a middle tier web application server ..."
"The second step involves have several services that are integrated together to accomplish a task or implement a business process. Here you start getting serious about modeling the process and choreographing the flow between the services ..."
"If you already have an EAI infrastructure, you will most like enter the SOA adoption path at the third stepping stone. At this point you are looking to use SOA consistently across your entire organization and want to leverage your existing enterprise messaging software investment ..."
"The final step on the path is the one to which you aspire: being a flexible, responsive, on demand business that uses SOA to gain efficiencies, better utilization of software and information assets, and competitive differentiation ..."
Meanwhile, CIO Magazine reports on how enterprises Do Process: "... when it comes to business process management (BPM), [Transfield Services business improvement manager Wil] Carey says, nothing is more basic than empowering the organisation’s business unit managers, and helping them recognise that everything the organisation does is a process and hence can be described in a procedure ... Carey believes there are five key elements required to successfully embed a culture of BPM and improvement into the organisation:
"Process, procedures and governance excellence can be achieved through operational discipline without being too restricting).
"Communications, which Carey calls the number one core competency.
"Relationships managers must understand the importance of working with and around people)
"Accountability a core competency of leadership.
"The process quality management process, which means always remembering to keep the business vision and the client in focus.
"Strong capabilities in all of these areas have proved essential to Transfield’s business process management efforts."
posted by Phil Wainewright 1:21 AM (GMT) | comments | link
Tuesday, December 09, 2003
It's much easier to write software if you don't have to allow for human uncertainty, so most software engineers don't bother. In fact, this mentality has become so ingrained that many people routinely speak about computer systems as if the primary design aim is to engineer out the human element.
People often talk of web services as application-to-application processes that are analagous to the WorldWide Web, but for machines rather than for people. Thus it is that even a respected journal like CIO Magazine can end up publishing the sort of utter tosh that appears in an editorial in this month's issue, headlined How Will Web Services Ultimately Change Business?: "The day will definitely come when computers conduct what CIO Executive Editor Christopher Koch describes as 'deep, meaningful interactions with no human intervention'."
Unfortunately, programmers are human. Systems architects are people. They make mistakes. Allowing their products to interact in deep, meaningful and mission-critical ways "with no human intervention" (or human supervision, at the very least) would therefore be a highly reckless and potentially criminally liable act. For if, in the human act of creating those programs and systems, they have overlooked some vital flaw, the consequences of allowing the machines to run without any human input could be disastrous.
Fortunately, that's not likely. However much autonomous intelligence a machine process may seem to have, there always is a human at the beginning and end of any process (and directing it, too), otherwise what's the point? Value only counts in human terms. Processes always have a human social context; at the very least, for example, to give them economic value or utility.
For a long while, practical reality has meant that software engineers have had no real choice but to ignore humans for the purposes of designing systems the hardware components and software tools available to them have simply not been powerful or sophisticated enough to handle the complexity of dealing with human beings. And while computers that can cope with the rich variability of human interaction have been thin on the ground, fortunately there has never been a shortage of human beings with sufficient adaptability to cope with the limitations of computing.
Now at last that appears to be changing. Powerful processors, visual programming tools and loosely coupled service-oriented architectures are all combining to put amazingly potent and flexible computing in our hands. It's beginning to be possible to build systems that can truly support the richly innovative, chaotic, interactive fabric of human life. Computer systems that embrace and extend the human element instead of trying to deny it.
All of this is why I feel it's so important to tease out the key themes running through so much of the current debate around web services, service-oriented architectures and business process management. Everything that's going on is driving towards the creation of a software infrastructure that can support thriving, innovative businesses (and other human endeavours). Part of the picture is the creation of an infrastructure that best supports the operation and management of those automated processes. Another important part of it is having the right tools and working practices to maintain and evolve effective, appropriate processes. A final part is a strategic mindset that brings cohesion to all of those widespread efforts. This is not something that can be achieved overnight; it's going to be a long yet fascinating journey.
posted by Phil Wainewright 7:27 AM (GMT) | comments | link
Assembling on-demand services to automate business, commerce, and the sharing of knowledge