|
Driving enterprise agility
AJAX is transforming enterprise applications by delivering
a new level of interactivity and usability, says Kevin Hakman.

Kevin Hakman
|
Even as an army of technology innovators led by the likes
of Google, Yahoo!, Netflix and MySpace continue to raise the bar for consumer
experience with highly interactive servicesmost makers of enterprise applications
are struggling to keep pace with the rate of innovation shown by their Web-based
cousins. In contrast to the flexibility shown by the Web innovators in pulling
and personalising information at will from a variety of sources, achieving the
same in the world of enterprise applications has proved to be a Herculean task.
Organisations have tried to solve this problem with the help of Web-enabling
applications which involve processing user requests at the server, and serving
HTML pages accessed through the Web browser. However, while this method is low
in cost, it offers limited functionality. The other option is to deploy thick
client applications that are rich in functionality, but expensive due to huge
costs of management, installation, deployment and end-user support. It remains
to be seen which is the better option.
Enter, the AJAX
The answer, perhaps, lies in AJAX (Asynchronous JavaScript in XML), a class
of technologies that allows a Web browser to get data without having to refresh
the page. Using AJAX, organisations can build Rich Internet Applications (RIAs).
A post in Wikipedia defines RIAs as a cross between Web applications and
desktop applications, transferring some of the processing at the client end.
AJAX, along with complementary technologies such as Service Oriented Architecture
(SOA) and Business Process Management (BPM) promise to pump in a breath of fresh
air in the world of enterprise computing. This combination has the potential
to bring in desired features such as interactivity and usability that is found
lacking in many Web-enabled enterprise applications.
The Power of Three
With SOA, rigid architectures have given way to loosely coupled architectures
where integration between enterprise applications is flexible and cost effective.
Similarly, with BPM tools, business processes can be modelled and existing business
processes can be tweaked to quickly align IT with business needs.
The combination of BPM with SOA has given organisations the foundation to build
composite applications, which are those that can be created by combining functionality
drawn from multiple systems (legacy and new applications) within a service oriented
architecture. This gives organisations the power to leverage and extend existing
applications, with the ability to modify processes or applications as the business
demands. Now with AJAX, the missing piece in the enterprise jigsaw has been
set in place.
What SOA was to the backend, AJAX is to the front-end. AJAX extends the benefits
of SOA by giving organisations the ability to quickly access reusable information
business processes exposed as services using the ubiquitous Web browser. This
approach allows organisations to cost effectively deliver browser-based applications
that perform like desktop applications.
Where AJAX scores
To understand how AJAX is different, let us look at how an HTML page is rendered
in a traditional server-based architecture. Once a user clicks a link or submits
a request, the data is fetched according to the query fired and served to the
user as a HTML page. The HTML stream typically contains about 80 percent presentation
instructions and 20 percent data.
In contrast to this approach, AJAX enables the presentation to be done on the
client side and reserving the bandwidth for data. As opposed to the traditional
click-refresh-load method, this approach enhances application scalability and
decreases system latency.
Instead of a single interaction per page, each element in a page is interactive
allowing users to interact and seek information faster than they did before.
For example, when a user at Netflix moves his mouse over the title of a film,
the site responds with information about the storyline and the cast.
Compare this to the traditional approach, where a click refreshes the whole
page. By using AJAX, users can quickly and flexibly play around with elements
on a Web page, as only part of a page is updated, instead of reloading the entire
page. With AJAX, the browser pulls in relevant information from the server in
small incremental steps and stores it locallydrawing upon it only when
necessary. This approach prevents repeated downloads, making AJAX applications
run faster after the initial download.
Enhanced agility
|
The biggest advantage of AJAX over
Flash and Java in making a Web application more interactive is that no
plug-ins, Java applets, ActiveX controls, installed client or server frameworks
are required
|
The biggest advantage of AJAX over Flash and Java in making a Web application
more interactive is that no plug-ins, Java applets, ActiveX controls, installed
client or server frameworks are required. As AJAX uses DHTML techniques, download
sizes of DHTML pages are typically much smaller than average Flash SWF files
or Java applets.
Most AJAX applications load in a couple of seconds, whereas standard Java applets
take longer to load due to their usage of larger libraries which means they
have to load all over again to get started in case of a change. This capability
of AJAX allows the creation of a multitude of interactive mini-applications
that can be run by just using a Web browser. This brings a new level of interactivity
and flexibility to the world of enterprise applications that was previously
confined to the world of consumer-oriented sites such as Netflix and Google
Earth.
The benefits of using such an approach are tremendous as it puts more power
in the hands of the end-user. Other attractive benefits are lower development
and maintenance costs. Using visual authoring tools, components can be reused
to quickly create configurable applications. As development of the applications
front-end and back-end is independent, it allows separate developer teams to
work in parallelsignificantly cutting down the time required to rollout
a product.
As the client handles the presentation process, it reduces the number of server
resources required to process a high number of user requests. Similarly, less
bandwidth is required as only data and not presentation structures are frequently
sent to the client via the browser. This capability makes AJAX fit for performing
a variety of tasks such as updating records and validating inputs in forms without
the need of hitting the refresh button whenever a change is made.
Look before you leap
While AJAX has taken the consumer world by storm, enterprise users should evaluate
vendors by looking at their experience and expertise in AJAX, besides product
offerings in BPM and support for SOA.
Desired features are drag-and-drop visual authoring tools for standard XML messages
and support for reusable components, which saves time of developers in writing
scripts. The toolkit provided by the vendor must allow enterprise users to rapidly
build user application interfaces, forge connections to XML data sources and
Web services, besides managing the client-side data cache. Also look out for
debugging utilities which enable inspection of outgoing and incoming messages
and headers.
Endless possibilities
BPM offers a unique opportunity to use AJAX to enhance the user experience and
deliver greater flexibility at significantly lower costs. Using AJAX in combination
with BPM allows developers to build enhanced user interface capabilities for
their composite applications.
By using AJAX toolkits from established vendors, organisations can create desktop-based
functionality and interactivity for enterprise applications and access using
a Web browser interface. For example, a user interface built with an AJAX toolkit
helps a business user in quickly modelling or modifying a business process using
simple drag-and-drop techniques. Errors, if any, are shown instantly.
A change in the business rules automatically changes the code, giving business
users the power to tweak their business processes the way they want it. AJAX
is the key to empower business users and maximise performance in BPM.
Similarly, in the case of a call centre, customer queries can be quickly answered
by enabling the staff to quickly pull and interpret information from different
sources instantly. As there is no latency in serving of information, AJAX complements
the vision of Business Activity Monitoring as it allows business managers to
look at self updating dashboards, scorecards or monitoring models to facilitate
quick decision-making. This enables high business agility as business managers
can quickly monitor and modify processes to suit business strategy.
While AJAX has been more of a consumer driven trend, it is gaining momentum
in the enterprise with the support of leading vendors. For enterprise users,
who have often struggled to get used to the type of interaction imposed by the
enterprise application, the coming together of SOA, BPM and AJAX represents
a massive opportunity for bringing the much needed enterprise personalisation
and interactivity that has been missing in enterprise applications.
The author is Director, Product Marketing,
Tibco General Interface
|