I have recently been engaged in several different discussions which have revolved around the term “service”. There is considerable confusion, or if you prefer, a wide range of views, on what a service might be and what we should do about it. Should we model them? Is a “Service Architecture” useful and, if so, does it replace a Business Process Architecture?
Some personal context might be helpful before I explore those questions. My organization management view is process-centric. For me, Business Process Management (BPM) is a management philosophy that can be summarized as follows:
Business processes are not just a series of activities. They are the complete collections of cross-functional activities, rules, and resources that allow the exchange of value between an organization and its external customers and other stakeholders. The only way that any organization can exchange such value is via its business processes. Individual organizational functional areas cannot, by themselves, deliver value to external customers. It follows that an organization executes its strategic intent via its business processes. Business processes are the conduits through which value is exchanged between customers and the organization. Therefore, business processes need to be thoughtfully managed and continuously improved to maintain an unimpeded flow of value in every direction. Business process analysis, improvement and management are about optimizing the value exchanged between an organization and its customers and other stakeholders.
So where do services fit? Are we not here to serve our customers? Don’t they come to us looking for service? Many of us work on a fee-for-service basis. Didn’t you have your car serviced recently? There does seem to be a lot of servicing going on.
Like other quasi-technical terms we have reassigned from their normal role in the English language, “service” retains its original meaning for most users in most circumstances. The hotel, in which I am staying as I write this article, provides services related to accommodation, food, laundry, swimming, valet parking, gymnasium and many others. Indeed, I met the Guest Services Manager. In this plain English use of the term, we have no difficulty understanding what is meant by service. The list of available services is provided in the “user manual” for my room.
We can also easily understand the way "service" is used in Service Oriented Architecture (SOA). In that context, service (or originally, web service) is software/technology. No doubt about it and no confusion. I'm no programmer or IT/systems architect, but I suspect that, what we might once have called a subroutine is now a service. The subroutine code likely lived on the same disc drive as the main program and the service might be called from anywhere on the planet and be more sophisticated, but conceptually not much different. Service in this context is an IT capability. Plug and play, mix and match, and you are delivering some desired outcome.
So plain English use of the term “service” and the “service” in Service Oriented Architecture are well enough defined. There is little, if any, confusion between those two usages. Every other use of “service” does seem to add confusion and little insight.
If you agree with my outline of the BPM management philosophy above, then we agree that business processes are the only way that any organization can exchange value with its customers and other stakeholders. The closest I get to making sense of “service” in that, for me dominant context, is that what we deliver to customers is a “service”. The service is the value delivered by the process. When I send my clothes to be cleaned here at the hotel, the “laundry service” does a great job and I get exceptional levels of “service” – cute little paper bow ties on the shirts, which come back on proper hangers. I love it. However, what I am delighted with is the value I receive from the execution of the process Provide Laundry Service. We could find that process in the hotel’s Business Process Architecture. I see no need to invent a new set of concepts around “service architecture”. Do you?
A “service catalogue” is conceptually no different than a product catalogue. It’s a list of the things (values) we can deliver. The service/product catalogue is a list of possible outputs. It does not describe the process that delivers the output. The Amazon catalogue does not describe the process of taking my order and getting the product to me. It defines part of the value that can be provided to me (the other part being speed and convenience of delivery, and perhaps a cost saving). This value, or process output, is one of the six perspectives of a process, the others being inputs, guides, enablers, flow and management.
It is unnecessary to invent a whole new “body of knowledge” about service architectures and related artifacts. If you want to replace the word “process” with “service” and mean the same thing, then I can live with that. Call a process whatever you like, but don’t confuse the meaning. The big problem comes when people get confused between the process (or whatever you want to call it) and the value (output) it delivers. Service delivery is done via processes. For me, “service” is another, and perhaps slightly more specific, term for the abstract concept of “value” that is delivered by a process.
Inevitably, a so called Service Architecture is a quite functional list of services delivered without a coherent hierarchy to describe how the delivery is made in a cross-functional sense. The Service Architectures I’ve seen have been a messy confusion of aspirations, outputs and activities.