Agile is the anarchism of software development: sounds nice on a high level but basically no theoretical foundation behind it and thus in practice everybody makes it whatever the fuck they want it to be.
There’s plenty of theory to draw from, like the Cynefin Framework or Wardley Mapping. But like the left, there’s no real consensus on what we ought to be doing but no shortage of opinions.
There’s some theory and computer science behind parts. The value of peer review is evidence-backed. The idea that dev teams should self-organize is consistent with some varieties of management theory. Retros have been shown to have value, though the way they’re often done in Agile teams I’ve worked in has left much to be desired. Estimation with dimensionless points has zero evidential backing. The notion that the team should be able to set dates rather than having milestones imposed by management is, at best, woefully naive, since it presupposes a commitment by management that, in real life, few managers are willing to make. And in most cases where the shit has hit the fan, we later find that we needed more analysis, more planning and more design up front, rather than less. There are only certain application domains where you can get away with being as minimalist with those disciplines as Agile exponents claim you should be.
Agile is the anarchism of software development: sounds nice on a high level but basically no theoretical foundation behind it and thus in practice everybody makes it whatever the fuck they want it to be.
Which is how anarchism has played out so far lol
There’s plenty of theory to draw from, like the Cynefin Framework or Wardley Mapping. But like the left, there’s no real consensus on what we ought to be doing but no shortage of opinions.
There’s some theory and computer science behind parts. The value of peer review is evidence-backed. The idea that dev teams should self-organize is consistent with some varieties of management theory. Retros have been shown to have value, though the way they’re often done in Agile teams I’ve worked in has left much to be desired. Estimation with dimensionless points has zero evidential backing. The notion that the team should be able to set dates rather than having milestones imposed by management is, at best, woefully naive, since it presupposes a commitment by management that, in real life, few managers are willing to make. And in most cases where the shit has hit the fan, we later find that we needed more analysis, more planning and more design up front, rather than less. There are only certain application domains where you can get away with being as minimalist with those disciplines as Agile exponents claim you should be.