Acceptance Criteria are important. The success or failure of a project depends on how well the team meets its clients' documented or perceived acceptance criteria. Sometimes we tend to overlook this important aspect, but defining acceptance criteria early on will help not only help in avoiding last-minute surprises but also in establishing what the client expects from the system.
What do you understand by acceptance and evaluation criteria?
Acceptance criteria describe the minimal set of requirements to be met for a solution to be worth implementing. It is typically used when only one possible solution is being evaluated and is usually presented in the form of statements which can be verified as pass or fail. However, one should ensure that these are not too narrowly or too broadly or complexly written as it may not yield the expected results. Towards the ends of this article, I've provided an example of acceptance criteria for a particular user story in the project schedule management module of Adaptive US' very own system called GRCPerfect.
Evaluation criteria are a set of requirements used to choose between multiple solutions options, solutions or solution components. This allows for a range of possible scores.
Requirements for Acceptance, and evaluation criteria
Acceptance criteria must be testable.
As for the evaluation criteria, one must determine the ranking and scoring.
Ranking is the process of determining the order of importance for all requirements using the MoSCoW technique.
- Must- Requirements that must be satisfied/met
- Should - Requirements that should be satisfied/met. These are high priority requirements that should be present in the system
- Could - Requirements that could be satisfied /met. These are good to have requirements, which can be accommodated if resources (time, money and other resources) are available.
- Won't - Requirements that have been agreed to be not included in this release.
Scoring is the process of determining how well a solution meets a requirement. A Business analyst must establish a scale for scoring each requirement, and define multiple possible scoring levels. Stakeholders must agree on the criteria, and how solutions will be rated against them.
Example of Acceptance Criteria
GRCPerfect is a Governance, Risk and Compliance Management System developed for the IT and ITES domain. The primary objective of GRCPerfect is to help companies implement Governance, Quality, and Information Security Management Systems in an integrated manner. It has various features, one of which is to plan and track projects and programs using standards such as CMMI, ISO 9001, ISO 27001 etc. An example pertaining to the project schedule management system is given below:
As a Project Manager, I should be able to upload schedule details in the GRCPerfect system by means of an excel.
1. In the Uploads section, Project schedule management module should appear in the list of modules
2. Option to choose the file should be available
3. Option to upload the file should be available
4. Upon choosing the file and clicking the upload button, the data should get inserted correctly in the respective fields of the schedule management module
5. “Data uploaded successfully” message should appear
6. The uploaded data should get displayed in the project schedule management module UI
7. The most recent data should appear first in the project schedule management module
4.1 Display error message if the data did not get inserted properly
4.2 Display error message if the uploaded file format was different from the format in which data should be uploaded.
- Agile methodologies require requirements to be expressed as testable acceptance criteria.
- It is necessary when requirements express contractual obligations.
- Helps in assessing requirements based on agreed upon criteria
- May express contractual obligations, and may prove difficult to change for legal or political reasons.
- Achieving agreement from diverse stakeholders can be challenging.
To conclude, effective acceptance criteria is undoubtedly a powerful tool in improving the workflow of any team.