I was sitting in the McCafe just outside of Shaw House in the corner of Orchard Road and Scotts Road the other day. I was watching the hustle and bustle of business alongside Orchard Road. Being one of the busiest roads in Singapore, Orchard Road is packed with malls, restaurants, hotels, cinemas, shops etc. which provide their services all through the day.
I spotted a couple with their youngster carrying several plastic bags marked with several shop emblems, I figured they might have been around shopping alongside the shopping district. They might have got some groceries in Carrefour, Plaza Singapura, then went to get some clothings in OG, then they might have stopped by for some meals in Orchard Hawker, it must have been a busy day for them, with a well planned itenary they have prepared before they disembarked the train in Dhoby Ghaut MRT station.
Then it just came to me me, the entire Orchard Road business is actually very similar to a gigantic Service Oriented Architecture infrastructure. With each of the merchants act as enterprise applications that provide “services” to the visitors who have a well planned “business process” of what to do there. That itenary of the couple I just spotted can be an instance of a business process that consumes the services of those merchants. and they may have a well planned sequence of how they want to spend their day so they can effectively spend their time during their visit there.
When providing services, these merchants may want to hide the complexities they need to go through to get the goods to their customers. They don’t want to show the complexity of importing them, they only need to show the condition of the goods and put price tags on them. This is analogous to the coarse-grained nature of enterprise services inside a good SOA infrastructure. A service should not be too fined-grain to expose the underlying technical complexities, it should focus on the business functionality instead.
The Orchard Road is the ESB that links the merchants together so they are accessible to the visitors. It’s an important piece of infrastructure the integrates the merchants so that they can do their business conveniently. New merchants can just open up and integrate easily into the infrastructure as long as it follows the standards agreed (e.g. keep things clean, pay the taxes, etc.). In SOA world, new applications can easily plug into the ESB as long as they are SOA-enabled.
There you go, you have an analogy of an ESB and a BPM in Singapore’s busiest shopping district. Looking at it from this angle, the literal description of “Service Oriented Architecture” makes perfect sense. But wait, there’s more to it than just an ESB and a BPM.
In order for the shops to do business, they have to agree on the interface they use. In real life, these interfaces may include an agreed price or the currency to use. In SOA, it may be the Web Service interface. They need to agree on the same WSDL so they can provide services to the business.
Orchard Road is also equipped with a street directory (you can find Orchard map in the Singapore Visitor Center), so that visitors can find where to get certain services they need. This is the job of a Service Registry to list the directory of available services from all of the applications connected to the bus.
The Dhoby Ghaut, Somerset and Orchard MRT stations are triggering points to the business processes. They bring in people to come and shop along the street. In SOA, these triggers can be incoming e-mail, incoming JMS message or a simple Web Service invocation that triggers the business process.
Now, what’s missing? I remember when I was in High School I used spend hours playing a simulation computer game called Transport Tycoon by Chris Sawyer (http://en.wikipedia.org/wiki/Transport_Tycoon). In the game, I get to run a transportation company that transport people and goods from one city to another. The game provides me with a bird’s eye view of my armada of my busses/trucks/trains/ships etc., so I can tell at any time where they are and how much load they are carrying and business they are generating.
It would be nice to have something like that in our Orchard Road scenario. So if we have one guy who’s supposed to get some clothes from Isetan and should’ve come back more than 3 hours ago, we can track where he is and why he is delayed. Is Isetan running out of clothes he is looking for, or is he merely lost? This is the role of a Business Activity Monitoring, to monitor the condition and health of business processes running in the BPM. BAM should be able to tell the management on the status and the latest snapshot of the corporate business. Many times this information is obtained from running processes inside the BPM.
I sipped my iced Latte and took some mental notes on those analogies I drew from a fine day on Orchard Road. I got this list:
BPM and ESB |
Orchard Road |
Enterprise applications |
Shops, restaurants, hotels, merchants etc. alongside Orchard Road |
Coarse-Grained Business Functionalities/services |
Various services provided by the merchants |
SOA-enablement |
Compliance of merchants to open their business in the district |
WSDL |
Agreement on how to do business between service provider and consumer, e.g. price, currency to use, etc. |
Service Registry |
Orchard street directory |
Trigger point of business processes |
MRT Stations alongside Orchard Road |
BAM |
God-like capability to track one’s progress as he does his business inside the Orchard Road district |
One last sip, then I finished my drink and packed my stuff. I needed to cross the street to get some books from Borders in the Wheelock Place, I needed to “consume” the book store’s service. As the light turned green for the pedestrians, I thought to myself that I wished all SOA infrastructure initiatives can be successful implementations like the bustling and hustling Orchard Road of Singapore. Take care.
No Comments/Trackbacks/Pingbacks for this post yet...
The intention of this blog is to collect thoughts on the issues, paradigms, process, vendors, solutions, project and any other item related service oriented architecture in South East Asia.
| Sun | Mon | Tue | Wed | Thu | Fri | Sat |
|---|---|---|---|---|---|---|
| << < | > >> | |||||
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |