Tom Nolle has over 30 years of experience as a private consultant and is a prolific writer and blogger on all things IT. His recent experiences with the ExperiaSphere project have leant Nolle an in-depth understanding of the pain points application architects face when working with Web services.
In this three-part interview, Tom Nolle discusses where SOA came from, where it stands today and where it's going tomorrow. In Part one: Web service standards and requirements Nolle discussed requirements and standards and how they play into application development for new technologies like mobile devices. Part two: Mobile's impact on RESTful Web services explains more about the effect that mobile devices are having on the realm of RESTful Web services. Here in Part three, he introduces the "chubby client", which has emerged as an alternative to the traditional thin client versus thick client paradigm. According to Nolle, the chubby client is the future of mobile application development.
SearchSOA.com: What direction is client-side application development headed in?
I think the most important thing right now in the industry is that appliances and ubiquitous broadband are reshaping our conception of man-machine relationships.
Tom Nolle: We're sort of running away from the notion of thick client and thin client as kind of a bipolar option set to what we might call chubby clients. It's not really obese but it's moving along from thinness. I would argue that if you wanted to look at where we're going in the future, I think the answer is obviously chubby clients. And because we are moving toward chubby clients we're probably moving in terms of development focus into a world where we're hybridizing old SOA Web services and old RESTful procedures into these new chubby procedures that are based on RESTful HTML exchanges.
SearchSOA.com: So along with RESTful procedures, these new chubby clients depend on SOA?
Tom Nolle: Well I wouldn't say SOA as much as SOA Web services, meaning the problem with the term SOA is that service-oriented architecture is really a very high level vision of the relationship between application components and users or other application components. If you look at SOA as a pure, high-level principal, that principal is intrinsic in software reuse and mashups and so in some way or other it's going to be valuable all along.
The problem is that when you begin to implement a new principal you tend to apply it where you have the greatest immediate problems and as I said, in SOA that focus point was the backend relationship between the Web server and the applications.
If you look at SOA books to this day, you will tend to see pictures of a SOA structure that still reflect that conception of "here's a Web server, and this Web server is fielding a series of transactions from a user device and it's translating those into application requests." So all of the componentization workflow service bus requirements are backend requirements.
But if you look at iPhones and iPads and the current application development trends, what you see is that instead of putting so much stress on having the Web server creating the user experience, these devices make the assumption that the user experience is created by an
You can't solve a problem you don't have yet.
appliance dressed as an application component. And when you do that, you break the model of SOA that we focused on.
The significance of SOA is as valid today as it was ten years ago. What's not as valid today is our perception of how to do it – how to accomplish it – because the perception ten years ago was necessarily set by the state of application development at the time. You can't solve a problem you don't have yet. What has happened now is that applications and clients have both evolved and the relationship between applications and appliances at a native level is different today than it was ten years ago. So SOA has to be different.
SearchSOA.com: What is the state of the client today?
Tom Nolle: I would argue that the model for today is the chubby client. The chubby client is the client that runs a lightweight application component that is largely responsible for the user interface. This application component acts on behalf of the user to request data from external sources and then format that data for presentation. Run an app on the iPhone and that's what you see. That's the model.
That model tends to pull development focus forward into the frontend part of SOA. In my view, it shifts the focus from WS focused development and all that rigorous issue set into something much more RESTful.
SearchSOA.com: Why are chubby clients so important?
Tom Nolle: I think the most important thing right now in the industry is that appliances and ubiquitous broadband are reshaping our conception of man-machine relationships. That reshaping is going to be radical enough that it is just totally inane for us to expect that it will have no impact on the execution of SOA principals and on development practices.
We have to expect that the transformation that the iPhone epitomizes is eventually going to touch every aspect of IT and every aspect of software development.
The transition between thin or thick clients which were the rule of the past and the chubby client which is the rule of the future is a jarring transition. No matter which of the two directions you came at it from, it's definitely a major change. It's a major rethinking of the whole application framework and eventually it will probably percolate its way back into even the kernel design of mission critical applications.