This content is not included in your SAE MOBILUS subscription, or you are not logged in.
Starting a Software Product Line by Reengineering a Set of Existing Product Variants
ISSN: 0148-7191, e-ISSN: 2688-3627
Published April 03, 2006 by SAE International in United States
Annotation ability available
Today’s vehicles integrate many diverse types of electronic control units, many of which can be found in every vehicle, such as in braking systems, engine control systems, or body control units. For every type of vehicle, however, individual variants (of each of these units) must be created to fulfill system requirements, which vary as to vehicle types, characteristics, wishes and strategy of vehicle manufacturers, or laws valid in different target markets. Nevertheless, variants of the same type of control unit share many common characteristics, as well as partially vary within a well-defined spectrum determined by a set of system parameters. In order to make system development more efficient, commonalities and predictable variability should be systematically exploited; software product line engineering, for example, is an approach that aims at such a systematic exploitation. The goal of product line engineering (high-level of reuse across products) is clear. Its implementation in practice, however, is a challenge in many domains and organizations.
This paper presents early software product line activities which have been performed during the initialization phase of the Fraunhofer PuLSE™ (Product Line Software and System Engineering) approach. The activities analyze an existing set of related control units and identify common and varying characteristics of these solutions delivered to customers in the past. Based on the results of the analysis, an action plan is derived for merging pieces of different, existing systems to form the basis of a future software product line.
|Special Publication||Distributed Embedded Systems Engineering 2005|
|Technical Paper||Subsystem Design Using Time-Triggered Protocol (TTP): Key Aspects of Control System Application Reuse|
|Technical Paper||System Development for the Design of Gasoline Engine ECU|
- Kentaro Yoshimura - Automotive Research and Development Laboratory, Hitachi Europe
- Joachim Bayer - Fraunhofer Institute for Experimental Software Engineering
- Dharmalingam Ganesan - Fraunhofer Institute for Experimental Software Engineering
- Dirk Muthig - Fraunhofer Institute for Experimental Software Engineering
CitationYoshimura, K., Bayer, J., Ganesan, D., and Muthig, D., "Starting a Software Product Line by Reengineering a Set of Existing Product Variants," SAE Technical Paper 2006-01-1238, 2006, https://doi.org/10.4271/2006-01-1238.
- Böckle, G. Clements, P. McGregor, J.D. Muthig, D. and Schmid. K. Calculating ROI for Software Product Lines. IEEE Software, 21(3), 23–31, June 2004.
- Bayer J. et al. PuLSE: A Methodology to Develop Software Product Lines. In Proceedings of the Fifth ACM SIGSOFT Symposium on Software Reusability (SSR’99), 122–131, May 1999.
- Clements P. and Northrop L.. Software Product Lines. Practices and Patterns. Addison-Wesley, 2002.
- Steffen Thiel et al. A Case Study in Applying a Product Line Approach for Car Periphery Supervision Systems. SAE World Congress 2001: In-Vehicle Software, SAE Technical Paper 2001-01-0025, March 2001.
- Steger Mirjam et al. Introducing PLA at Bosch Gasoline Systems: Experiences and Practices. In Proceeding of the International Software Product Lines Conference (SPLC2004), 2004.
- van Ommering Rob and Bosch Jan. Widering the scope of Software Product Lines – From Variation to Composition. In Proceeding of the International Software Product Lines Conference (SPLC2), 2000.
- Heinecke H. et al. AUTomotive Open System ARchitecture - An Industry-Wide Initiative to Manage the Complexity of Emerging Automotive E/E-Architectures. http://www.autosar.org, visited on 30.09.05.
- Yoshimura K. et al. A Development Method for Object-Oriented Automotive Control Software Embedded With Automatically Generated Program From Controller Models. In Proc. of SAE world congress 2004: In-Vehicle Software, SAE Technical Paper 2004-01-0709, 2004.
- Sakurai K. et al. High-Performance and Cost-Effective Electronic Controller Architecture for Powertrain Systems. In Proc. of SAE world congress 2004: In-Vehicle Network, SAE Technical Paper 2004-01-0209, 2004.
- Donohoe P. (ed.). Software Product Lines - Experience and Research Directions. Proceedings of the First International Software Product Lines Conference (SPLC1), Denver, Colorado, USA, August 2000.
- Chastek G. J. (ed). Software Product Lines. Proceedings of the Second International Software Product Lines Conference (SPLC2), San Diego, California, USA, August 2002.
- Nord R. (ed.). Software Product Lines. Proceedings of the Third International Conference (SPLC 2004), Boston, MA, USA, August - September, 2004.
- Weiss D. M. and Lai C. T. R.. Software Product Line Engineering: A Family Based Software Engineering Process. Addison-Wesley, 1999.
- Families Project Home Page: http://www.esi.es/en/Projects/Families/, visited on 20.09.05.
- Basili, V. R. Caldera, G. and Rombach H. D.. Goal Question Metric Paradigm, In Marciniak J. J. (ed.) Encyclopedia of Software Engineering (vol. 1), 528–532, John Wiley & Sons, 1994.
- McCabe T.J. and Butler. C.W. Design complexity measurement and testing. Communications of the ACM archive, 32(12), 1415–1425, December 1989.
- FeldMan S.I.. Make - A program for maintaining computer programs. In Software Practice and Experience, 9(4), 256–265, 1979.
- Chikofsky E. and Cross. J. Reverse Engineering and Design Recovery: A taxonomy. IEEE Software, 13–17, January 1990.
- Miodonski, P. Forster, T. Knodel, J. Lindvall, M. and Muthig. D. Evaluation of Software Architectures with Eclipse. Fraunhofer IESE Technical Report, 107.04/E, 2004.
- Feijs, L. Krihaar, R. and van Ommering. R. A relational approach to software architecture analysis. In Sofware Practice and Experience, 28(4), 371–400, 1998.
- Storey, M-A. Wong, K. and Mueller. H. Rigi: a visualization environment for reverse engineering. In Proc. of Int’l Conf. on Software Engineering, 600–607, 1997.
- Murphy, G. Notkin, D. and Sullivan. K. Software Reflexion Models: Bridging the Gap between Source and High-Level Models. In Proc. of Third ACM SIGSOFT Symp. on Foundations of Software Engineering, 18–28, 1995.
- Krikhaar. R.L. Software Architecture Reconstruction. PhD Thesis, University of Amsterdam, 1999.
- Wulf W. and Shaw. M. Global variable considered harmful. In ACM SIGPLAN Notices, 8(2), pages 28–34, 1973.