"Lots of users are looking at lots of data and doing eyeball correlation. Ideally, we'd like to automate that."
Dave Mihelcic, CTO, Defense Intelligence Systems Agency
After Google Maps Mashups launched the mashup craze in 2005, this consumer-based idea quickly evolved, matured and migrated into the enterprise. Structured tools and platforms emerged that codified more formal, repeatable approaches to mashups, including products like IBM Mashup Center, JackBe Presto, and WSO2 Mashup Server. Finally, the emergence of cloud-based hosting platforms and cloud-based data services have given many enterprises access to a richer set of options for mashup creation and deployment.
Where are mashups in the enterprise today? The goal of this article is to document and share mashup use-cases. It is also an effort to expand upon the previous OSBR articles Open APIs, Mashups and User Innovation and Mapping Mashup Ecosystems. It provides practical mashup implementation examples and patterns collected through empirical and anecdotal research conducted with commercial and government mashup practioners.
In the last three years we have performed many formal interviews and surveys with commercial and government mashup practioners in all 50 United States and over 50 countries around the world. The examples in this article are based on the practical implementation examples and patterns collected through this empirical research as well as anecdotal information from our own implementation experiences of 'inside the firewall' and cloud-based mashups. Much of the research cited is based upon data collected from the 3,890 members of JackBe's Mashup Developer Community and that community's Presto Cloud mashup platform running on Amazon EC2.
From our research we've learned many things about the ways in which mashups are (or are expected to be) applied. One macro-trend appears to unite all other enterprise mashup trends and patterns: enterprise mashups are most applicable in data-intensive areas of an organization where i) information needs are dynamic; and ii) data must reach the user. Given the explosive rate of data growth in enterprise data in recent years, enterprise mashups can have meaning to just about every organization.
The cloud plays a critical role in the relevance and value of enterprise mashups. The value of a mashup increases exponentially as more data sources are incorporated. It is easy to assume that the onus is upon data sources inside the enterprise firewall and in the past this was generally true. The recent rapid growth of enterprise-quality cloud-based data sources makes it much easier to establish genuinely meaningful mashups from third-party data services.
Organizational and Industry Trends/Uses
From an organizational and industry perspective, mashup use-cases and usage patterns are decidedly difficult to generalize. Anthony Bradley, Group Vice President at Gartner Research, said it this way: "...you can't build a general business case for mashups...although you can build a specific mashup-centric business cases." From our own implementation experiences and research, we believe this generally true due to the breadth of applications and industries. However a few patterns have emerged with modest frequency.
Within the realm of government, mashups are gaining a credible reputation within military agencies as a situational awareness solution. These mashup-driven dashboards can help the military planner become better "aware of what is happening around [them] to understand how information, events, and [their] actions will impact [their] goals and objectives, both now and in the near future".
Mashups expedite what is often a labour-intensive process. As one commander put it, they reduce the "gather time" and thus "increase my window for decision and response". Many Situational Awareness Dashboard implementations rely upon cloud-based open sources as an important element in the dataset. An example Situational Awareness Dashboard, based upon an effort being completed for the Defense Intelligence Systems Agency, is shown in Figure 1.
Figure 1: Mashup-Driven Situational Awareness Dashboard
Mashups are also being employed by some federal, state and local agencies to support transparency requirements resulting from the Open Government Initiative, as well as reporting requirements resulting from the Emergency Economic Stabilization Act of 2008 and the American Recovery and Reinvestment Act (ARRA) of 2009. In this case the mashups produce machine-readable feeds for consumption by other cloud-based systems/applications, as well as employee- and citizen-facing Web-based dashboards. The mashups assemble a wide array of information from internal agency systems that manage financials, grants, grantees, recipients, awards, and projects, as well as cloud-based data from other government entities with public application programming interfaces (APIs).
With the commercial sector, mashup-driven operations dashboards appear to be particularly popular within companies that deal in the manufacture or maintenance of physical goods or assets. Other trackable trends in the commercial space include mashups for online product marketing, project management, network operations, network cyber-defense, disaster planning and response, and content assembly/syndication. Many of these use cases rely upon cloud-based data services as an important input to the mashup; many of these mashups also subsequently publish standardized data services for consumption by other cloud-based systems/applications.
These major mashup application trends can be summarized as:
Operations dashboard: similar to situation awareness dashboards, mashup-driven operations dashboards provide management and key decision-makers with a broad view of actionable information sooner than traditional data warehouse and business intelligence tools. For example, one bank created an operational dashboard for senior executives with real-time operational visibility in the bank's key performance indicators, including financial, human resources, and customer metrics.
Online product marketing: the mashup suggests which products to promote in online sales campaigns by correlating up-to-the-minute news stories and online search trends with the company's product catalog.
Project management: consolidates project expenses, budgets, timelines and other relevant data from databases, spreadsheets, and project files for analysis and reconciliation.
Network operations: dynamically connect and unify data from network devices, application logs, topology systems, support knowledge bases, and trouble ticket systems, giving network managers better information that can reduce issue resolution times.
Network cyber-defense: a mashup dashboard that reconciles digital network attack signatures with helpdesk trouble tickets and allows analysts to identify and respond to threats more effectively.
Disaster planning and response: an assembly of open/public news and information sources related to natural disaster can provide a unique picture for responders and aid workers to plan, coordinate and integrate their efforts, ultimately reducing the impact of the disaster. A sample Disaster-Planning Mashup, created from the CDC's 2009 state-by-state H1N1 Flu Statistics in tandem with staffing levels for a theoretical nation-wide company, is shown in Figure 2.
Figure 2: Disaster-Planning Mashup
Content assembly/syndication: mashup-driven widgets of semi-structured content (pieces of text/documents with descriptive metadata, like pages/chapters of books) matched to user preferences that can be shared as well as embedded into web applications and used in mobile devices. This content mobility means greater reuse and a wider consuming audience.
Since mashups are being used in just about every major industry and across a wide variety of functions, the most compelling story is told by the broad range of applications.
In addition to the major trends above, other notables examples include:
Investment decision-support: a customizable watchboard for investment managers that consolidates investment pricing data, analysis, news, and other details necessary to make investment decisions more effectively. A sample Investment Decision-Support Mashup, created as a working prototype for the trading division of the largest diversified financial institution in Mexico, is shown in Figure 3.
Figure 3: Investment Decision-Support Mashup
IT portfolio management: a mashup-driven portfolio management dashboard of key performance indicators and commentary/analysis made up of structured data from project plans/timelines, trouble ticket systems, and spreadsheets along with unstructured content from IT sources like blogs and wikis.
Data aggregation/redistribution: similar to content assembly/syndication, mashups can consolidate and republish data originating from multiple internal and external sources for use and/or license by third-parties, for use internally in new information products and externally by business partners for supply chain integration.
Credit management: similar to investment decision-support, mashups can provide consolidated information for analysts in order to provide better insight into loan recommendations and collections processing.
Metadata management: data quality can be improved by consolidating metadata from disparate databases and metadata repositories, improving data reuse and reducing software development/maintenance costs.
Single view of the customer: a single consolidated view of customer information can aid in customer service and product up-selling/cross-selling, ultimately increasing customer satisfaction, retention and revenue.
Looking at mashups from a technology perspective, the research shows that mashups have some affinity with existing software infrastructure. For example, when potential mashers were asked "Which of the following is the MOST relevant to your interest in mashups?", the majority of respondents connected their enterprise mashup effort with Web user interface (UI) or Data Integration solutions. Figure 4 is based on 1073 responses.
Figure 4: Responders Interest in Mashups
In all of these cases the software/application may be cloud-hosted or derive some/all of its data from cloud-based services.
When considering data-focused technologies such as service oriented architecture (SOA), mashup creators placed the most importance on the presentation component of the mashup that puts the data from those systems in a user-facing format. When considering user-centric technologies that already have user-facing elements such as portals, mashup creators placed more emphasis on the data-assembly/manipulation aspects of mashups.
The survey responses provided a number of enlightening insights on these synergies:
1. Web-based User Interface Technologies
use mashups to expose data from enterprise resource planning (ERP) systems, combine the data into useful information, and publish this information on portals.
...we are using mashup technology to support interaction between data layers and various UIs.
...provide some simplified tools for the public to use to explore our data warehouse portal data...
2. Data Integration Technologies
...our SOA business services are finished...we'll be developing the presentation tier in enterprise mashups.
3. Collaboration Platform Technologies
...streamline and mash [Microsoft] SharePoint site with external data to make it a more information packed and dynamic environment...
...creating a SharePoint dashboard to represent data from disparate datasources including home-grown applications (Oracle-based), Siebel CRM, Primavera, Sabre, as well as feeds from news and stock sites.
4. Other Development Technologies
...mashup data provided to several application toolsets, providing coherence between them.
...an integrated reporting functionality from databases storing related and/or redundant data.
When asked "Why do you use mashups, what drives your interest?", one survey participant had this visionary response: "...to create and optimize Information Systems and Interactive Business Processes to support the growth of companies and organizations that need to collect, organize and share value added information with their clients, partners and suppliers using data from different sources."
The applications of enterprise mashups far exceed the humble consumer-driven beginnings of just a few years ago. Enterprise mashup applications are as varied as the users that use them, the industries they use them in, and problems they are applied to. Every data-dependent organization should consider this emerging technology when considering potential approaches to their dynamic information needs.
As enterprise-quality cloud-based data sources continue to grow and enterprise-grade cloud-hosting options mature, mashup creators will find it increasingly easier to establish genuinely meaningful mashups from external sources and on external platforms.