Hosted applications: software as a service
Since the earliest days of computing, users have had the choice of owning and operating their own computers and programs or running their applications at a remote service bureau. Whether the service was accessed by submitting a deck of cards or by typing information into a time-sharing computer, a service bureau would own and operate the equipment and run the jobs.
Running jobs on remote computers was one of the key goals of the funding for ARPANet, a network that preceded the Internet. ARPA wanted the researchers they funded to be able to run jobs on each other's computers. (See this historic paper).
As computer costs fell and millions of computing professionals were trained, in-house computing grew much more rapidly than the service bureau business. The Justice Department also forced then-dominant IBM to divest itself of its service bureau business.
Today, the pendulum is swinging back. As network speed, storage capacity and reliability increase, the case for hosted applications improves.
An organization has four general options for running an application:
- Write a custom application and run it on their own servers or desktops
- Purchase an application and run it on their own servers or desktops
- Write a custom application and host it on the Internet
- Use an Internet service
While the trend is toward hosted applications, we must keep their advantages and disadvantages in mind. Some pros (+) and cons (-) of hosted applications are:
- + The application can be run from anywhere, including by mobile workers
- + There are savings in in-house IT infrastructure and personnel
- + The service provider has specialized expertise and skilled employees
- + The software can be continuously upgraded and debugged at no cost
- + The software vendor sees how it is used, and can make improvements using that data
- + Upgrades do not have to be installed on client machines
- + Initial investment by the user is minimized
- ? Operating expense may be greater or less
- ? Reliability and availability may be increased or decreased
- - Intruders may be able to access the application
- - The service might not be as flexible and well tailored as software written in house
- - The service vendors may go out of business
- - The service vendor may alter the service, pricing, etc.
- - Data may be insecure at the vendor's site, particularly if it is out of the country
- - Exporting your data may be difficult or impossible, locking you into the service
Network World asked the question "is on-demand CRM better than an on-premises solution?" and published a short debate. You can read the Yes and No arguments online.
Universities are also turning to network services -- the University of Arizona has been a leader.
Running an application on the Internet is often called "cloud" computing, and a UC Berkeley research team is studying and trying to overcome cloud computing obstacles. Their initial report is summarized here, and the full report is here.
The application service business is growing rapidly. You can follow industry news on blogs like: