InfoQ

News

New Thin Server Architecture and SOFEA Working Group Web Site Launched

Posted by Steven Robbins on Mar 28, 2008 12:42 PM

Community
Architecture
Topics
Rich Internet Apps,
Web Frameworks,
Design
Tags
XUL,
Web 2.0,
Dojo,
AJAX,
GWT,
XAML
Peter Svensson, Ganesh Prasad, and Mario Valente have teamed up to create the Thin Server Architecture Working Group and launched the group's web site. The site included several resources about Thin Server Architecture (TSA) and Service Oriented Front End Applications (SOFEA) as well as insight into the philosophy behind the technology.

Thin Server Architecture, SOFEA, and other related approaches to applications are primarily about separating client and server concerns and ultimately placing the "View" code in the client. This architectural style has in three primary positive results:
1. The server-side developer can focus on the business logic
2. The application becomes less complex as the client is developed separately.
3. Communication between server and client use a protocol, which can be used to export, import or present data to other, or future system (SOA).
The Articles section of the working group site contains information and articles from each of the the three authors. Included in the articles is "Life Above the Service Tier", the seminal SOFEA paper by Ganesh Prasad, Rajat Taneja and Vikrant Todankar. The section also includes Peter's series on "The End of Web Frameworks" and Mario's series about the "Future of Web Applications." All of the material on the working group site drives to the central goal of pushing client responsibilities out of the server and into the client. This presentation also provides insight into the background and advantages of the thin server approach.

The Resources section of the TSA site has an extensive list of technologies that can be useful for building web-based applications in the Thin Server approach. The site includes links to IDE resources as well as development and runtime components. The development technologies listed include such tools as GWT, XUL, SilverLight/XAML, and Adobe Flex. They are classified by
  1. DHTML/AJAX frameworks for Current Browsers
  2. XML Dialects for Advanced Browsers
  3. Java frameworks
  4. Adobe Flash-­based frameworks
Ganesh has pointed out that TSA and SOFEA focus on eliminating server-side driven presentation. This frees the client to take responsibility for the View aspect, which can be "thin", "rich", or in between. He also said that the options for mechanisms for delivery to the client (called "Application Download" with respect to SOFEA) occupy a very broad spectrum of choices when this architectural style is applied. With respect to developers and technologies for implementing applications in the TSA style, Mario and Peter have used several. They recommended Ajax/JavaScript with Dojo 1.x, AppJet , jQuery and JavascriptMVC as the current frontrunners.

All three authors seem to agree that the biggest hurdle to adopting the TSA or SOFEA approach to building web applications is getting past the developer's discomfort. That is to say that the thin server applications currently lack a lot of IDE integration and tools and typically need to incorporate disparate languages and skillsets for developing the server and client components. However, recent technology advances in serverside JavaScript may allow of language unification in TSA-syle applications.

1 comment

Reply

Great article! by Justin Meyer Posted Apr 2, 2008 4:00 AM
  1. Back to top

    Great article!

    Apr 2, 2008 4:00 AM by Justin Meyer

    SOFEA is a big part of the future of web development.

Exclusive Content

Business Natural Languages Development in Ruby

Jay Fields presents his concept of Business Natural Languages - a type of Domain Specific Languages geared towards being readable by domain experts.

Distributed Version Control Systems: A Not-So-Quick Guide Through

Adoption and interest for Distributed Version Control Systems is constantly rising. We will introduce the concept of DVCS and have a look at 3 actors in the area: git, Mercurial and Bazaar.

Segundo Velasquez and Agile as Seen Through the Customer's Eyes

Deborah Hartmann interviewed Segundo Velasquez about his experience as customer with an Agile team during the initial phase of software design of a product.

Fine Grained Versioning with ClickOnce

David Cooksey shows how to fine grained versioning to a ClickOnce deployment using an HttpHandler written with ASP.NET, making partial rollouts to a test audience much easier.

Implementing Manual Activities in Windows Workflow

Windows workflow (WF) is an excellent framework for implementing business processes, but lacks support for human activities. This article describes a completely generic approach for changing this.

Markus Voelter about Software Architecture Documentation

In this interview taken during OOPSLA 2007, Markus Voelter talks about the importance of documenting the software architecture, and gives some good and also bad examples on how it could be done.

Voca, UK's largest payment processing engine running Spring

William Soo and Meeraj Kunnumpurath discuss the Voca transaction processing system, architectural challenges and requirements, Voca's Spring/J2EE architecture, and the future SEPA architecture.

Patterns for securing architectures

Security is about trade-offs. Only a few have the expertise to design good security. This talk focuses on Security Patterns, such as Role-based Access Control, Single Access Point, and Front Door.