The day of the emasculated Web 1.0 where the client-side was functionally poor, where the user interface was akin to the days of the mainframe computer, is rapidly diminishingÂ and the new era of the Web 2.0 has yielded a new way of thinking. The demand for web applications, particularly in the business arena, is increasing at anÂ exponential rate as the benefits of new technologies and paradigms are comprehended by the CTOs, CIOs and decision makers.Â Web interfaces have significantly restricted the interactive user experiences possible on the Web, and the ability of those Web applications to present increasingly complex information to the user, to date.
To solve a myriad of today’s problems, modern web applications must be able to solve an equal myriad of requirements.Â These requirements provide the principles behind the emerging Rich Internet Applications (RIAs) and include some, if not all, of the following.
- Run unchanged across multiple platforms
- Deliver engaging user interfaces with high levels of interactivity
- Restore processing power and rendering capabilities to the client
- Execute well across varying connection speeds (broadband rather than theÂ archaic dial-up)
- Utilise audio, video, images and textual content in a seamless mannor
- Support mobile workflow by allowing users to work on- and off-line
- Allow the client to decide what content should be accessed and when that content should be retrieved (asynchronous execution)
- Access any number of middle-tier services (e.g. .NET, Java, ColdFusion) and data stores
- Provide powerful and dynamic user interfaces
- Use standards such as XML-RPC, SOAP and REST in Web Services-based applications
- Integrate with legacy applications
- Allow for incremental addition of functionality to enhance the Web application environments
- Be accessible to all
- and, Utilise ubiquitous content
Candidate technologies for these solutions are developing primarily in the form of AJAX, Flex/Flash and XAML. They do not simply address the limitiations of the page based model as seen in Web 1.0, but provide the above capabilities whilst also empowering developers and designers to create new kinds of engaging and innovative applications and user experiences.