Identification and Classification of Non-Functional Requirements from User Reviews

Show simple item record

dc.contributor.author Aziz, Md. Ashif
dc.contributor.author Mehjabin, Nafisa
dc.contributor.author Tasnia, Khandaker Rifah
dc.date.accessioned 2023-04-05T08:12:38Z
dc.date.available 2023-04-05T08:12:38Z
dc.date.issued 2022-05-31
dc.identifier.citation [1] Z. S. H. Abad, O. Karras, P. Ghazi, M. Glinz, G. Ruhe, and K. Schneider. What works better? a study of classifying requirements, 2017. [2] assem hawari. A dataset of mobile application reviews for classifying reviews into software engineering’s maintenance tasks using data mining techniques. In Mendeley Data, page V2, 2019. [3] C. Baker, L. Deng, S. Chakraborty, and J. Dehlinger. Automatic multi-class non-functional software requirements classification using neural networks. In 2019 IEEE 43rd Annual Computer Software and Applications Conference (COMPSAC), volume 2, pages 610–615, 2019. doi: 10.1109/COMPSAC.2019.10275. [4] J. Beel, B. Gipp, S. Langer, and C. Breitinger. paper recommender systems: A literature survey. International Journal on Digital Libraries, 17(4):305–338, 2016. [5] G. Boetticher. The promise repository of empirical software engineering data. http://promisedata. org/repository, 2007. [6] L. Chung, B. A. Nixon, E. Yu, and J. Mylopoulos. Non-functional requirements in software engineering, volume 5. Springer Science & Business Media, 2012. [7] J. Dąbrowski, E. Letier, A. Perini, and A. Susi. Mining user opinions to support requirement engineering: an empirical study. In International Conference on Advanced Information Systems Engineering, pages 401–416. Springer, 2020. [8] A. F. de Araújo and R. M. Marcacini. Re-bert: automatic extraction of software requirements from app reviews using bert language model. In Proceedings of the 36th Annual ACM Symposium on Applied Computing, pages 1321–1327, 2021. [9] A. Dekhtyar and V. Fong. Re data challenge: Requirements identification with word2vec and tensorflow. In 2017 IEEE 25th International Requirements Engineering Conference (RE), pages 484–489, 2017. doi: 10.1109/RE.2017.26. [10] A. Dekhtyar and V. Fong. Re data challenge: Requirements identification with word2vec and tensorflow. In 2017 IEEE 25th International Requirements Engineering Conference (RE), pages 484–489. IEEE, 2017. [11] J. Devlin, M.-W. Chang, K. Lee, and K. Toutanova. Bert: Pre-training of deep bidirectional transformers for language understanding. arXiv preprint arXiv:1810.04805, 2018. [12] E. Dias Canedo and B. Cordeiro Mendes. Software requirements classification using machine learning algorithms. Entropy, 22(9):1057, 2020. [13] J. Eckhardt, A. Vogelsang, and D. M. Fernández. Are" non-functional" requirements really non-functional? an investigation of non-functional requirements in practice. In Proceedings of the 38th International Conference on Software Engineering, pages 832–842, 2016. 37 [14] G. Forman et al. An extensive empirical study of feature selection metrics for text classification. J. Mach. Learn. Res., 3(Mar):1289–1305, 2003. [15] P. B. Goes, M. Lin, and C.-m. Au Yeung. “popularity effect” in user-generated content: Evidence from online product reviews. Information Systems Research, 25(2):222–238, 2014. [16] M. Grandini, E. Bagli, and G. Visani. Metrics for multi-class classification: an overview. arXiv preprint arXiv:2008.05756, 2020. [17] E. C. Groen, S. Kopczyńska, M. P. Hauer, T. D. Krafft, and J. Doerr. Users—the hidden software product quality experts?: A study on how app users report quality aspects in online reviews. In 2017 IEEE 25th international requirements engineering conference (RE), pages 80–89. IEEE, 2017. [18] P. Gupta, S. Gandhi, and B. R. Chakravarthi. Leveraging transfer learning techniques-bert, roberta, albert and distilbert for fake review detection. In Forum for Information Retrieval Evaluation, pages 75–82, 2021. [19] 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), pages 153–162. Ieee, 2014. [20] T. Hey, J. Keim, A. Koziolek, and W. F. Tichy. Norbert: Transfer learning for requirements classification. In 2020 IEEE 28th International Requirements Engineering Conference (RE), pages 169–179, 2020. doi: 10.1109/RE48521.2020.00028. [21] M. B. Ila and H. Kitapci. Selecting an effective information and communication technology architecture for an education system based on non-functional requirements. In 2014 IEEE 8th International Conference on Application of Information and Communication Technologies (AICT), pages 1–3. IEEE, 2014. [22] ISO/IEC 25010:2011. Systems and software engineering — Systems and software Quality Requirements and Evaluation (SQuaRE) — System and software quality models. Standard, International Organization for Standardization, 2011. [23] D. Kici, A. Bozanta, M. Cevik, D. Parikh, and A. Başar. Text classification on software requirements specifications using transformer models. In Proceedings of the 31st Annual International Conference on Computer Science and Software Engineering, pages 163–172, 2021. [24] D. P. Kingma and J. Ba. Adam: A method for stochastic optimization. arXiv preprint arXiv:1412.6980, 2014. [25] Z. Kurtanović and W. Maalej. Automatically classifying functional and non-functional requirements using supervised machine learning. In 2017 IEEE 25th International Requirements Engineering Conference (RE), pages 490–495. Ieee, 2017. [26] J. Lee, W. Yoon, S. Kim, D. Kim, S. Kim, C. H. So, and J. Kang. Biobert: a pre-trained biomedical language representation model for biomedical text mining. Bioinformatics, 36(4):1234–1240, 2020. 38 [27] Y. Liu, M. Ott, N. Goyal, J. Du, M. Joshi, D. Chen, O. Levy, M. Lewis, L. Zettlemoyer, and V. Stoyanov. Roberta: A robustly optimized bert pretraining approach. arXiv preprint arXiv:1907.11692, 2019. [28] M. Lu and P. Liang. Automatic classification of non-functional requirements from augmented app user reviews. In Proceedings of the 21st International Conference on Evaluation and Assessment in Software Engineering, pages 344–353, 2017. [29] R. Navarro-Almanza, R. Juarez-Ramirez, and G. Licea. Towards supporting software engineering using deep learning: A case of software requirements classification. In 2017 5th International Conference in Software Engineering Research and Innovation (CONISOFT), pages 116–120. IEEE, 2017. [30] D. Pagano and W. Maalej. Ieee standard glossary of software engineering terminology. In IEEE Std 729-1983, page 1–84. IEEE, 1990. [31] D. Pagano and W. Maalej. User feedback in the appstore: An empirical study. In 2013 21st IEEE international requirements engineering conference (RE), pages 125–134. IEEE, 2013. [32] S. Panichella, A. Di Sorbo, E. Guzman, C. A. Visaggio, G. Canfora, and H. C. Gall. How can i improve my app? classifying user reviews for software maintenance and evolution. In 2015 IEEE international conference on software maintenance and evolution (ICSME), pages 281–290. IEEE, 2015. [33] G. Y. Quba, H. Al Qaisi, A. Althunibat, and S. AlZu’bi. Software requirements classification using machine learning algorithm’s. In 2021 International Conference on Information Technology (ICIT), pages 685–690. IEEE, 2021. [34] M. A. Rahman, M. A. Haque, M. N. A. Tawhid, and M. S. Siddik. Classifying non-functional requirements using rnn variants for quality software development. In Proceedings of the 3rd ACM SIGSOFT International Workshop on Machine Learning Techniques for Software Quality Evaluation, pages 25–30, 2019. [35] A. Rajaraman and J. D. Ullman. Mining of massive datasets. Cambridge University Press, 2011. [36] F. Rustam, A. Mehmood, M. Ahmad, S. Ullah, D. M. Khan, and G. S. Choi. Classification of shopify app user reviews using novel multi text features. IEEE Access, 8:30234–30244, 2020. [37] J. Slankas and L. Williams. Automated extraction of non-functional requirements in available documentation. In 2013 1st International workshop on natural language analysis in software engineering (NaturaLiSE), pages 9–16. IEEE, 2013. [38] J. Slankas, M. Riaz, J. T. King, and L. A. Williams. Discovering security requirements from natural language project artifacts. 2013. [39] C. Sun, X. Qiu, Y. Xu, and X. Huang. How to fine-tune bert for text classification? In China national conference on Chinese computational linguistics, pages 194–206. Springer, 2019. [40] A. Vaswani, N. Shazeer, N. Parmar, J. Uszkoreit, L. Jones, A. N. Gomez, Ł. Kaiser, and I. Polosukhin. Attention is all you need. In Advances in neural information processing systems, pages 5998–6008, 2017. 39 [41] C. Yi, Z. Jiang, X. Li, and X. Lu. Leveraging user-generated content for product promotion: the effects of firm-highlighted reviews. Information Systems Research, 30(3):711–725, 2019. [42] Y. Zhang, R. Jin, and Z.-H. Zhou. Understanding bag-of-words model: a statistical framework. International Journal of Machine Learning and Cybernetics, 1(1-4):43–52, 2010. en_US
dc.identifier.uri http://hdl.handle.net/123456789/1813
dc.description Supervised by Ms. Lutfun Nahar Lota, Department of Computer Science and Engineering(CSE), Islamic University of Technology (IUT) Board Bazar, Gazipur-1704, Bangladesh. This thesis is submitted in partial fulfillment of the requirements for the degree of Bachelor of Science in Software Engineering of Computer Science and Engineering department, 2022. en_US
dc.description.abstract Nowadays software applications are used for diverse purposes. With the explosion of the web and mobile experiences, system design fully depends on who is using the application. For the success of the application, developers need to be aware of the users’ concerns and expectations of the application. Existing research investigated that user reviews or feedback contain the quality concerns of the software that should be considered as non-functional requirements of the software to deliver a high-quality product. User reviews are usually short, unstructured, and written in an informal language, thus making it challenging to classify them based on the NFR standards and the huge quantity makes it tedious to identify requirements from review in the first place. To resolve this, we used Transformer-based language models to automate the detection of requirements from user reviews and classify Non-Functional requirements into seven sub-classes. We compared the classification results of the BERT and RoBERTa models using various evaluation metrics, and found that the fine-tuned version of RoBERTa surpassed BERT in classifying user reviews into requirement and non-requirement classes, as well as in classifying Non-functional requirements into seven subclasses. en_US
dc.language.iso en en_US
dc.publisher Department of Computer Science and Engineering(CSE), Islamic University of Technology(IUT), Board Bazar, Gazipur, Bangladesh en_US
dc.subject Requirements Classification, Non-functional requirements, User reviews, Transfer learning, BERT, RoBERTa en_US
dc.title Identification and Classification of Non-Functional Requirements from User Reviews en_US
dc.type Thesis en_US


Files in this item

This item appears in the following Collection(s)

Show simple item record

Search IUT Repository


Advanced Search

Browse

My Account

Statistics