انتساب خطاهای شناسایی شده در نظرات کاربران در مورد برنامکهای همراه به توسعهدهندگان
الموضوعات :مریم یونسی 1 , عباس حیدرنوری 2 , فاطمه قنادی 3
1 - دانشگاه صنعتی شریف
2 - دانشگاه واترلو کانادا
3 - دانشگاه صنعتي شريف
الکلمات المفتاحية: انتساب خطانگهداری نرمافزاریادگیری ماشیننظرات کاربران,
ملخص المقالة :
نظراتی که کاربران در فروشگاههای برنامکهای همراه مینویسند و خطای برنامکها را گزارش میکنند، میتواند در بهبود کیفیت نرمافزارها تأثیر بهسزایی داشته باشد. بنابراین در این پژوهش رویکردی بر اساس نظرات کاربران برای انتساب خطای برنامه به توسعهدهندگان برنامکها بیان خواهد شد. این رویکرد با استفاده از دادههای کامیتهای برنامه تاریخچهای از عملکرد توسعهدهندگان به دست میآورد و همچنین با استفاده از ایراداتی که توسعهدهندگان از قبل در برنامه رفع کردهاند در مورد سوابق آنها در رفع خطاهای برنامه اطلاعاتی کسب میکند. سپس با استفاده از ترکیب این دو معیار به هر توسعهدهنده آن نرمافزار برای رسیدگی به هر نظر امتیازی اختصاص میدهد تا فهرستی از توسعهدهندگان ارائه کند که به ترتیب اولویت برای رسیدگی به نظر مناسب هستند. ارزیابی این پژوهش از جنبههای مختلف در نهایت نشان میدهد که روش پیشنهادی با دقت ۷۴% قادر به شناخت توسعهدهنده مناسب برای رسیدگی به نظرات خواهد بود. هدف این پژوهش یک موضوع جدید است که پژوهش دیگری حول آن انجام نگرفته و صرفاً باقی پژوهشها راجع به دستهبندی نظرات کاربران بودهاند. بنابراین دقت ارزیابی این پژوهش نشان میدهد که انتساب اتوماتیک خطاهایی که در نظرات کاربران ذکر شدهاند میتواند مفید واقع شود تا فرایند شناسایی و حل خطا بهبود یابد.
[1] L. Villarroel, G. Bavota, B. Russo, R. Oliveto, and M. Di Penta, "Release planning of mobile apps based on user reviews," in Proc. of the 38th Int. Conf. on Software Engineering, ICSE'16, pp. 14-24, Austin, TX, USA, 14-22 May 2016.
[2] F. Palomba, et al., "User reviews matter! tracking crowdsourced reviews to support evolution of successful apps," in Proc. of the 31st IEEE Int. Conf. on Software Maintenance and Evolution, ICSME'15, pp. 291-300, Bremen, Germany, 29 Sept.-1 Oct. 2015.
[3] A. Ciurumelea, A. Schaufelbuhl, S. Panichella, and H. C. Gall, "Analyzing reviews and code of mobile apps for better release planning," in Proc. IEEE 24th Int. Conf. on Software Analysis, Evolution and Reengineering, SANER'17, pp. 91-102, Klagenfurt, Austria, 20-24 Feb. 2017.
[4] A. Di Sorbo, S. Panichella, C. V. Alexandru, C. A. Visaggio, and G. Canfora, "SURF: summarizer of user reviews feedback," in IEEE/ACM 39th Int. Conf. on Software Engineering Companion, ICSE-C'17, pp. 55-58, Buenos Aires, Argentina, 20-28 May 2017.
[5] S. Scalabrino, et al., "Listening to the crowd for the release planning of mobile apps," Trans. on Software Engineering, vol. 45, no. 1, pp. 1-19, Jan. 2017.
[6] S. Panichella, et al., "ARdoc: app reviews development oriented classifier," in Proc. 24th ACM SIGSOFT Int. Symp. Found. Softw. Eng., pp. 1023-1027, Seattle, WA, USA, 15-17 Nov. 2016.
[7] N. Chen, J. Lin, S. C. H. Hoi, X. Xiao, and B. Zhang, "AR-miner: mining informative reviews for developers from mobile app marketplace," in Proc. of the 36th Int. Conf. on Software Engineering, ICSE'14, pp. 767-778, Hyderabad, India, 31 May-7 Jun. 2014.
[8] C. Gao, J. Zeng, M. R. Lyu, and I. King, "Online app review analysis for identifying emerging issues," in Proc. 40th Int. Conf. on Software Engineering, ICSE'18, pp. 48-58, Gothenburg, Sweden, 27 May-3 Jun. 2018.
[9] C. Gao, et al., "Emerging app issue identification from user feedback: experience on WeChat," in Proc. IEEE-ACM 41st Int. Conf. Softw. Eng.: Softw. Eng. In Pract., pp. 279-288, Montreal, QC, Canada,, 25-31 May 2019.
[10] T. T. Nguyen, A. T. Nguyen, and T. N. Nguyen, "Topic-based, time-aware bug assignment," ACM SIGSOFT Softw. Eng. Notes, vol. 39, no. 1, pp. 1-4, Feb. 2014.
[11] J. Park, M. Lee, J. Kim, S. Hwang, and S. Kim, "CosTriage: a cost-aware triage algorithm for bug reporting systems," in Proc. of the 25th Int. Conf. on Artificial Intelligence, AAAI'11, pp. 139-144, San Francisco, CA, USA, 7-11 Aug. 2011.
[12] R. Shokripour, J. Anvik, Z. M. Kasirun, and S. Zamani, "Why so complicated? simple term filtering and weighting for location-based bug report assignment recommendation," in Proc. of the 10th Working Conf. on Mining Software Repositories, MSR'13, pp. 2-11, Hyderabad, India, 31 May-7 Jun. 2014.
[13] F. Servant and J. A. Jones, "WhoseFault: automatic developer-to-fault assignment through fault localization," in Proc. of the 34th Int. Conf. on Software Engineering, ICSE'12, pp. 36-46, Zurich, Switzerland, 2-9 Jun. 2012.
[14] M. Linares-Vasquez, et al., "Triaging incoming change requests: bug or commit history, or code authorship?," in Proc. of the 28th IEEE Int. Conf. on Software Maintenance, ICSM'12, pp. 451-460, Trento, Italy, 23-28 Sept. 2012.
[15] H. Naguib, N. Narayan, B. Br, and D. Helal, "Bug report assignee recommendation using activity profiles," in Proc. of the 10th Working Conf. on Mining Software Repositories, MSR'13, pp. 22-30, San Francisco,, CA, USA, 18-19 May 2013.
[16] H. Hu, H. Zhang, J. Xuan, and W. Sun, "Effective bug triage based on historical bug-fix information," in Proc. of the 25th IEEE Int. Symp. on Software Reliability Engineering, ISSRE'14, pp. 122-132, Naples, Italy, 3-6 Nov. 2014.
[17] O. Baysal, M. W. Godfrey, and R. Cohen, "A bug you like: a framework for automated assignment of bugs," in Proc. of the 17th IEEE Int. Conf. on Program Comprehension, ICPC'09, pp. 297-298, Vancouver, BC, Canada, 17-19 May 2009.
[18] A. Yadav, S. K. Singh, and J. S. Suri, "Ranking of software developers based on expertise score for bug triaging," Inf. Softw. Technol., vol. 112, pp. 1-17, Aug. 2019.
[19] R. Shokripour, J. Anvik, Z. M. Kasirun, and S. Zamani, "A time-based approach to automatic bug report assignment," J. Syst. Softw., vol. 102, pp. 109-122, Apr. 2015.
[20] X. Xia, D. Lo, X. Wang, and B. Zhou, "Accurate developer recommendation for bug resolution," in Proc. of the 20th Working Conf. on Reverse Engineering, WCRE'13, pp. 72-81, Koblenz, Germany, 14-17 Oct. 2013.
[21] R. Wu, H. Zhang, S. Kim, and S. C. Cheung, "ReLink: recovering links between bugs and changes," in Proc. of the 19th ACM Int. Symp. on the Foundations of Software Engineering, FSE'11, pp. 15-25, Szeged, Hungary, 5-9 Sept. 2011.
[22] J. Sliwerski, T. Zimmermann, and A. Zeller, "When do changes induce fixes?," ACM SIGSOFT Softw. Eng. Notes, vol. 30, no. 4, pp. 1-5, Jul. 2005.
[23] A. T. Nguyen, T. T. Nguyen, H. A. Nguyen, and T. N. Nguyen, "Multi-layered approach for recovering links between bug reports and fixes," in Proc. of the 20th ACM Int. Symp. on the Foundations of Software Engineering, FSE'12, 11pp., Washington, DC, USA, 19-21 Mar. 2012.
[24] M. Linares-Vasquez, D. Lo, T. B. Le, and M. Linares-v, "RCLinker: Automated Linking of Issue Reports and Commits Leveraging Rich Contextual Information," in Proc. IEEE 23rd Int. Conf. on Program Comprehension, 12 pp., Florence, Italy, 18-19 May, 2015.
[25] M. Linares-Vasquez, L. F. Cortes-Coy, J. Aponte, and D. Poshyvanyk, "ChangeScribe: a tool for automatically generating commit messages," in Proc. of the 37th IEEE/ACM Int. Conf. on Software Engineering, ICSE'15, pp. 709-712, Firenze, Italy, 16-24 Mar. 2015.
[26] Y. Sun, Q. Wang, and M. Li, "Understanding the contribution of non-source documents in improving missing link recovery," in Proc. of the 10th ACM/IEEE Int. Symp. on Empirical Software Engineering and Measurement, ESEM'16, 10 pp., Ciudad Real Spain, 8-9 Sept. 2016.
[27] Y. Sun, Q. Wang, and Y. Yang, "FRLink: improving the recovery of missing issue-commit links by revisiting file relevance," Inf. Softw. Technol., vol. 84, pp. 33-47, Apr. 2017.
[28] T. D. B. Le, M. Linares-Vasquez, D. Lo, and D. Poshyvanyk, "RCLinker: automated linking of issue reports and commits leveraging rich contextual information," in Proc. of the 23rd IEEE Int. Conf. on Program Comprehension, ICPC'15, pp. 36-47, Florence, Italy, 18-19 May 2015.