The definitions or descriptions of newly minted terms and acronyms have been flying around this past year. To add to this, I’ll contribute another one: Rich Enterprise Application, or REA.
To be clear from the start, REA is an evolution of Rich Internet Applications (RIA) and not an entirely new category created out of thin air. Like RIAs did for consumer facing applications, REAs offer the same advances in usability and interactivity but are designed to meet the needs of enterprises.
REAs extend far beyond simple RIAs to integrate seamless connectivity between Ajax-based Web applications and Service Oriented Architecture (SOA) business services. REAs leverage investments in SOA and the power of Ajax, and combine the two to enable innovative new business and application models such as Software as a Service (SaaS), enterprise mashups, next-generation portals and browser-based composite applications.
What sets REA solutions apart is that they have built-in facilities to ensure enterprise levels of security, scalability and reliability all while reducing software and support costs through browser-based application development and delivery. To attempt to encapsulate this in one short sentence: RIA is to consumer facing applications as REA is to enterprise-grade applications.
What is the difference? Well, it has a lot to do with governance. It is no surprise that enterprises require tighter control, security, and reliability. In short they require a degree of governance that the average user building a Google Maps mashup while sitting at their kitchen table doesn’t need.
People have heard a lot about Web 2.0 and Enterprise 2.0 lately. I can see a similarity here that I think might help to distinguish between these two, and REA and RIA.
Most of the talk surrounding Web 2.0 has been focused on the social collaborative aspects that it brings to users. I agree with this. Now take all of this (Web 2.0) and sprinkle governance, security and commercial-grade reliability and one has a Web 2.0 model that is fit for an enterprise (Enterprise 2.0).
Following the same logic, let’s look at RIA and REA. RIA has brought an enhanced desktop-like look and feel to Web applications. It looks, feels, and from a user perspective, performs a lot better than some Web-based applications of only a few years ago.
Users in Control
This richness is all done in the browser, which works fine for all of the real estate mashups popping up everyday. It puts the control and build in the hands of the users — they can do what they want as long as they have access to the services.
A lot of enterprises want to encourage and capitalize on this new Web 2.0 movement within their organization, to leverage the network effect and the value it brings. However, because of what was mentioned earlier, organizations have to impose a slightly different model called Enterprise 2.0.
Given this and Enterprise 2.0 requirements, RIA simply will not work for true and real Enterprise 2.0-grade applications. They need the richness of RIA but with the governance that Enterprise 2.0 requires. Now, we have Rich Enterprise Applications that extend the attributes of RIA past the client and into the enterprise’s resources. Enterprises can feel comfortable in doing this because REA has this added governance portion.
REA enablers make up the architectural components needed to provide the browser-to-server connectivity. Other technologies are built over this, in order to ensure compliance with enterprise issues such as security, scalability and reliability. REAs provide server-side governance of data and services, as well as the ability for business users to create their own situational applications.
Situational applications are a way for people with domain expertise to create applications in a very short time.
These “long tail” composite applications or enterprise mashups integrate existing SOA services and processes to address high-value business needs that would not be funded or built based on traditional IT priorities. To make REAs a reality, one needs three technology enablers:
- Ajax, which represents the browser-based application
- SOA, which provides the data and services required by the applications
- The Web, which represents the connectivity between the browser-based Ajax applications and the SOA-based business services
When combined the correct way and taking advantage of the subtleties of each, these enablers facilitate the creation of both development and runtime platforms for highly scalable, reliable and secure REAs. The business developer can integrate with back-end middleware and services with the proper governance to satisfy the IT group. In this way, REAs really help finally bring together IT and the business unit. We’ve been waiting long enough for the tools to do so.
How Will REAs Help Facilitate Strategic Value?
The real benefits of REAs revolve around optimizing business activities. This is key because this is an area that, because of technology limitations, has yet to feel the productivity gains associated with the abovementioned technologies and architectures, let alone the synergistic effects when they are combined.
Think about it. IT can empower the business unit to build the applications it needs and wants when it wants, and can do so because the governance is in the correct place — on the server and in the hands of IT. Like a lot of enterprise applications, the benefits reach multiple groups (the business units and IT) and the same is true with REA.
REAs enable developers to create new situational applications that can offer improved usability and flexibility for the end user, and can deliver them faster than was possible using traditional approaches.
This can empower the business users to easily assemble their own situational applications in response to rapid changing business requirements we all face today in the networked world.
In this way, REAs are really the next evolution of tools needed to adapt to Thomas Friedman’s flattened world. By providing faster, easier, and more flexible access to business data and critical applications based on that data, users are able to make faster, better-informed tacit decisions.
For IT, REAs can help free up time from the arduous task of handling all the requests for new applications coming from line-of-business groups (which are seldom satisfied because demands are always greater than available development resources).
REAs allow IT to empower business units to build the applications they want, thus freeing up IT time for more critical issues. At the same time, IT retains its ability to govern, secure, and manage enterprise infrastructure and data assets — and has more available time to devote to this critical mission.
Here again we see how REAs can help both units do what they are supposed to do better.
REAs have the potential to align IT with the needs of the business by enabling true partnerships between the business units and IT. It shifts responsibility for the business use of IT assets into the business unit while maintaining centralized IT governance of those information assets including definition, security, and processes.
The Web 2.0 movement is about the next wave of Web-based applications which puts more power and capability in the user’s hands. It’s been called everything from “programmable Web” to “read-write Web” to “user 2.0.”
It’s really about putting complete personalization and customization in the user’s hands. Not only is this the “age of personalization” for the Web, it’s the age of personalization for Web development, too. So far, REA seems to address both of these in a better way than the alternatives.
It would be hard to believe that an enterprise wouldn’t want to optimize and streamline its business activities to achieve greater productivity from their existing people and technology infrastructures.
REA is a class of applications that can do this by addressing the special needs of the business while continuing to offer the ease of use and the 24/7 availability of the Web.
John Crupi is CTO of JackBe.