Key Characteristics of Rich User Interfaces
Increased Responsiveness: Traditional Web applications interact with data on the server, resulting in elongated round trips even for simple activities, such as sorting and filtering. Rich UIs typically cache data sets on the client side, making activities such as sorting and filtering much more responsive because no round trip to the server is necessary.
Asynchronous communication with the server: Traditional Web applications typically render pages in a top-down fashion, so that the length of time a page takes to load will be no less than the longest operation on the page. Utilizing asynchronous communication with the server eliminates the traditional top-down rendering of a page and can therefore give the perception of improved performance. Long operations can be performed asynchronously, with a callback mechanism triggering the rendering of a particular section of the page when the operation is complete. This leads to a natural tendency to create fragments of markup (something both portlets and JSF make very easy) to take advantage of parallelization.
Behaviors not available in HTML alone: Rich UIs clearly differ from traditional Web application in their look and feel and in how the end user interacts with and navigates the application; that look and feel cannot be produced through HTML alone. For example, HTML alone cannot open new windows or change color on mouse over. However, such dynamic features, coupled with asynchronous behavior and parallelization, create a highly decorated window into an application.