An Introductory Study on an Architecture-Based Software Product Line Test Generation Method

Author(s):  
Jihyun Lee

Architecture-based testing allows test engineers to focus on the structure of complicated software and the interactions between software components that constitute the architecture of a software product. By observing and controlling the connections and interactions between components of complex or large systems during software testing, architecture-based testing can detect and localize such faults at those locations. The complexity of software product line testing is high because an implementation under test contains variability given the different binding times and is used by multiple products. This paper introduces how architecture-based testing is applied to test generation for a software product line and examines the strengths of the proposed method against existing software product line testing methods. The paper also illustrates the use of product line architecture and architectural artifacts to generate product line interaction tests. It was found that architecture-based testing can be applied to software product line test generation by tailoring it to deal with variability and product-line specific processes. The results of a comparison with existing methods show that architecture-based software product line test generation provides better capabilities in terms of variability in the testing stage, the explicit formation and application of binding, test coverage, and architectural awareness.

Author(s):  
Zdravko Roško

Abstract Software product line architecture is one of the most important artifacts defined at the early stage of a product line development process. Since the rest of the products are developed based on the initial product line architecture, it is of high importance to ensure the architecture stability by enabling the software’s evolution possibilities. Industrial evidence shows that companies spend more resources on maintaining and evolving their architecture and products than on the initial development of them. Hence, there is a need for flexible software architecture that stays stable as the requirements evolve. In this paper we propose a structural model, some architecture quality metrics, case-based reasoning methodology to predict the architectural stability and a feature model for business applications. The goal of the proposed architecture model is to develop a framework for business applications development and evaluating the stability of product line architectures in the face of changes in requirements.


Sign in / Sign up

Export Citation Format

Share Document