ارائه یک رویکرد ژنتیک-فازی نوع 2 برای ارزیابی کیفیت سیستمهای خود انطباق با استفاده از شاخصهای کیفی نرم افزار
محورهای موضوعی : هوش مصنوعی و رباتیکمجید عبدالرزاق نژاد 1 * , عشرت زرگری 2 , مهدی خرد 3
1 - عضو هیات علمی
2 - کارشناسی ارشد، گروه مهندسی کامپیوتر، دانشگاه آزاد اسلامی – واحد بیرجتد - ایران
3 - دانشجوی دکتری، گروه مهندسی کامپیوتر، دانشکده فنی و مهندسی - دانشگاه قم - قم - ایران
کلید واژه: سیستم خود انطباق, شاخصهای کیفی نرم افزار, الگوریتم ژنتیک, فازی نوع دو, سیستم خودانطباق کنترل ترافیک.,
چکیده مقاله :
امروزه با گسترش علم در حوزه مهندسی کامپیوتر، امکان توسعه سیستمهای هوشمند و سازگار با محیط نیز افزایش یافته است. سیستمهای خود انطباق یکی از انواع سیستمهای نرمافزاری هستند که رفتار خود را با توجه به شرایط محیطی تغییر میدهند و خود را با آن سازگار میکنند. اگرچه ارزیابی عملکرد این سیستمها در بیشتر تحقیقات تحت پوشش قرار گرفته شده است، ولی ارزیابی کیفیت آنها مغفول مانده است. اولین چالش در این مسیر، عدم قطعیت شاخصهای کیفی این سیستمها است که پارامترهایی ثابت، مشخص و قطعی ندارند. به عنوان مثال یکی از شاخصهای کیفی سیستم خودانطباق، توانایی اجرای نرمافزار در سیستمعاملهای مختلف است. این شاخص، از نظر افراد خبره مختلف، میتواند درجه اهمیت مختلفی داشته باشد. چالش دیگر، برخی شاخصهای کیفی متغیر ریاضی نیستند و یک متغیر زبانی بین کاربران و کارشناسان میباشند، که این امر نشان میدهد این کمیتهای کیفی، متغیرهای فازی بوده و با منطق فازی کاملا ً قابل فرموله شدن میباشند. در این مقاله به منظور ارزیابی کیفیت این سیستمها براساس شاخصهای کیفی نرم افزار اقدام به ارائه یک رویکرد ژنتیک-فازی نوع دوم شده است. جهت توصیف شاخصهای کیفی از منطق فازی نوع دوم و برای تعیین بهینه وزنهای فازی شاخصهای کیفی از الگوریتم ژنتیک استفاده شده است. در روش پیشنهادی سعی شده تا سیستمهای خودانطباق از دو بعد شامل بعد نرمافزاری این سیستمها و بعد خود انطباق آنها مورد مقایسه قرار گیرند. این در حالی است که اکثر تحقیقات موجود تنها به یک بعد میپردازند. جهت ارزیابی روش پیشنهادی از یک سیستم کنترل ترافیک با نام InSync که یک سیستم خودانطباق کنترل ترافیک (ATCS) بوده و حاوی شاخصهای متعدد کیفی میباشد استفاده شده است. نتایج بدست آمده باتوجه به عدم نیاز به تولید سناریو، توانایی بسط روش به تمامی شاخصهای کیفی نرم افزار و سادگی آن تایید کننده کارآمدی روش پیشنهادی میباشند. همچنین جامعیت بیشتر روش پیشنهادی را نسبت به سایر مدلهای ارزیابی موجود نشان میدهد.
The possibility of developing intelligent systems compatible with the environment has increased by expanding computer engineering fields. Self-adaptive systems are one of the types of software systems that change their behavior according to system conditions and environmental conditions and adapt themselves to it. Although the evaluation of the performance of these systems has been covered in most researches, the evaluation of their quality has remained closed. Therefore, designing an approach is an essential issue to evaluate the quality of self-adaptive systems. The first challenge, the quality indicators of these systems are not fixed, specific, and definite parameters. For example, one of the qualitative indicators for a self-adaptive system is the ability to run software on different operating systems. This indicator may have different degrees of importance for different experienced individuals. The next challenge, some qualitative indicators are not mathematical variables, but rather a linguistic variable between users and experts, indicating that these qualitative quantities are fuzzy variables and can be completely formulated by fuzzy logic. In this article, a new genetic-fuzzy type 2 approach has been proposed to evaluate the quality of the systems based on their quality indicators. The fuzzy logic type 2 is used to describe qualitative indicators, and a genetic algorithm is utilized to determine the optimal fuzzy weights of the qualitative indicators. In the proposed method, it has been tried to compare the self-adaptive systems from two dimensions, including the software dimension and their self-adaptive dimension. This is despite the fact that most of the existing research deals with only one dimension. In order to evaluate the proposed method, a traffic control system called InSync, which is an adaptive traffic control system (ATCS) and contains multiple qualitative factors, has been used. The obtained results confirm the effectiveness of the proposed method due to the lack of scenario generation, the ability to extend the method to all software quality parameters, and its simplicity. Also, the method is more comprehensive than other existing evaluation models. In addition, it has been tried to compare the self-adaptive systems from two dimensions, including the software dimension and their self-adaptive dimension. This is despite the fact that most of the existing research deals with only one dimension.
[1] F. D. Macías-Escrivá, R. Haber, R. Del Toro, and V. Hernandez, "Self-adaptive systems: A survey of current approaches, research challenges and applications," Expert Systems with Applications, vol. 40, no. 18, pp. 7267-7279, 2013.
[2] F. Kneer and E. Kamsties, "A Framework for Prototyping and Evaluating Self-adaptive Systems - A Research Preview," 2016.
[3] S. Sucipto and R. S. Wahono, "A Systematic Literature Review of Requirements Engineering for Self-Adaptive Systems," Software Engineering & Applications, vol. 1, no. 1, 2015.
[4] M. Abufouda, "A Framework for Enhancing Performance And Handling Run-Time Uncertainty in Self-Adaptive Systems," Software Engineering & Applications, vol. 5, no. 1, 2014.
[5] M. Salehie and L. Tahvildari, "Towards a goal‐driven approach to action selection in self‐adaptive software," Software: Practice and Experience, vol. 42, no. 2, pp. 211-233, 2012.
[6] C. Raibulet, F. Arcelli Fontana, R. Capilla, and C. Carrillo, "An Overview on Quality Evaluation of Self-Adaptive Systems," 2016.
[7] J. D. Paraiba and L. E. G. Martins, "PERSA: a requirements specification process for self-adaptive systems based on fuzzy logic and NFR-framework," International Journal of Uncertainty, Fuzziness and Knowledge-Based Systems, vol. 25, no. 01, pp. 145-178, 2017.
[8] J. A. McCall, P. K. Richards, and G. F. Walters, "Factors in software quality. volume i. concepts and definitions of software quality," DTIC Document, 1977.
[9] S. Valenti, A. Cucchiarelli, and M. Panti, "Computer based assessment systems evaluation via the ISO9126 quality model," Journal of Information Technology Education, vol. 1, no. 3, pp. 157-175, 2002.
[10] B. W. Boehm, J. R. Brown, and M. Lipow, "Quantitative evaluation of software quality," in Proceedings of the 2nd international conference on Software engineering, 1976: IEEE Computer Society Press, pp. 592-605.
[11] P. Berander et al., "Software quality attributes and trade-offs," Blekinge Institute of Technology, 2005.
[12] C.-W. Chang, C.-R. Wu, and H.-L. Lin, "Integrating fuzzy theory and hierarchy concepts to evaluate software quality," Software Quality Journal, vol. 16, no. 2, pp. 263-276, 2008.
[13] P. HOLECEK and J. TALAŠOVÁ, "FuzzME: a new software for multiple-criteria fuzzy evaluation," Acta Universitatis Matthiae Belii ser. Mathematics, vol. 16, pp. 35-51, 2010.
[14] J. S. Challa, A. Paul, Y. Dada, V. Nerella, P. R. Srivastava, and A. P. Singh, "Integrated Software Quality Evaluation: A Fuzzy Multi-Criteria Approach," JIPS, vol. 7, no. 3, pp. 473-518, 2011.
[15] E. Letier, D. Stefan, and E. T. Barr, "Uncertainty, risk, and information value in software requirements and architecture," in Proceedings of the 36th International Conference on Software Engineering, 2014, pp. 883-894.
[16] F. Haryana, "Software Quality Evaluation using Fuzzy Multi Criteria Decision Method," 2015.
[17] A. Mansoor, D. Streitferdt, and F.-F. Füßl, "Fuzzy Based Evaluation of Software Quality Using Quality Models and Goal Models."
[18] M. Kara, O. Lamouchi, and A. Ramdane-Cherif, "Ontology software quality model for fuzzy logic evaluation approach," Procedia Computer Science, vol. 83, pp. 637-641, 2016.
[19] A. S. Abdygalievich, A. Barlybayev, and K. B. Amanzholovich, "Quality evaluation fuzzy method of automated control systems on the LMS example," IEEE Access, vol. 7, pp. 138000-138010, 2019.
[20] U. Dayanandan and V. Kalimuthu, "A fuzzy analytical hierarchy process (FAHP) based software quality assessment model: maintainability analysis," International Journal of Intelligent Engineering and Systems, vol. 11, no. 4, pp. 88-96, 2018.
[21] D. Manikavelan and R. Ponnusamy, "Software quality analysis based on cost and error using fuzzy combined COCOMO model," Journal of Ambient Intelligence and Humanized Computing, pp. 1-11, 2020.
[22] N. X. Thao and S.-Y. Chou, "Novel similarity measures, entropy of intuitionistic fuzzy sets and their application in software quality evaluation," Soft Computing, pp. 1-12, 2022.
[23] A. Barzegar, "Measuring software quality Product based on Fuzzy Inference System techniques in ISO standard," 2021.
[24] V. Singh, V. Kumar, and V. Singh, "A hybrid novel fuzzy AHP-TOPSIS technique for selecting parameter-influencing testing in software development," Decision Analytics Journal, vol. 6, p. 100159, 2023.
[25] A. O. de Sousa, C. I. Bezerra, R. M. Andrade, and J. M. Filho, "Quality evaluation of self-adaptive systems: Challenges and opportunities," in Proceedings of the XXXIII Brazilian Symposium on Software Engineering, 2019, pp. 213-218.
[26] L. E. Sanchez, J. A. Diaz-Pace, A. Zunino, S. Moisan, and J.-P. Rigault, "An approach based on feature models and quality criteria for adapting component-based systems," Journal of Software Engineering Research and Development, vol. 3, pp. 1-30, 2015.
[27] E. Serral, P. Sernani, and F. Dalpiaz, "Personalized adaptation in pervasive systems via non-functional requirements," Journal of Ambient Intelligence and Humanized Computing, vol. 9, no. 6, pp. 1729-1743, 2018.
[28] R. MoeinFar and A. A. Barforoush, "Using models at run-time to measure quality of SAS in the large-scale software systems," in 2017 9th International Conference on Information and Knowledge Technology (IKT), 2017: IEEE, pp. 99-103.
[29] R. Edwards and N. Bencomo, "DeSiRE: further understanding nuances of degrees of satisfaction of non-functional requirements trade-off," in Proceedings of the 13th International Conference on Software Engineering for Adaptive and Self-Managing Systems, 2018, pp. 12-18.
[30] C. Raibulet, "Hints on quality evaluation of self-systems," in 2014 IEEE Eighth International Conference on Self-Adaptive and Self-Organizing Systems, 2014: IEEE, pp. 185-186.
[31] E. Kaddoum, C. Raibulet, J.-P. Georgé, G. Picard, and M.-P. Gleizes, "Criteria for the evaluation of self-* systems," in Proceedings of the 2010 ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems, 2010, pp. 29-38.
[32] C. I. Bezerra, R. M. Andrade, J. M. Monteiro, and D. Cedraz, "Aggregating measures using fuzzy logic for evaluating feature models," in Proceedings of the 12th International Workshop on Variability Modelling of Software-Intensive Systems, 2018, pp. 35-42.
[33] R. Wohlrab, J. Cámara, D. Garlan, and B. Schmerl, "Explaining quality attribute tradeoffs in automated planning for self-adaptive systems," Journal of Systems and Software, vol. 198, p. 111538, 2023.
[34] S. Malik, M. A. Naqvi, and L. Moonen, "CHESS: A Framework for Evaluation of Self-adaptive Systems based on Chaos Engineering," arXiv preprint arXiv:2303.07283, 2023.
[35] A. Parvizi-Mosaed, S. Moaven, J. Habibi, and A. Heydarnoori, "Towards a Tactic-Based Evaluation of Self-Adaptive Software Architecture Availability," in SEKE, 2014, pp. 168-173.
[36] Q. Yang, J. Lü, J. Li, X. Ma, W. Song, and Y. Zou, "Toward a fuzzy control-based approach to design of self-adaptive software," in Proceedings of the Second Asia-Pacific Symposium on Internetware, 2010: ACM, p. 15.
[37] W. Min, Z. Jun, and Z. Wei, "The application of fuzzy comprehensive evaluation method in the software project risk assessment," in Proceedings of the 2017 International Conference on Management Engineering, Software Engineering and Service Sciences, 2017: ACM, pp. 76-79.
[38] Y. Wang, J. Corey, Y. Lao, K. Henrickson, and X. Xin, "Criteria for the Selection and Application of Advanced Traffic Signal Systems," 2013.
[39] A. Stevanovic and P. M. Zlatkovic, "Comparative Evaluation of InSync and Time-of-Day Signal Timing Plans under Normal and Varied Traffic Conditions," ed: February, 2013.
[40] M. KETABDARI, "Analysis of adaptive traffic control systems and design of a decision support system for better choice," 2013.
[41] M. Selinger and L. Schmidt, "Adaptive traffic control systems in the united states: Updated summary and comparison," HDR Engineering, 2010.
[42] M. Salehie and L. Tahvildari, "Self-Adaptive Software: Landscape and Research Challenges," ACM Transactions on Autonomous and Adaptive Systems, 2009.
[43] S. Elkins and G. Niehus, "Insync adaptive traffic control system for the veterans memorial hwy corridor on long island, ny," 2012.
[44] Y. Brun et al., "Engineering Self-Adaptive Systems through Feedback Loops," Software engineering for self-adaptive systems, vol. 5525, pp. 48-70, 2009.
[45] M. Ravindranathan and R. Leitch, "Heterogeneous intelligent control systems," IEE Proceedings-Control Theory and Applications, vol. 145, no. 6, pp. 551-558, 1998.
[46] M. Naqvi, "Claims and supporting evidence for self-adaptive systems–A literature review," ed, 2012.
[47] R. Almeida and M. Vieira, "Changeloads for resilience benchmarking of self-adaptive systems: a risk-based approach," in Dependable Computing Conference (EDCC), 2012 Ninth European, 2012: IEEE, pp. 173-184.
[48] S. M. Abuelenin, "Decomposed interval Type-2 fuzzy systems with application to inverted pendulum," in Engineering and Technology (ICET), 2014 International Conference on, 2014: IEEE, pp. 1-5.
[49] N. N. Karnik, J. M. Mendel, and Q. Liang, "Type-2 fuzzy logic systems," IEEE transactions on Fuzzy Systems, vol. 7, no. 6, pp. 643-658, 1999.
[50] ح. م. فراهانی, ج. عسگري, and م. ذکري, "مروري بر منطق فازي نوع- 2: از پیدایش تا کاربرد," محاسبات نرم, vol. 3, 1392.
[51] Q. Liang and J. M. Mendel, "Interval type-2 fuzzy logic systems," in Fuzzy Systems, 2000. FUZZ IEEE 2000. The Ninth IEEE International Conference on, 2000, vol. 1: IEEE, pp. 328-333.
[52] A. Farahani, E. Nazemi, G. Cabri, and A. Rafizadeh, "An evaluation method for Self-Adaptive systems," in Systems, Man, and Cybernetics (SMC), 2016 IEEE International Conference on, 2016: IEEE, pp. 002814-002820.
[53] J. A. McCann and M. C. Huebscher, "Evaluation issues in autonomic computing," in International Conference on Grid and Cooperative Computing, 2004: Springer, pp. 597-608.
[54] Danny Weyns, M. Usman Iftikhar, Didac Gil de la Iglesia, and T. Ahmad, "A Survey of Formal Methods in Self-Adaptive Systems," 2012.
[55] N. M. Villegas, H. A. Müller, G. Tamura, L. Duchien, and R. Casallas, "A Framework for Evaluating Quality-Driven Self-Adaptive Software Systems," 2011.
[56] S. Weibelzahl and G. Weber, "Advantages, opportunities and limits of empirical evaluations: Evaluating adaptive systems," KI, vol. 16, no. 3, pp. 17-20, 2002.