Web Applications
Constantinos Phanouriou
Imagine a computing environment where your wordprocessor software
does not reside on your PC's hard disk. Instead, the executable code sits on a
remote server. That server might be owned by your corporation or government
agency, and might only be a short walk from your desk. Or the server could be
owned by the developer of the wordprocessor software and might be physically
located hundreds, even thousands of miles away. Imagine that the wordprocessor
works equally well on your Intel-based PC or your Macintosh, is always the
newest version, and costs the same regardless of the operating system. In a
sense the network is the operating system, and your enterprise network is the
part of the World-Wide-Web that's behind your firewall.
Vision propounded by Scott MacNealy, CEO of Sun Microsystems
The Web Environment
The Web, while providing significant benefits, introduces new technical
challenges with respect to scalability, and management of session, state,
transactions and security. These challenges are as follows:
- Web applications can face unpredictable and potentially enormously peak
loads. This demands a high performance architecture that is extremely
scalable.
- The Web is a stateless environment, in which the client and server are
loosely coupled. Applications must keep state information from one page to
another if they are to avoid requiring users to re-enter information such as
user name and password from page to page.
- The Web presents new security issues for companies wishing to make
internal databases accessible to external users. User authorization and
authentication are more challenging in the Web environment because of the
large number of potential users.
- The Web is changing rapidly and standards are still evolving.
Advantages
- Platform independent
- Always get the latest version
- No setup time for new applications
- Better monitoring of usage
- Remote user evaluation
- Reduce cost for client hardware
- Distribute load on mulitple machines transparently
- Reduces deployment costs and overcomes performance limitations of
client/server applications
- Enables companies to provide new services and reach new customers
Tools for generating Web Application
- WebObjects
- NetDynamics
- Javamatic
Dynamic web applications are often difficult to create because existing web
development tools prevent companies from:
- Leveraging their investments in existing applications and data
- Integrating with complementary technologies, web-based and others
- Deploying robust, dynamic web solutions in a timely fashion
Future
- Proprietary GUI interfaces replaced by Web interfaces
- Web browsers that manage intranets, hubs, routers, printers,
workstations, PCs and numerous other networked devices
- Web-based systems that leverage existing application resources and
data stores