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

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.

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

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.

___

  • 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.
Dokuz Eylül Üniversitesi Mühendislik Fakültesi Fen ve Mühendislik Dergisi-Cover
  • ISSN: 1302-9304
  • Yayın Aralığı: Yılda 3 Sayı
  • Başlangıç: 1999
  • Yayıncı: Dokuz Eylül Üniversitesi Mühendislik Fakültesi