All enterprise and business applications face the challenge of “last mile personalization”. These applications are designed on the “80% Rule” which means that they do 80% of what the typical customer wants and leave the remaining 20% to customization, or have the customer do without it. Trying to deliver software that does 100% of what every customer wants is impractical, not only from a software development and maintenance cost perspective but also because customer requirements constantly change. Achieving 100% of a moving target is impractical. It is the pot of gold at the end the rainbow which no one has been able to reach.
However, in this age of social networking, rapid communication and instant gratification, customers want their software to behave exactly the way they want. This is especially true for enterprise or business applications for which the customer has paid a significant amount of money. The expectation for an application to do exactly what the customer wants is directly proportional to the cost of the software. Product managers have to make difficult compromises about what features to add to the product, the cost and time these features will incur, and the incremental business or customer satisfaction that will result from the inclusion of the features.
This challenge has become more acute with the rapid adoption of the smartphone beginning with the introduction of the Apple iPhone in 2007. Smartphone and tablet usage has exploded, and they are fast becoming the default hardware devices for interacting with many software applications. On top of all this, there are now the additional challenges of deciding which platform to support among the three leading contenders (Apple iOS, Google Android and Windows Phone 7.x), and whether to go for native or HTML5 applications. These choices further increase the complexity and the cost of achieving a high level of customer satisfaction.
Chatty Apps combined with service oriented architecture (SOA) offers a perfect solution for “last mile personalization” while at the same time enabling the application to run on all popular mobile platforms. The solution is simple and elegant and does not compel the ISVs to deviate from the strategic path many to them have already adopted, which is to deploy SOA. Chatty Apps is able to deliver the holy grail of software applications because of its three key characteristics:
- Chatty Apps allows users to create cross-platform applications, either native or HTML based
- Chatty Apps are created without programming or scripting, making it a “do-it-yourself” product for power users
- Chatty Apps provide seamless and robust integration with Web Services, whether they be SOAP or REST-based, and is agnostic to the platform.
Propelled by the need for easier integration, many ISVs have already adopted SOA as an important element of their strategic product roadmap. This entails exposing the functions of their software applications as Web Services, providing a security and discovery infrastructure around them, and then enabling other products to consume these services as a part of a business process. Many ISVs have either completed their SOA initiatives or are well into the deployment phase. This SOA infrastructure is available for Chatty Apps to use.
ISVs with the typical 80% solution can offer Chatty Apps to their end users to create the remaining 20% of features which are unique to their needs and requirements and solve the riddle of last mile personalization. As illustrated in the diagram below, on one side Chatty Apps allows users to create cross-platform interfaces that work on desktops/laptops as well as the gamut of mobile devices. On the backend, Chatty Apps integrates seamlessly with the Web Services already deployed by the ISV. In its role as middleware, Chatty Apps controls the sequence of interactions between the Web Services on one side and the user interface on the other. Chatty Apps orchestrates the execution of the business process by making use of its built-in capabilities which makes it easier for the end user to personalize the business process to their exact requirements:
- A flow chart to graphically define the sequence in which web services are called and user interface steps are invoked
- A rules engine and designer to provide the smarts to make intelligent, context-aware decisions in real time that can alter the sequence and optimize the behavior or response based on live data
- An actions designer which enables the definition of smart, rule-based actions which perform a specific function and can be invoked at any point in the flow. For example, simply pointing your finger on a label in your iPhone could invoke a server side action that calls a web service that reads data from a back-office system makes some decisions based on rules and then updates the screen of the iPhone.
- Web Service action designer that enable the definition of actions that invoke Web Services. These actions may also be invoked from any place in the application.
This powerful combination of Chatty Apps and Web Services means that power users can build their own Chatty Apps to implement features and capabilities that are unique to the user. While 80% of users will be happy to keep using the standard features and capabilities provided out-of-the-box in the software application, the remaining 20% who are not satisfied can create the missing capabilities using Chatty Apps. Furthermore, since business requirements are always in a state of flux, the flexibility and ease of use of Chatty Apps also means that business can rapidly change their apps to adapt to the changing needs.
While we have talked about ISVs in this article, the benefits of using Chatty Apps combined with Web Services are equally applicable to companies that have their own customized applications and those that have hosted solutions for Software-as-a-Service applications. These companies also face the challenge of last mile customization which can be ideally tackled by Chatty Apps.