Research Article
BibTex RIS Cite

The software product line (SPL) is a promising approach to developing software systems that are complex, large-scale, and rich in product configuration. The automatic acquisition of product configurations’ models, which may be too many in the software product line, is very important in terms of time and cost constraints. In this study, we propose an approach that automatically extracts models of different product configurations from the full product model by feature deduction to obtain product models more productively and effectively. We validated the proposed approach on three different case studies: Soda Vending Machine SPL, Bank Account SPL, and Student Attendance System SPL. The two novelties of this study are the feature-dependency tree and the dynamic edge mapping algorithm.

Year 2023, Volume: 25 Issue: 73, 217 - 238, 26.01.2023
https://doi.org/10.21205/deufmd.2023257318

Abstract

The software product line (SPL) is a promising approach to developing software systems that are complex, large-scale, and rich in product configuration. The automatic acquisition of product configurations’ models, which may be too many in the software product line, is very important in terms of time and cost constraints. In this study, we propose an approach that automatically extracts models of different product configurations from the full product model by feature deduction to obtain product models more productively and effectively. We validated the proposed approach on three different case studies: Soda Vending Machine SPL, Bank Account SPL, and Student Attendance System SPL. The two novelties of this study are the feature-dependency tree and the dynamic edge mapping algorithm.

References

  • K. Pohl, G. Böckle, ve F. Linden, Software Product Line Engineering: Foundations, Principles, and Techniques. Springer, 2005.
  • J. Whithey, “Investment Analysis of Software Assets for Product Lines”, Software Engineering Institute, Carnegie Mellon University,Pittsburgh, Pennsylvania, Technical CMU/SEI-96-TR-010, 1996.
  • K. C. Kang, S. G. Cohen, J. A. Hess, W. E. Novak, ve A. S. Peterson, “Feature-Oriented Domain Analysis (FODA) Feasibility Study”, Carnegie-Mellon Univ Pittsburgh Pa Software Engineering Inst, CMU/SEI-90-TR-021, 1990.
  • L. Machado, J. Pereira, L. Garcia, ve E. Figueiredo, “SPLConfig: Product Configuration in Software Product Line”.
  • K. Czarnecki ve U. Eisenecker, Generative Programming: Methods, Tools, and Applications. Addision-Wesley, 2000.
  • Norbert Siegmund, Nicolai Ruckel, ve Janet Siegmund, “Dimensions of software configuration: on the configuration context in modern software development”, program adı: Foundations of Software Engineering, Sacramento, California, United States, Kas. 2020.
  • D. Benavides, P. Trinidad, ve A. Ruiz-Cortés, “Automated Reasoning on Feature Models”, içinde Advanced Information Systems Engineering, Berlin, Heidelberg, 2005, ss. 491-503. doi: 10.1007/11431855_34.
  • M. Lochau, S. Mennicke, H. Baller, ve L. Ribbeck, “Incremental model checking of delta-oriented software product lines”, J. Log. Algebr. Methods Program., c. 85, sy 1, Part 2, ss. 245-267, Ocak 2016, doi: 10.1016/j.jlamp.2015.09.004.
  • X. Devroey vd., “A Vision for Behavioural Model-Driven Validation of Software Product Lines”, içinde Leveraging Applications of Formal Methods, Verification and Validation. Technologies for Mastering Change (ISoLA 2012), Crete, Greece, 2012, ss. 208--222. doi: 10.1007/978-3-642-34026-0_16.
  • H. Gronniger, H. Krahn, C. Pinkernell, ve B. Rumpe, “Modeling Variants of Automotive Systems using Views”, Berlin, Germany, Mar. 2008, s. 14.
  • H. Cichos, S. Oster, M. Lochau, ve A. Schürr, “Model-Based Coverage-Driven Test Suite Generation for Software Product Lines”, içinde Model Driven Engineering Languages and Systems, Berlin, Heidelberg, 2011, ss. 425-439. doi: 10.1007/978-3-642-24485-8_31.
  • S. Weißleder ve H. Lackner, “Top-Down and Bottom-Up Approach for Model-Based Testing of Product Lines”, Electron. Proc. Theor. Comput. Sci., c. 111, Mar. 2013, doi: 10.4204/EPTCS.111.7.
  • A. Reuys, E. Kamsties, K. Pohl, ve S. Reis, “Model-Based System Testing of Software Product Families”, içinde Advanced Information Systems Engineering, Berlin, Heidelberg, 2005, ss. 519-534. doi: 10.1007/11431855_36.
  • E. M. Olimpiew, “Model-Based Testing for Software Product Lines A dissertation submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy at George Mason University \textbar Semantic Scholar”, PhD Thesis, George Mason University, 2008.
  • T. Kishi ve N. Noda, “Formal verification and software product lines”, Commun. ACM, c. 49, sy 12, ss. 73-77, Ara. 2006, doi: 10.1145/1183236.1183270.
  • A. Gruler, M. Leucker, ve K. Scheidemann, “Modeling and Model Checking Software Product Lines”, içinde Formal Methods for Open Object-Based Distributed Systems, Berlin, Heidelberg, 2008, ss. 113-131. doi: 10.1007/978-3-540-68863-1_8.
  • A. Classen, “Modelling and Model Checking Variability-Intensive Systems”, PhD Thesis, 2011.
  • A. Classen, P. Heymans, P.-Y. Schobbens, ve A. Legay, “Symbolic model checking of software product lines”, içinde Proceedings of the 33rd International Conference on Software Engineering, Waikiki, Honolulu, HI, USA, May. 2011, ss. 321-330. doi: 10.1145/1985793.1985838.
  • T. Thüm, C. Kästner, F. Benduhn, J. Meinicke, G. Saake, ve T. Leich, “FeatureIDE: An extensible framework for feature-oriented software development”, Sci. Comput. Program., c. 79, ss. 70-85, Ocak 2014, doi: 10.1016/j.scico.2012.06.002.
  • T. Tuglular, M. Beyazit, ve D. Ozturk, “Featured Event Sequence Graphs for Model-Based Incremental Testing of Software Product Lines”, program adı: IEEE Annual International Computer Software and Applications Conference (COMPSAC), Milwaukee, Wisconsin, USA, 2019. doi: 10.1109/COMPSAC.2019.00035.
  • F. Belli, “Finite state testing and analysis of graphical user interfaces”, içinde Proceedings 12th International Symposium on Software Reliability Engineering, Kas. 2001, ss. 34-43. doi: 10.1109/ISSRE.2001.989456.
  • “Product Line Engineering Concepts: Features, Feature Models, and Feature Profiles”. https://www.productlineengineering.com/concepts/features.html (erişim 15 Mart 2022).
  • T. Tuğlular, M. Beyazıt, ve D. Öztürk, “Yazılım Ürün Hatları için Özellik Yönelimli Test Modellerinin Yönetimi”, program adı: Turkish National Software Engineering Symposium, Izmir, Turkey, Eyl. 2019.

Yazılım Ürün Hatlarında Tam Üründen Özellik Eksiltme Yoluyla Farklı Ürün Yapılandırmalarını Otomatik Üretme Yöntemi

Year 2023, Volume: 25 Issue: 73, 217 - 238, 26.01.2023
https://doi.org/10.21205/deufmd.2023257318

Abstract

Yazılım ürün hattı (YÜH) karmaşık, büyük ölçekli ve ürün yapılandırması bakımından zengin yazılım sistemleri geliştirmek için gelelecek vadeden bir yaklaşımdır. Yazılım ürün hattındaki sayısı çok fazla olabilen ürün yapılandırmalarına ait modellerin otomatik elde edilmesi zaman ve maliyet kısıtları açısından oldukça önemlidir. Bu çalışmada, ürün modellerini daha üretken ve etkili şekilde elde edebilmek için, tam ürün modelinden, özellik eksiltme yoluyla farklı ürün yapılandırmalarına ait modelleri otomatik olarak elde etmeyi sağlayan bir yaklaşım önerdik. Önerilen yaklaşımı İçecek Otomatı YÜH, Banka Hesabı YÜH ve Öğrenci Yoklama Sistemi YÜH isimli üç farklı vaka çalışması üzerinde denedik. Özellik-bağımlılık ağacı ve dinamik kenar eşleme algoritması bu çalışmada önerilen özgün kavramlardır.

References

  • K. Pohl, G. Böckle, ve F. Linden, Software Product Line Engineering: Foundations, Principles, and Techniques. Springer, 2005.
  • J. Whithey, “Investment Analysis of Software Assets for Product Lines”, Software Engineering Institute, Carnegie Mellon University,Pittsburgh, Pennsylvania, Technical CMU/SEI-96-TR-010, 1996.
  • K. C. Kang, S. G. Cohen, J. A. Hess, W. E. Novak, ve A. S. Peterson, “Feature-Oriented Domain Analysis (FODA) Feasibility Study”, Carnegie-Mellon Univ Pittsburgh Pa Software Engineering Inst, CMU/SEI-90-TR-021, 1990.
  • L. Machado, J. Pereira, L. Garcia, ve E. Figueiredo, “SPLConfig: Product Configuration in Software Product Line”.
  • K. Czarnecki ve U. Eisenecker, Generative Programming: Methods, Tools, and Applications. Addision-Wesley, 2000.
  • Norbert Siegmund, Nicolai Ruckel, ve Janet Siegmund, “Dimensions of software configuration: on the configuration context in modern software development”, program adı: Foundations of Software Engineering, Sacramento, California, United States, Kas. 2020.
  • D. Benavides, P. Trinidad, ve A. Ruiz-Cortés, “Automated Reasoning on Feature Models”, içinde Advanced Information Systems Engineering, Berlin, Heidelberg, 2005, ss. 491-503. doi: 10.1007/11431855_34.
  • M. Lochau, S. Mennicke, H. Baller, ve L. Ribbeck, “Incremental model checking of delta-oriented software product lines”, J. Log. Algebr. Methods Program., c. 85, sy 1, Part 2, ss. 245-267, Ocak 2016, doi: 10.1016/j.jlamp.2015.09.004.
  • X. Devroey vd., “A Vision for Behavioural Model-Driven Validation of Software Product Lines”, içinde Leveraging Applications of Formal Methods, Verification and Validation. Technologies for Mastering Change (ISoLA 2012), Crete, Greece, 2012, ss. 208--222. doi: 10.1007/978-3-642-34026-0_16.
  • H. Gronniger, H. Krahn, C. Pinkernell, ve B. Rumpe, “Modeling Variants of Automotive Systems using Views”, Berlin, Germany, Mar. 2008, s. 14.
  • H. Cichos, S. Oster, M. Lochau, ve A. Schürr, “Model-Based Coverage-Driven Test Suite Generation for Software Product Lines”, içinde Model Driven Engineering Languages and Systems, Berlin, Heidelberg, 2011, ss. 425-439. doi: 10.1007/978-3-642-24485-8_31.
  • S. Weißleder ve H. Lackner, “Top-Down and Bottom-Up Approach for Model-Based Testing of Product Lines”, Electron. Proc. Theor. Comput. Sci., c. 111, Mar. 2013, doi: 10.4204/EPTCS.111.7.
  • A. Reuys, E. Kamsties, K. Pohl, ve S. Reis, “Model-Based System Testing of Software Product Families”, içinde Advanced Information Systems Engineering, Berlin, Heidelberg, 2005, ss. 519-534. doi: 10.1007/11431855_36.
  • E. M. Olimpiew, “Model-Based Testing for Software Product Lines A dissertation submitted in partial fulfillment of the requirements for the degree of Doctor of Philosophy at George Mason University \textbar Semantic Scholar”, PhD Thesis, George Mason University, 2008.
  • T. Kishi ve N. Noda, “Formal verification and software product lines”, Commun. ACM, c. 49, sy 12, ss. 73-77, Ara. 2006, doi: 10.1145/1183236.1183270.
  • A. Gruler, M. Leucker, ve K. Scheidemann, “Modeling and Model Checking Software Product Lines”, içinde Formal Methods for Open Object-Based Distributed Systems, Berlin, Heidelberg, 2008, ss. 113-131. doi: 10.1007/978-3-540-68863-1_8.
  • A. Classen, “Modelling and Model Checking Variability-Intensive Systems”, PhD Thesis, 2011.
  • A. Classen, P. Heymans, P.-Y. Schobbens, ve A. Legay, “Symbolic model checking of software product lines”, içinde Proceedings of the 33rd International Conference on Software Engineering, Waikiki, Honolulu, HI, USA, May. 2011, ss. 321-330. doi: 10.1145/1985793.1985838.
  • T. Thüm, C. Kästner, F. Benduhn, J. Meinicke, G. Saake, ve T. Leich, “FeatureIDE: An extensible framework for feature-oriented software development”, Sci. Comput. Program., c. 79, ss. 70-85, Ocak 2014, doi: 10.1016/j.scico.2012.06.002.
  • T. Tuglular, M. Beyazit, ve D. Ozturk, “Featured Event Sequence Graphs for Model-Based Incremental Testing of Software Product Lines”, program adı: IEEE Annual International Computer Software and Applications Conference (COMPSAC), Milwaukee, Wisconsin, USA, 2019. doi: 10.1109/COMPSAC.2019.00035.
  • F. Belli, “Finite state testing and analysis of graphical user interfaces”, içinde Proceedings 12th International Symposium on Software Reliability Engineering, Kas. 2001, ss. 34-43. doi: 10.1109/ISSRE.2001.989456.
  • “Product Line Engineering Concepts: Features, Feature Models, and Feature Profiles”. https://www.productlineengineering.com/concepts/features.html (erişim 15 Mart 2022).
  • T. Tuğlular, M. Beyazıt, ve D. Öztürk, “Yazılım Ürün Hatları için Özellik Yönelimli Test Modellerinin Yönetimi”, program adı: Turkish National Software Engineering Symposium, Izmir, Turkey, Eyl. 2019.
There are 23 citations in total.

Details

Primary Language Turkish
Subjects Engineering
Journal Section Research Article
Authors

Dilek Öztürk Kaya 0000-0003-3663-0533

Tuğkan Tuğlular 0000-0001-6797-3913

Publication Date January 26, 2023
Published in Issue Year 2023 Volume: 25 Issue: 73

Cite

APA Öztürk Kaya, D., & Tuğlular, T. (2023). Yazılım Ürün Hatlarında Tam Üründen Özellik Eksiltme Yoluyla Farklı Ürün Yapılandırmalarını Otomatik Üretme Yöntemi. Dokuz Eylül Üniversitesi Mühendislik Fakültesi Fen Ve Mühendislik Dergisi, 25(73), 217-238. https://doi.org/10.21205/deufmd.2023257318
AMA Öztürk Kaya D, Tuğlular T. Yazılım Ürün Hatlarında Tam Üründen Özellik Eksiltme Yoluyla Farklı Ürün Yapılandırmalarını Otomatik Üretme Yöntemi. DEUFMD. January 2023;25(73):217-238. doi:10.21205/deufmd.2023257318
Chicago Öztürk Kaya, Dilek, and Tuğkan Tuğlular. “Yazılım Ürün Hatlarında Tam Üründen Özellik Eksiltme Yoluyla Farklı Ürün Yapılandırmalarını Otomatik Üretme Yöntemi”. Dokuz Eylül Üniversitesi Mühendislik Fakültesi Fen Ve Mühendislik Dergisi 25, no. 73 (January 2023): 217-38. https://doi.org/10.21205/deufmd.2023257318.
EndNote Öztürk Kaya D, Tuğlular T (January 1, 2023) Yazılım Ürün Hatlarında Tam Üründen Özellik Eksiltme Yoluyla Farklı Ürün Yapılandırmalarını Otomatik Üretme Yöntemi. Dokuz Eylül Üniversitesi Mühendislik Fakültesi Fen ve Mühendislik Dergisi 25 73 217–238.
IEEE D. Öztürk Kaya and T. Tuğlular, “Yazılım Ürün Hatlarında Tam Üründen Özellik Eksiltme Yoluyla Farklı Ürün Yapılandırmalarını Otomatik Üretme Yöntemi”, DEUFMD, vol. 25, no. 73, pp. 217–238, 2023, doi: 10.21205/deufmd.2023257318.
ISNAD Öztürk Kaya, Dilek - Tuğlular, Tuğkan. “Yazılım Ürün Hatlarında Tam Üründen Özellik Eksiltme Yoluyla Farklı Ürün Yapılandırmalarını Otomatik Üretme Yöntemi”. Dokuz Eylül Üniversitesi Mühendislik Fakültesi Fen ve Mühendislik Dergisi 25/73 (January 2023), 217-238. https://doi.org/10.21205/deufmd.2023257318.
JAMA Öztürk Kaya D, Tuğlular T. Yazılım Ürün Hatlarında Tam Üründen Özellik Eksiltme Yoluyla Farklı Ürün Yapılandırmalarını Otomatik Üretme Yöntemi. DEUFMD. 2023;25:217–238.
MLA Öztürk Kaya, Dilek and Tuğkan Tuğlular. “Yazılım Ürün Hatlarında Tam Üründen Özellik Eksiltme Yoluyla Farklı Ürün Yapılandırmalarını Otomatik Üretme Yöntemi”. Dokuz Eylül Üniversitesi Mühendislik Fakültesi Fen Ve Mühendislik Dergisi, vol. 25, no. 73, 2023, pp. 217-38, doi:10.21205/deufmd.2023257318.
Vancouver Öztürk Kaya D, Tuğlular T. Yazılım Ürün Hatlarında Tam Üründen Özellik Eksiltme Yoluyla Farklı Ürün Yapılandırmalarını Otomatik Üretme Yöntemi. DEUFMD. 2023;25(73):217-38.

Dokuz Eylül Üniversitesi, Mühendislik Fakültesi Dekanlığı Tınaztepe Yerleşkesi, Adatepe Mah. Doğuş Cad. No: 207-I / 35390 Buca-İZMİR.