Creating Mashups in the Enterprise
Jaskaran SinghCTO
mplSystems positioning and credentials
• Sound heritage in Contact Centre Operations and software development
– Established January 1994– Seven operational contact centres UK wide
• Strong Customer Base– 2000 Customers across EMEA– Growing technology business
• A Sustainable Technology Platform– Microsoft Gold ISV Partnership– Patented Technology
The Message
Pad Limited
The Message
Pad Limited
mplSystems
mplSystems
Message PadOutsourced
Services
Message PadOutsourced
Services
mpl Consulting
mpl Consulting
Mashups
• Definition “A technique for building applications that combine data from multiple sources to create an integrated user experience”
• Current examples of mashups mainly consumer focused• Use of external services and data sources such as Virtual Earth, RSS, Live Services etc
• Developed by users with knowledge of HTML and JavaScript
• Hosted by ISPs
Enterprise Mashups• Extending the mashup architecture to allow enterprise platform services and data sources to be consumed
RSS Feed Web Services
Platform Services Data
Mashup Application
CRM, ERP, BI, BPM
Enterprise Data Issues
• Enterprise data is often locked in application silos and made available through restrictive UIs
• It often takes time for changes to be introduced to core enterprise applications as system development is required
• Line of business users often build “quick and dirty” solutions using Excel or Access creating a maintenance overhead for IT teams
How Mashups can help
• Allow line of business users to create applications that can combine data from different sources with in the enterprise
• No need to get system development teams involved to modify core enterprise applications when business processes change
• Business users can create more elegant solutions for immediate business problems.
Limitations with Enterprise Mashups
• Require business or end users to know HTML and JavaScript to create mashup applications
• Deployment• IT may not approve of an enterprise application being hosted externally by an ISP• There is IT involvement for deployment of application on internal infrastructure and they may not react quickly enough to upload changes
• Change management
Solution ~ Enterprise Mashup Platforms
• Create a platform for developing and managing mashups in the enterprise
• The platform should include:• A non programming interface for developing mashups• Simple interfaces for consuming services and aggregating data• Easy deployment facility without getting IT involved• Allow changes to be managed and tracked• The platform itself is exposed as service
intelligentContact ~ Mashup Platform
• A platform that has done well in the contact centre
• Designed for business users to quickly create applications without any knowledge of HTML or JavaScript that model a business process
• Allow users to create their own custom data storage as well consume platform and external services
• Create workflow, share data and build MI reports from data taken from the various sources
• Number of wizards / connectors to platforms such as Microsoft CRM 3.0 and 4.0, Dynamics NAV, Seibel CRM, SAP
intelligentContact ~ Application Designer
intelligentContact ~ Application Designer
intelligentContact ~ Application Designer
intelligentContact ~ Wizards
intelligentContact ~ Example
intelligentContact ~ Architecture
Data Engine Runtime Engine
Workflow Engine
Application
intelligentContact DatabaseClient Data (multi-tenanted)
intelligentContact Platform
Platform / Web Services
(CRM, ERP, RSS etc.)
Pla
tform
Serv
ice Application (stored as XML)
Application (rendered as HTML)
Conclusion
• Enterprise mashup tools must be aimed at non-technical business users
• They need to be easy to use
• Mashups should be easy to maintain / manage
• They should be able to expose themselves as platform services and data sources
• The platform should provide options for end users to manage and deploy their mashups
• IT teams should only have to manage the mashup platform and the core platform services that are consumed by mashups