Rich Internet Applications (RIA)
- RIAs are web applications that have most of the characteristics of desktop applications, typically delivered through web-browser plug-ins or independently via sandboxes or virtual machines.
- RIAs have always been about the user experience, it enhancing the end-user experience in different ways.
- RIAs can run faster and be more engaging. They can offer users a better visual experience, better accessibility, usability and more interactivity than traditional browser applications that use only HTML and HTTP.
- A RIA can perform computation on both the client side and server side. User Interface, its related activity and capability on the client side and the data manipulation and operation on the application server side.
Characteristics of RIA
Performance - RIAs can often perform better than traditional applications on the basis of the characteristics of network and applications, performance of server also improved by offloading possible processing work to the client system and also perceived performance in terms of UI responsiveness and smoother visual transitions and animations are key aspects of any RIA.
Offline use - When connectivity is unavailable, it might still be possible to use an RIA. An RIA platform let the user work with the application without connecting to the Internet and synchronizing it automatically when the user goes live.
Consistency of look and feel - With RIA tools, the user interface and experience with different browsers, devices and operating systems can be more carefully controlled and made consistent.
Security - RIAs should be as secure as any other web application, and the framework should be well equipped to enforce limitations appropriately when the user lacks the required privileges, especially when running within a constrained environment such as a sandbox.
Advanced Communications - Sophisticated communications with supporting servers through optimized network protocols can considerably enhance the user experience.
Rapid Development - An RIA Framework should facilitate rapid development of a rich user experience through its easy-to-use interfaces in ways that help developers.
Direct Interaction - An RIA can use a wider range of controls that allow greater efficiency and enhance the user experience. In RIAs, for example, users can interact directly with page elements through editing or drag-and-drop tools. They can also do things like pan across a map or other image.
Better Feedback - Because of their ability to change parts of pages without reloading, RIAs can provide the user with fast and accurate feedback, real-time confirmation of actions and choices, and informative and detailed error messages.
Improved Features - RIA allow programmers to embed various functionalities in graphics-based web pages that look fascinating and engaging like desktop applications. RIA provide complex application screens on which various mixed media, including different fonts, vector graphic and bitmap files online conferencing etc. are paused by using different modern development tools.
Partial-page updating - RIAs incorporate additional technologies, such as real-time streaming, high-performance client-side virtual machines, and local caching mechanisms that reduce latency (wait times) and increase responsiveness.