Software Testing in Iterative Model
QAI-STC 2006
16
About the Author
Shivageeta is working as a Software Consultant at Novell®, India. She started her
career as test engineer and is passionate about testing technologies. She has more than 5
years of experience in test planning, strategizing, designing, automating and executing
tests.
Participation in testing forums/conferences:
+DVFRQGXFWHGDKDOIDGD\WXWRULDORQ³Test Methodology for Non-Functional Testing
³4$,FRQIHUHQFHKHOGDW3XQH
+DVFRQGXFWHGDKDOIDGD\WXWRULDORQ³Best Practices for system Test´4$,
conference 2005 held at Bangalore.
Qualification:
BE Computer Science from Karnataka University, Dharwad.
Software Testing in Iterative Model
QAI-STC 2006
17
Appendix I - Abbreviations
87±8QLW7HVWLQJ
&7±&RPSRQHQW7HVWLQJ
,7±,QWHJUDWLRQ7HVWLQJ
6,7±6\VWHP,QWHJUDWLRQ7HVWLQJ
35'±3URGXFWUHTXLUHPHQWV'RFXPHQW
HLD: High Level Design
7&±7HVW&DVH
6:±6RIWZDUH
ICO: Iteration Change Order;
Software Testing in Iterative Model
QAI-STC 2006
18
$SSHQGL[,,±'HILQLWLRQV
Acceptance testing:
The objective of this testing is to verify that the delivered software functions correctly and
meets requirements.
Accumulated Test Suite:
In iterative testing, the test cases of each of the iteration are accumulated in to the existing
suite of test cases to form cumulated set of test cases. This suite is run at each of the
iteration and the test suite size increases with each of the iteration.
Component testing:
The objective of component testing is to exercise individual components through their
exported interfaces.
Development testing:
Component Testing + Integration Testing
Integration testing:
The objective is to test the interactions between the set of components
Interoperability testing:
The testing is done to ensure the two or more products can exchange the information and
use the information that have been exchanged.
Iteration Change Orders (ICO)s:
ICOs are raised when:
The features planned for current iterations are pushed to future iterations
New features are pushed in to the current iteration.
Design for a component is getting changed during the final stage of the particular iteration
Performance Testing:
The testing conducted to evaluate the time taken or response time of the product to perform
its required functions under stated conditions in comparison with different versions of same
product and competitive products.
Product Development Process:
Refers to all the activities that are involved in releasing a software product such as:
Product requirements gathering
Product architecture/design
Software Testing in Iterative Model
QAI-STC 2006
19
Test Designing
Coding
Test Automation
Artifacts reviews
Different testing phases
Defect fixation/regression.
Product Validation
Regression Test Suite:
Test suite designed with the test cases to test the basic production functionality along with
the impact of code changes like defect fixes and design changes.
Regression Testing:
Selective retesting of the product to verify the modifications have not caused unintended
effects and that the system or component still complies with its specified requirements.
Reliability Testing:
The testing conducted to evaluate the ability of the product to perform its required functions
under stated conditions for a specified period of time or number of iterations
Scalability Testing:
A testing, which requires enormous amount of resources to find out the maximum capability
of the product parameters.
Security Testing:
The testing conducted to examine and analyze the safeguards required to protect an
Information System (IS), as they have been applied in an operational environment, to
determine the security posture of that system
Stress Testing:
Testing conducted to evaluate a system beyond the limits of the specified requirements or
product resources (such as disk space, memory, processor utilization, and network
congestion) to ensure the product does not break unexpectedly.
System Integration Testing:
The objective of this testing is to test the set of components work as expected with the other
system parameters like operating systems, routers, and third party applications.
The focus is also on to test the non-functional aspects like (performance, stress, load,
reliability, and security)
Unit Testing:
The objective of unit testing is to exercise the product in small testable increments with focus
at the code level.