Browse > Article
http://dx.doi.org/10.3837/tiis.2019.08.021

Your Opinions Let us Know: Mining Social Network Sites to Evolve Software Product Lines  

Ali, Nazakat (Department of Computer Science, Chungbuk National University)
Hwang, Sangwon (Department of Computer Science & Telecommunication Engineering Yonsei University)
Hong, Jang-Eui (Department of Computer Science, Chungbuk National University)
Publication Information
KSII Transactions on Internet and Information Systems (TIIS) / v.13, no.8, 2019 , pp. 4191-4211 More about this Journal
Abstract
Software product lines (SPLs) are complex software systems by nature due to their common reference architecture and interdependencies. Therefore, any form of evolution can lead to a more complex situation than a single system. On the other hand, software product lines are developed keeping long-term perspectives in mind, which are expected to have a considerable lifespan and a long-term investment. SPL development organizations need to consider software evolution in a systematic way due to their complexity and size. Addressing new user requirements over time is one of the most crucial factors in the successful implementation SPL. Thus, the addition of new requirements or the rapid context change is common in SPL products. To cope with rapid change several researchers have discussed the evolution of software product lines. However, for the evolution of an SPL, the literature did not present a systematic process that would define activities in such a way that would lead to the rapid evolution of software. Our study aims to provide a requirements-driven process that speeds up the requirements engineering process using social network sites in order to achieve rapid software evolution. We used classification, topic modeling, and sentiment extraction to elicit user requirements. Lastly, we conducted a case study on the smartwatch domain to validate our proposed approach. Our results show that users' opinions can contain useful information which can be used by software SPL organizations to evolve their products. Furthermore, our investigation results demonstrate that machine learning algorithms have the capacity to identify relevant information automatically.
Keywords
Software product line evolution; Social network sites; Requirements-driven; Architecture design; classification; machine learning;
Citations & Related Records
연도 인용수 순위
  • Reference
1 Guzman, Emitza, Mohamed Ibrahim, and Martin Glinz, "A little bird told me: mining tweets for requirements and software evolution," in Proc. of IEEE 25th Int. Requirements Engineering Conference (RE). IEEE, pp. 11-20, 2017.
2 Galvis Carreno, Laura V., and Kristina Winbladh, "Analysis of user comments: an approach for software requirements evolution," in Proc. of the Int. Conf. on Software Engineering. IEEE Press, pp. 582-591, 2013.
3 Huynh, Ngoc-Tho, Maria-Teresa Segarra, and Antoine Beugnard, "A development process based on variability modeling for building adaptive software architectures," Computer Science and Information Systems (FedCSIS), vol. 8, pp. 1715-1718, 2016.   DOI
4 Linda M. Northrop and Paul C. Clements, "A Framework for Software Product Line Practice version 5.0" 2010, http://www.sei.cmu.edu/productlines/framework.html
5 W. Maalej, M. Nayebi, T. Johann and G. Ruhe, "Toward Data-Driven Requirements Engineering," IEEE Software, vol. 33, no. 1, pp. 48-54, 2016.   DOI
6 Jiang, Wei, Haibin Ruan, and Li Zhang, "Analysis of economic impact of online reviews: an approach for market-driven requirements evolution," Requirements Engineering. Springer, Berlin, Heidelberg, pp. 45-59, 2014.
7 I. Morales-Ramirez, K. Fitsum Meshesha, and P. Anna, "Analysis of online discussions in support of requirements discovery," in Proc. of International Conference on Advanced Information Systems Engineering. Springer, Cham, pp. 159-174, 2017.
8 W. Jiang, H. Ruan, L.Zhang, P. Lew, and J. Jiang, "For user-driven software evolution: requirements elicitation derived from mining online reviews," in Proc. of Pacific-Asia Conference on Knowledge Discovery and Data Mining, pp. 584-595, 2014.
9 M. Oriol et al., "FAME: Supporting Continuous Requirements Elicitation by Combining User Feedback and Monitoring," in Proc. of 26th International Requirements Engineering Conference (RE), Banff, AB, pp. 217-227, 2018.
10 NH. Bakar, ZM. Kasirun, N .Salleh, HA .Jalab, "Extracting features from online software reviews to aid requirements reuse," Applied Soft Computing, vol. 49, pp. 1297-1315, 2016.   DOI
11 VE. Souza, A. Lapouchnian, K. Angelopoulos, J. Mylopoulos, "Requirements-driven software evolution," Computer Sci-Research and Development, vol. 28, no. 4, pp.311-29, 2013.   DOI
12 D. Ediger et al., "Massive Social Network Analysis: Mining Twitter for Social Good," in Proc. of International Conference on Parallel Processing, pp. 583-593, 2010.
13 P. Runeson, M. Host, A. Rainer, B. Regnell, "Case study research in software engineering: Guidelines and examples," John Wiley & Sons, Mar 7, 2012.
14 S. Easterbrook and J. Aranda, "Case studies for software engineers," in Proc. of 26th International Conference on Software Engineering, pp. 736 - 738, 2004.
15 O'Connor, Brendan, et al., "From tweets to polls: Linking text sentiment to public opinion time series," in Proc. of Fourth International AAAI Conference on Weblogs and Social Media, pp. 122-129, 2010.
16 D. Pagano and W. Maalej, "User feedback in the appstore: An empirical study," in Proc. of Int. Requirements Engineering Conference (RE), pp. 125-134, 2013.
17 C. Cortes and V. Vapnik, "Support-vector networks," Machine Learning, vol. 20, no. 3, pp. 273-297, 1995.   DOI
18 B. Pang, L. Lee, and S. Vaithyanathan, "Thumbs up?: Sentiment classification using machine learning techniques," in Proc. of the ACL-02 Conference on Empirical Methods in Natural Language Processing, pp. 79-86, 2002.
19 E. Martinez Camara et al., "Tecnicas de clasificacion de opiniones aplicadas a un corpus en espanol," Procesamiento de Lenguaje Natural, pp. 163-170, 2011.
20 E. Guzman, R. Alkadhi and N. Seyff, "A Needle in a Haystack: What Do Twitter Users Say about Software?," in Proc. of 24th International Requirements Engineering Conference (RE), Beijing, pp. 96-105, 2016.
21 A. Mahmoud, "An information theoretic approach for extracting and tracing non-functional requirements," in Proc. of International Requirements Engineering Conference (RE), Ottawa, pp. 36-45, 2015.
22 P. Eugenio et al., "A methodology for the classification of quality of requirements using machine learning techniques," Information and Software Technology, vol. 67, pp. 180-195, 2015.   DOI
23 ISO 9126 Software Quality Characteristics. http://www.sqa.net/iso9126.html
24 Naive Bayes classifier. https://en.wikipedia.org/wiki/Naive_Bayes_classifier
25 R. Caruana and A. Niculescu-Mizil, "An empirical comparison of supervised learning algorithms," in Proc. of the Int. Conf. on Machine Learning, pp. 161-168, 2006.
26 N. Chen, et al., "AR-Miner: Mining informative reviews for developers from mobile app marketplace," in Proc. of the International Conference on Software Engineering, pp. 767-778, 2014.
27 A. Bacchelli, et al. "Content classification of development emails," in Proc. of the International Conference on Software Engineering Pages, pp. 375-385, 2012.
28 Xu, Baoxun, et al., "An Improved Random Forest Classifier for Text Categorization," JCP 7, no. 12, pp. 2913-2920, 2012.
29 L. Villarroel, G. Bavota, B. Russo, R. Oliveto, and M. D Penta, "Release planning of mobile apps based on user reviews," in Proc. of the International Conference on Software Engineering, pp. 14-24, 2016.
30 scikit-learn. https://scikit-learn.org/stable/
31 N. Ali, and JE Hong, "Using Social Network Service to determine the Initial User Requirements for Small Software Businesses," International Journal of Applied Business and Economic Research, vol 15, 2017.
32 E. Guzman, L. Oliveira, Y. Steiner, L. C. Wagner and M. Glinz, "User Feedback in the App Store: A Cross-Cultural Study," in Proc. of International Conference on Software Engineering: Software Engineering in Society (ICSE-SEIS), Gothenburg, pp. 13-22, 2018.
33 Topic model. https://en.wikipedia.org/wiki/Topic_model
34 A. Perini, "Data-Driven Requirements Engineering. The SUPERSEDE Way," in Proc. of Annual International Symposium on Information Management and Big Data, pp. 13-18, 2018.
35 I. Morales-Ramirez, F. Meshesha Kifetew, and A. Perini, "Speech-acts based analysis for requirements discovery from online discussions," Information Systems, vol. 86, pp. 94-112, 2019.   DOI
36 Svahnberg, Mikael, and Jan Bosch, "Evolution in software product lines: two cases," J. Software Maintenance and Evolution: Research and Practice, vol. 11, no. 6, pp. 391-422, 1999.   DOI
37 Hotz, L. et al., "Configuration in Industrial Product Families," The ConIPF Methodology. IOS Press, p. 296, 2006.
38 Meyer, Sava, "Understanding Software Adaptation and Evolution," pp.1-20, 2015.
39 Liu, Lin, Lin Tang, Wen Dong, Shaowen Yao, and Wei Zhou, "An overview of topic modeling and its current applications in bioinformatics," SpringerPlus, pp. 1608, 2016.
40 Mimno David, "jsLDA: In-browser topic modeling,".
41 Pascual, Gustavo G., Monica Pinto, and Lidia Fuentes, "Self-adaptation of mobile systems driven by the common variability language," Future Generation Computer Systems, vol. 47, pp.127-144, 2015.   DOI
42 Huynh, Ngoc Tho, "A development process for building adaptative software architectures," PhD diss., Ecole nationale superieure Mines-Telecom Atlantique, 2017.
43 Sebastiani, Fabrizio, "Machine learning in automated text categorization," ACM computing surveys (CSUR), vol. 34, no. 1, pp. 1-47, 20002.   DOI
44 S. Wang and C. Manning, "Baselines and bigrams: Simple, good sentiment and topic classification," Annual Meeting of the Association for Computational Linguistics, vol. 2, pp. 90-94, 2012.
45 B. Goetz, and A. Pleuss, "Evolution of software product lines," Evolving Software Systems. Springer, Berlin, Heidelberg, pp. 265-295, 2014.
46 T. Jiliang, S. Alelyani, and H. Liu, "Feature selection for classification: A review," Data classification: algorithms and applications, pp. 1-33, 2014.
47 OMG. Common Variability Language (CVL). OMG Revised Submission, 2012
48 N. Ali, S. Kim and J. Hong, "Listen closely, respond quickly: Enhancing conformity of SPL domain requirements through SNS," in Proc. of Int. Conf. on Information Science and Communications Technologies (ICISCT), pp. 1-5, 2016.
49 N Ali, N., & Hong, J. E., "Creating adaptive software architecture dynamically for recurring new requirements," in Proc. of Open Source Systems & Technologies (ICOSST), International Conference on pp. 67-72, 2017.
50 Berger, Thorsten, et al., "A survey of variability modeling in industrial practice," in Proc. of the Seventh International Workshop on Variability Modelling of Software-intensive Systems, pp.7, 2013.
51 Schmid, Klaus, and Holger Eichelberger, "A requirements-based taxonomy of software product line evolution," Electronic Communications of the EASST, vol. 8, pp.1-13, 2007.
52 C. Agustin, D. Godoy, and M. Campo, "Identification of non-functional requirements in textual specifications: A semi-supervised learning approach," Information and Software Technology, vol. 52, no. 4, pp. 436-445, 2010.   DOI