Use of Orthogonal Arrays and Design of Experiments Via Taguchi Methods in Software Testing

Use of Orthogonal Arrays and Design of Experiments Via Taguchi Methods in Software Testing

Recent Advances in Applied and Theoretical Mathematics Use of Orthogonal Arrays and Design of Experiments via Taguchi methods in Software Testing LJUBOMIR LAZIĆ State University of Novi Pazar Vuka Karadžića bb, 36 300 Novi Pazar, SERBIA [email protected] , http://www.np.ac.rs Abstract: - To solve the problem of great number of test cases, and to force the configuration testing to be effective, combinatorial testing is proposed, using an Orthogonal Array Testing Strategy (OATS) as a systematic, statistical way of testing pair-wise interactions. This combinatorial approach to software testing uses models to generate a minimal number of test inputs so that selected combinations of input values are covered. The OAT method can simultaneously reduce testing costs, product introduction delays, and faults going to the field by generating test cases that are more efficient and thorough in finding faults. Often the result is a 50% reduction in the number of tests and detection of more faults. An advantage of the Taguchi method application in Software Testing is that it emphasizes a mean performance characteristic (Defect fixing time and cost of software Quality) value close to the target value rather than a value within certain specification limits, thus improving the product quality. Additionally, Taguchi's method for experimental design is straightforward and easy to apply as we did for defect Cost to fix [$] and Total Resolution time [Days] minimisation versus controlled factors: Severity, Complexity and engineers Experience to many engineering situations, making it a powerful yet simple tool. Key-Words: - Software testing, Bug fixing, Resources allocation, Orthogonal Array, DOE, Taguchi method various QC stages. A QC stage can be characterized 1 Introduction by the defect removal rate of that stage. There can Our research [1]1 concluded that software be many possible combinations of defect removal development project employs some Quality Control rates for the different QC stages that can achieve the (QC) process to detect and remove defects. The final same overall quality goal. The different quality of the delivered software depends on the combinations will have different implications on the effort spent on all the QC stages. Given a quality total QC effort. Clearly, for a process designer or a goal, different combinations of efforts for the project manager, a key problem is to select the different QC stages may lead to the same goal. For amount of effort to be spent in each QC stage such the quality of the final software we use the that the desired quality goal is met with the commonly used measure of delivered defect density minimum cost. We propose a model i.e. - the number of defects present in the final product OptimalSQM for the cost of QC process and then normalized by the size of the product. One of the view the resource allocation among different QC main objectives of a project is to achieve the desired stages as an optimization problem. Software testing quality goal with least amount of resources. Using consumes 30-70% of the development resources; defects as the defining metric for quality, we can however, shipped products may still have many view the process of a project as comprising of defect residual faults resulting in low reliability, high usage injection and removal stages. There are some stages cost, and high maintenance cost. For software like the requirements, design and coding, in which testing process optimization we apply Orthogonal defects are injected. These defects are removed in Array-Based Testing Strategy (OATS) and Design of Experiments via Taguchi method. Different types of testing aims for identifying 1 This work was supported in part by the Ministry of different types of errors and faults. For example, mutation testing modifies the source code in a Education and Science of the Republic of Serbia under meager way that helps the tester to develop effective Grant No. TR-35026 entitled as:“Software Development test cases. Similarly, combinatorial testing is Environment for optimal software quality design“. ISBN: 978-960-474-351-3 256 Recent Advances in Applied and Theoretical Mathematics focused on identifying errors and faults, occurs due An advantage of the Taguchi method to the interaction of different parameters of application in Software Testing is that it emphasizes software. Combinatorial testing is performed by a mean performance characteristic (Defect fixing covering all the possible combination of parameter time and cost of software Quality) value close to the values. Testing of a network gaming application target value rather than a value within certain running on the internet can be influenced by the specification limits, thus improving the product number of parameters. These parameters are quality. Additionally, Taguchi's method for operating system, audio, graphics, number of experimental design is straightforward and easy to players, internet access type, browser type, etc. Each apply to many engineering situations, making it a parameter may have any number of possible values. powerful yet simple tool. It can be used to quickly The interaction of these parameters causes faults and narrow down the scope of a research project or to errors in the application. Exhaustive testing is identify problems in a manufacturing process from virtually impractical due to several possible data already in existence. Also, the Taguchi method combinations of parameters. Combinatorial Testing allows for the analysis of many different parameters provides a better way to cover all the possible without a prohibitively high amount of combinations with a better tradeoff between cost experimentation. For example, a process with 8 and time. variables, each with 3 states, would require 6561 (38) experiments to test all variables. However using Combinatorial testing is based on the following Taguchi's orthogonal arrays, only 18 experiments concepts: are necessary, or less than 0.3% of the original Interaction Rule: Most failures occur due to a number of experiments. In this way, it allows for the single factor or by the joint combinatorial effect identification of key parameters that have the most (interaction) of two factors, with progressively effect on the Defect fixing time and cost value so fewer failures induced by interactions between three that further experimentation on these parameters can or more factors [2]. be performed and the parameters that have little T-way Testing/Pairwise Testing: Pair-wise effect can be ignored, as we explained in this paper. testing [3] requires a given numbers of input 2. Orthogonal Array Testing Strategy parameters to the system, each possible combination of values for any pair of parameters covered with at (OATS) least one test case. In order to overcome the challenges mentioned Covering Array: Covering array represents the above, Orthogonal Array Testing Strategy (OATS) test case selected under pairwise testing [5]. gives a systematic, statistical way of testing pair- wise interactions providing representative Combinatorial testing is a vital approach to (uniformly distributed) coverage of all variable pair detect interaction errors occurs because of combinations. This makes the technique particularly interaction of several parameters. There are two useful for integration testing of software approaches for combinatorial testing: components. Testing of configuration parameter values, or It provides a representative (uniformly distributed) coverage of all variable pair combinations. Testing of input parameter values. Pairwise (a.k.a. all-pairs) testing is an effective test To solve the problem of great number of test case generation technique that is based on the cases, and to force the configuration testing to be observation that most faults are caused by effective, combinatorial testing is proposed, using an interactions of at most two factors. OAT Strategy as a systematic, statistical way of Pairwise-generated test suites cover all testing pair-wise interactions. This combinatorial combinations of two and therefore are much smaller approach to software testing uses models to generate than exhaustive ones yet very effective in finding a minimal number of test inputs so that selected defects. combinations of input values are covered. The OAT Dr. Genichi Taguchi was one of the first proponents method can simultaneously reduce testing costs, of orthogonal arrays in test design. His techniques, product introduction delays, and faults going to the known as Taguchi Methods, have been a mainstay field by generating test cases that are more efficient in experimental design in manufacturing fields for and thorough in finding faults. Often the result is a decades. 50% reduction in the number of tests and detection The method of orthogonal arrays is an experimental of more faults. design construction technique from the literature of ISBN: 978-960-474-351-3 257 Recent Advances in Applied and Theoretical Mathematics statistics. In turn, construction of such arrays o Most of these defects arise from simple pair- depends on the theory of combinations. An wise interactions such as in this error case: orthogonal array is a balanced two-way "When the font is Arial and the menus are on the classification scheme used to construct balanced right, the tables don't line up properly.” experiments when it is not practical to test all o With so many possible combinations of possible combinations. The size and shape of the components or settings, it is easy to miss one. array depends on the number of parameters (factors) o Randomly selecting values to create all of the and values (levels) in the experiment. Orthogonal pair-wise combinations is bound to create arrays are related to combinatorial designs. inefficient test sets and test sets with random, less meaningful distribution of values. Testing a software system requires the creation of test cases, which contain values for input OATS can be used to reduce the number of parameters and the expected results. Exhaustive combinations and provide maximum coverage with testing for all of the possible combinations of a minimum number of test cases.

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    12 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us