Skip to main content

Acceptance Criteria vs Definition of Done

Definition of Done (DoD) is a list of requirements that a user story must adhere to for the team to call it complete.

While the Acceptance Criteria of a User Story consist of set of Test Scenarios that are to be met to confirm that the software is working as expected.

Acceptance criteria:

 Acceptance criteria or  Acceptance scenarios are an integral part of a story.

The  acceptance tests define what actually has to be built to implement a story.

There is no allocated responsibility for writing acceptance criteria.

While it is usually the product owner or product manager who gets around to defining the functionality, just about anyone on the team could write acceptance criteria for user stories.

The writer must be careful to ensure that the acceptance criteria are written from the perspective of the end user, and for this reason the product owner (who is considered to be the voice of the customer) often undertakes this task. 

The acceptance criteria written in this format Given - When - Then

Given - some initial context

When - an event occurs

Then - ensure some outcomes

The example for the acceptance criteria given below for the user story, "Customer withdraws cash from ATM:

User story:

As a customer

I want to withdraw cash from ATM,

So that i don't have to wait at the bank.

Acceptance criteria for the above user story:

Positive scenario:

Given the account is in credit

and the card is valid

and the dispenser account contains cash

When the customer requests cash

Then ensure the account is debited

and ensure cash is dispensed

and ensure the card is retuned

Negative scenario:

Given the account is in overdrawn

and the card is valid

When the customer requests cash

Then ensure a rejection message is displayed

and ensure cash is not dispensed

and ensure the card is retuned

Definition of Done:

The definition of Done is structured as a list of items, each one used to validate a Story, which exists to ensure that the Development Team agree about the quality of work they’re attempting to produce.

It serves as a checklist that is used to check each Product Backlog Item or User Story for completeness. Items in the definition of “Done” are intended to be applicable to all items in the Product Backlog, 

For example, in the software industry, teams may need to ask some of the following questions to come up with their DoD:

  • Code peer reviewed?
  • Code completed?
  • Code reviewed?
  • Code checked-in?
  • Unit tests passed?
  • Functional tests passed?
  • Acceptance tests completed?
  • Product Owner reviewed and accepted?

Comments

Popular posts from this blog

Certified Enterprise Architect Professional (CEAP) - Module 4 - Architecture Precursors

 Architecture Precursors: Precursors to modern Enterprise Architecture (EA) include early frameworks like IBM's Business Systems Planning (BSP), which focused on aligning business strategy with information systems, as well as other Information Systems (IS) architecture methodologies that emerged in the 1970s and 80s, emphasizing the connection between business processes and IT systems, laying the groundwork for the holistic view of an organization that EA represents today; the "Master Plan for Information Systems" by Evans and Hague is also considered a foundational concept in this area. Drivers: internal / external pressure enforce to change the system Aims & Directives: Aims:  Goals Objectives Requirements Directives: Principles (example: Principles can be associated with business, data, applications, infrastructure, or security) Policies (example: Members of the public have minimal access to data) Business Rules (example: A rule directs and restricts a procedure)

Scaled Agile Framework (SAFe)

The Scaled Agile Framework (SAFe) is a set of organizational and workflow patterns for implementing agile practices at an enterprise scale. The framework is a body of knowledge that includes structured guidance on roles and responsibilities, how to plan and manage the work, and values to uphold. Scrum is a simple, flexible approach to adopting Agile that's great for small teams. SAFe is an enterprise-wide Agile framework designed to help bring Agile beyond the team and into the company as a whole. Scaled Agile has built a comprehensive level that includes all the four layers called the team, program, large solutions, and portfolio level. 4 Layers: Portfolio - Strategy, Vision, Roadmap, Strategy goal, Decision making, Budget, Portfolio level metrics,  Program - Align multiple teams towards a common mission, Bring together all the Agile teams, transparency, collaboration, and synchronisation, Scrum of Scrums, Product Owners to define the overall vision. Large Solutions - ar...

4 T's - Technology, Time, Teamwork, Transparency

 1) Technology: Software development technologies are the tools and methods that developers use to design, develop, test, and deploy software applications. These include a wide range of software technologies, such as programming languages, frameworks and libraries, databases, and cloud computing platforms. 2) Time: A timebox is a fixed time period within which a deliverable must be produced in a project management context. It's a time management technique that involves dividing time into individual time periods, each with its own goal, duration, and deadline. Timeboxes are self-contained calendar events that can't be extended once they've started. The fundamental principle of timeboxing is that time in timeboxes can't shift, and once the time runs out, work must stop, even if the task isn't finished.  3) Teamwork: Teamwork in project management is a measure of how well a project's team works together to achieve a goal. It involves collaboration, communication, a...