Araştırma Makalesi
BibTex RIS Kaynak Göster

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.

Yıl 2023, , 217 - 238, 26.01.2023
https://doi.org/10.21205/deufmd.2023257318

Öz

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.

Kaynakça

  • 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

Yıl 2023, , 217 - 238, 26.01.2023
https://doi.org/10.21205/deufmd.2023257318

Öz

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.

Kaynakça

  • 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.
Toplam 23 adet kaynakça vardır.

Ayrıntılar

Birincil Dil Türkçe
Konular Mühendislik
Bölüm Araştırma Makalesi
Yazarlar

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

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

Yayımlanma Tarihi 26 Ocak 2023
Yayımlandığı Sayı Yıl 2023

Kaynak Göster

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. Ocak 2023;25(73):217-238. doi:10.21205/deufmd.2023257318
Chicago Öztürk Kaya, Dilek, ve 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, sy. 73 (Ocak 2023): 217-38. https://doi.org/10.21205/deufmd.2023257318.
EndNote Öztürk Kaya D, Tuğlular T (01 Ocak 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 ve 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, c. 25, sy. 73, ss. 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 (Ocak 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 ve 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, c. 25, sy. 73, 2023, ss. 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.