Year 2020, Volume , Issue 19, Pages 354 - 365 2020-08-31

Java Geliştiricileri Stack Overflow Üzerinde Ne Hakkında Konuşuyor? Deneysel Bir Çalışma
What Java Developers have talked about? An empirical study on Stack Overflow

Ahmet Samet ŞAHİN [1] , Nilgün GÜLER BAYAZIT [2]


Java, çeşitli alanlarda uzun zamandır yaygın olarak kullanılan bir programlama dilidir. Java ve kütüphaneleri; hatalar, değişiklik istekleri, performans ve kullanılabilirlik gereksinimleri vb. gibi çeşitli sebeplerle sık sık güncellenmektedir. Bu makalede, bu değişikliklerin Java kullanımını nasıl etkilediği ve kullanımındaki eğilimler analiz edilmiştir. Veri kaynağı olarak, yazılım teknolojileri alanındaki en büyük çevrimiçi soru-cevap sitesi olan Stack Overflow genel veri kümesi kullanılmıştır. İlk olarak, Stack Overflow veri kümesinde Java ile ilgili sorulmuş tüm soru-cevap gönderilerini bulmak için kosinüs benzerliği kullanan pratik bir yaklaşım önerilmiş ve bu yaklaşım daha önceki yaklaşımlarla karşılaştırılmıştır. Daha sonra, oluşturulan derlem üzerinde konu modelleme yapmak için Gizli Dirichlet Ayırımı yöntemi kullanılarak ana konular belirlenmiş; ana konular ve anahtar kelimeler yıllara göre incelenmiştir. Son olarak, konular “alana özgü” ve “geliştirme ortamıyla ilgili” konular olarak sınıflandırıp, bu sınıfların hem kısa vadede hem de uzun vadede değişme eğilimleri araştırılmıştır.

Java has been a widely used programming language for a long time in various fields. Java and its libraries have been frequently updated for various reasons including bugs, change requests, performance and usability requirements and so on. In this paper, we examine how these changes affect the use of Java and analyze trends in its usage. As a data source, we use the Stack Overflow public dataset which is the largest online Q&A site about software technologies. We firstly employ a practical approach to extract the Java-related posts from the Stack Overflow dataset using cosine similarity and compare it with previous works. We then apply Latent Dirichlet Allocation (LDA) to the corpus for topic modelling. We divided the data set into two-year periods to obtain consistent clusters. After obtaining main topics, we examine topics and keywords on a two-year basis. Finally, unlikely previous works, we manually classify topics into two as “domain-specific” and “development environment” and investigate tendencies of these classes to change in both the short term and the long term. 

  • Ahmed, S., & Bagherzadeh, M. (2018). What do concurrency developers ask about?: A large-scale study using stack overflow. International Symposium on Empirical Software Engineering and Measurement, October 2018. https://doi.org/10.1145/3239235.3239524
  • Allamanis, M., & Sutton, C. (2013). Why, when, and what: Analyzing stack overflow questions by topic, type, and code. IEEE International Working Conference on Mining Software Repositories, Table I, 53–56. https://doi.org/10.1109/MSR.2013.6624004
  • B.A., P. J., & Bhosale, K. A. (2017). Research Paper on Java Interactional Development Environment Programming Tool. Iarjset, 4(4), 121–124. https://doi.org/10.17148/iarjset/nciarcse.2017.35
  • Bajaj, K. (2012). Mining Stack Overflow for Questions Asked by Web Developers. December.
  • Barua, A., Thomas, S. W., & Hassan, A. E. (2014). What are developers talking about? An analysis of topics and trends in Stack Overflow. In Empirical Software Engineering (Vol. 19, Issue 3). https://doi.org/10.1007/s10664-012-9231-y
  • Biggers, L. R., Bocovich, C., Capshaw, R., Eddy, B. P., Etzkorn, L. H., & Kraft, N. A. (2014). Configuring latent Dirichlet allocation based feature location. Empirical Software Engineering, 19(3), 465–500. https://doi.org/10.1007/s10664-012-9224-x
  • Blei, D. M., Ng, A. Y., & Jordan, M. I. (2003). Latent Dirichlet allocation. Journal of Machine Learning Research, 3(4–5), 993–1022. https://doi.org/10.1016/b978-0-12-411519-4.00006-9
  • Counsell, S., Hassoun, Y., Johnson, R., Mannock, K., & Mendes, E. (2003). Trends in Java Code Changes: The Key to Identification of Refactorings? Proceedings of the 2Nd International Conference on Principles and Practice of Programming in Java, 45–48. http://dl.acm.org/citation.cfm?id=957289.957305
  • Fontão, A., Ábia, B., Wiese, I., Estácio, B., Quinta, M., Santos, R. P. dos, & Dias-Neto, A. C. (2018). Supporting governance of mobile application developers from mining and analyzing technical questions in stack overflow. Journal of Software Engineering Research and Development, 6(1), 1–34. https://doi.org/10.1186/s40411-018-0052-6
  • Linares-Vásquez, M., Dit, B., & Poshyvanyk, D. (2013). An exploratory analysis of mobile development issues using Stack Overflow. IEEE International Working Conference on Mining Software Repositories, 93–96. https://doi.org/10.1109/MSR.2013.6624014
  • Masovic, S., Saracevic, M., Kamberovic, H., & Kudumovic, M. (2012). Java technology in the design and implementation of web applications. Technics Technologies Education Management, 7(2), 504–512.
  • Rosen, C., & Shihab, E. (2016). What are mobile developers asking about? A large scale study using stack overflow. In Empirical Software Engineering (Vol. 21, Issue 3). Empirical Software Engineering. https://doi.org/10.1007/s10664-015-9379-3
  • Taboada, G. L., Ramos, S., Expósito, R. R., Touriño, J., & Doallo, R. (2013). Java in the high performance computing arena: Research, practice and experience. Science of Computer Programming, 78(5), 425–444. https://doi.org/10.1016/j.scico.2011.06.002
  • Villanes, I. K., Ascate, S. M., Gomes, J., & Dias-Neto, A. C. (2017). What are Software Engineers asking about Android Testing on Stack Overflow? ACM International Conference Proceeding Series, 104–113. https://doi.org/10.1145/3131151.3131157
  • Wang, S., Lo, D., & Jiang, L. (2013). An Empirical Study on Developer Interactions in StackOverflow Categories and Subject Descriptors. Proceedings of the 28th Annual ACM Symposium on Applied Computing, 1019–1024.
  • Wang, W., & Godfrey, M. W. (2013). Detecting API usage obstacles: A study of iOS and android developer questions. IEEE International Working Conference on Mining Software Repositories, 61–64. https://doi.org/10.1109/MSR.2013.6624006
  • Weifeng, M. A., & Keji, M. (2010). Research on java imaging technology and its programming framework. Lecture Notes in Electrical Engineering, 72 LNEE(Table 1), 61–68. https://doi.org/10.1007/978-3-642-14350-2_8
  • Yang, X. L., Lo, D., Xia, X., Wan, Z. Y., & Sun, J. L. (2016). What Security Questions Do Developers Ask? A Large-Scale Study of Stack Overflow Posts. Journal of Computer Science and Technology, 31(5), 910–924. https://doi.org/10.1007/s11390-016-1672-0
  • Zou, J., Xu, L., Guo, W., Yan, M., Yang, D., & Zhang, X. (2015). Which non-functional requirements do developers focus on? An empirical study on stack overflow using topic analysis. IEEE International Working Conference on Mining Software Repositories, 2015-Augus, 446–449. https://doi.org/10.1109/MSR.2015.60
  • Zou, J., Xu, L., Yang, M., Zhang, X., & Yang, D. (2017). Towards comprehending the non-functional requirements through Developers’ eyes: An exploration of Stack Overflow using topic analysis. Information and Software Technology, 84, 19–32. https://doi.org/10.1016/j.infsof.2016.12.003
Primary Language en
Subjects Engineering
Journal Section Articles
Authors

Orcid: 0000-0002-8315-1482
Author: Ahmet Samet ŞAHİN (Primary Author)
Institution: TÜRKİYE BİLİMSEL ve TEKNOLOJİK ARAŞTIRMA KURUMU
Country: Turkey


Orcid: 0000-0003-0221-294X
Author: Nilgün GÜLER BAYAZIT
Institution: YILDIZ TEKNİK ÜNİVERSİTESİ
Country: Turkey


Dates

Publication Date : August 31, 2020

APA Şahi̇n, A , Güler Bayazıt, N . (2020). What Java Developers have talked about? An empirical study on Stack Overflow . Avrupa Bilim ve Teknoloji Dergisi , (19) , 354-365 . DOI: 10.31590/ejosat.702949