Abstract
Software development costs and time to deploy a software-intensive system significantly decrease when Software Product Line Engineering (SPLE) approach is applied. Numerous case stu-dies in industrial and military domains have shown that reliability, quality, productivity and user interface consistency improve drasti-cally in addition to the decrease of cost and time-to-market. Also, this system engineering approach is very effective in three market strategies known as cost leadership, differentiation, and focusing. Despite these measurable benefits, product line engineering adop-tion is slower than the other technological trends such as Service Oriented Architecture (SOA), Model Driven Development (MDD), and Aspect Oriented Software Development (AOSD). In this pa-per, we investigate the barriers to the adoption of SPLE and ex-plore the root causes of them from three points of views: Project sponsor, organization, and SPLE community. We provide sugges-tions for how the industry and SPLE community can solve these multi-dimensional issues in a short term.
- McIlroy, M.D. (1968): Mass-produced Software Components. In 1st International NATO conference on software engineering, Garmisch, Pattenkirchen, Germany, October 7-11, 1968, NATO Scientific Affairs Division, pp. 88--98.Google Scholar
- Parnas, D. L. (1976): On the Design and Development of Pro-gram Families. IEEE Trans. Softw. Eng. 2, 1 (Jan. 1976), 1--9. DOI= http://dx.doi.org/10.1109/TSE.1976.233797 Google ScholarDigital Library
- Freeman, P. (1983): Reusable Software Engineering: Concepts and Research Directions. Tutorial on Software Design Techniques. F. Peter and I.W. Anthony. Los Angeles, California, IEEE Computer Society Press: 63--76.Google Scholar
- www.ample-project.netGoogle Scholar
- Northrop, L. (2009): Software Product Lines. PowerPoint slides. March 32, 2009.Google Scholar
- Gomaa, H. (2004): Designing Software Product Lines with UML: From Use Cases to Pattern-Based Software Architectures. Addison Wesley. Google ScholarDigital Library
- Carnegie Mellon University, Software Engineering Institute, A framework for software product line practice, version 5.0, 2007.Google Scholar
- Greenfield, J., Short, K., Cook, S., Kent, S. Software factories, assembling applications with patterns, models framework, and tools, Wiley Publishing, Indianapolis, 2004. Google ScholarDigital Library
- Clements, P., Northrop, L. Software product lines: practices and patterns, Addison-Wesley, Boston, 2002.Google ScholarDigital Library
- Pohl, K., Bockle, G., Linden, F. Software product line engineering, Springer-Verlag, New York: 2005. Google ScholarDigital Library
- CAFÉ, From concepts to application in system-family engi-neering, Homepage of CAFÉ project. www.esi.es/Cafe, 2003.Google Scholar
- Linden, F.J., Schmid, K., and Rommes, E. 2007 Software Product Lines in Action: the Best Industrial Practice in Product Line Engineering. Springer-Verlag New York, Inc. Google ScholarDigital Library
- http://www.sei.cmu.edu/productlines/Google Scholar
- Rees, D. 2009. Rapid Prototyping of Military Vehicle Cabs for the CDT Platform. Videos in Media Library. http://www.saic.com/media%2Dlibrary/?key=168Google Scholar
Index Terms
- Barriers to the adoption of software product line engineering
Recommendations
Increasing software product reusability and variability using active components: a software product line infrastructure
ECSA '10: Proceedings of the Fourth European Conference on Software Architecture: Companion VolumeSoftware Product Lines are typically used to support development of a software product family and not a software product population, which denotes a broader and more diverse range of software products. We present a Software Product Line Infrastructure (...
A concrete product derivation in software product line engineering: a practical approach
Software Product Lines enable the development of a perfect family of products by reusing shared assets in a systematic manner. Product derivation is a critical activity in software product line engineering and one of the most pressing issues that a ...
Evaluation of Quality Attribute Variability in Software Product Families
ECBS '08: Proceedings of the 15th Annual IEEE International Conference and Workshop on the Engineering of Computer Based SystemsSoftware product family or line is a software engineering paradigm that systematizes reuse. In Software Product Line Engineering, two phases are distinguished: Domain Engineering which is in charge of developing a common infrastructure and assets and ...
Comments