Definition of Done & "industry standards" for Software Development ?
Hello from London!
I'm a Delivery Manager & have a cross functional scrum team of 7. We're currently transforming some of our ways of working as we migrate to Azure. As part of this we've discussed what our "definition of done" should be. I appreciate there's tons of other threads about this but hopefully my question is unique...
The Scrum definition: "Definition of Done: a shared understanding of expectations that the Increment must live up to in order to be releasable into production. Managed by the Development Team"
I appreciate the "Definition of Done" should apply to the whole increment...
My question: whilst there isn't a set list of what should be included as part of the "definition of done" from a delivery perspective (i.e. development,test,release,deployment "checks"), can anyone advise if there is anthing resembling an "industry standard" setlist of what is good practice?
Many Thanks in Advance -
Walking Through a Definition of Done: https://www.scrum.org/resources/blog/walking-through-definition-done
The idea of an "industry standard" is very hard to define in the context of software product development. Software is often a supporting function of a company in a different industry or designed to support a particular customer base in a given industry. Software built to support regulated industries, such as aerospace, medical or pharmaceutical, or financial, is often different than software built in or for other industries or functions. Considering the context of the developing organization is important when defining the definition of done.
I think that Ian's blog post, Walking Through a Definition of Done, may be a good start. XP123 also has a blog post with some good considerations. There are others with some ideas and thoughts on their Definition of Done as well. But, in the end, you're going to need to figure out what these things mean to you, to determine what the team needs to have done in order to ensure that a unit of work is ready for the next step in the process, whether that's demonstration, validation, release, or something else entirely.
...can anyone advise if there is anthing resembling an "industry standard" setlist of what is good practice?
If you find one, I'd be interested in seeing it. Not that I would believe it is actually an industry standard but to see what someone considers to be one. @Ian's post is a great place to start your adventure on defining a Definition of Done. I really like his explanation at the beginning especially the literary "dog" reference. (I will be stealing that with proper credit given). His urging to start with something and evolve is a method I have found to be really useful in attempts to get teams to define a Definition of Done that works. And the definition should be reviewed and evolve on a constant basis.
@Thomas' other suggestion is also another good one. It provides a slightly different perspective but in agile multiple perspectives are great. It helps one to arrive at their own interpretation for the organization in which you work. Going to a new organization might require a completely new perspective.
There is no industry standard as every industry has different needs. There can be an organization standard but even then, each team is free to add more stringent criteria. Don't look for a standard. Look for an actual Definition of Done that the team defining it agrees is correct for the work they do and the increments that are delivered each Sprint.
By the way, the fact that you are looking for and asked publicly for this is something for which I applaud you. It shows a desire to improve yourself as well as your teams. All signs of a great Scrum Master. Don't give up that quest.
Thanks @Ian, @Thomas, @Daniel - some really helpful points there! Will certainly take a look at the URLs shared and will let you know how I get on!