Enterprise Mobilization

Enterprise Mobilization

This is an old position paper that I wrote. Put it up when I saw this link recently. http://blogs.hbr.org/cs/2012/07/the_future_isnt_about_mobile_its.html

Posted in Technology | Tagged | Leave a comment

DRS: Other ways to interpret India’s objections

There’s been a lot of talk about India being the lone country in not accepting the DRS; Representatives from other boards, former players and commentators have been castigating the BCCI’s position. Here’re some thoughts in support of BCCI’s position on the issue.

Hawk-eye technology: As I understand this, images from multiple cameras that are time synchronized are used to compute the spatial position of the ball as it travels from the bowler’s hands to the point of impact on a batsmen’s pad/bat. From the Math one learnt around 10th Standard (or Grade), we know that a minimum of 3 cameras are required to correctly record the 3D coördinates of the ball in each frame. An important requirement to compute this accurately is that all the cameras are synchronized in time to at least that frame. Assuming 24 frames a second,  two cameras can be off by a frame if their clocks are off by even 1/47th of a second. A bit more complex maths is required to the cameras are all perfectly time-synchronized. As one can see, the math to compute the position of a ball before impact is quite significant in itself. If the clocks are perfectly synchronized, one only needs to understand 3D geometry well to compute the positions precisely. Some additional calisthenics are required to compensate for this lack of guarantee on synchronization. Still one does not need to even understand basic Newtonian laws of physics to compute this. With all this simplicity, there is a “margin of error” that increases if the clocks are off, but also decrease with the number of cameras.

For decisions involving reviewing an lbw, one has to not only know the exact positions of the ball before the point of impact with the batsman’s bat/pad, but make predictions on whether the ball would have gone on to hit the stumps if it had not been intercepted in between. This is not quite as straightforward. One can employ algorithms from curve or use the laws of physics to predict the trajectory of the ball. The extrapolation strategy deployed will be a function of many other external parameters like the distance and time the ball travelled after bouncing, atmospheric conditions like humidity, fog, condition of the ball etc. These factors can change during the progress of a match. The now infamous 2.5m rule is also probably a result of understanding that the extrapolation method is not reliable under those situations as the margin of error will be quite high.

Even with the best of intentions, the science is not fool-proof. In addition to this, there are issues around governance, tagging procedures etc that are not specified. The latest fiasco in the ongoing second test is a case in point.

Another aspect that I find amusing is the argument that since India chose to not use the DRS, it is only fitting that so many decisions go against India. Many commentators (Indian and otherwise) find almost poetic justice in this. It seems to be too easy to turn this argument on its head. If there is an unbiased ecosystem of umpires, rules etc., how is it that Indian time is getting a disproportionate share of incorrect decisions going against them? I am not (yet) claiming that the ecosystem is biased, but pointing out the fallacy when someone says “You guys rejected the DRS, so accept the decision that went against you and do not complain about the umpires”. An ICC representative, commenting on umpire Harper’s premature exit from the élite panel, characterized criticism against him as “unfair”. Since when has it become unfair to criticize someone for not doing his job well? When a player does not play well, he is criticized and when he puts in consistently bad performances, he even loses his place. So I wonder why an umpire is judged to a lower standard – especially when the consequences of a bad decision on his part has a greater impact these days..?

Posted in Cricket | Tagged , | Leave a comment

SOA and transactionality

Interesting discussion on this topic on this forum and here.

Posted in Technology | Tagged , | Leave a comment

ERP vs. BPM revisited

During a discussion in a technical forum within GAVS, a senior architect introduced concepts from BPM to a larger audience. One of the members of our technical staff, a serious ERP practitioner, was able to relate to many of the concepts of BPM to features in typical ERP systems and was wondering about how BPM is different. This topic has been discussed by the community at large – here’s a great article in ebizq from almost two years back that deals with this topic at length. Not much has changed since then other than increased adoption and maturing of standards in the BPM space. Here, I embellish those views with some of my perspectives.

One of the reasons for the perceived overlap in functionality between these two distinct technologies is because, at the highest level, we describe both as solutions to the same business problems. They are both touted as the means to realize the same set of use cases. Where they differ is in their approach to enterprise integration which results in different levels of applicability in an organization based on their profile.

The ERP approach focuses on presenting a unified and consistent view of the data that used to reside within applications in each department. The ERP system keeps the state of data in sync with the activities that happen within each department. A BPM, on the other hand, focuses more on process flows and human interactions and relies on underlying applications or systems to maintain the data. With an ERP system, it is the repository of enterprise data.

ERP Systems also have the ability to describe process flows and workflows. However these features typically are limited in terms of the flexibility and agility that some enterprises may need. To get a perspective on this, Garth Knudson talks of 20 months to implement an ERP compared to 3 months for a BPM in this article. The agility BPM solutions provide from a change management perspective is also well chronicled.  ERP systems come with canned process flows and workflows “out of the box”. If the existing policies and procedures within an enterprise align well with a canned workflow that a vendor’s implementation offers, or if an organization can adopt the procedures recommended by the ERP system, one is in luck. However, in situations where the requirement is for the system to align with the existing policies and procedures within an organization and the canned implementations need to be further customized, BPM solutions offer more agility. Advancements in SOA technologies allow various applications that live in an enterprise, be it bespoke or “off-the-shelf” to expose their functionality in a loosely coupled manner. BPM tools exploit this effectively by cobbling together these services without worrying about the implementation details of the underlying application. This ability to execute processes that have disparate applications and people interact with each other without the applications even being aware of each others’ existence is core to the agility and flexibility that BPM tools offer. As stated earlier, the core of ERP systems is the one large database that all departments in an enterprise will share. For these reasons, I tend to view an ERP as a mega-application and BPM as more of a meta-application.

Another way to frame this discussion, albeit a slightly techie way of doing so, is to view this in the context of the familiar Model-View-Controller (MVC) pattern.  A BPM plays the role of the controller since its primary function is that of orchestrating the features from various applications, systems and roles to execute a business process. The various applications and data sources that represent the reservoir of enterprise information are the model. The view component that represents the aspects of how the information is presented to the different role players is less material to this discussion.

Thus far, I have focused on the technical aspects of how an ERP is different from a BPM. So how does all this matter to business? We already talked of the agility this brings. Consider a typical scenario that involves mergers/acquisitions/divestitures. From an IT perspective, the problem space moves from one of integrating processes within various departments in an organization to integrating processes across multiple departments and multiple organizations. Each of these organizations or some of them may have adopted different IT strategies, different ERP/CRM/BI systems intra-organization. Pretty soon, one has multiple implementations of similar functionality and different systems that have varying levels of maintainability, availability and having different SLA thresholds. Over multiple iterations, an application remediation/portfolio rationalization exercise is not an option, but an imperative. BPM based approaches offer an elegant option of allowing the businesses of the enterprises to integrate people, policies and procedures quickly by tweaking the controller without disturbing the underlying model. The backend components can then be integrated by making incremental modifications to the implementation without disturbing the interface. Without the benefit of the clean separation of controller functionality that a BPM offers, the customizations that need to be made in the ERP system becomes prohibitively expensive or users need to modify their behavioral patterns to accommodate idiosyncrasies of the backend applications. Even without mergers/acquisitions, other ecosystem changes like a mobile workforce, increased automation allowing for individuals to take on multiple roles, B2B/B2C initiatives keep moving enterprises to the edge. From an IT perspective, the solutions to integration challenges are not significantly different from what was discussed earlier.

To conclude, ERP and BPM offer different approaches to integration within an enterprise. They do have some overlapping features, but predominantly complement each other. BPM systems offer significantly higher levels of flexibility and agility. Standards like BPMN and BPEL extend the shelf life of applications and avoid vendor lock-in while adopting BPM technologies. BPM systems also extend the value proposition of ERP systems in highly mature enterprises that are constantly optimizing. Try searching for “beyond ERP” or industry specific terms like “shop floor to top floor” on your favorite search engine.

Posted in Technology | Tagged , , , | 6 Comments