Fibonacci reflected in System Architecture
I observe patterns everywhere and all the time. One area is within the corporate (and) technology landscape, especially the consistency between enterprise level objectives and what is ultimately delivered from the CI/CD pipeline.
There are many quoted examples of good Technology Architecture Practice and many more publications and opinions on the “right” architectural approach to follow. Whatever the approach, does the sum of the infrastructure, software, and the detail of implementation components all add up to the desired objective? Together, can these be compared to a beautiful building that with every block, carving and facade, continuously reflects the aspirations and design intentions of its architect?
The Fibonacci spiral provides a great basis for reflecting on the connection of high-level discussion and decision to the detailed execution and reality. One can travel the Fibonacci spiral, outwards or inwards following the same pattern and finding the same path. Is this also true for Architecture? I suggest that it should be.
Mathematical friends, please give me a little poetic license here? As I suggested, at every point on the spiral you can find the next point or the previous point. It’s a continuous reflection of design and intention. There is beauty in the consistency of the pattern.
Successful fast growing technology startups are often presented as use cases advocating technology architectural models to follow. What many don’t realise is that most startups fail, even those with great innovative ideas. I’m suggesting here that those who succeed, have followed a path along this spiral. It could be by design or pure luck, it is however important to note that in these startups, there’s a very close relationship between architecture, design and build. They’re all operating the same pattern, travelling along the same Fibonacci spiral path, “on the same curve”.
With larger and more established businesses, their growth, structure and accumulation of technology assets have not followed a balanced evolutionary path. They’ve experienced many different design influences as well as experienced seismic shifts around them and have accumulated enormous complexity and scare tissue. I’m saying this with some irony, enterprise firms say that their organisations are further along the Architectural Maturity Model. For me, this view translates as a decoupling of responsibility between architecture, design and build. Said another way, there is no accountability between the design and the reality. There is little or no consistent golden thread tying together all the implementation detail that consistently reflects the high-level architectural intent.
This is thought for reflection to those the practice of Systems Architecture, and in fact to all who turn design into reality. It’s a challenge for everyone to preserve the patterns of intent through to implementation. Accepting a requirement when the efforts of all are fed into the same architecture(x) function, that the output is consistently a point along the Fibonacci spiral of architectural intent.