Direct-Indirect Link Matrix: A Black Box Testing Technique for Component-Based Software

Direct-Indirect Link Matrix: A Black Box Testing Technique for Component-Based Software

Saurabh Rawat, Anushree Sah, Ankur Dumka
Copyright: © 2020 |Pages: 14
DOI: 10.4018/IJITPM.2020100105
OnDemand:
(Individual Articles)
Available
$37.50
No Current Special Offers
TOTAL SAVINGS: $37.50

Abstract

Testing of software remains a fundamentally significant way to check that software behaves as required. Component-based software testing (CBST) is a crucial activity of component-based software development (CBSD) and is based on two crucial proportions: components testing by developers with the source code (e.g., system testing, integration testing, unit testing, etc.) and components testing by end users without source code (black box testing). This work proposes a black box testing technique that calculates the total number of interactions made by component-based software. This technique is helpful to identify the number of test cases for those components where availability of source code is questionable. On the basis of interaction among components, the authors draw a component-link graph and a direct-indirect-link matrix, which helps to calculate the number of interactions in component-based software.
Article Preview
Top

1. Introduction

The Component-Based Software Development (CBSD) approach aims at delivering quality in large software system by selecting and integrating already existing reusable and testable component. Rather than development from scratch it gathers the existing components which results in low development and maintenance cost. Component based software development is a branch of software engineering which is also called component based software development. It focusses on the reusability of loosely coupled components in software (Sen, & Mall, 2012). Components can be discovered, selected and composed using different techniques to form a new component or a complete application. These components are the back bone of service oriented computing. In service oriented architecture (SOA), components are converted to services and then they can be reused for further.

Component-Based Software Testing (CBST) of component is maturing as a new sub-discipline of Component-Based Software Engineering (CBSE). CBST is a mechanism used to identify the correctness, completeness, quality and documentation of developed components (Sen, & Mall, 2012).

1.1 Software Test Processes

Quality assurance and productivity can be achieved through software testing process. With the advancement of technology and increase in appetite to get more, the complexity of software development is increased. This advancement has made distributed development of applications an important concern for the focus of the developers. Quality is one of the most important concerns during development of an application (Malaiya, Li, Bieman, & Karcich, 2002).

To achieve the quality in distributed applications, developed using components, a highly efficient and resourceful component–based testing is required. Different facets of the components like reusability, security, reliability, truthfulness, and safety etc. are required to be tested effectively. Study demonstrates that more than half of the development cost is a result of testing performed. As the complexity of the software step up, there is augmentation in the cost. In CBS, development process follows component-based approach that mainly consists of encapsulated data and functions within the modules as unit of testable components. These components are configured at run time through parameter passing (Voas, Payne, Mills, & McManus, 1995). Our first main concern in this work is to improve component-based test processes documentation while considering two factors viz. requirement in CBST and test case process documentation; and second is testable component construction through a new and novel process.

1.2. Component-Based Software Testing Requirements

Component-Based Software Testing (CBST) requirements improve and enhance the process of testing of software component in CBSD if these requirements are specifying at the right time. The test cases in CBST are designed and planned based upon the properties of reusable components. The availability of source code with White-Box Testing and Black-Box Testing, compatibility and functionality of component, middleware of software component, interfaces among testable and reusable component, component specification are the basic requirements for CBST (Schieferdecker, I., 2012).

1.3. Availability of Source Code with White Box and Black Box

White-box testing approach in software testing inspects the internal structure of the program and uses program logics to develop test data whereas black-box testing approach deals with the input and output domain of the test without concerning the internal logic and working of the item being tested(Tang, M., Dai, X., Liu, J., & Chen, J., 2016). Black Box testing and White Box Testing are utilized to test the main component. The main component is first unit tested for the logical test data generated based on the source code, and second, using test cases designed based on its specification. When some components are deprived of source code then, Black Box testing of components is consider sufficient because earlier often there is less requirement for low-level source based testing techniques (Harrold, 2000).

Complete Article List

Search this Journal:
Reset
Volume 15: 1 Issue (2024)
Volume 14: 1 Issue (2023)
Volume 13: 4 Issues (2022): 3 Released, 1 Forthcoming
Volume 12: 4 Issues (2021)
Volume 11: 4 Issues (2020)
Volume 10: 4 Issues (2019)
Volume 9: 4 Issues (2018)
Volume 8: 4 Issues (2017)
Volume 7: 4 Issues (2016)
Volume 6: 4 Issues (2015)
Volume 5: 4 Issues (2014)
Volume 4: 4 Issues (2013)
Volume 3: 4 Issues (2012)
Volume 2: 4 Issues (2011)
Volume 1: 4 Issues (2010)
View Complete Journal Contents Listing