Poster Presentation

F2008-05-065

Mining Software Repository for Extracting Software Product Line Variability

Mr. Kentaro Yoshimura, Hitachi, Ltd., Japan
Dr. Koji Hashimotot, Hitachi, Ltd., Japan
Mr. Fumio Narisawa, Hitachi, Ltd., Japan
Dr. Yuichiro Morita, Hitachi, Ltd., Japan

This paper describes an overview of a promising software development method for automotive software product line such as engine management systems, and proposes an innovative method to extract the existing systems' variability hiding in software repository.

Recently, software is a power and also bottleneck for innovation of automotive systems. Regarding to the AUTOSAR consortium, 90% of innovations are related to the electrics/electronics that include software. Without using software, it is impossible to realize the state of arts technologies such as the low emission engine management systems and the electronic stability control systems. On the other hand, software is becoming a bottleneck of vehicle development. The size of software implemented in a vehicle has increased dramatically. Moreover, there is huge number of variations since software must be optimized for target products for many OEM, market segments, regions and so on.

Software Product Line (SPL) is one of the promising technologies for software systems that have a large number of product variations. In SPL, we analyze not only commonality but also variability between product variations from the viewpoint of features, and implement the variability in software architecture as variation points. There are several experience reports that SPL improves productivity and reliability of control software. However, analyzing the variability is really difficult and time consuming since there is no clear definition of "variability". The variability may be different from the viewpoint of the stakeholders and also be difficult to adopt the existing systems that are designed without SPL concept.

We propose a novel method to extract SPL variability. In contrast to the conventional top-down variability analysis, we have developed a bottom-up method to mining inter-product variability from software repository by adopting the factor analysis method that is one of the statistical data reduction techniques. With using our method, variability candidates are extracted automatically from software change history. Moreover, orthogonally of the candidates are guaranteed because they are Eigen values of the product space. Mappings to the existing system are also generated mathematically, since the mappings are calculated as Eigen vectors of the space.

We also evaluated our method by applying to a part of existing engine management system product family. As the result, some variation points of existing systems are extracted mathematically. An experienced engineer confirmed that the extracted variation points are the real variation points of the product line.

(387 words)

This abstract is supplemented by a PDF, which can be viewed here.

Poster presentation: Electronics