Page Oriented User Interfaces

Page Oriented User Interfaces with HTML5 and Dojo

Since the move from server side Web based User Interfaces that have been generated by Servlets, JSP’s , JSF or even PHP, there has been a lot of innovation around how best to deliver and present the next generation of Web based Applications. Over the last 4 years a number of common sense best practices seem to be forming that are outside of any standard, toolkit or book. This set of blog updates will try and explain some of these best practices in a way that will allow others to think about there impact on there next generation user interfaces for the web.

So what is the term Page Oriented User Interfaces ? what does it mean ? Well in simple terms we all know that the web browser displays a page at a time, so the common thinking now is to try and make that page encapsulate the task or business function at hand. Keep all the user interface within the page to allow the user to complete the job. In the old world you would move from generated page to generated page and see that old flicker of a white screen as the web page refreshed. In the new world a number of asynchronous request can be made and the use of HTML5 with CSS3 and JavaScript could be used to create a powerful user experience more in a line with a sovereign application experience.

So if we now have the concept that the design of the page is focused on a set of business functions that are all surfaced around that page and AJAX and Web 2.0 techniques are used to present the UI, how do we navigate to this tasks. The next key principle of Page Orientated User Interfaces (POUIs) is the use of REST as a navigational point. REST is very good for data access and has changed the way we think of application servers and how they can delivery business information. When you start thinking of REST as a link to a page of content with a unique bookmarkable signature. It now allows a completely different way of thinking about page navigation. So all POUI’s will require a JAX-RS HTML Rendering feature. This will allow simple REST signatures that return HTML/TEXT mime types. These signatures can then take unique UUID’s to help identify data or business task.

Another key element of POUI’s if the use of state. State can come in a number of forms, Session, Application, Persistent, Page State. Each one has a different purpose to support the application.

So with the concept of Pages as a focal point for a business task, combinded with navigation using REST and a method for allowing various application state elements to exist we now have a basis to build a web application where users can navigate around, book mark, email , and maintain state with no server side overhead. These styles of application then become very scalable and flexible under high demand.

I will be writing up more of these principles over the coming weeks to help document these ideas.

Advertisements

One Comment Add yours

  1. cke11y says:

    Matt there’s no apostrophe in interfaces 🙂

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s