X
Business

Acceptable screen refresh for on-demand apps

There's no industry benchmark for screen refresh time for on-demand applications (as far as I know), but here are some guidelines that developers can use.
Written by Phil Wainewright, Contributor

'What is the industry benchmark for screen refresh time for on-demand applications?' asks Imre Togyi from HireDesk in an email. There's no definitive answer, so I told Imre I would write a blog posting in reply and hope that readers may chip in with comments.

My personal view has always been that on-demand providers have to offer a user experienceNo one should use the prevalence of broadband as an excuse for sloppy design that's as good as using an on-premises application. That means, typically, subsecond response times. One of the reasons that Google is successful is that the company has always paid attention to how fast its search results come up. It knows that using an application — even one as simple as search — is not the same as browsing the Web. Users are prepared to wait a few seconds for a page to load if they're planning to read it, but if they're in the middle of a process they have a different mindset: they're impatient for the page to load so that they can click the next button and get closer to completing the process.

In the bad old days of ASPs, I always used to warn against them using the Web designer metric that a page should never take longer than 8 seconds to load over a 28.8k dial-up modem line. Eight seconds is way too long to wait if all you're going to do is click a button and then start waiting for the next page to load. I argued for less than 2 seconds, and subsecond if possible. Of course, that was one of the reasons ASPs had the odds stacked against them; they were trying to compete with all the rich functionality of client-server applications, and yet they had to fit it all into about 150k of DHTML.

Nowadays it's probably reasonable for most on-demand vendors to design in the expectation of a broadband connection (and perhaps even mandate it), but it does depend on who your intended user base is. If you want to target on-the-road salespeople with your CRM application, there may be situations where they have to use a dial-up link. If you have an HR application with an employee self-service component, you may have a significant subset of users whose Web access from home is over a dial-up line.

In any case, no one should use the prevalence of broadband as an excuse for sloppy design. Every byte of unnecessary code contributes to user wait times. You may get away with it under perfect conditions, but when users are in a situation where they have to fall back to dial-up, or you have problems at your data center, or there are connectivity problems on the Internet line, then those shortcuts will come back to haunt you.

Remember, too, that there are several distinct factors that affect refresh times. There's server response time at your data center, which depends on how much you invest in the infrastructure and how much load-balancing and redundancy you've buit in. Then there's the Internet connection, which you can influence by using network cacheing services such as Akamai or Limelight Networks. There's the DNS lookup time, which is a factor if you're bringing together components from multiple remote services. Finally, there's the amount of time it takes for the browser to load and process all of this.

Obviously AJAX is a boon here, because it makes it possible to update portions of the browser page without having to refresh the whole thing. That's why quite a few on-demand vendors started using all of the AJAX technologies long before the term was coined.

Imre went on to ask, "Is salesforce.com a company to benchmark against?" I think you could do a lot worse than benchmark against Salesforce.com. For one thing, the company openly publishes its server response times at trust.salesforce.com — as far as I know, still the only on-demand vendor that does so. That provides an excellent benchmark for the sort of performance you ought to aim for from your data center. But of course that's only a small part of the total story.

A good benchmark for page design is Netsuite, which has made extensive use of AJAX technologies for several years and targets a customer base that often doesn't have broadband access. It's done a great job of presenting very sophisticated application pages while keeping download times and sizes to a minimum.

Finally, Imre posed the question, "Are there any specific organizations that offer stats covering this topic?" Not to my knowledge. But maybe a reader knows better. Let me have your views on this topic. Post a TalkBack comment below.

Editorial standards