My critique of both a recent CACM article and one of the author's blog entries, regarding Cloud vs. Grid interfaces, was quite long, and I've been told, meandering.
Here is a pithy summary of my position:
1. The greatest leverage in system architecting is at the interfaces. The greatest dangers are also at the interfaces. [1]
2. When the components of a system are highly independent, operationally and managerially, the architecture of the system __is__ the interfaces. [1]
3. For networked applications, there are many different styles of interface, including APIs, to message exchange contracts, to hypermedia. These drive very different emergent properties in the resulting system.
4. Loosely coupled systems are assisted by the projection of both object state AND available state transitions. Hypermedia is a suitably general model to enable this.
[1] This is just a paraphrase of Maier & Rechtin regarding key heuristics for systems architecture. For a summary, see this paper.

Leave a comment