Creating Dynamic Business Applications using Semantic Web Technology – Part II

This is the second of a two-part series discussing how Semantic Web Technology can enable Dynamic Business Applications in the enterprise. Read Part 1 of the article here.

Empowering New Roles and the Future Role of IT

Employees throughout the enterprise have been improvising for a long time in order to fill gaps in their business applications and process infrastructure with ad hoc processes and know-how.  In a recent Aberdeen Group survey, a majority of the 125 executives surveyed reported that manual intervention was necessary to compensate for missing features in enterprise applications used for business tasks and processes.    We regularly hear comments such as the following about why business users want more dynamic, adaptable applications: 

  • “I like using this report, but it has a lot of information I don’t need.  I wish there was a way to leave out the information I don’t want”
  • “I need to consult three databases to do my job.  The data warehouse includes all three, but it wasn’t designed with my job in mind”
  • “A lot of people need to see the same data, but in different ways.  We only have three different screens.  We need about 30.”
  • “I need to explore the data in new ways, not just read canned reports about how we have always used the data.”

People are adept at becoming expert, if fragile, mediators between contexts, routinely connecting disparate applications and data sources to perform essential, everyday, tasks. The proliferation of unstructured, ungoverned, but necessary grass roots solutions can only be expected to grow as people exercise ‘creativity at the edge’ to accomplish their roles and responsibilities – too often in ways that can be strategically suboptimal for the enterprise as a whole. 

As a result, the enterprise technology ecosystem includes a lot of improvised practices or processes that remain in place for years such as localized, homegrown applications and spreadsheets, overloaded use of database fields for purposes not originally intended, and so on. 

 “In reality, non-technical people have been involved in automating decision logic for years. But the tools they use – typically spreadsheets – are not built to be scalable or shareable. Worse, they are completely outside of the control of IT and as such may pose a security risk.1”

How will enterprises deal with these practices?  IT may resist them officially, but let’s face it, ad hoc adaptation to deployed systems will happen whether central IT groups like it or not.  In the new global business world described above, these costly and inefficient disadvantages of the traditional development process and IT-centric solutions are amplified – and become even more expensive:

  • People building the applications do not understand the data or its business context and processes. 
  • Models aren’t in the system.
  • Business users need to interact with multiple disparate data sources, and integration is difficult and time-consuming.
  • Applications are often designed for a single problem with static, inflexible user interfaces.
  • Data is searchable but only with predefined, domain-specific queries.
  • Data presentation is determined by non-users.  IT is forced to guess how end-users will use applications instead of allowing these users to customize and view the information as needed.
  • IT resource and development lifecycle constraints continue to create lengthening backlogs for service requests from frustrated business users.

Semantic web technology and emerging architectures and platforms that support semantic model-driven applications offer a way out of this conundrum. This technology can provide for more user involvement in the development and evolution of the applications they use and can also help to constructively define and actively mediate the new roles that IT should play. What if, rather than constantly switching between homegrown spreadsheets and the idiosyncratic interfaces to back-office systems, business users could mash together data from the back-office systems and databases, and view, discover, search, and process the data in different ways according to their own needs?

This is already happening in semantic model-driven solutions within the pharmaceutical industry, where dynamic business applications are being built by on the fly and used to create enterprise mash-ups for better access to data by pioneering change agents in this field.  These innovators are power users, who may be technical in their domain, but not IT staff, and they point out that eventually the technologists will have to look up and say “how are you doing this?”

Semantic model-driven applications make this possible because they empower the new roles that the Forrester report calls for:
 “In the Dynamic Business Applications era, business analysts — increasingly called business architects in some of the early adopter companies — must deepen their technical skills to participate in development more actively, creating models, business rules, definitions, mashups, and other live assets to drive IT development.”

At the Veterans Health Administration and in healthcare more generally, clinicians have played this role, because their education includes a high-level of analytic skills that made it easier to add and learn the required technical skills.  

Business architects are emerging in other areas as well.  Semantic technology and ontologies in particular help domain experts and other non-IT users perform this role by lowering the barrier for direct participation in the development and evolution of not only semantic models of the data for their application domains, but also the models that govern the application user interface and interactions, process execution and workflow, and governance.

We are seeing customers in several industries use the new capabilities offered by semantic technology to create innovative responses to the imperatives for the rapid assembly of adaptable applications. They confirm that ontologies and semantic-model driven application architectures improve collaboration among all stakeholders and allow business and technical users (including both IT and subject matter experts) to cooperate in the development of solutions that address their business needs. 

Contours of this new territory are still emerging. Some of the signposts clearly indicate that that the future of application development is neither “business as usual,” nor is it “IT as usual.” As one analyst characterized it in a recent conversation traditionally IT’s role has been in the engine room, it now needs to become something more like a movie producer.

What does Semantic Web Technology bring to the Party?

Semantic web technology has unique capabilities to address many key challenges to enabling dynamic business applications.  A central one is a flexible data model. The original Forrester report primarily addressed the importance of providing flexibility in the business logic layer, focusing on the enabling technologies for business rules and processes.  It did not discuss data model flexibility (how an application can be easily and quickly extended to either support new data fields required or to bring in new data sources), but this is critical to providing an infrastructure for flexibility in the business logic layer.  RDF provides a uniform, standards-based shared data representation that enables distribution and integration of data.   It is standardized in a ‘least common denominator’ data model that creates maximum flexibility for data mappings and integration.  When you bring data representation to RDF’s granular level of describing all data as short, three-part statements known as “triples,” you no longer have to deal with structure mismatches in data representations such as tables.   As a web-wide standard, RDF provides a shared and fluid basis for semantic representation of data, metadata and models that can be used very effectively for data mediation and integration.  For business users of dynamic business applications created by partnerships of business architects and IT staff, semantic web standards allow for easy integration of new data as needed, with metadata that provides meaning and connectivity so that the users don’t need to know what data exists to be able to query it.   It gives them the flexibility to decide what information they want to see, not what some programmer decided to give them.

Semantic web technology advantages for creating flexible data and model representations include:

  • Global identifiers for everything
  • Models for creating explicit relationships between data
  • Ability to express the ‘meaning of data’ at run-time
  • Direct means to connect, merge and layer data without special programming
  • Ability to share the meaning of data on the web or intranet

These days, data integration needs for enterprises are growing exponentially. The types of data sources and formats also continue to increase as systems try to integrate relational databases, email, Excel, HTML, RSS feeds, RDF, Instant Messaging, VOIP, and more. By their own assessment, relational database experts have concluded that reliance on relational databases introduces significant data architecture inflexibilities as measured against enterprise needs, We find the capabilities of semantic web technology-based data representation and models to be essential as a foundation for delivering dynamic business applications.

The figure below illustrates an architecture view that we have developed in collaboration with some of our customers’ Business Architects, showing how a new class of dynamic, business applications is being created by combining capabilities for:

  • Semantic data integration
  • Semantic model-driven application assembly, configuration and use
  • Configurable components for dynamic presentation and interaction

 

TopQuadrant Image

Semantic (model-based) Application Architecture

With this approach, semantic model-driven applications are created as flexible, configurable applications where changes to application presentation or behavior can be made by changing the model instead of programming, based on:

  • Declarative, reusable domain models with clear semantics
  • Models as part of the run-time environment that users can query and evolve incrementally
  • Reusable user interfaces

The rapid deployment of evolvable applications using semantic web technology as a central enabler is already happening.  In our experience with our customers, we find that the minimal requirements for a platform that must be in place to support building and sustaining semantic-model driven dynamic business applications include:

  1. W3C standards-based architecture that supports Semantic Model-driven Applications
  2. Connectors to common data sources and formats including RDBMS, email, Excel, XML, HTML, RSS, RDF
  3. Graphical application assembly toolkit
  4. Enterprise-class application deployment platform
  5. User-appropriate tools for modeling, mashups, visualization, application configuration and customization
  6. Integration with legacy and third-party applications

 
Looking Ahead

A much more in depth examination and explanation beyond the scope of this article is needed to articulate and weigh how semantic model-driven applications can work as a reliable, strategic foundation for producing dynamic business applications.  Certainly there are concerns, pros and cons, and challenges such as establishing the new collaborative roles between business and IT, for example Business Architect that enterprises will need to support in terms of change management and competency development.   IT will continue to have a central role, but must provide not only applications, but the tools (such as model-driven interfaces) for business users to customize, extend and evolve those applications without programming.

1 http://blogs.techrepublic.com.com/tech-manager/?p=470
###