Imagine your mobile customer agents could access your customer relationship management (CRM) system on a mobile device while traveling. They could browse the customer data (like address, contacts, orders, assets, contracts and service requests), right in front of the customer—or maybe even together with the customer—and place new orders or service requests in the back-end system right online. (Or they might do so right after meeting the customer.) The data would be available in the CRM system right away for further processing by back-office agents or later by the mobile agent himself or herself.
In a recent demo, IBM showcased a set of mobile apps for iOS and Android tablets and smartphones doing exactly that. The aim of this project was to provide the full range of customized CRM functions on a wide range of devices. The apps should connect with an existing, customized Oracle Siebel CRM system without making any changes in the system itself and reusing as much as possible any existing and complex business logic implemented on the Siebel server. Through the app, the user should be able to find a customer, access his or her customer data, contacts, service requests and opportunities easily, and submit a new opportunity (which can later be processed and converted into an order using the rich and customized features available only on the big screen in a Web browser).
The team decided to make use of the Siebel Web Server Extension (SWSE), an XML-based web service interface exposing every screen of the customized Siebel web browser user interface (UI) in the form of XML documents. This approach allowed the team to make as much reuse as possible of any customized business functionality in the Siebel CRM system (in contrast to integrating directly with the Siebel database or the Siebel enterprise application integration [EAI] layer).
But the XML documents created by the SWSE interface are much too verbose (covering all data displayed on the whole screen) to be sent to a mobile device, while, on the other hand, most of the UI interactions envisioned for the mobile app would require multiple calls to the SWSE interface. The team has therefore developed an aggregation framework, a Java-based RESTful Web services interface that aggregates the SWSE web service calls into business services tailored for mobile applications exposing only those data as XML elements that are needed for the use cases envisaged for the mobile apps.
Results and benefits of the solution
The architecture proved to be well-suited for the given requirements. Server functionality could be employed in RESTful Web service calls exchanging single, concise JSON objects allowing for optimal performance of the client—even for complex operations like creating new Siebel opportunities. The hybrid apps developed with the Worklight platform offer an appealing screen design with a clear and concise user interface (much better suited for casual users than the rich and clumsy full web browser user interface) demonstrating superior performance with quick page transitions. The solution was successfully showcased at the CeBIT fair on Information Technology 2013 in Hannover, Germany.
The images below show some sample screens of the CeBIT demo:
- login screen
- home screen
- account search screen
- account search result screen with four demo accounts
- account details screen for the Pen Inc. demo account displaying the main contact for this account (“Sandra Cunningham”)
- new opportunity entry screen that can be reached from the account details screen by tapping on “new opportunity”
More to come
In the meantime, please nurture the discussion by leaving a comment below. Do you see any other use cases for mobile CRM? What else could you do based on the technology offered by the Worklight mobile enterprise application platform and an aggregation service like the one described above?