ارائه الگوریتمی جهت اندازهگیری میزان توجه کاربران برنامههای موبایل با استفاده از نظرات مربوط به برنامهها
الموضوعات : سامانههای پردازشی و ارتباطی چندرسانهای هوشمندمهرداد رضوی دهکردی 1 , حمید رستگاری 2 , اکبر نبی اللهی نجف آبادی 3 , تقی جاودانی گندمانی 4
1 - گروه مهندسی کامپیوتر، واحد نجفآباد، دانشگاه آزاد اسلامی، نجفآباد، ایران
2 - استادیار، گروه مهندسی کامپیوتر، واحد نجفآباد، دانشگاه آزاد اسلامی، نجف آباد، ایران
3 - استادیار، گروه مهندسی کامپیوتر، واحد نجفآباد، دانشگاه آزاد اسلامی، نجفآباد، ایران
4 - استادیار، گروه علوم کامپیوتر، دانشگاه شهرکرد، شهرکرد، ایران
الکلمات المفتاحية: برنامههای موبایل, میزان توجه, آنالیز فروشگاه گوگل, میزان توجه کاربران,
ملخص المقالة :
از زمان پیدایش برنامههای موبایل، نظرات کاربران برای توسعهدهندگان برنامه بسیار ارزشمند بوده است. به دلیل حجم بالای نظرات، تحلیل آنها کار بسیار مشکلی است. تاکنون کارهای بسیاری درزمینهی دستهبندی نظرات انجام شده است؛ اما در هیچکدام از آنها مشخص نشده است که پس از دستهبندی، توجه کاربران بیشتر به کدام دسته بوده است. در این مقاله الگوریتمی بانام UAR بر اساس تاریخ ثبت نظرات و تعداد آنها برای اندازهگیری میزان توجه کاربران به دسته گزارش مشکل یا درخواست ویژگی ارائه شده است. برای آزمایش الگوریتم مورد نظر، نظرات برنامههای WhatsApp، NextCloud، Firefox Mozillaو VLC Media Player توسط خزنده وب به مدت 30 روز استخراج شده و سپس نظرات پس از دستهبندی به 4 متخصص نرمافزار داده شد. در ادامه پس از تحلیل نظرات توسط 4 متخصص میزان توجه کاربران به نظرات توسط آنها مورد محاسبه قرار گرفت. سپس با استفاده از روش پیشنهادی نیز میزان توجه کاربران به نظرات اندازهگیری شد. در نهایت مشخص شد که روش پیشنهادی توانسته نتایج قابل قبولی در محاسبه میزان توجه کاربران به نظرات نسبت به مقادیر محاسبه شده توسط متخصصان داشته باشد؛ بهطوری که تفاوت میزان توجه محاسبه شده توسط متخصصان با میزان توجه محاسبه شده توسط الگوریتم ارائه شده 2.73% بوده است
[1] M. R. Dehkordi, H. Seifzadeh, G. Beydoun, and M. H. Nadimi-Shahraki, “Success prediction of android applications in a novel repository using neural networks,” Complex Intell. Syst., vol. 6, no. 3, pp. 573–590, 2020, doi: 10.1007/s40747-020-00154-3.
[2] W. Martin, F. Sarro, Y. Jia, Y. Zhang, and M. Harman, “A survey of app store analysis for software engineering,” IEEE Trans. Softw. Eng., vol. 43, no. 9, pp. 817–847, 2017, doi: 10.1109/TSE.2016.2630689.
[3] E. Guzman and W. Maalej, “How Do Users Like This Feature? A Fine Grained Sentiment Analysis of App Reviews,” in 2014 IEEE 22nd International Requirements Engineering Conference (RE), Aug. 2014, pp. 153–162, doi: 10.1109/RE.2014.6912257.
[4] D. Pagano and W. Maalej, “User feedback in the appstore: An empirical study,” in 2013 21st IEEE International Requirements Engineering Conference (RE), Jul. 2013, pp. 125–134, doi: 10.1109/RE.2013.6636712.
[5] L. V. G. Carreno and K. Winbladh, “Analysis of user comments: An approach for software requirements evolution,” Proc. - Int. Conf. Softw. Eng., pp. 582–591, 2013, doi: 10.1109/ICSE.2013.6606604.
[6] W. Maalej and D. Pagano, “On the socialness of software,” Proc. - IEEE 9th Int. Conf. Dependable, Auton. Secur. Comput. DASC 2011, pp. 864–871, 2011, doi: 10.1109/DASC.2011.146.
[7] N. Seyff, F. Graf, and N. Maiden, “Using mobile RE tools to give end-users their own voice,” Proc. 2010 18th IEEE Int. Requir. Eng. Conf. RE2010, pp. 37–46, 2010, doi: 10.1109/RE.2010.15.
[8] A. Al-Subaihin et al., “App store mining and analysis,” in Proceedings of the 3rd International Workshop on Software Development Lifecycle for Mobile, Aug. 2015, pp. 1–2, doi: 10.1145/2804345.2804346.
[9] 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 Proceedings - International Conference on Software Engineering, May 2014, no. 1, pp. 767–778, doi: 10.1145/2568225.2568263.
[10] E. C. Groen, J. Doerr, and S. Adam, “Towards Crowd-Based Requirements Engineering A Research Preview,” in Requirements Engineering: Foundation for Software Quality, 2015, pp. 247–253.
[11] S. A. Licorish, B. T. R. Savarimuthu, and S. Keertipati, “Attributes that predict which features to fix: Lessons for app store mining,” ACM Int. Conf. Proceeding Ser., vol. Part F1286, pp. 108–117, 2017, doi: 10.1145/3084226.3084246.
[12] W. Maalej, Z. Kurtanović, H. Nabil, and C. Stanik, “On the automatic classification of app reviews,” Requir. Eng., vol. 21, no. 3, pp. 311–331, Sep. 2016, doi: 10.1007/s00766-016-0251-9.
[13] S. Moghaddam, “Beyond Sentiment Analysis: Mining Defects and Improvements from Customer Feedback,” 2015, pp. 400–410.
[14] T. Johann, C. Stanik, A. M. B. Alizadeh, and W. Maalej, “SAFE: A Simple Approach for Feature Extraction from App Descriptions and App Reviews,” in Proceedings - 2017 IEEE 25th International Requirements Engineering Conference, RE 2017, Sep. 2017, pp. 21–30, doi: 10.1109/RE.2017.71.
[15] S. Scalabrino, G. Bavota, B. Russo, M. Di Penta, and R. Oliveto, “Listening to the Crowd for the Release Planning of Mobile Apps,” IEEE Trans. Softw. Eng., vol. 45, no. 1, pp. 68–86, 2019, doi: 10.1109/TSE.2017.2759112.
[16] D. Martens and W. Maalej, “Towards understanding and detecting fake reviews in app stores,” Empir. Softw. Eng., vol. 24, no. 6, pp. 3316–3355, Dec. 2019, doi: 10.1007/s10664-019-09706-9.
[17] N. Aslam, W. Y. Ramay, K. Xia, and N. Sarwar, “Convolutional neural network based classification of app reviews,” IEEE Access, vol. 8. Institute of Electrical and Electronics Engineers Inc., pp. 185619–185628, 2020, doi: 10.1109/ACCESS.2020.3029634.
[18] Z. Qiao, A. Wang, A. Abrahams, and W. Fan, “Deep Learning-Based User Feedback Classification in Mobile App Reviews,” 2020. [Online]. Available: https://aisel.aisnet.org/sigdsa2020.
[19] “What Criteria are Used by Google to Rank Reviews Most Relevant? | LaPraim Insights.” https://lapraim.com/insights/criteria-for-relevant-google-reviews (accessed Sep. 18, 2023).
[20] “How Google Decides What Reviews Are Most Relevant.” https://www.widewail.com/blog/how-google-decides-what-reviews-are-most-relevant (accessed Sep. 18, 2023).
[21] Z. Wan, X. Xia, D. Lo, and G. C. Murphy, “How does machine learning change software development practices?,” IEEE Trans. Softw. Eng., vol. 47, no. 9, pp. 1857–1871, 2021, doi: 10.1109/TSE.2019.2937083.
Accepted:
| 202?, ?? (?), ??-?? DOR:
|
لطفا مقاله خود را در این فایل کپیکنید، تنظیم حاشیهها طبق همین فایل انجام میشود.
نویسنده گرامی به تمامی نکات زیر توجهکنید. یادآور میشود رعایت نکردن هریک از موارد اعم از نکات مربوط به تمپلیت مجله و نگارش و ویرایش مقاله، مانع تأیید و بررسی آن خواهدشد.
An Algorithm to Measure the Attention Rate of Mobile Application Users using App Reviews
Abstract
Introduction : Since the emergence of mobile apps, user reviews have been of great importance for app developers. as they contain users’ sentiment, bugs and new requests, user feedback has been valuable to app developers. Due to the large number of reviews, analysing them is a difficult, time-consuming and error-prone task. So far, many works have been done in the field of classifying reviews; But in none of them, it is not clear which category the users paid more attention to after categorization.
Method: In this article, an algorithm called UAR(User Attention Rate) is presented based on the date of reviews and their number to measure the level of attention of users to the category of bug report or feature request. To test the proposed algorithm, the reviews of WhatsApp, NextCloud, Mozilla Firefox and VLC Media Player apps were extracted by the web crawler for 30 days, and then the reviews were given to 4 software experts after classification. In the following, after analyzing the reviews by 4 experts, the level of attention of users to the reviews was calculated by them. Then, using the proposed method, amount of users' attention to reviews was measured.
Results : It was found that the proposed algorithm was able to have acceptable results in calculating the amount of users' attention to reviews compared to the values calculated by experts. So that the difference in the attention rate calculated by experts according to the proposed algorithm was 72.2%.
Discussion : In this article, an algorithm is presented to calculate the users' attention rate to the categories of feature requests and bug reports. By using the relevant algorithm, the development team will understand that the user wants to fix the bugs related to the application or add new features to the application.
Keywords: Mobile application, user attention rate, google play store analysis, user reviews.
ارائه الگوریتمی جهت اندازهگیری میزان توجه کاربران برنامههای موبایل با استفاده از نظرات مربوط به برنامهها
تاريخ پذيرش:
| دورۀ ، سال شمارۀ ، صص:
|
چکیده: از زمان پیدایش برنامههای موبایل، نظرات کاربران برای توسعهدهندگان برنامه بسیار ارزشمند بوده است. به دلیل حجم بالای نظرات، تحلیل آنها کار بسیار مشکلی است. تاکنون کارهای بسیاری درزمینهی دستهبندی نظرات انجام شده است؛ اما در هیچکدام از آنها مشخص نشده است که پس از دستهبندی، توجه کاربران بیشتر به کدام دسته بوده است. در این مقاله الگوریتمی بانام UAR بر اساس تاریخ ثبت نظرات و تعداد آنها برای اندازهگیری میزان توجه کاربران به دسته گزارش مشکل یا درخواست ویژگی ارائه شده است. برای آزمایش الگوریتم مورد نظر، نظرات برنامههای WhatsApp، NextCloud، Firefox Mozillaو VLC Media Player توسط خزنده وب به مدت 30 روز استخراج شده و سپس نظرات پس از دستهبندی به 4 متخصص نرمافزار داده شد. در ادامه پس از تحلیل نظرات توسط 4 متخصص میزان توجه کاربران به نظرات توسط آنها مورد محاسبه قرار گرفت. سپس با استفاده از روش پیشنهادی نیز میزان توجه کاربران به نظرات اندازهگیری شد. در نهایت مشخص شد که روش پیشنهادی توانسته نتایج قابل قبولی در محاسبه میزان توجه کاربران به نظرات نسبت به مقادیر محاسبه شده توسط متخصصان داشته باشد؛ بهطوری که تفاوت میزان توجه محاسبه شده توسط متخصصان با میزان توجه محاسبه شده توسط الگوریتم ارائه شده 2/72% بوده است
واژههای کلیدی: برنامههای موبایل، میزان توجه، آنالیز فروشگاه گوگل، میزان توجه کاربران.
1- مقدمه
امروزه طبق آمارهای رسمی سایت IDC تا نیمه چهارم سال 2022 حدود 3/300 میلیون تلفن همراه هوشمند توسط تولیدکنندگان تولید شده است که 8/75% از آن به گوشیهای هوشمند با سیستمعامل آندروید تعلق دارد1. سیستمعامل آندروید برای خود فروشگاهی با نام Google PlayStore دارد که تمامی توسعهدهندگان نرمافزار های تولید شده خود را برروی آن قرار میدهند2[1][2]. برنامههای موجود در فروشگاه توسط کاربران بسیار دانلود شده و کاربران فروشگاه گوگل امکان ثبت نظر برای برنامه مورد نظر خود را دارند. مطالعات نشان داده است که نظرات عنوان شده مربوط به برنامه توسط کاربران حاوی اطلاعات مهمی است. این اطلاعات شامل گزارش مشکل، درخواست ویژگی و تجربه کاربران در کار با برنامه است[3][4][5]. مطالعات پیشین نشان میدهد که نظرات ثبت شده توسط کاربران می توانند فرآیند توسعه نرمافزار را هدایت کرده و باعث بهبود نسخههای آینده نرمافزار شوند[6][7]. بهعلاوه نظرات شامل اطلاعات بسیار مهمی برای آنالیز کنندهها و طراحان برنامه نیز هستند[5][8][4]. بهعلاوه اولویتبندی و دستهبندی بهموقع نظرات نیز باعث میشود تا تیم توسعهدهنده در نگهداری نرمافزار و ارائه بهروزرسانی های بهموقع موفقتر باشد[9][10][11]. درزمینهی دستهبندی نظرات تاکنون کارهای بسیاری انجام شده است؛ اما در هیچکدام از این روشها یا مدلها بیاننشده که پس از دستهبندی یا اولویتبندی نظرات کاربران، توجه کاربران بیشتر به دسته گزارش مشکل بوده است یا درخواست ویژگی. بهبیاندیگر میتوان عنوان کرد که در هیچکدام از روشها، گزارش نشده که پس از اولویتبندی یا دستهبندی نظرات، کاربر برنامه از توسعهدهنده خواسته تا بیشتر مشکلات برنامه را رفع کند یا بیشتر درخواست اضافه کردن ویژگیهای جدید را به توسعهدهنده داده است؟ یا بهعبارتدیگر توجه کاربر برنامه بیشتر به سمت گزارش مشکلات بوده است؟ یا درخواست ویژگیهای جدید؟. باید توجه داشت که تاکنون هیچ کاری درزمینهٔ اندازهگیری میزان توجه کاربران انجامنشده است. با استفاده از الگوریتم پیشنهادی تیم توسعهدهنده خواهدتوانست میزان توجه کاربر به دستههای نظرات را اندازهگیری کرده و در بهروزرسانی بعدی سعی در پاسخ دادن به آنها داشته باشد. اگر اشکالات گزارش شده توسط کاربران یا ویژگیهای مورد نیاز آنها بهموقع پاسخ داده شوند، برنامه نهتنها موفقتر بوده بلکه نزد کاربر نیز دارای محبوبیت بیشتری خواهد بود[10][11].
هدف از این تحقیق ارائه الگوریتمی جهت محاسبه میزان توجه کاربران برنامههای موبایل به دستههای درخواست ویژگی یا گزارش مشکل با استفاده از تاریخ ثبت نظرات و تعداد آنها است. برای مشاهده و اندازهگیری کارایی روش پیشنهادی با استفاده از خزنده وب، نظرات مربوط به چهار برنامه WhatsApp، Next Cloud، Mozilla Firefox و VLC Media Player به مدت 30 روز استخراج شده و نظرات پس از دستهبندی به دستههای درخواست ویژگی و گزارش مشکل به 4 متخصص در حوزه نرمافزار بودهاند، داده شد. در ادامه میزان توجه کاربران برای هر کدام از برنامهها توسط متخصصین بهطور میانگین اندازهگیری شده و با مقدار محاسبه شده توسط الگوریتم پیشنهادی مورد مقایسه قرارگرفته است و در نهایت مشخص شده است که الگوریتم پیشنهادی نتایج قابل قبولی در محاسبه نرخ توجه کاربران به دستههای نظرات دارد.
ادامه این مقاله بهصورت زیر سازماندهی شده است: در بخش دوم کارهای انجام شده در دستهبندی نظرات و نیازمندیها بررسی شده و به چالشهای آنها پرداخته شده است، در بخش سوم الگوریتم پیشنهادی برای محاسبه میزان توجه کاربران به دستههای گزارش مشکل یا درخواست ویژگی آورده شده است، در بخش چهارم در مورد روش انجام آزمایشها و معیارهای مقایسه صحبت شده، در بخش پنجم نتایج آزمایشها عنوان شده و در نهایت در بخش ششم نتیجهگیری و پیش نهادهایی برای کارهای آینده آورده شده است.
2- کارهای مرتبط و چالش های آنها
در دستهبندی نظرات عنوان شده توسط کاربران برنامههای موبایل کارهای زیادی انجام شده است که از مهمترین آنها می توان به موارد زیر اشاره کرد:
چِن 3و همکاران در سال 2014، ابزاری بانام AR-Miner برای تشخیص نقدهای دارای اطلاعات ضروری و غیرضروری برای تیم توسعهدهنده ارائه دادند، مدل ارائه شده برای آموزش از نظرات مربوط به 2 برنامه SwiftKey و Facebook و 2 بازی Temple Run و Tapfish، با استفاده از الگوریتم EMNB4 و Top Modeling استفاده کرد و توانست با Hit rate با مقدار 7/0 نظرات سودمند را از نظرات غیر سودمند دستهبندی نماید[9].
مالج و نبیل5 در سال 2016، مطالعهای را برای شناخت بهترین روش برای دستهبندی نظرات کاربران در فروشگاه Play بر اساس دستههای درخواست ویژگی، گزارش مشکل، تجربه کاربران و امتیازدهی انجام دادند. آنها پایگاه دادهای از 1100 برنامه با 1/1 میلیون نظر ساختند و در نهایت تئوری بیز را بهعنوان بهترین روش دستهبندی با precision با مقدار 82/0 معرفی کردند[12].
مقدم در سال 2015، با بررسی 50000 نظر از فروشگاه برنامههای ebay، توانست الگوهای موجود در نظرات کاربران را با استفاده از برچسب زدن گفتار6شناسایی کند. سپس با استفاده از تحلیل احساسات و روش بردار پشتیبان7 و روش کاهش ویژگی LDA برای دستهبندی، نظرات کاربران را به دستههای درخواست ویژگی، گزارش اشکال یا گزارش کار با برنامه دستهبندی کرد. در نهایت مشخص شد که روش مبتنی بر الگوها توانسته در دستهبندی نظرات Precision با مقدار 88% داشته باشد[13].
د-جوهان8و همکاران، ابزاری بانام SAFE برای استخراج ویژگیهای نهفته در نظران کاربران در فروشگاه Play ارائه دادند. آنها به روش دستی، 18 الگوی POS9و 5 الگوی مربوط به جملات را از نظرات استخراج کردند. سپس برای آزمایش از نظرات مربوط به 10 برنامه استفاده شد و مشخص شد ابزار ارائه شده میتواند ویژگیهای موجود در نظرات کاربران را با Precision با مقدار 55/0 و recall با مقدار 43/0 تشخیص دهد[14].
اسکالابرینو10 و همکاران در سال 2019، از روشهای یادگیری ماشین استفاده کرده و ابزاری با عنوان CLAP را برای دستهبندی، خوشهبندی نظرات و اولویتبندی خوشههای که باید در آینده توسط تیم توسعهدهنده پیادهسازی شوند ارائه دادند. دستههای عنوان شده توسط آنها شامل گزارش مشکل عملیاتی، پیشنهاد برای ویژگی جدید و نیازمندیهای غیر عملکردی بود. در نهایت آنها با استفاده از الگوریتمهای درخت تصادفی و DBScan و استفاده از پایگاه داده ابزار Ar-Miner[9] به precision با مقدار 87/0 در دستهبندی نظرات دست یافتند[15].
مارتنز11و همکار در سال 2019، با تحقیق برروی نظرات جعلی در فروشگاه Apple App Store و مشورت با 43 فرد تولیدکننده نظرات جعلی توانستند پایگاه دادهای شامل 60000 نظر جعلی و 62 میلیون نظر تولید کنند. سپس پایگاه داده جمعآوریشده را به 7 ابزار دستهبندی دادند و درنهایت مشخص شد که ابزار درخت تصادفی12 توانسته با 98% مقدار Recall نظرات جعلی را از نظرات واقعی دستهبندی کند[16].
اسلم13 و همکاران در سال 2020 با استفاده از پایگاه داده ارائه شده در مطالعه مالج و همکاران در سال 2016[12] و استخراج 4400 نظر از نظرات این پایگاه داده، سیستمی را با استفاده از شبکههای عصبی کونولوشنی (CNN) و یادگیری عمیق برای دستهبندی نظرات ارائه دادند. سیستم پیشنهادی توانست F-Measure با مقدار 7/94% در دستهبندی نظرات داشته باشد[17].
کیائو14ووانگ در سال 2020، مدلی را بر پایه یادگیری عمیق با معماری LSTM برای دستهبندی نظرات عنوان شده توسط کاربران در دسته بازیهای موجود در فروشگاه Apple App Store ارائه دادند. مدل عنوان شده توسط آنهابا بررسی 18,261,515 نظر عنوان شده برای 4,602 بازی ساخته شد. سپس از 26 دانشجوی کارشناسی برای برچسب زدن دستی نظرات به سه دسته درخواست ویژگی، گزارش مشکل و دیگر استفاده شد و درنهایت مشخص شده که ابزار پیشنهاد شده با استفاده از یادگیری عمیق دارای F-Measure با مقدار 766/0، دارای Precision با مقدار 769/0 و دارای Recall با مقدار 768/0 در دستهبندی نظرات بوده است[18].
در جدول 1 مهمترین کارهای عنوان شده در دستهبندی نظرات با هم مقایسه شدهاند.
جدول 1: مهمترین کارهای انجام شده در زمینه دسته بندی نظرات کاربران
ارائه دهنده / سال نشر | دستاورد | روش مورد استفاده | نتایج و معیار ارزیابی |
2014 [9] چن و همکاران
| ابزار AR-Miner
| EMNB و Top Modeling و LDA
| F-Mesaure با مقدار 7/0 در دستهبندی نظرات سودمند از غیر سودمند |
2015 [13] مقدم | شناسایی الگوهای موجود در نظرات کاربران | POS, تحلیل احساسات و SVM | Precision با مقدار 88/0 در شناسایی نظرات کاربران |
2016 [14] مالج و همکار
| شناسایی بهترین الگوریتم در دسته بندی نظرات کاربران
| دسته بندی متن و NLP و تحلیل احساسات | تئوری بیز با precision با مقدار 82/0 بهترین روش در دستهبندی نظرات است |
2017 [15] جوهان و همکاران
| ابزار SAFE
| Pos Tag & Pattern Recognition
| precision با میزان 55/0 و recall با میزان 43/0 در شناسایی ویژگیهای مورد درخواست کاربران |
2019 [15] اسکالابرینو و همکاران | ابزار CLAP | Random Forest و DBSCAN
| Precision با مقدار 87/0 در دستهبندی و اولویتبندی نظرات کاربران |
2020 [17] اسلم و همکاران
| ابزاری برای دسته بندی نظرات فروشگاه Play
| NLP و Senti4D و یادگیری عمیق
| F-Measure با میزان 7/94 در دستهبندی نظرات کاربران |
2020 [18] کیائو و همکار | ارائه مدلی برای دسته بندی نظرات بازی های موجود در فروشگاه Apple App Store | CNN و LSTM | F-Measure با مقدار 766/0، Precision بامقدار769/0 و Recall با مقدار 768/0 در دستهبندی نظرات |
همانطور که در جدول 1 مشاهده میشود، کارهای انجام شده توسط دیگران دارای چالشها و مشکلات زیر است:
· در ابزار ارائه شده توسط آنها امکان استخراج نظرات به روز برای برنامه، دستهبندی، خلاصهسازی، تعیین قطبیت و اولویتبندی آنها در هرلحظه و با اراده تیم توسعهدهنده وجود ندارد؛ بلکه پایگاه دادهای ساخته شده سیستم با آن آموزشدیده و عمل دستهبندی، خوشهبندی و اولویتبندی روی آن پایگاه داده آزمایش شده است
· برای یادگیری سیستم دستهبندی آنها از روشهای قدیمی یادگیری ماشین استفاده شده است.
· در دستهبندی و اولویتبندی از ویژگیهایی استفاده شده که اکنون دیگر توسط فروشگاه گوگل ارائه نمیشوند و اکنون امکان استفاده از این ویژگیهای نمیباشد.
· برای ساخت پایگاه داده برای آموزش مدل ارائه شده، ویژگیها بهصورت دستی توسط عوامل انسانی از نظرات استخراج شدهاند؛ اما امروزه با استفاده از یادگیری عمیق دیگر عمل استخراج ویژگی کاربرد آنچنانی نخواهد داشت.
بهعلاوه با توجه به مشکلات مورد اشاره موجود در روشهای دیگران در هیچکدام از ابزارها مشخص نشده است که پس از دستهبندی یا اولویتبندی نظرات، کاربران برنامههای موبایل از تیم توسعهدهنده بیشتر درخواست اضافه کردن ویژگیهای جدید را داشته یا بیشتر مشکلات مربوط به برنامه را گزارش داده و خواستار رفع آنها بودهاند.
با توجه به چالشهای عنوان شده، ارائه روش یا الگوریتمی برای محاسبه میزان درخواست کاربران یا میزان توجه آنها مورد نیاز است و سؤال زیر برای پاسخ دادن مطرح میشود:
سؤال تحقیق: آیا روش پیشنهادی میتواند بهخوبی روشهای دستی (روش بررسی نظرات توسط متخصصین) میزان توجه کاربران به دستههای گزارش مشکل یا درخواست ویژگی را محاسبه نماید ؟
3- روش محاسبه میزان توجه کاربران15
روزانه نظرات بسیاری برای برنامهها ثبت میشود. هدف ما محاسبه میزان توجه کاربران به نظرات است. در این تحقیق بر پایه ویژگیهایی که در زیر عنوان میشود الگوریتمی برای محاسبه نرخ توجه کاربران به دستههای گزارش مشکل و درخواست ویژگی با عنوان
UAR (User Attention Rate) ارائه شده است. باید توجه داشت که نظرات برنامه بهوسیله خزندههای تحت وب پیادهسازی شده با استفاده از زبان برنامهسازی پایتون با دادن نام Package برنامه در فروشگاه Play قابل استخراج هستند. برای محاسبه نرخ توجه از ویژگیهای تعداد نظرات و تاریخ ثبت نظرات استفاده شده است. در ادامه به بررسی هر کدام از ویژگیها بهطور جداگانه پرداخته شده است.
3-1- تاریخ ثبت نظرات
هنگامیکه کاربر در فروشگاه Play اقدام به ثبت نظر کند، گزینهای برای امتیازدهی به او نمایش داده خواهد شد که میتواند امتیازی بین 1 تا 5 برحسب رضایت به برنامه بدهد. بهعلاوه در زیر فیلد مربوط به امتیاز، محلی برای ثبت نظر در نظر گرفته شده است که در شکل 1 نشان داده شده است.
شکل 1- ثبت نظر و امتیاز مربوط به برنامه در فروشگاه Play
همانطور که در شکل 1 مشاهده میشود، هنگام کلیک بر روی گزینه Write a review پنجرهای برای نوشتن نظر به کاربر نشان داده میشود. در شکل 2 نحوه امتیازدهی و ثبت نظر توسط کاربر نشان داده شده است.
شکل 2- نحوه ثبت امتیاز و نظر برای برنامه در فروشگاه Play
هنگام مراجعه به صفحه مربوط به برنامه مشاهده میشود که تعدادی از نظرات تاریخ ثبت قدیمی تری نسبت به نظرات جدید دارند اما در بالای نظرات جدید نمایش داده میشوند. به این نظرات، نظرات بسیار مرتبط یا Most Relevant گفته میشود. فروشگاه گوگل با استفاده از فاکتورهایی مانند الف- طول نظر ثبت شده، ب- اشاره نظر ثبت شده به یک ویژگی یا قسمت خاص برنامه، ج- نظر ثبت شده توسط منتقد خاص یا مورد تأیید Google، د- استفاده از کلمات خاص، ه- استفاده از عکس در ثبت نظرات و و-نظرات دارای احساس منفی، نظرات بسیار مرتبط را از دیگر نظرات متمایز کرده و به کاربران نشان میدهد[19][20]. ممکن است تعداد نظرات بسیار مرتبط16 نسبت به سایر نظرات کمتر باشند اما در بسیاری از موارد این نظرات دغدغههای دیگر کاربران استفادهکننده از برنامه هستند.
هنگام ثبت نظر تاریخ ثبت آن نیز توسط فروشگاه ثبت میشود. زمانی که با استفاده از خزنده وب نظرات مربوط به برنامه خاص استخراج میشود، تاریخ ثبت نظر و نوع نظر شامل جدید یا بسیار مرتبط بودن آن نیز توسط خزنده استخراج میشود.
در نتیجه کاربران هنگام ثبت نظر که شامل گزارش مشکل یا درخواست ویژگی یا شرح کارکرد در کار با برنامه است، در صورت مشاهده دغدغه خود که توسط کاربر دیگر مطرح شده، دیگر آن را ثبت نکرده و برای تصدیق و تأیید نظر دیگران از دکمهای بانام ThumbsUp با علامت استفاده میکنند. در بسیاری از موارد نیز ممکن است با پیغام Did you find this Helpful با دکمههای Yes و No مواجه شوند. در نتیجه تعدادی از نظرات در مورد برنامه دارای محبوبیت بسیار از طرف کاربران وجود دارند.
شکل 3 - نظرات ثبت شده در فروشگاه Play برای نرمافزار WhatsApp
همانطور که در شکل 3 مشاهده میشود در ابتدا نام ثبتکننده نظر به همراه عکس پروفایل، در زیر آن تاریخ ثبت نظر مشاهده میشود. تاریخ ثبت نظر مربوط به چند روز پیش است اما به دلیل Thumbsup بالا (4113 People found this review helpful) نظر در بالای دیگر نظرات نشان داده شده است.
برای محاسبه تاریخ ثبت نظرات، پسازآن که نظرات در روز با استفاده از خزنده استخراج شدند، تاریخ ثبت اولین نظر با تاریخ ثبت آخرین نظر، مقایسه شده و فاصله آنها برحسب روز طبق رابطه 1 به دست میآید.
در رابطه 1، Dates تفاوت تاریخ ثبت اولین نظر با آخرین نظر است. در حقیقت می توان عنوان کرد که با استفاده از رابطه بالا میخواهیم محاسبه کنیم که نظرات موجود در این دستهبندی (دستهبندی درخواست ویژگی یا گزارش مشکل) در چند روز توسط کاربران ثبت شدهاند زیرا هرچه این تعداد کوچکتر باشد نشاندهنده میزان اهمیت کاربر به دستهبندی مربوطه است.
3-2- تعداد نظرات
برای محاسبه تعداد نظرات موجود در هر دستهبندی، هنگام استفاده از خزنده جهت استخراج نظرات و پس از دستهبندی آنها توسط یکی ابزارها مورد اشاره در قسمت 2، تعداد نظرات را با نشان میدهیم که بیانگر تعداد نظرات ثبت شده توسط کاربر در آن دستهبندی خاص میباشد.
3-3- الگوریتم پیشنهادی محاسبه میزان توجه کاربران (UAR)
برای محاسبه میزان توجه کاربران به دستهبندیهای انجام شده توسط ابزار دستهبندی، از رابطه 2 استفاده میشود.
در رابطه 2 نشاندهنده تعداد نظرات، برابر تعداد روزی است که در طی آن نظرات توسط کاربران ثبت شدهاند و برابر میزان یا نرخ توجه کاربران به دستهبندی مورد نظر است.
در ادامه از رابطه 1 و 2 برای ارائه الگوریتم محاسبه میزان توجه استفاده خواهد شد.
Algorithm : Calculate Attention Rate | |||
Input: Sets of Reviews with their Metadata (R) Output: (Attention Rate R) | |||
4.
| |||
|
مجله سیستمهای پردازشی و چندرسانهای هوشمند- سال اول- شماره اول- پاییز 1399 5 |
مجله سیستمهای پردازشی و چندرسانهای هوشمند- سال اول- شماره اول- پاییز 1399 5 |
مجله سیستمهای پردازشی و چندرسانهای هوشمند- سال اول- شماره اول- پاییز 1399 5 |
در این قسمت به توضیح در مورد محیط انجام آزمایشها، نحوه انجام آنها، معیارهای مقایسه و نتایج آزمایش پرداخته میشود.
4-1- محیط آزمایش
برای آموزش مدل از زبان برنامهنویسی پایتون نسخه 3.10.11و محیط برنامهنویسی Visual Studio Code نسخه 1.78.2 استفاده شده است. دلیل استفاده از این محیط راحتی Debug و همشکل بودن با Microsoft Visual Studio است.
برای ارزیابی نتایج از کامپیوتر با پردازنده Intel Xeon E5-2650 v4، 16 گیگابایت Ram از نوع DDR4، بدون کارت گرافیک و ویندوز 10 استفاده شده است.
4-2- برنامه ها و نظرات مورد استفاده
برای آزمایش الگوریتم پیشنهادی در محاسبه میزان توجه کاربران، از تاریخ October 3,2023 تا تاریخ November 2,2023 نظرات بسیار مرتبط17 مربوط به برنامههای WhatsApp، NextCloud،Firefox و VLC Media Player توسط خزنده وب به مدت 30 روز استخراج شد. برای مجموع نظرات استخراج شده، ویژگیهای نام ثبتکننده نظر، عکس مربوط به او در صورت وجود، نام کاربری شخص ثبتکننده، امتیاز داده شده به برنامه توسط او (عدد بین 1 تا 5)، متن نظر، ThumbsUp مربوط به آن، نسخه برنامه، تاریخ ثبت نظر و نوع نظر (Most Relevant یا New) موجود است. برای هر برنامه نظرات با ویژگیهای عنوان شده استخراج شد.
جدول 2 - تعداد نظرات استخراج شده برای هر برنامه به مدت 30 روز
برنامه | تعداد نظرات در 30 روز |
2910 | |
NextCloud | 981 |
Mozilla Firefox | 1815 |
VLC Media Player | 2865 |
همانطور که در جدول 2 مشاهده میشود، تعداد نظراتی که به مدت 30 روز برای هر کدام از برنامهها جمعآوریشدهاند، متفاوت است؛ این بدین دلیل است که هر برنامه ممکن است دارای میزان محبوبیت بالا یا محبوبیت پایین با توجه به کاربران آن باشد.
بهعلاوه باید در نظر داشت که در مدت 30 رو جمعآوری نظرات، نظرات تکراری حذف شده و تنها نظرات متمایز و غیرتکراری به همراه ویژگیهای عنوان شده ثبت شده و به کارشناس نرمافزار داده شدهاند.
4-3- نتایج ارزیابی
در ادامه برای پاسخدهی به پرسش تحقیق برای هر برنامه مجموع نظرات استخراج شده به ابزار دستهبندی ارائه شده توسط اسلم و همکاران [17] به دلیل داشتن بالاترین دقت برای دستهبندی داده شد.
پس از دستهبندی نظرات با توجه به روش ارائه شده در [21]، از 4 متخصص حوزه نرمافزار دارای حداقل 3 سال سابقه کاری استفاده شد. متخصصان سوابق بسیاری در پروژههای تجاری داشته و بهعنوان افراد مجرب فنی شناخته میشوند.
نظرات به متخصصین برای تحلیل داده شد و در مدتزمان 7 روز هر کدام از 4 متخصص بهطور جداگانه نظرات را بررسی کرده و مشخص کردند که توجه کاربر چند درصد به گزارش مشکل و چند درصد به درخواست ویژگی در هر نرمافزار بوده است. میانگین نتایج بررسی توسط 4 متخصص و نرمافزار مربوطه در جدول 3 آمده است.
جدول 3 - نتایج محاسبه میانگین درصد توجه کاربران به هرکدام از دستهها
نرمافزار | میانگین درصد توجه کاربران استخراج شده توسط 4 متخصص |
6%/78 گزارش مشکل 4%/21 درخواست ویژگی | |
NextCloud | 9%/86 درخواست ویژگی 1%/13 گزارش مشکل |
Mozilla Firefox | 4%/93 گزارش مشکل 6%/6 درخواست ویژگی |
VLC Media Player | 9%/96 گزارش مشکل 1%/3 درخواست ویژگی |
در جدول 3 میانگین نتایج درصد توجه کاربران به دستههای درخواست مشکل یا گزارش مشکل که توسط متخصصان اندازهگیری شده است، آورده شده است. باید توجه داشت که ممکن بود برای بسیاری از نظرات در بین متخصصان اختلافنظر وجود داشته باشد. در این حالت رأی اکثریت مورد قبول واقع شد.
در ادامه برای بررسی توانایی روش پیشنهادی UAR در محاسبه میزان توجه کاربران به دستههای نظرات، در ابتدا برای هر دستهبندی با استفاده از الگوریتم شماره 1 ارائه شده در بخش 3-3 نرخ یا میزان توجه کاربران به دستههای نظرات محاسبه شده است و نتایج محاسبه در جدول 4 آورده شده است.
جدول 4 - محاسبه میزان یا نرخ توجه کاربران به دستههای نظرات محاسبه شده توسط االگوریتم UAR
نرمافزار | نرخ توجه محاسبه شده توسط الگوریتم پیشنهادی | درصد توجه کاربران محاسبه شده توسط الگوریتم پیشنهادی UAR | تفاوت نرخ توجه محاسبه شده توسط متخصصین و الگوریتم پیشنهادی |
23/76 گزارش مشکل 76/20 درخواست ویژگی | 76%/72 گزارش مشکل 24%/27 درخواست ویژگی | % 84/5 گزارش مشکل % 84/5 درخواست ویژگی | |
NextCloud | 4/28 درخواست ویژگی 3/4 گزارش مشکل | 85%/ 84درخواست ویژگی 15%/15 گزارش مشکل | % 05/2 درخواست ویژگی % 05/2 گزارش مشکل |
Mozilla Firefox | 5/56 گزارش مشکل 4 درخواست ویژگی | 9%/92 گزارش مشکل 01%/7 درخواست ویژگی | % 5/0گزارش مشکل % 41/0 درخواست ویژگی |
VLC Media Player | 5/92 گزارش مشکل 23/5 درخواست ویژگی | 34%/94 گزارش مشکل 66%/5 درخواست ویژگی | % 56/2 گزارش مشکل % 56/2 درخواست ویژگی |
همانطور که در جدول 4 مشاهده میشود، میزان توجه نظرات با توجه تعداد نظرات موجود در دستهبندی تقسیم بر تعداد روزی که نظرات در آن وارد شده است، مشاهده میشود. سپس در ستون مقابل میزان توجه به درصد برای فهم بهتر تبدیل شده است. بهعلاوه برای فهم بهتر میزان تفاوت نرخ توجه محاسبه شده توسط الگوریتم و نرخ توجه محاسبه شده توسط متخصص نیز در کنار آنها آمده است.
· الگوریتم UAR پیشنهادی در مقایسه با روش دستی محاسبه میزان توجه کاربران در دسته گزارش مشکل توانسته بهطور میانگین با اختلاف 73/2 % میزان توجه کاربران را محاسبه نماید.
· بهعلاوه الگوریتم UAR پیشنهادی توانسته در مقایسه با روش دستی، بهطور میانگین با اختلاف 71/2% میزان توجه نظرات کاربران به دسته درخواست ویژگی را محاسبه نماید.
· باید توجه داشت که تاکنون هیچ روش یا ابزار یا مدلی برای محاسبه میزان توجه کاربران و گرایش آنها به دستههای خاص نظرات ارائه نشده است. در نتیجه مقایسه الگوریتم ارائه شده با دیگر روشها اشتباه است.
برای مقایسه روش پیشنهادی با روش دستی تنها راه، استفاده از 4 کارشناس خبره درزمینهی برنامهنویسی نرمافزار بود. زیرا هیچ ابزار یا روشی برای مقایسه با روش پیشنهادی وجود نداشت.
5- نتیجهگیری و کارهای آینده
روزانه نظرات بسیاری توسط کاربران برای برنامههای موبایل ثبت میشود. با توجه به آنکه حجم نظرات ثبت شده بسیار بالا بوده و تحلیل آنها برای تیم توسعهدهنده امری دشوار است، ابزار یا روشی مورد نیاز است تا میزان یا نرخ توجه کاربران به نظرات برنامه مورد نظر با توجه به دستههای گزارش مشکل یا درخواست ویژگی بررسی کند. در صورت داشتن چنین ابزاری و اندازهگیری میزان توجه کاربران، تیم توسعهدهنده مستقیماً و بدون اتلاف وقت به دسته مورد توجه کاربر مراجعه کرده و علاوه بر عدم اتلاف زمان، بهراحتی ویژگیهای مورد درخواست کاربر یا مشکلات گزارش شده توسط او را در نسخههای بعدی پیادهسازی کرده یا پاسخ میدهد. بدین ترتیب نرمافزار در بین رقبای خود محبوبیت خود را حفظ کرده و همیشه به روز خواهد بود.
در این تحقیق الگوریتمی با عنوان UAR (User Attention Rate) برای محاسبه میزان توجه کاربران به دستههای گزارش مشکل یا درخواست ویژگی ارائه شده است. برای آزمایش الگوریتم یا روش پیشنهادی از 4 متخصص کمک گرفته شد و از آنها خواسته شد تا میزان توجه کاربران به نظرات مربوط به 4 برنامه از فروشگاه Play را بررسی کنند. در نهایت با مقایسه میزان توجه تعیین شده توسط متخصصین و میزان یا نرخ توجه محاسبه شده توسط روش پیشنهادی مشخص شد که الگوریتم پیشنهادی توانسته با اختلاف بسیار کم میزان توجه کاربران به دستههای گزارش مشکل یا درخواست ویژگی یا تشخیص دهد.
با استفاده از ویژگیهای بیشتر، می توان در کارهای آینده، میزان توجه کاربران به دستهبندیهای بیشتر را مورد بررسی قرارداد.
6- منابع و مراجع
[1] M. R. Dehkordi, H. Seifzadeh, G. Beydoun, and M. H. Nadimi-Shahraki, “Success prediction of android applications in a novel repository using neural networks,” Complex Intell. Syst., vol. 6, no. 3, pp. 573–590, 2020, doi: 10.1007/s40747-020-00154-3.
[2] W. Martin, F. Sarro, Y. Jia, Y. Zhang, and M. Harman, “A survey of app store analysis for software engineering,” IEEE Trans. Softw. Eng., vol. 43, no. 9, pp. 817–847, 2017, doi: 10.1109/TSE.2016.2630689.
[3] E. Guzman and W. Maalej, “How Do Users Like This Feature? A Fine Grained Sentiment Analysis of App Reviews,” in 2014 IEEE 22nd International Requirements Engineering Conference (RE), Aug. 2014, pp. 153–162, doi: 10.1109/RE.2014.6912257.
[4] D. Pagano and W. Maalej, “User feedback in the appstore: An empirical study,” in 2013 21st IEEE International Requirements Engineering Conference (RE), Jul. 2013, pp. 125–134, doi: 10.1109/RE.2013.6636712.
[5] L. V. G. Carreno and K. Winbladh, “Analysis of user comments: An approach for software requirements evolution,” Proc. - Int. Conf. Softw. Eng., pp. 582–591, 2013, doi: 10.1109/ICSE.2013.6606604.
[6] W. Maalej and D. Pagano, “On the socialness of software,” Proc. - IEEE 9th Int. Conf. Dependable, Auton. Secur. Comput. DASC 2011, pp. 864–871, 2011, doi: 10.1109/DASC.2011.146.
[7] N. Seyff, F. Graf, and N. Maiden, “Using mobile RE tools to give end-users their own voice,” Proc. 2010 18th IEEE Int. Requir. Eng. Conf. RE2010, pp. 37–46, 2010, doi: 10.1109/RE.2010.15.
[8] A. Al-Subaihin et al., “App store mining and analysis,” in Proceedings of the 3rd International Workshop on Software Development Lifecycle for Mobile, Aug. 2015, pp. 1–2, doi: 10.1145/2804345.2804346.
[9] 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 Proceedings - International Conference on Software Engineering, May 2014, no. 1, pp. 767–778, doi: 10.1145/2568225.2568263.
[10] E. C. Groen, J. Doerr, and S. Adam, “Towards Crowd-Based Requirements Engineering A Research Preview,” in Requirements Engineering: Foundation for Software Quality, 2015, pp. 247–253.
[11] S. A. Licorish, B. T. R. Savarimuthu, and S. Keertipati, “Attributes that predict which features to fix: Lessons for app store mining,” ACM Int. Conf. Proceeding Ser., vol. Part F1286, pp. 108–117, 2017, doi: 10.1145/3084226.3084246.
[12] W. Maalej, Z. Kurtanović, H. Nabil, and C. Stanik, “On the automatic classification of app reviews,” Requir. Eng., vol. 21, no. 3, pp. 311–331, Sep. 2016, doi: 10.1007/s00766-016-0251-9.
[13] S. Moghaddam, “Beyond Sentiment Analysis: Mining Defects and Improvements from Customer Feedback,” 2015, pp. 400–410.
[14] T. Johann, C. Stanik, A. M. B. Alizadeh, and W. Maalej, “SAFE: A Simple Approach for Feature Extraction from App Descriptions and App Reviews,” in Proceedings - 2017 IEEE 25th International Requirements Engineering Conference, RE 2017, Sep. 2017, pp. 21–30, doi: 10.1109/RE.2017.71.
[15] S. Scalabrino, G. Bavota, B. Russo, M. Di Penta, and R. Oliveto, “Listening to the Crowd for the Release Planning of Mobile Apps,” IEEE Trans. Softw. Eng., vol. 45, no. 1, pp. 68–86, 2019, doi: 10.1109/TSE.2017.2759112.
[16] D. Martens and W. Maalej, “Towards understanding and detecting fake reviews in app stores,” Empir. Softw. Eng., vol. 24, no. 6, pp. 3316–3355, Dec. 2019, doi: 10.1007/s10664-019-09706-9.
[17] N. Aslam, W. Y. Ramay, K. Xia, and N. Sarwar, “Convolutional neural network based classification of app reviews,” IEEE Access, vol. 8. Institute of Electrical and Electronics Engineers Inc., pp. 185619–185628, 2020, doi: 10.1109/ACCESS.2020.3029634.
[18] Z. Qiao, A. Wang, A. Abrahams, and W. Fan, “Deep Learning-Based User Feedback Classification in Mobile App Reviews,” 2020. [Online]. Available: https://aisel.aisnet.org/sigdsa2020.
[19] “What Criteria are Used by Google to Rank Reviews Most Relevant? | LaPraim Insights.” https://lapraim.com/insights/criteria-for-relevant-google-reviews (accessed Sep. 18, 2023).
[20] “How Google Decides What Reviews Are Most Relevant.” https://www.widewail.com/blog/how-google-decides-what-reviews-are-most-relevant (accessed Sep. 18, 2023).
[21] Z. Wan, X. Xia, D. Lo, and G. C. Murphy, “How does machine learning change software development practices?,” IEEE Trans. Softw. Eng., vol. 47, no. 9, pp. 1857–1871, 2021, doi: 10.1109/TSE.2019.2937083.
[1] “IDC - Smartphone Market Share - Market Share.”
[2] Android Apps on Google Play.” https://play.google.com/store/apps
[3] Chen
[4] Expectation Maximization for Naïve Bayes
[5] Nabil
[6] Part of Speech Tagging
[7] Support Vector Machine
[8] Johann
[9] Part of Speech
[10] Scalabrino
[11] Martens
[12] Random Forest
[13] Aslam
[14] Qiao
[15] Attention Rate
[16] Most Relevant
[17] Most Relevant