Software Testing and Development Methodologies

TrustyGorgon avatar
TrustyGorgon
·
·
Download

Start Quiz

Study Flashcards

24 Questions

What can be identified through reviewing requirements?

Ambiguous or Unverifiable requirements, and requirements that aren’t defined clearly

What is a powerful technique for identifying defects in requirements?

Reviewing the requirements

What is a rigorous type of review that is one of the highest-value software quality practices?

Inspection

What should be assembled for a peer review of requirements?

A small team of reviewers with different perspectives

Why is it important to train team members in how to perform effective requirements reviews?

To improve software quality

What type of tests are based on the functional requirements?

System tests

When can test activities begin in parallel with development activities?

In parallel with the corresponding development activities

What is a good practice of requirements validation?

All of the above

What is the expected result when a user enters an order number to view and the order doesn't exist?

Display message 'Sorry, I can't find that order.'

What is the purpose of acceptance criteria?

To determine if the solution meets user requirements

What is the benefit of simulating the requirements?

It allows rapid building of executable mock-ups

What is an important aspect of acceptance criteria?

All of the above

What should users be asked to do to determine if the solution meets their needs?

To describe how they will determine if the solution meets their needs

What is the purpose of a simulated system?

To validate requirements and make design choices

What is a key aspect of acceptance testing?

All of the above

What is the benefit of combining acceptance testing with other practices?

It supplements requirements elicitation and analysis

What is the main purpose of writing tests in software development?

To document the expected behavior of the product under specified conditions

What is the benefit of walking through tests with customers?

To ensure that the tests reflect user expectations

What is the role of a Business Analyst (BA) in testing?

To write the functional requirements from the user requirements

What is the purpose of mapping tests to functional requirements?

To ensure that all requirements have corresponding tests

What can inconsistencies between functional requirements, models, and tests reveal?

Ambiguities in the user requirements

What is the benefit of using tests in agile projects?

To replace detailed functional requirements

What is the purpose of elaborating conceptual tests?

To create detailed test procedures for formal system testing

What is an example of a use case that can be tested?

View Order

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.

This quiz covers the parallel testing and development process, acceptance tests from user requirements, and the specific bases for system and integration tests.

Make Your Own Quizzes and Flashcards

Convert your notes into interactive study material.

Get started for free
Use Quizgecko on...
Browser
Browser