Documente Academic
Documente Profesional
Documente Cultură
org/opinionpapers
November 16, 2005
EXECUTIVE SUMMARY time and costs, taking web development to a whole new
level. The second wave of web applications is now starting
WEB APPLICATIONS: NEW TRENDS to roll in. The questions companies need to ask internally
Web-based applications have jumped in use and popu- is when to get on board, and how best to ride the tide.
larity in the last decade, beginning with Amazon.com’s
e-commerce Web site in the 90’s
to today’s enterprise resource plan- WHO SHOULD READ THIS PAPER?
ning and business intelligence ap- This evaluation will help Web developers and
plications. Using a browser, end marketers understand the next generation of
users can book airline tickets, bid applications from both a business
on auctions, check email, buy and and technical perspective.
sell stocks, submit tax forms, or
listen to music from any networked RIA technologies are still immature
computer. If this was the first wave and evolving day by day. This pa-
of web applications, the second per guides you through the en-
big wave is yet to come in the form trance gate of Rich Internet Applica-
of Rich Internet Applications (RIAs). tions, and provides many RIA re-
sources to explore further.
You may already be
familiar with words
like “AJAX,” “Flex,” CONTENTS
“Thin Client,” or
“Rich Client.” These Image sources: Zimbra, Zamlon, Harley-Davidson
technologies
are part of the
RIA family.
© 2005 UW E-Business Consortium (Confidential, For UWEBC Members use only, not to be reproduced, sold, or otherwise distributed)
Rich Internet Applications November 16, 2005
WHAT ARE RICH INTERNET APPLICATIONS? However, desktop applications offer the following
advantages:
To better understand RIA, compare two famous map Web
sites: Yahoo! Maps and Google Maps.
• Richer user experiences
(Audio, video, communications)
• No page reloading
• Support both online and offline
• Enable more complex applications
(e.g. MS Outlook vs Webmail)
• More responsive and interactive
Open Source RIA movements are also booming. Laszlo The Broadmoor Hotel in Colorado Springs improved its
Systems delivers the “Open Laszlo” server platform for online hotel reservation experience using RIA. Now users
free while Mozilla Foundation offers a proprietary RIA can choose dates, check availability & pricing, type cus-
technology called XUL (XML User Interface Language). tomer information and complete a reservation all on one
page. Every task is accomplished on demand and in real-
time without multiple steps or pages being reloaded.
5. Web Services & SOA RIA can also be applied to any processes that require
From a developer’s perspective, the emergence of Web multiple steps and back-and-forth page iterations. Regis-
Services and Service Oriented Architecture (SOA) tration is one example, shopping cart checkouts are an-
changed how we develop business (middleware) appli- other. This will not only improve the user experience, but
cations. Their emergence also has strong influences on also reduce server load. For the checkout example, a cli-
how presentation layers should be developed and com- ent computer can calculate all pricing, taxes and shipping
municate with service layers. Web Services and SOA costs every time a user interacts. The server will only re-
enable presentation layers to be completely independ- ceive the final order.
ent from business logic layers. Most RIA platforms are
pluggable presentation layers on top of existing middle-
ware, thanks to the power of Web Services and SOA. A9
A9, Amazon.com’s search engine company, which is not
Not to mention, we cannot ignore XML, which is the as widely-known as Google or Yahoo!, is also an RIA pio-
foundation of not only RIA but also Web Services and neer Web site which intensively uses an RIA technique
SOA. called AJAX (See pg. 5).
niques to note from A9. First of all, A9 is one of the first calculators and stock quotes, which require intensive inter-
companies to develop a “drag & drop” feature using activity, calculations, and the necessity of graphical data
JavaScript. To bookmark search results, for example, us- representations. Examples can be found at E*Trade and
ers can drag and drop a title to the bookmark folder. Sec- Genworth.
ond, internal windows are resizable using split panes and
links. This allows users to adjust page layouts without re- Sherwin-Williams
freshing pages. A9 also uses RIA to create a unique Sherwin-Williams’ Web site implements an RIA tool called
search experience. It searches asynchronously, meaning “Color Visualizer” that lets users virtually paint houses and
that it handles search requests on the back end while us- interiors with dozens of colors. Users can drag and drop
ers are performing other tasks. When the search engine colors to paint a virtual sample room. The image is then
finds the results, they are displayed on the same page. rendered with the selected color immediately.
Source: A9 - www.a9.com
Brocade
Brocade, a network equipment company, developed an
executive dashboard application with RIA. As you can see
in Fig. 1, company’s sales data are shown graphically
and can be manipulated interactively.
TECHNOLOGICAL PLATFORMS
Today’s rich internet applications are almost all built on
either one of three technological platforms: AJAX, Macro-
media Flash, or Java.
web/app server
web/app server
mobile browser
presentation server (e.g. Nexaweb, Canoo)
flash lite flash
player player
Figure 3. Typical Java-based RIA Architecture (Source: UWEBC)
XML compressed
over http(s) binary (.swf)
Java RIA Tool Vendors
over http(s)
Canoo - www.canoo.com
Nexaweb - www.nexaweb.com
web/app server
Clearnova (ThinkCAP) - www.clearnova.com
presentation server (e.g. Flex, Open Laszlo) InsiTech - www.insitechinc.com
Richmotion - www.richmotion.com
PLATFORM COMPARISONS
Most RIA platforms share common goals: reduce application development time and cost while enriching user experiences.
In addition, the platforms share pursuit of the same technological trail: XML and scripting for UI construction. Currently,
there is no distinct winner among RIA platforms. The table below summarizes strengths and weaknesses of each platform.
Development Challenge Very complex without Relatively easy with Relatively easy with
tools such as TIBCO, tools such as Flex or tools such as
and high skills re- Open Laszlo Nexaweb
quired
(XML, DOM, (XML, JavaScript,
(JavaScript, CSS, XML, JavaScript, Flash, Ac- Java)
XSLT, DOM, ActiveX...) tionScript)
Cost Custom Build - Free Open Laszlo - Free Java Web Start - Free
TIBCO - Unknown Flex - $15,000 per Nexaweb - Unknown
CPU
HOW TO GET STARTED tions. The main objective here is to explore potentials and
limitations of RIA technologies. You may realize that some
Step 1. Research platforms are better than others to achieve certain fea-
The RIA market is still immature. Technologies are evolv- tures. The web technology flavor in your company (e.g.
ing day by day, and many vendors are competing in the J2EE vs .NET vs PHP…) may constrain your RIA choices as
market. Within your company, let web developers do well.
some research on RIA. Vendor Web sites, technical arti-
cles, and blogs are good starting points. Here are some You can develop AJAX applications without any tools or
useful RIA web resources: servers. The fastest way to learn AJAX is to read source
codes written by smart engineers. Flash RIA servers can be
• Wikipedia RIA Definition downloaded free.
Introduction to RIA. Many links are available from
here • Google Maps, Gmail, Google Personalized Home
• Java Web Start Technology See AJAX codes written by Google engineers
Technical information about Java Web Start • A9
• Usability Heuristics for Rich Internet Applications The AJAX pioneer. Plenty of good AJAX programming
Good article to grasp RIA from usability perspective. techniques can be learned from their code
• Macromedia RIA Whitepapers • Open Laszlo 3.1
Limited perspectives, yet worth reading Open source Flash based RIA presentation server
• RIA Landscape • Macromedia Flex
Nexaweb’s interpretation of the RIA landscape Flash based RIA presentation server. Developer ver-
• Macromedia Flex & Eclipse IDE sion is free
If you use both tools, this is an interesting integration
• SVG and AJAX Step 4. Business Cases
SVG may compensate AJAX’s weakness in graphics Evaluate the prototypes and see if you can make business
• DART motif - RIA & Rich Media cases for them. To build a solid business case, you will
Macromedia and DoubleClick’s efforts need to consider three stakeholders: users (customers),
• Windows Presentation Foundation developers and businesses:
Microsoft’s answer to RIA (formerly known as • What RIA applications are we developing?
“Avalon”) • What benefits do our customers gain from them?
• AJAX and Security
An article regarding AJAX security
• AJAXSLT
XSLT in JavaScript developed by Google Users
• AJAX Technical Overview
Good blog explaining how AJAX works
• Rich Internet Application Blog
One of the oldest RIA blogs
• Apple User Experience Developers Businesses
Learn how Apple comes up with good UI design
• Jakob Nielsen’s Web site
Principles of web usability
Figure 4. Three RIA Stakeholders (Source: UWEBC)
Step 2. Conceptualization
Once web developers become familiar with RIA, it’s easier • Which RIA technologies will we use?
to come up with business ideas to leverage the technolo- • Who develops what? Outsourcing or in-house?
gies. Some ideas might include, reduce checkout steps, • How will this affect the current system (e.g. middle-
enable drag & drop of products into a shopping cart, and ware interface changes, platform changes…)?
offer interactive product/service demos. Open discussions • How long will it take to develop and release applica-
among developers and web marketing staff should be tions?
welcomed. • How much will it cost (tools, contracts, developer re-
sources…)?
Step 3. Prototyping
Once you research RIA and conceptualize business ideas,
the next step is to develop some prototype RIA applica-
REFERENCES
Wikipedia. (2005, October). http://en.wikipedia.org/wiki/Rich_internet_application
McMullin, Jess and Skinner, Grant. (2003, July 15). Usability Heuristics for Rich Internet Applications. Boxes and Arrows.
http://www.boxesandarrows.com/archives/usability_heuristics_for_rich_internet_applications.php
Nexaweb. (2005, October). Rich Internet Applications: The Market Landscape. http://www.nexaweb.com/
ria_market_landscape.asp
Festa, Paul. (2005, June 8). Macromedia aligns with Eclipse. Builder.Au. http://www.builderau.com.au/program/
work/0,39024650,39192243,00.htm
Jackson, Dean and Lilley, Chris. (2004, October 29). About SVG. W3C. http://www.w3.org/Graphics/SVG/About.html
Josephes, Chris. (2005, August 15). Widget and AJAX development may lead to discovery of more security flaws.
ONLamp.com. http://www.onlamp.com/pub/wlg/7601
Garrett, Jesse J. (2005, February 18). Ajax: A New Approach to Web Applications. Adaptive Path. http://
www.adaptivepath.com/publications/essays/archives/000385.php
The UW E-Business Institute (UWEBI) serves as Wisconsin's leading center for multidis-
ciplinary research collaboration, technology innovation and industry outreach on e-
business. UWEBI expands upon the company-specific e-business peer group collabora-
tion and projects enjoyed by members of the UW E-Business Consortium.
The University of Wisconsin E-Business Consortium (the industry membership base of the
UW E-Business Institute) is Wisconsin’s premier organization that helps companies gain a
competitive advantage through e-business. Our members - business executives and senior
managers from the Midwest’s leading companies - tap into world-class university re-
sources and the collective experiences of this B2B and B2C group to address and share
strategic e-business and information technology challenges, best practices and lessons
learned.