Addressing Non-Functional Requirements in Scrum
Non-functional requirements (NFRs) are crucial for ensuring that a product performs well in areas such as usability, reliability, and performance. In Scrum, these requirements must be carefully integrated into the development process to ensure that the final product meets all necessary standards.
Exam Question
What are the three best ways to address non-functional requirements?
(choose the best three answers)
A. Specific expectations can be used as acceptance criteria to specific Product Backlog items.
B. Important, recurring non-functional requirements can be added to the Definition of Done.
C. Discuss them during risk mitigation phase before development.
D. Before the release, they should be tested and validated in a hardening Sprint.
E. Scrum is for functional, front-end development only.
F. Include them in the Product Backlog.
Correct Answers
A. Specific expectations can be used as acceptance criteria to specific Product Backlog items.
B. Important, recurring non-functional requirements can be added to the Definition of Done.
F. Include them in the Product Backlog.
Explanation
Correct Answers
A. Specific expectations can be used as acceptance criteria to specific Product Backlog items:
Non-functional requirements can be addressed by including specific expectations as acceptance criteria for particular Product Backlog items. This ensures that the non-functional aspects are considered and met during the development of each feature.
B. Important, recurring non-functional requirements can be added to the Definition of Done:
Adding recurring non-functional requirements to the Definition of Done ensures that these requirements are consistently met for every Increment. This approach helps maintain a high level of quality across the entire product.
F. Include them in the Product Backlog:
Including non-functional requirements in the Product Backlog allows them to be prioritized, estimated, and addressed alongside functional requirements. This integration ensures that non-functional aspects are not overlooked and are treated with the same importance as other Product Backlog items.
Why the Other Options Are Less Appropriate
C. Discuss them during risk mitigation phase before development:
While discussing non-functional requirements during risk mitigation can be useful, it is not the most effective way to address them. Scrum emphasizes iterative development, where requirements are continuously refined and integrated into the process.
D. Before the release, they should be tested and validated in a hardening Sprint:
Scrum does not advocate for separate “hardening” Sprints. Non-functional requirements should be integrated and tested throughout the development process, not just before the release.
E. Scrum is for functional, front-end development only:
This statement is incorrect. Scrum is not limited to front-end or functional development. It is a framework that can be used for any type of development, including addressing non-functional requirements.
Relevance to the PSD Exam
Understanding how to properly address non-functional requirements is important for the PSD exam. It demonstrates the ability to integrate these critical aspects into the Scrum framework effectively.
Key Takeaways
- Acceptance Criteria: Non-functional requirements can be included as acceptance criteria for specific Product Backlog items.
- Definition of Done: Recurring non-functional requirements can be added to the Definition of Done to ensure they are consistently met.
- Product Backlog: Non-functional requirements should be included in the Product Backlog to ensure they are prioritized and addressed.
Conclusion
Non-functional requirements are crucial for the overall quality and performance of a product. In Scrum, these requirements should be addressed by incorporating them into the Product Backlog, using them as acceptance criteria, and adding them to the Definition of Done. For more information on preparing for the PSD exam, visit our Professional Scrum Developer PSDâ„¢ Exam Prep.