INDEPENDENT SOFTWARE TESTING

The primary responsibility of individuals accountable for testing activities is to ensure that uality is measured accurately.

Often, just knowing that the organization is measuring quality is enough to cause improvements in the applications being developed. In the loosest definition of independence, just having a tester or someone in the organization devoted to test activities is a form of independence.

The roles and reporting structure of test resources differs across and within organizations.

These resources may be business or systems analysts assigned to perform testing activities, or may be testers who report to the project manager. Ideally, the test resources will have a reporting structure independent from the group designing or developing the application in order to assure that the quality of the application is given as much consideration as the project budget and time line.

Misconceptions abound regarding the skill set required to perform testing, including:
  1. • Testing is easy
  2. • Anyone can perform testing
  3. • No training or prior experience is necessary
In truth, to test effectively, an individual must:
  1. Thoroughly understand the system
  2. Thoroughly understand the technology the system is being deployed upon (e.g., client/server or Internet technologies introduce their own challenges)
  3. Possess creativity, insight, and business knowledge
  4. Understand the development methodology used and the resulting artifacts
Often, successful development teams will have a peer perform the unit testing on a program or class. Once a portion of the application is ready for integration testing, the same benefits can be achieved by having an independent person plan and coordinate the integration testing.

Where an independent test team exists, they are usually responsible for system testing, the oversight of acceptance testing, and providing an unbiased assessment of the quality of an application. The team may also support or participate in other phases of testing as well as executing special test types such as performance and load testing.

An independent test team is usually comprised of a test manager or team leader and a team of testers. The test manager should join the team no later than the start of the requirements definition stage.

Key testers may also join the team at this stage on large projects to assist with test planning activities. Other testers can join later to assist with the creation of test cases and scripts, and right before system testing is scheduled to begin.

The test manager ensures that testing is performed, that it is documented, and that testing techniques are established and developed. They are responsible for ensuring that tests are designed and executed in a timely and productive manner, as well as:
  1. Test planning and estimation
  2. Designing the test strategy
  3. Reviewing analysis and design artifacts
  4. Chairing the Test Readiness Review
  5. Managing the test effort
  6. Overseeing acceptance tests
Testers are usually responsible for:
  1. Developing test cases and procedures
  2. Test data planning, capture, and conditioning
  3. Reviewing analysis and design artifacts
  4. Testing execution
  5. Utilizing automated test tools for regression testing
  6. Preparing test documentation
  7. Defect tracking and reporting
Other testers joining the team will primarily focus on test execution, defect reporting, and regression testing. These testers may be junior members of the test team, users, marketing or
product representatives, and so on.

The test team should be represented in all key requirements and design meetings including:
  1. JAD or requirements definition sessions
  2. Risk analysis sessions
  3. Prototype review sessions

They should also participate in all inspections or walkthroughs for requirements and design artifacts.

The previous post is regarding software testing matrices .



To Do Next: Thank you for visiting PROGRAMMING BLOG. If you liked the post, please subscribe to my blog via email or RSS FEED.You can contact me here for any specific feed back .


No comments:

Post a Comment