After some prompting, the technical requirements arrived for architectural review. They had been prepared from a well-intentioned place and under the pressure of project timelines. Scanning through them revealed serious problems: these requirements were much too far progressed, and were based upon several fundamental anti-patterns. Needing to deliver some new information from one ERP system to another, the proposed integration solution:
- specified silent discards in favour of raising alerts when errors were detected
- favoured unsustainable side-door integration techniques over the use of established patterns
- was disconnected from the business requirements it has to deliver
- specifies data-exchange and transformation rules at the wrong layer of the stack
These are unacceptably-bad things, and while their origin is understandable and of an environmental and historical nature, rather than of an individual or other nature, they must be addressed, and the course proposed redirected towards simple compliance with basic established delivery patterns. This work is not supporting an isolated endeavour, a proof-of-concept experiment, or an early innovation — this is a mainstream production deliverable where there is genuinely no latitude for managed diversity.
Perhaps inevitably, the project machine responded as follows, heavily paraphrased:
- why are you making us have to do this properly?
- what is the value of involving a solutions architect?
- don’t you know we’re busy?
The spectrum of governance ranges from assistive governance through to directive goverance, in both proscriptive (you must not do these things) and prescriptive (you must do these things) flavours.
While there might not always be uniquely-right or best-ever answers and solutions, there is a sense of universal truth and rightness here, and sometimes the architecture function must adopt a directive position, generally when assistive positions have failed to achieve a sustainable business-value-driven outcome.
Facilitating the use of established repeatable patterns, ensuring change-friendly sustainable outcomes, and sometimes veering into directive governance, that’s the value of a solutions architect.