DoD – Definition of Done

2023-10-29 21:04

The Scrum Guide says the Definition of Done is a formal description of the state of the Increment when it meets the quality measures required for the product. This abstract definition refers to the next abstract definition… quality measures. What is the thing about quality in the Scrum context? Everything. Time, budget and scope are variable, but the quality remains high. With explicit quality-criteria the steerability of the product development is assured. After every increment the decision can be taken to develop in a new valuable direction. Instead of detailed planning over a wide horizon, every increment concludes a new experiment of valuable feedback-gathering and enables the decision to explore new areas to maximize the customer value and minimize the time to market.

Is this the holy grail of development? Not really. If it is clear what to develop, the agile approach adds unnecessary overhead with the risk that increments (or even the whole project) is getting really big before assuring everything is done according to the quality criteria. A compromising way out could be the incremental closure of features along the progress of the development and with this the grey area of meeting a more or less well defined Definition of Done arises. The complete documentation and user feedback for the feature is only possible, if the deployment is completed, the integration tests depend on the implementation of related features to minimize the testing efforts and sooner as desired the increments are getting longer with the drawbacks of loosing training (c.f “If it hurts, do it more often”) and landing in the worst spot between having too little scaling effects and having to learn the things every iteration from scratch.

The standard way out? Automate away as much as possible, i.e. all the things, that are repeatedly executed, need to be automated and things that are not necessary need to be left away. The more difficult question is about the scope. What is in scope for the DoD and what is out of scope.

A short comparison which is explaining the basic dilemmas: Breakfast-cereals. What is needed for a successful deployment of breakfast cereals. The steps viewed from the perspective of an 8-year-old: get the milk, get the cereals, get a spoon and mix it in a bowl and after eating it needs to be tidied up: bowl and spoon are put in the dish-washer, the cereals are put back to their place and the milk in the fridge. Is it executed always in this way? Not really, sometimes the steps after eating are left out partly or completely, because they are not immediately necessary and an 8-year old is not bothering too much about the supplies of breakfast-cereals or milk. The same is true for the bowl and the spoon. He has no special requirements and takes one of the standard-dishes (stockpile of 12+). Would it be useful to extend the Definition of Done to all thinkable edge-cases, the supply phase and the clearing of the dishwasher afterwards? Not really, the meaning behind is difficult to grasp for an 8-year old and the time-consumption is suboptimal in the morning before leaving for school.

Software deployment is similar. Not every step is executed together with the completion of a feature, but nevertheless essential steps need to be performed on a regular basis in order to be able to sustainably deploy the features.


2022-04-25 22:51

Every person has individual celebration days. Depending on the embedding in a group, further bank holidays apply. Some of it are religious, others are national or even regional. The 25th of April is the italian liberation day of the fascism, a quite contemporary occasion, because it should give to think about the rising conflicts in eastern Europe and the ongoing crisis situations.

The celebration gives an occasion to think about the past and its implications to the present.


2022-04-10 22:13

Advocating for a good cause is helping to improve the world. Judging about good and bad causes is the art of wisdom. Some good practices for judging are evaluating the impact of the cause, considering the sustainability, balancing winning parties against loosing parties and last but not least looking for the acceptance in the society.

Problems are arising, when the good cause is not the main driver for lobby-activities, but achieving personal advantages. The fine line to regard is the border between legality and illegality, but often evading certain rules is the main art of lobbyists. An extreme form of lobbying is found in criminal organizations or similar constructs.


2022-03-27 22:49

History is repeating and likely it is offering not only a look to ever similar problems but as well to their solutions or non-solutions. The 10 Plagues of Egypt or 7 bowls of the Armageddon symbolize larger disruptions of societies. The first as a past event as an example, the second as a metaphoric warning post to deal wisely.


2022-03-20 23:28

Are we living in a dystopian world or is just the view on it currently biased by some difficulties? Economic crisis, Climate crisis, Pandemy, War in Ukraine suggest the possibility of a bad direction of future development with harsh changes and little optimistic outlooks. Many movies draw such dystopian environments, many of it slipped into it after an apocalyptic tipping point. As I’m grown up with such movies and somewhere in the background of my childhood I remember noticing the Gulf war as a first moment of global crisis, the spectrum of thinking is very wide and even under pessimistic circumstances the hope for a good future big.


2022-02-27 01:03

Negotiating in a way both parties come to a benefit. In this way every negotiation is perceived positive and progress can be made. At the moment we have many geopolitical situations where we se positive and negative examples. Let’s find out which approach brings further.