slash dev slash null

stuff about puters

Category: Agile

The End Of Agile Estimation: Lies, Damn Lies, And Burndown Charts

In my last couple of posts, I gave an example of a successful agile team that didn’t do estimates, then made the case that estimation is aligned to “wagile” ways of working. This post is going to make the case that the approach is fundamentally flawed when viewed as a measurement activity.

Read the rest of this entry »

The End Of Agile Estimation: Predictability Isn’t A “Good Thing™”

In the last post I gave an overview of large scale build which used Kanban and that shunned estimates. In this post I will get into why Agile estimation is not aligned to agile values. It is simply a hangover from waterfall days and is a “wagile” concept.  Read the rest of this entry »

The End Of Agile Estimation: Flying Without Estimates

In the past twelve months I have had the privilege of working across more than a half-dozen teams building digital services. It was interesting that only one of them was attempting to do estimates and it wasn’t clear to anyone, let alone them, exactly why they were attempting it. In this post I will sketch out how a successful large scale team abandoned estimations entirely.  Read the rest of this entry »

“Agile” Isn’t A Helpful Description; Lets Call It “Rapid Feedback”

When the Agile Manifesto came out in 2001 I was working at a DotCom in the City Of London and missed the memo. In a small startup, with only a few developers, working directly for clients, there wasn’t much scope for any big process waterfall. Oh the good o’ days.  Me, the code, the client and the ‘puters in that order. Honour and glory were assured… Read the rest of this entry »

Agile and domain driven design (part 3): Microservices

In the last post we imaged we are a programmer on an agile digital service team who had gotten as far as writing some DDD code. It is a rich OO domain model that knows how to obey the business rules (aka enforce the invariants of the contract aggregate). The next question is where should this code run? What provides the surrounding workflow? Which screens, running where, drive this “thing”? Talking it through with the other developers in the team you decided to build and deploy a contracts microserviceRead the rest of this entry »

Agile and domain driven design (part 2): Event Storming

The last post set the scene for how an agile digital services team gets to the point where it is ready to cut some DDD code. Imagine that you just joined the team as a programmer as the programme is ramping up its private beta build out. To align ourselves to the demo code of the last blog series you are need to build out some stories about how customers and your internal users create and agree a contract to deliver products. You are an agile analyst programmer who wants to build a ubiquitous language with the users of the system. So you attend an event storming workshop with the users. Read the rest of this entry »

Agile and domain driven design (part 1): Digital Services

In the last mini-series of posts I sketched out how to use DDD to build an explicit rich domain library that models the business domain and enforces the invariants within a narrow scope of an aggregate of entities. Catching up with my friend we got into a discussion about how we get to the point were are ready to implement things. How big can the model be? How do we scale to many two pizza teams? How do user needs, business processes, and screens relate to the domain focused OO design? We ended up talking about microservices. So in this series of post I am going to sketch how a large scale agile digital transformation programme gets to the point of cutting DDD code. I will then get into how a large project comes to be a platform with a micro-services architectureRead the rest of this entry »