Is there still room for architecture in an agile engineering organisation? Of course there is. There is a perception that agile teams are self-contained groups of generalists who should be left alone to self-organise and build software. This is true, but development teams still need to make architecture decisions all the time. There does come a point at which problems are too big for any one self-organising team to solve. Some design co-ordination is needed.
19 February 2020
Code coverage can be a useful technique for discovering untested parts of your code base, but it makes for a useless target.
9 September 2019
There’s more to adopting trunk-based development than deciding to shun long-lived branches. You need a confident development team, a loosely coupled code base and efficient build automation to make it stick.
12 August 2019
Agile process tends not to generate the kind of metrics that management teams feed on. Should this be a problem?
8 June 2019
Maturity models are a popular way of looking at development challenges. The problem is that they are an arbitrary and inflexible tool and they tend to encourage the wrong mindset.
23 March 2019
The problem with SAFe is that you can implement it without writing a single unit test or automating a single build…scaled agile may be an oxymoron.
24 February 2019
Standardisation does have a place, but it should be reserved for infrastructure and collaboration rather than languages and tools.
30 August 2018
There is a growing sense of unease around how larger organisations have implemented agile. In particular, there is a tendency towards centralised control that can be at odds with the agile preference for individuals over process.
29 July 2018
It’s easy to get caught up in unrealistic notions that you can re-write a legacy system or gradually decompose it. There are other, more pragmatic approaches that can help to modernise architectures and enable new development.
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.
18 November 2017
Technical debt may be a useful metaphor for describing how bad code design undermines productivity to non-technical audiences, but it does not help in understanding the longer term problems that affect code bases.
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.
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.