Thursday, June 28, 2007

How to Sell Enterprise Ajax

I've heard that IT staffs are having trouble selling Ajax to the enterprise. The main enterprise response is "we don't need cute, we need fast and functional." In my opinion, that is the definition of Ajax: fast and functional. We don't add Ajax functionality to PeopleSoft applications to make them cute, we add Ajax to make our applications easier to use. We use Ajax to simplify and automate user system tasks.

I like to compare common web applications like Expedia and Amazon to enterprise applications. Those external-facing portals are enterprise class systems. The difference between those external-facing systems and the standard internal-use enterprise system is the amount of training required to use those systems. Ajax, Flex, and other RIA enabling technologies allow us to refactor our user interfaces to make them intuitive.

Consider complex enterprise purchasing systems... our purchasing agents should not need to learn our purchasing systems. We want them to be contract experts, not purchasing system experts. Instead, our purchasing systems should be so intuitive our users can figure out how to use them with little or no training. This is especially critical for our casual users.

Business Performance Management Magazine recently published an article explaining this usability issue from the perspective of budgeting and planning titled About Face: Why BPM Front Ends Are Failing.

When selling RIA, remember, it is not cute, it is usable.


Javier Delgado said...
This comment has been removed by the author.
Javier Delgado said...

Hi Jim

Very interesting post. I definitely think RIA will start playing a bigger and bigger role in Enterprise systems.

By the way, in your previous post, you were commenting on adding RIA capabilities to PeopleSoft. It's a very interesting subject. Have you ever put it in practice in a customer?

Finally, I added your blog as a link in mines (, I hope you don't mind.

Cheers and keep up the good work!


Jim Marion said...


Yes, I have used Ajax with PeopleSoft. Unfortunately, I haven't implemented PPR (partial page rendering) in PeopleSoft, but I have implemented Ajax in other areas. For example, I've used Ajax with PeopleSoft to load pagelets. I have also used Ajax to display real-time data on transactional pages.

As you can tell by reading my blog, jQuery is my favorite Ajax library.

Thank you for linking to my blog!

PATS said...

Hi jim,

I am currently working in a peoplesoft BOLT-ON application. According to this application, I have to add the GIS maps on the Peoplesoft page.

I mean as the user enters in this page,the page should be loaded with the GIS-maps. And this map should be interactive meaning, users will be clicking on the map to pick the roads they will be working on.

The main aim behind this integration is every department will know the customer working on a particular road (like whether it is blocked or construction work).

We thought of using options like provide a hyperlink to their web control page and once completed redirect back to peoplesoft. But this option becomes a loosely coupled.

So I heard of using AJAX. Can you guide me how to work on this.


Jim Marion said...


Your goal is very ambitious for someone new to Ajax. I have worked a little with GIS. I'm sure each GIS is different, but the GIS I worked with could be embedded in PeopleSoft a couple of ways:


If your GIS system is on the same site as your PeopleSoft system, then you are in luck. Otherwise, you will have to work around cross site scripting issues.

Your method of saving the selected address will depend on the way your GIS exposes the selected street/address. Either way, if you want to save the results using Ajax, then download a good JavaScript library like jQuery. Next you will need to create an IScript to process the Ajax request and return an Ajax response.

I've posted a lot of tips, but it didn't occur to me until recently that I haven't seen a step-by-step tutorial on using Ajax with PeopleSoft. I'll try to get one of those up soon.

I hope this helps. If you can post some more details, I'll try to give you some more specific help.


Peter said...

hey Jim focusing in on this particualr blog title only may not be fair but reading your thoughts i think you answered your own question. Sales 101... sell the benefit not the acronym... if you sell "fast and functional" the Ajax or whatever name we decide to call a really fancy user interface follows... Also it should be noted that I think anyone that uses the phrase web 2.0 should be shot... To put a point in time stamp on something that was born to be so fluid, so evolutionairy is a contradiction in terms. So take this with a grain of peoplecode(salt).

cheers and i really enjoy your blog!

Jim Marion said...

I agree with everything you said Peter. There really is no definitive moment when "Web 2" became "Web 2." What I think is funny is that 10 years ago, I saw web application that were more interactive and dynamic than the current enterprise solutions. Nevertheless, the majority decided to call the "new" web Web 2.0. If you are trying to communicate, you have to speak the language. Web 2.0 and Ajax are the buzz words people are using to define what we've been doing for at least a decade.

By the way, this particular post didn't use the phrase "Web 2.0." My prior post used it to help define what I would be presenting at OracleDay in Bellevue, WA.

Peter said...

hahaha yeah i took a leap to web 2.0 from the mention of ajax simply as a testmanent to my view point not to draw it back to any point you made. ;o)

Thanks Jim love the blog!

Asmita said...

I am wondering if its possible to use Ajax to view the attachments in portal. Now when user clicks on the attachment it takes the user to the intermediate screen and then the user has to click again to get to the document.

Jim Marion said...

@Asmita, Unfortunately, Ajax won't help you with this. When downloading attachments created with the file attachment API, the file can be downloaded from the initial component without requiring an intermediate page. This depends on how attachments were implemented for your specific component. I am going to guess that the developer for this attachment code specifically coded it to open an intermediate page.