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 logicThe 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.
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 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
- DHTML/AJAX frameworks for Current Browsers
- XML Dialects for Advanced Browsers
- Java frameworks
- Adobe Flash-based frameworks
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.