Agile

From Freephile Wiki

See http://agilemanifesto.org/ and Agile software development

In sum, agility is good. Agile as a noun was never intended by those who started it all[1].

"Agile has come to mean doing half of Scrum, and using Jira" - Allen Holub

Jul 31, 2022 The Engineering Room Allen Holub is a computer scientist, author, educator, and consultant. He has written extensively on the C, C++, and Java programming languages, and on object-oriented programming in general. Allen is well known for his uncompromising view of agile adoption and in particular the assumption that Scrum is the only agile approach. In the past he has said “Jira is the work of the devil” and “Agile has become a priesthood”. Allen is engagingly forthright in his views.

In this episode of The Engineering Room, Dave Farley discusses with Allen the prevailing culture, and often anti-patterns, that lead to problems in agile adoption, and between them, they explore some of the ideas that really matter in becoming genuinely agile, as a practical way to more effective software development.

Good Reads

References


Illustrations

One of many lifecycles possible in Disciplined Agile Delivery
Characteristics of the Maturity levels in CMMI


Sprints

Sprints are for track and field.

Usain Bolt is a sprinter
The track is over there

Sprints are not what your software team does all day, every day. But the term 'sprint' has crept into the process for so many enterprises.

There is so much wrong with "Agile" - such as the introduction of terms like commitments and accountability. It's a language of violence. "I'm going to hold you accountable for your commitments." In the original idea of agile, good people do what they are good at; and do it with passion; so you don't need to even discuss 'holding them accountable'. To have a good Thanksgiving Dinner, would you ask your wife to make a commitment to bake a good turkey? And threaten to hold her accountable if it doesn't satisfy your requirements? That's just not how it works. But people will pretend that is how software is made.

Cadence and Calendar for a software project

I have no idea whether or not Red Hat calls themselves 'agile' but I did find it interesting to see how they start a product cycle with at least a series of phases for planning. This is from the (Red Hat) Ansible project. It's a 6-month cycle, with 3 phases of development lasting roughly 2 months to a month and a half. Notice there is a full 7 weeks of 'polish' between feature freeze and general release.

  • Phase1: 2024-10-14 - 2024-12-13  (9w)
  • Phase2: 2024-12-16 - 2025-02-14  (9w)
  • Phase3: 2025-02-17 - 2025-03-28  (6w)
  • Freeze: 2025-03-31 - 2025-04-04  (1w)
  • Betas:  2025-04-07 - 2025-04-25  (3w)
  • RCs:    2025-04-28 - 2025-05-16  (3w)
  • GA:     2025-05-19