Monday, September 25, 2017

Core Agile Practices and Rolling Wave process model

Core Agile Practices have a fundamental contribution to the rolling waving the work, where their multiple benefits (per practice) address many complexities, incertitude, and knowledge aspects.

Each of these practices has a contribution to information-based work: create, gather, distribute, slice, validate (and get feedback) information.That means we can have a feasible, effective rolling wave/work.

Here are some examples.

Small Releases – key role – reduce the overall size of the wave. Transform a big wave (big release) into more smaller waves. Fundamental to dealing with complexity, incertitude and knowledge management. Affect all other aspects. The most important feedback loop is deployment and working in production. See [B1]

Iterations – similar with small release: slice the work, make the work easier. Slice the release and advance with validated releases and feedback.

Retrospectives – Apply feedback on all aspects of the work: correction and improvement feedback loop.

Daily meetings – slice the work more and make the day a unit for coordination and feedback.

Envisioning – initial release looks ahead. Big upfront initial wave it is not feasible, but an envisioning (requirements, solution, and others) it is useful and pragmatic. Whenever it is based on solution spikes will be better. See [B2].

Look Ahead Modeling – fill the gaps between envisioning and iteration modeling. Prepare the iteration modeling. Fill the gaps between iteration modeling and just-in-time. See [B2].

Model Storming(Just-in-Time modeling) - When information gathering/creating or validating become accessible and whenever it is necessary. See [B2].

Active Stakeholders Participation – involve and collaborate with the stakeholders in the whole life-cycle. You cannot rely only on a Product Owner approach if you want a robust approach on gather/build and validate the rolling wave information. See [B2].

Continuous Integration – working software produced with small granularity/cycles. That mean that ones of the main fedback loops are very short and the whole rolling wave will be more robust. Usually suppose that many other Core Agile Practices are in place (such TDD, Model Storming, Pair Programming, Solution Spikes)

Consumable solution – it is a much strong condition than just working software for validating the work and the rolling wave evolution. See [B2].

Important – any of these practices have multiple contributions to a pragmatic, effective, efficient rolling wave of work/information. Eliminating one of these practices could cause serious problems and a much significant effort. If you want to improve your process in context, you will need guidance about how practices could be distributed in the life-cycle using process goals and decisions points,