Tuesday, April 24, 2007

Web Oriented Architecture (WOA)

My friend Jérôme Louvel wrote about web oriented architecture on his blog and it led me to these posts by Nick Gall and Dion Hinchcliffe.

I like Nick's shorthand version: WOA = SOA + WWW + REST, Jérôme's definition: an application of the REST style for building Web services based on straight HTTP and XML documents, and the image towards the end of Dion's article.

I've been contemplating my company's product frevvo and it's connection to the SOA world and it seems to me that we put the WWW (the face) in WOA. Let's say you have a REST style application – all it uses is HTTP, JSON and POX (plain old XML) – and have created some services. How can users consume these services – does the WWW above simply mean "use HTTP to access them"?

frevvo lets you create front ends – things that users can touch and feel (in their browsers, of course) and that can interact with these WOA services. Without it, a WOA has no face and without a face, it's hard to create a user-oriented application.

Incidentally, frevvo is, itself a REST style application (HTTP+JSON+POX): we'll be publishing the REST API soon. The server-side was heavily inspired by Restlet (Jérôme's project). Unfortunately, Restlet was nowhere near ready at the time but we hope to adopt Restlet in an upcoming version. It's very cool – check it out. And, hopefully, when you create your web applications using Restlet, you can put a face on them with frevvo.

No comments: