Hey! What's up everybody. Welcome back to my channel
Joshua Partogi here. So before we start today's video I would like to give
everyone a "massive thank you", especially for those of you who already subscribed
to this channel. Because just a few days ago this channel reached another
milestone that is 1000 subscribers. That could only mean good things because that
means we can work together in influencing people around the globe in
how they deliver value to their customers. I thank you for your trust and
support to this channel because your trust and support will motivate me to
continuously deliver better and more reliable content especially on Scrum. So
let's start today's video. So in today's video I would like to discuss about one
of the most important aspects of Scrum. However, this aspect is oftentimes
neglected by organisations implementing Scrum. And that most important aspect is
the Definition of "Done".
Neglecting the Definition of "Done" is one of the reasons why we see a lot of
failed scrum implementations in the market. Not putting enough emphasis on
technical excellence in the Definition of "Done" is one of the reasons why we see
a lot of products with technical debt in the market. If I can summarise scrum
into a single line statement, it would be to continuously deliver a done increment
that achieve the Sprint Goal every single Sprint. So because of these
problems we found in the industry, in today's video I'm going to talk about
the Definition of "Done" and the importance of "Done" in Scrum. Many of my
future videos is going to refer back to today's video, so make sure you don't go
anywhere stay on this video. A lot of people think that the Definition of "Done"
is the same as Acceptance Criteria. The Acceptance Criteria is the attribute of
the Product Backlog item (PBi) while the Definition of "Done" is the attribute of
the increment. Ensuring that the Acceptance Criteria of every Product Backlog item
is done, is just one of the checklist in the Definition of "Done". According to
Scrum Guide, when the increment meets the Definition of "Done", it means the
increment is ready to be deployed to production environment. And of course,
ensuring that every Acceptance Criteria is met, is not enough to ensure the
increment has production ready quality. Other checklist that needs to be in the
Definition of "Done" to ensure production ready quality includes all levels of
testing such as for example unit testing, integration testing, functional testing,
penetration testing, security testing, performance testing, etc. A lot of people
think that when their organisation start to implement Scrum they no longer need
to write any documentations. This is a big fat myth. In Scrum, any documentations
that's written should be valuable both for the business and also for the Scrum team.
Any valuable documentations that needs to be written, should be part of the
Definition of "Done". So every documentation that are considered
valuable both by the business and by the Scrum team such as for example we user
guide, troubleshooting guide, release notes, system architecture, test case
scenario, etc, should be in the Definition of "Done". Another big fat myth
I've found in the market is a lot of people think that Scrum doesn't care
about any governance process. Financial institutions that are regulated by the
government requires the governance process to be
done. If governance process is required for the increment to be considered as
done then it should be part of the Definition of "Done". If governance process
or audit results either from the government or any international standard
body is required for the increment to be considered as production-ready
then these items should be in the Definition of "Done". As I said in the
beginning of this video, there are a lot of crippling products in the market
because of the Definition of "Done" does not include any technical excellence
practices or any DevOps practices such as for example unit tests script with
90% test coverage, code review through pair programming or mob programming, automated
acceptance test script, continuous integration, automated deployment
script, automated provisioning script, etc. During Sprint Review, only Sprint Backlog
items that meet all of the checkboxes in the Definition of "Done" that become part
of the increment and discussed with the stakeholders. All of the Sprint Backlog
items that do not meet all of the check boxes in the Definition of "Done" goes
back to the Product Backlog for the Product Owner to manage. All of the
Sprint Backlog items that meets the Definition of "Done" can be released to
production environment if the Product Owner wants to. Just like how the Product
Owner owns the Product Backlog, the Development Team owns the Definition of
"Done" because the Development Team is accountable for the high quality of the
product. The Development Team continuously improves the Definition of
"Done" usually during Sprint Retrospective to ensure that the quality of the
product is continuously improving.
So that is all from me today folks. Thanks for watching today's video. I hope
you found today's video helpful to help you improve the quality of your product.
And most importantly to improve the level of your agility to deliver value
to your customers. If you found today's video helpful, don't forget to smash that
like button. And also don't forget to share today's video to the world so more
people can understand the importance of "Done" in Scrum. Don't forget to subscribe
to my channel so that you won't miss any of my video in the future. See you until
my next video. Bye!