Work in a cadenced and synchronized way

State of mind

Pace improves predictivity, synchronisation facilitates dependencies

State of mind

Description

Software development is a complex activity and because of the uncertainties associated with this context, things emerge. In this situation, it is recommended to probe the "thing", to feel what emerges and to establish a response based on what emerges [Snowden 2007]. The agile approach is a good way to move forward gradually in building the system [Campbell 2020].

Furthermore, moving forward in a paced manner allows this progress to be chopped up and uncertainty to be reduced in a rhythmic way in order to [SAFe 2021-7] :

  • convert unpredictable events into predictable ones at lower cost
  • make waiting times for new results predictable
  • support good regularity in planning and coordination
  • limit the size of the work to a single interval


Timing then provides better control over when to add new outputs to what already exists at planned synchronisation times.

This timing allows [SAFe 2021-7] :

  • multiple events to occur at the same time
  • facilitate decision making on what is best for the system based on concerted feedback rather than adapting as we go and reverting to emerging inconsistencies


This practice works in conjunction with an incremental approach [SAFe 2021-4] to avoid going too far in a piecemeal discovery of the system that would result in too many things to integrate.

Thus, the contribution of cadence and synchronisation can make the generation of the solution more fluid [Reinertsen 2009] and deliver a high-value product to users more quickly, provided that the perception of the added value and the quality of the product are good.

Application to test maturity

Snowden's approach described in the Cynefin framework [Snowden 2007] proposes that for different situations, whether obvious, complicated, complex or chaotic, there is a point at which the system is probed in order to make the most appropriate decisions. This is precisely the role of testing.

Illustration of the Cynefin framework by [Snowded 2014]

The more refined the ability to test, the better the perception of the system "perceived need" / "realised product" / "organisation".

By dint of improving one's perception of the system through experimentation, tools emerge; these tools generate practices in the organisation, these practices become organised and then become principles [Larman 2017] [Moustier 2020].

This progression is, so to speak, the result of the maturity of the tests that move the organisation from a disordered system to a chaotic approach that becomes complex.

Sometimes, when the domain is finely explored, standards can emerge to make the domain complicated; and only in some cases, become obvious.

Agilitest's position on this practice

In the Cynefin framework, Agilitest is clearly positioned at the tooling level, in particular that of test automation. In itself, the test automation approach is a practice that is finding great popularity following the emergence of DevOps [SAFe 2021-15] [Wigmore 2017] and especially the "Continuous Testing" that goes with it [Wikipedia 2021] [Moustier 2020].

Agilitest contributes to Continuous Testing through the simplicity of implementing test case automation as the #nocode approach [Forsyth 2021] limits the time needed to engineer the script as there is no need to think of any algorithm, just follow the business process steps on the application to be tested.

This speed thus helps the timing and synchronisation between each stakeholder in the solution.

Related cards

To go further

© Christophe Moustier - 2021