Thursday, April 26, 2012

Twin-Track Architecture

#entarch This post follows discussions with Graham Berrisford of Avancier about the relationship between Enterprise Architecture (EA) and Solution Architecture (SA).

What seems to make sense is to describe EA/SA as a twin-track process (similar to the twin-track process that aligns service development with solution development in SOA).

Twin-track is essentially an abstract process pattern, used to align two activity streams at different levels of granularity. As far I recall, I first encountered it in the Select Perspective methodology, described in two books by my friend and former colleague Paul Allen. The CBDI SAE methodology also uses the twin-track approach.

In SOA, there is a stream of activity to produce and maintain services, and another stream of activity to use these services to build solutions. These two streams need to be connected but not synchronized. The two tracks may be separated organizationally - split into different teams or org units, or even separate companies - provided that there are suitable governance mechanisms for allocating resources and responsibilities, and resolving issues. People may specialize in one or other stream.

A twin-track processes doesn't assume either top-down or bottom-up. In some cases, you could start with the solution requirements and then specify the desired services (top-down). In other cases, you could start with a set of available services, and then assemble these into solutions (bottom-up). In practice, the twin-track approach accommodates a mixture of top-down and bottom-up. The important point however is that the two have to be connected at a series of touch-points.

We can now describe the relationship between enterprise architecture and solution architecture in similar terms. If solution architecture is disconnected from enterprise architecture, then the solution architects are likely to produce point solutions instead of enterprise solutions. Conversely if enterprise architecture is disconnected from solution architecture, then it is likely to produce grand, simplistic and ultimately unimplementable schemes. Again, we don't have to assume that either EA or SA is dominant, but that they work together towards common goals.

For other posts on twin-track: browse, subscribe

No comments: