Interview Questions

SOFEA - Service Oriented Front End Architecture

In most of the web applications developed in the world, some of the server side UI frameworks such as spring, struts2,wicket etc., are used. These framework use the MVC pattern for developing UI. The major issue here is most of the UI processing tasks (business logic + view generation(html/css)) are rendered at the server side itself. This makes the
client side(browser) very thin & dumb.

SOFEA focusses on moving the MVC part to client side and using the server side for backend processing alone. In this architecture, MVC part can be developed using HTML,CSS,JQuery(or javacript) & AJAX. Even there are many frameworks such as Backbone.js available to support this architecture. The advantage of this approach is the UI layer can exist independent of the server side ( or service layer). The Server side mostly used for processing business logic and remains as a data layer. REST (Representational State Transfer) can be used for communication between the UI layer and backend.
Note: This approach may not be applicable for form intensive web application in which case Spring MVC will be the right solution.
This architecture is also called a Full-AJAX approach, where ajax(with javascript) is the used for http coomunication using REST.