Podcast
Questions and Answers
What can be identified through reviewing requirements?
What can be identified through reviewing requirements?
- Ambiguous or Unverifiable requirements, and requirements that aren’t defined clearly (correct)
- Only non-testable requirements
- Only clearly defined requirements
- Only ambiguous requirements
What is a powerful technique for identifying defects in requirements?
What is a powerful technique for identifying defects in requirements?
- Simulating the requirements
- Reviewing the requirements (correct)
- Defining acceptance criteria
- Testing the requirements
What is a rigorous type of review that is one of the highest-value software quality practices?
What is a rigorous type of review that is one of the highest-value software quality practices?
- Peer review
- Walkthrough
- Inspection (correct)
- Informal review
What should be assembled for a peer review of requirements?
What should be assembled for a peer review of requirements?
Why is it important to train team members in how to perform effective requirements reviews?
Why is it important to train team members in how to perform effective requirements reviews?
What type of tests are based on the functional requirements?
What type of tests are based on the functional requirements?
When can test activities begin in parallel with development activities?
When can test activities begin in parallel with development activities?
What is a good practice of requirements validation?
What is a good practice of requirements validation?
What is the expected result when a user enters an order number to view and the order doesn't exist?
What is the expected result when a user enters an order number to view and the order doesn't exist?
What is the purpose of acceptance criteria?
What is the purpose of acceptance criteria?
What is the benefit of simulating the requirements?
What is the benefit of simulating the requirements?
What is an important aspect of acceptance criteria?
What is an important aspect of acceptance criteria?
What should users be asked to do to determine if the solution meets their needs?
What should users be asked to do to determine if the solution meets their needs?
What is the purpose of a simulated system?
What is the purpose of a simulated system?
What is a key aspect of acceptance testing?
What is a key aspect of acceptance testing?
What is the benefit of combining acceptance testing with other practices?
What is the benefit of combining acceptance testing with other practices?
What is the main purpose of writing tests in software development?
What is the main purpose of writing tests in software development?
What is the benefit of walking through tests with customers?
What is the benefit of walking through tests with customers?
What is the role of a Business Analyst (BA) in testing?
What is the role of a Business Analyst (BA) in testing?
What is the purpose of mapping tests to functional requirements?
What is the purpose of mapping tests to functional requirements?
What can inconsistencies between functional requirements, models, and tests reveal?
What can inconsistencies between functional requirements, models, and tests reveal?
What is the benefit of using tests in agile projects?
What is the benefit of using tests in agile projects?
What is the purpose of elaborating conceptual tests?
What is the purpose of elaborating conceptual tests?
What is an example of a use case that can be tested?
What is an example of a use case that can be tested?
Study Notes
Validating the Requirements
- Validation involves test activities beginning in parallel with corresponding development activities.
- Acceptance tests are derived from user requirements.
- System tests are based on functional requirements.
- Integration tests are based on the system's architecture.
Key Actions in Validation
- Reviewing requirements (peer review, rigorous inspection, etc.).
- Testing the requirements for documenting the expected behavior under specified conditions.
- Defining acceptance criteria together with users and based on their requirements.
- Simulating the requirements (simulations with mock-ups to validate requirements and make design choices if necessary).
Good Practices of Requirements Validation
- Reviewing requirements is a powerful technique for identifying ambiguous or unverifiable requirements.
- Reviewing requirements helps identify requirements that aren't defined clearly enough for design to begin.
- Reviewing requirements also helps identify other problems.
Reviewing Requirements
- Peer review of requirements, particularly the type of rigorous review called inspection, is one of the highest-value software quality practices available.
- Assemble a small team of reviewers who represent different perspectives (analyst, customer, developer, tester).
- Carefully examine the written requirements, analysis models, and related information for defects.
- Informal preliminary reviews during requirements development are also valuable.
Defining Acceptance Criteria
- Ask users to describe how they will determine whether the solution meets their needs and is fit for use.
- Acceptance criteria include a combination of the software passing a defined set of acceptance tests based on user requirements.
Simulating the Requirements
- Commercial tools are available that allow a project team to simulate a proposed system either in place of or to augment written requirements specifications.
- Simulation takes prototyping to the next level, by letting BAs work with users to rapidly build executable mock-ups of a system.
Testing the Requirements
- Tests constitute an alternative view of the requirements.
- Writing tests requires you to think about how to tell if the expected functionality was correctly implemented.
- Derive tests from the user requirements to document the expected behavior of the product under specified conditions.
- Walk through the tests with customers to ensure that they reflect user expectations.
Studying That Suits You
Use AI to generate personalized quizzes and flashcards to suit your learning preferences.
Description
This quiz covers the parallel testing and development process, acceptance tests from user requirements, and the specific bases for system and integration tests.