Home > Software Quality Tips >
Software Quality Tips:
EMAIL THIS
 TIPS & NEWSLETTERS TOPICS 


Documenting your software test project


Michael Kelly and Karen N. Johnson
12.03.2007
Rating: -5.00- (out of 5)


Software quality news and advice
Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us    Add to Google


The test project is the technical effort of estimating work, planning the test scope and strategy, effectively managing test execution, and reporting on status and risk. Every project involves tradeoffs between features, time, quality and costs. It's the test manager's responsibility to manage the details of the test project by possibly providing information to stakeholders in terms of project estimates for the amount of work required, actively managing the test effort, and providing information about product quality. This tip focuses on the documents that might help when managing the testing project.

In our webcast on "How to plan your software test project" we outline some common test planning artifacts that one might find useful. These include the following:

  • Test strategy document
  • Test plan document
  • Test estimates
  • Test project plan
  • Other documents based on your context

Test strategy document
We have used the test strategy document to define the strategic plan for what aspects of the system we plan to test, our approach to testing, and to capture the details around constraints, assumptions and risks for our testing.

The test strategy document might capture the following information:

  • Scope of the testing
  • Quality criteria
  • Feature context
    • Technical architecture
    • Operating environment
    • Interaction with other features and systems
    • Other content items as appropriate to your project
  • Testing dependencies, assumptions and constraints
  • Testing objectives
  • Testing approach
    • Types of testing
    • Testing methods and procedures
    • Testing tools
    • Test data
    • Traceability
    • Other content items as appropriate to your project
  • Deliverables
  • Resources
  • Timelines
  • Risks and contingencies

As you develop the test strategy document, the creation of the document and working through the process of gathering information can help you assess and determine the strategy. The test strategy document can also be useful to convey the strategy to stakeholders to gain their agreement to your testing approach.

Test plan document
We use the test plan document to defines the goals and objectives of testing within the scope of an iteration, or if the project is small, for the entire project. For smaller projects, our test plan and strategy document may be the same document.

The test plan document might capture the following information:

  • Preparations
  • Staffing
  • Test coverage
  • Any testing requirements (technical or otherwise)
  • Test environments
  • Entry criteria
  • Exit criteria
  • Delegation of responsibilities
  • Facility acquisition
  • Task planning
  • Scheduling
  • Documentation on coordination and collaboration with other teams
  • Risks and issues that may impact testing
  • Specific deliverables of the test project
More information on software testing
Software testing deliverables: From test plans to status reports

Test coverage: Finding all the defects in your application

How to design test cases

The purpose is to outline and communicate the details of the testing effort for a specific period of time. It can be used to direct and guide the test effort. It may or may not contain the details found in the test project plan or test estimates (described below). Whether or not those documents are separate or contained under the plan again depends on the size of the project and the context in which we are working.

Test estimates and detailed plans
We sometimes find we need to do formal estimating when we plan our projects. To do this, we like to use bottom-up estimation. Working backwards from our test objectives, we can define all the tasks necessary to complete the objective. When finished, we have a work breakdown structure defined for many of our objectives. We can then take the various work breakdown structures and estimate the work for each of the tasks.

Once we have the estimates for the work, we lay out those estimates against a high-level schedule to understand what our resource needs are going to be. At the end of this process we have estimates in terms of work effort (hours, days, etc.) and resources (a number of people for a period of time).

Depending on the project, this information might be transferred into a formal project plan (most likely using Microsoft Project). This allows us to integrate the various work breakdown structures, consolidate the estimates, assign the resources planned and track the changes to the plan over time as the project unfolds. Maintaining a project plan always has the potential to be a distraction, so be sure that you need that kind of formality or that you truly find it helpful before you make the investment.

Other documents based on your context
Depending on the context you're working in, there might be other documents you need or want to produce. These can include models, lists, checklists, standards, templates, process documents, charters or contracts. For a specific example, Mike once included a site map for a Web site as part of his test planning documents, including details around each of the pages.

There's really no limit to what might be helpful when planning your project. From a documentation perspective, we suggest finding a balance between what's required, what's helpful in driving your understanding of the work, and what's helpful in communicating the testing to the various stakeholders on the project.

-----------------------------------------
About the authors:
Mike Kelly is a principle software test analyst for Liberty Mutual. He is also currently president of the Association for Software Testing and is a co-founder of the Indianapolis Workshops on Software Testing.

Karen N. Johnson is an independent software test consultant. She has 14 years' experience in software testing and software test management and is a frequent speaker at software testing conferences.


Rate this Tip
To rate tips, you must be a member of SearchSoftwareQuality.com.
Register now to start rating these tips. Log in if you are already a member.




Digg This!    StumbleUpon Toolbar StumbleUpon    Bookmark with Delicious Del.icio.us    Add to Google


RELATED CONTENT
Software testing and quality assurance (QA) fundamentals
HP Test Manager supports early SOA testing
Software testing is improved by good bug reporting
How testers can practice bug advocacy with developers
Strong quality assurance process adds value to SDLC, ITIL
Homeland Security-backed effort shows defects drop in open source software
When to begin testing in the SDLC
The testing certification debate continues
Building automated tests for legacy applications
Five agile testing perils to watch out for
Software testing in a virtual environment

Software test design
Software testing is improved by good bug reporting
Regression test cases in safety-critical software
Test cases from requirements specifications and use cases
Software testing fundamentals: Testing basics
How to thoroughly test a website without automated tools
How to create reusable test materials
Granularity in test case design
Tips for estimating test step execution
How to make testing estimation more accurate
Modular test case design consolidates tests

RELATED GLOSSARY TERMS
Terms from Whatis.com − the technology online dictionary
build  (SearchSoftwareQuality.com)
code review  (SearchSoftwareQuality.com)
conformance testing  (SearchSoftwareQuality.com)
error handling  (SearchSoftwareQuality.com)
garbage in, garbage out  (SearchSoftwareQuality.com)
load testing  (SearchSoftwareQuality.com)
NUnit  (SearchSoftwareQuality.com)
quality assurance  (SearchSoftwareQuality.com)
stress testing  (SearchSoftwareQuality.com)
white box  (SearchSoftwareQuality.com)

RELATED RESOURCES
2020software.com, trial software downloads for accounting software, ERP software, CRM software and business software systems
Search Bitpipe.com for the latest white papers and business webcasts
Whatis.com, the online computer dictionary

DISCLAIMER: Our Tips Exchange is a forum for you to share technical advice and expertise with your peers and to learn from other enterprise IT professionals. TechTarget provides the infrastructure to facilitate this sharing of information. However, we cannot guarantee the accuracy or validity of the material submitted. You agree that your use of the Ask The Expert services and your reliance on any questions, answers, information or other materials received through this Web site is at your own risk.

About Us  |  Contact Us  |  For Advertisers  |  For Business Partners  |  Site Index  |  RSS
SEARCH 
TechTarget provides enterprise IT professionals with the information they need to perform their jobs - from developing strategy, to making cost-effective IT purchase decisions and managing their organizations' IT projects - with its network of technology-specific Web sites, events and magazines.

TechTarget Corporate Web Site  |  Media Kits  |  Reprints  |  Site Map




All Rights Reserved, Copyright 2006 - 2008, TechTarget | Read our Privacy Policy
  TechTarget - The IT Media ROI Experts