电子学报 ›› 2022, Vol. 50 ›› Issue (9): 2079-2089.DOI: 10.12263/DZXB.20210454

• 学术论文 • 上一篇    下一篇

基于系统模型的用户评论中非功能需求的自动分类

李雪莹, 王田路, 梁鹏, 王翀   

  1. 武汉大学计算机学院, 湖北 武汉 430072
  • 收稿日期:2021-04-09 修回日期:2021-12-20 出版日期:2022-09-25
    • 作者简介:
    • 李雪莹 女, 1993年12月出生于河南省南阳市. 2021年毕业于武汉大学计算机学院. 主要研究方向包括需求工程、软件体系结构和机器学习.E-mail: xueyingli@whu.edu.cn
      王田路 女, 1995年6月出生于河北省邢台市. 本硕毕业于武汉大学计算机学院. 现在中国银行总行信息科技部工作. 主要研究方向为软件体系结构和需求工程.E-mail: wangtianlu@whu.edu.cn
      梁 鹏(通讯作者) 男, 1978年10月出生于湖北省荆门市. 现任武汉大学计算机学院教授. 主要研究方向为软件体系结构和需求工程.
      王 翀 女, 1981年3月出生于湖北省武汉市. 现任武汉大学计算机学院讲师. 主要研究方向为面向服务软件工程和需求工程.E-mail: cwang@whu.edu.cn
    • 基金资助:
    • 国家重点研发计划 (2018YFB1402800); 国家自然科学基金 (62172311)

Automatic Classification of Non-Functional Requirements in App User Reviews Based on System Model

LI Xue-ying, WANG Tian-lu, LIANG Peng, WANG Chong   

  1. School of Computer Science,Wuhan University,Wuhan,Hubei 430072,China
  • Received:2021-04-09 Revised:2021-12-20 Online:2022-09-25 Published:2022-10-26

摘要:

移动应用程序中的用户评论是获取用户需求的重要来源. 从用户评论中获取的用户需求,不仅可以帮助开发人员维护现有系统,还可以快速、准确地定位新的用户需求. 本文主要关注移动应用用户评论中的非功能需求,并基于系统模型、采用机器学习和深度学习算法将其自动分类为行为型需求和表示型需求. 在使用机器学习方法分类时,将2种特征提取技术与5种机器学习算法进行组合. 在使用深度学习方法分类时,使用了2种基于词嵌入的深度学习算法和1种基于字符嵌入的深度学习算法. 从性能和时间消耗2个维度比较了机器学习模型和深度学习模型,结果表明,机器学习模型比深度学习模型表现更好. 此外,支持向量机(Support Vector Machine,SVM)与词频-逆文档频率(Term Frequency?Inverse Document Frequency,TF?IDF)组合获得了最好的分类性能,精确率为0.941,召回率为0.990,F1-score为0.965.

关键词: 用户评论, 系统模型, 非功能需求, 自动分类, 机器学习, 深度学习

Abstract:

App user reviews are an important source of user requirements. The requirements obtained from user reviews can not only help developers maintain the existing systems, but also quickly and accurately locate new user requirements. This work focuses on non-functional requirements in App user reviews, and further classifies them into behavioral requirements and representational requirements based on system model with machine learning and deep learning algorithms. When using machine learning to classify non-functional requirements, we combined two feature extraction techniques with five machine learning algorithms. When applying deep learning to classify non-functional requirements, we used two deep learning algorithms based on word embedding and one deep learning algorithm based on character embedding. We compared machine learning models and deep learning models from the performance and time consumption perspectives. The results show that, machine learning models perform better than the deep learning models. In addition, the combination of SVM(Support Vector Machine) and TF-IDF(Term Frequency?Inverse Document Frequency) achieves the best performance of classification, with a precision of 0.941, a recall of 0.990, and an F1-score of 0.965.

Key words: user review, system model, non-functional requirement, automatic classification, machine learning, deep learning

中图分类号: