Project Management
Six Sigma Certification Guide: Green, Yellow, Black belt details
What is Six Sigma? Six Sigma is a quality management approach that benefits individual or...
A Test Plan is a detailed document that describes the test strategy, objectives, schedule, estimation, deliverables, and resources required to perform testing for a software product. Test Plan helps us determine the effort needed to validate the quality of the application under test. The test plan serves as a blueprint to conduct software testing activities as a defined process, which is minutely monitored and controlled by the test manager.
As per ISTQB definition: “Test Plan is A document describing the scope, approach, resources, and schedule of intended test activities.”
Let’s start with following Test Plan example/scenario: In a meeting, you want to discuss the Test Plan with the team members, but they are not interested - . In such case, what will you do? Select your answer as following figure
Making Test Plan document has multiple benefits
You already know that making a Test Plan is the most important task of Test Management Process. Follow the seven steps below to create a test plan as per IEEE 829
The product under test is gtupapers banking website. You should research clients and the end users to know their needs and expectations from the application
You can use the following approach to analyze the site
Risk is future’s uncertain event with a probability of occurrence and a potential for loss. When the risk actually happens, it becomes the ‘issue’.
In the article Risk Analysis and Solution, you have already learned about the ‘Risk’ analysis in detail and identified potential risks in the project.
In the QA Test Plan, you will document those risks
| Risk | Mitigation |
|---|---|
| Team member lack the required skills for website testing. | Plan training course to skill up your members |
| The project schedule is too tight; it's hard to complete this project on time | Set Test Priority for each of the test activity. |
| Test Manager has poor management skill | Plan leadership training for manager |
| A lack of cooperation negatively affects your employees' productivity | Encourage each team member in his task, and inspire them to greater efforts. |
| Wrong budget estimate and cost overruns | Establish the scope before beginning work, pay a lot of attention to project planning and constantly track and measure the progress |
In Test Logistics, the Test Manager should answer the following questions:
Who will test?
You may not know exact names of the tester who will test, but the type of tester can be defined.
To select the right member for specified task, you have to consider if his skill is qualified for the task or not, also estimate the project budget. Selecting wrong member for the task may cause the project to fail or delay.
Person having the following skills is most ideal for performing software testing:
In your project, the member who will take in charge for the test execution is the tester. Base on the project budget, you can choose in-source or outsource member as the tester.
When will the test occur?
Test activities must be matched with associated development activities.
You will start to test when you have all required items shown in following figure Test Objective is the overall goal and achievement of the test execution. The objective of the testing is finding as many software defects as possible; ensure that the software under test is bug free before release.
To define the test objectives, you should do 2 following steps
Let’s apply these steps to find the test objective of your gtupapers Bank testing project
You can choose the ‘TOP-DOWN’ method to find the website’s features which may need to test. In this method, you break down the application under test to component and sub-component.
In the previous topic, you have already analyzed the requirement specs and walk through the website, so you can create a Mind-Map to find the website features as following
Specify the critical suspension criteria for a test. If the suspension criteria are met during testing, the active test cycle will be suspended until the criteria are resolved.
Test Plan Example: If your team members report that there are 40% of test cases failed, you should suspend testing until the development team fixes all the failed cases. It specifies the criteria that denote a successful completion of a test phase. The exit criteria are the targeted results of the test and are necessary before proceeding to the next phase of development. Example: 95% of all critical test cases must pass.
Some methods of defining exit criteria are by specifying a targeted run rate and pass rate.
This data can be retrieved in Test Metric documents.
Test Plan Example:Your Team has already done the test executions. They report the test result to you, and they want you to confirm the Exit Criteria. In above case, the Run rate is mandatory is 100%, but the test team only completed 90% of test cases. It means the Run rate is not satisfied, so do NOT confirm the Exit Criteria
Resource plan is a detailed summary of all types of resources required to complete project task. Resource could be human, equipment and materials needed to complete a project
The resource planning is important factor of the test planning because helps in determining the number of resources (employee, equipment…) to be used for the project. Therefore, the Test Manager can make the correct schedule & estimation for the project.
This section represents the recommended resources for your project.
The following table represents various members in your project team
No. | Member | Tasks |
|---|---|---|
1. | Test Manager | Manage the whole project Define project directions Acquire appropriate resources |
2. | Tester | Identifying and describing appropriate test techniques/tools/automation architecture Verify and assess the Test Approach Execute the tests, Log results, Report the defects. Tester could be in-sourced or out-sourced members, base on the project budget For the task which required low skill, I recommend you choose outsourced members to save project cost. |
3. | Developer in Test | Implement the test cases, test program, test suite etc. |
4. | Test Administrator | Builds up and ensures Test Environment and assets are managed and maintained SupportTester to use the test environment for test execution |
5. | SQA members | Take in charge of quality assurance Check to confirm whether the testing process is meeting specified requirements |
For testing, a web application, you should plan the resources as following tables:
No. | Resources | Descriptions |
|---|---|---|
1. | Install the web application under test This includes a separate web server, database server, and application server if applicable | |
2. | The testing tool is to automate the testing, simulate the user operation, generate the test results There are tons of test tools you can use for this project such as Selenium, QTP…etc. | |
3. | You need a Network include LAN and Internet to simulate the real business and user environment | |
4. | The PC which users often use to connect the web server |
A testing environment is a setup of software and hardware on which the testing team is going to execute test cases. The test environment consists of real business and user environment, as well as physical environments, such as server, front end running environment.
Back to your project, how do you set up test environment for this banking website?
To finish this task, you need a strong cooperation between Test Team and Development Team You should ask the developer some questions to understand the web application under test clearly. Here’re some recommended questions. Of course, you can ask the other questions if you need.
Following figure describes the test environment of the banking website www.demo.gtupapers.com/V4
In the article Test estimation, you already used some techniques to estimate the effort to complete the project. Now you should include that estimation as well as the schedule to the Test Planning
In the Test Estimation phase, suppose you break out the whole project into small tasks and add the estimation for each task as below
Task | Members | Estimate effort |
|---|---|---|
Create the test specification | Test Designer | 170 man-hour |
Perform Test Execution | Tester, Test Administrator | 80 man-hour |
Test Report | Tester | 10 man-hour |
Test Delivery |
| 20 man-hour |
Total |
| 280 man-hour |
Then you create the schedule to complete these tasks.
Making schedule is a common term in project management. By creating a solid schedule in the Test Planning, the Test Manager can use it as tool for monitoring the project progress, control the cost overruns.
To create the project schedule, the Test Manager needs several types of input as below:
Let’s practice with an example:
Suppose the boss wants to complete the project gtupapers in one month, you already estimated the effort for each tasks in Test Estimation. You can create the schedule as below Test Deliverables is a list of all the documents, tools and other components that has to be developed and maintained in support of the testing effort.
There are different test deliverables at every phase of the software development lifecycle.
Test deliverables are provided before testing phase.
Test deliverables are provided during the testing
Test deliverables are provided after the testing cycles is over.
What is Six Sigma? Six Sigma is a quality management approach that benefits individual or...
What is Project Life Cycle? The Project Life Cycle is a series of activities which are essential for...
What is PMP Certification? Project Management Professional (PMP) is a certification administered by...
Your company, a financial corporation, built up a banking website. This is the biggest software...
What is Software Test Estimation? Test Estimation is a management activity which approximates how long a...
Standardization of a project is not possible as the different project has different requirements...