3 June 2018
Not only are layered applications difficult to maintain, but the common abstractions they are built on tend to give rise to inflexible implementations that have serious scalability challenges.
8 May 2018
You’re rarely given the opportunity to focus on transitioning an architecture to the exclusion of everything else. You may have to get used to the idea that decomposing a monolith is a direction of travel rather than a clear destination.
9 March 2018
One of the main benefits of microservices is that they reduce the cost of change. The problem is that you need to make a significant up-front investment to realise this saving. Your first few microservices are more likely to be an expensive and potentially painful undertaking.
16 February 2018
Agile teams still need to make architecture decisions, but in supporting them architects should seek “just enough” architecture over “big design up front” and practical solutions over large-scale abstract thinking.
27 January 2018
On the face of it, TOGAF describes a very different world to the agile preference for working software over documentation. That doesn’t mean that TOGAF is incompatible with agile, so long as you’re prepared to adapt its numerous building blocks.
13 December 2017
Finely-grained, entity-based services seem to be advocated by some pretty authoritative sources. This is unfortunate as they are something of an anti-pattern that can undermine many of the benefits of decomposing an monolith into micoservices.
4 November 2017
An event-driven architecture can give rise to complex chains of events that are difficult to manage. These problems can be mitigated through careful design rather than resorting to shared state databases or workflow engines.
12 October 2017
The Scaled Agile Framework talks about an “architectural runway” as the main deliverable for agile architecture, yet it’s vague on the detail of what this looks like.
20 September 2017
Agile teams spend time modelling software whether they are prepared to admit it or not. Adopting a technique like Domain Driven Design can help to make this more efficient, particularly at scale.
4 June 2017
One of the more enduring problems with service integration is managing change in service interfaces. Consumer-driven contracts can help to detect breaking changes, but this visibility comes at a price.
16 May 2017
No self-respecting integration platform is complete without an API management story these days. Is this just a RESTful return of the enterprise service bus?
3 April 2017
Governance doesn’t have to be all about byzantine process and suffocating approval boards. It can be used to provide clear permission for teams to innovate.
28 January 2017
No architect will ever admit to being out of touch with software development. However, unless you are writing code then it’s difficult to avoid becoming an ivory tower or PowerPoint architect that can only discuss systems in the abstract.
7 January 2017
Event stores and event sourcing are a powerful idea, but they can be vulnerable to a number of technical and operational challenges when faced with real world complexity.
29 July 2016
Event sourcing can scale very nicely, though this does depend on a number of key design decisions for the underlying event store.