Thursday, July 30, 2015

Architects Don't Code

(Title stolen from the C2 wiki)

I just spent a few days working on a new interface for an existing system, where the new way of doing things has the interface specification being written up one of the architects, and supposedly discussed by all the stakeholders.  Of course, the usual story unfolds - there is not enough time to get everyone together in a meeting, so the interface gets put together as the architect's best guess on functionality.

But the architect, by definition, is not the expert in the details of the system interface, so I've had to spend time extracting unneeded data from inputs, and providing dummy data for useless outputs.  And the architect does not have the time to update the specification to include these changes.

In my opinion, it would be better for the details to be handled by the people close to them, and have the architects handle just the broad strokes.  But this runs up against the custom of the higher-level abstraction people having more status, and therefore more power, with the usual empire-building and ego-stroking that accumulates over time.


Nick Brigth said...

Why you think that architects not have to understand the interface? They build the all structure of a website and of course have to understand each step. I have been working as a software developer and often work with developers from Intechcore. Those guys are really professional and know the work of all stages.

Dixie Software Ninja said...

Unless the architect also coded the system, they will not know the details of the implementation, and thus will not be able to predict where those details will impact the system. Also, this is not just a website, but an entire ecosystem of services behind a web interface, so there is more than just a few details to keep in mind.