Monday, March 20, 2017

Pitfalls using Agile

Fail to address domaincore problems –do not cover core capability: adaptive & lean (with undesired results as slowness, low quality, expensive). Example: if your product is fragile, rigid and have a lot of technical debt (a symptom for Flaccid Scrum), there is no way to be Agile, and there is no way to have a good software economics. Example: if there is no collaborative work, there is no room for process improvement.The first step toward a solution is to develop core capabilities around Agile Core Practices (as the ones recommended by XP and DA, beyond Scrum offer).

Fail to address context problems – each context could have different kinds of risks and problems. The main pitfall is to copy-paste the process from one context to another. That is a common risk when are used “prescriptive” methods, with too few guidance for tailoring. Example: we cannot copy-paste a process from a product with a lower complexity to another one with a bigger complexity. Example: releasing a whole new product is very different that a small release with a delta for an existing product. Example: An Agile scaling approach that does not have options per context.

Too small set of practices
– When teams are relying only on practices existent in lightweight
methods (as Scrum or XP), and the rest process has severe skill gaps or, it is
too ad hoc. So, both domain and context problems could not be
addressed well. You cannot excel in managing software development only with 10-15 practices.

“Modernization” by dilution – any approach could evolve, but regression it is also possible. There are many attempts to modernize or enhance or “scale” Core Agile (Manifesto and Core Agile Practices). Everything is fine if the agility itself it is not diluted until disappearance. Any enhancement is good if will address the domain and context problems and offer responses for core needed capabilities: adaptive-lean and tailoring /context. Recommended readingsThe Land that Scrum Forgot, by Robert C. Martin