Supporting governance of mobile application developers from mining and analyzing technical questions in stack overflow

There is a need to improve the direct communication between large organizations that maintain mobile platforms (e.g. Apple, Google, and Microsoft) and third-party developers to solve technical questions that emerge during the project and development of developers’ contributions in a Mobile Software Ecosystem (MSECO). In this context, those organizations may not know how to define and evolve strategies to govern their developers towards achieving their organizational goals. Such organizations use an infrastructure to support developers, for example, questions and answers (Q&A) portals such as Stack Overflow. Interactions among developers in these portals feed a Q&A repository that can serve as a mechanism to understand and define strategies to support developers. In this paper, we mined 1,568,377 technical questions from Stack Overflow related to Android, iOS, and Windows Phone platforms. Next, we performed comparisons among those MSECO regarding: (i) developers’ activity intensity, (ii) hot-topics (using Latent Dirichlet allocation algorithm) from all and more commented/viewed questions, (iii) “What” and “How to” questions, (iv) hot-topics from more viewed unanswered questions, and (v) relationship among questions and official developer events. From the results, we identified four key insights: recruiting, educating, and monitoring strategies; barrier reduction; management of technology insertion; and fostering of relationships. The relevance of the four key insights to support developer governance was evaluated by practitioners through a survey. Finally, for each key insight we associated a total of 10 strategies to support developer governance activities. Such strategies were extracted from 65 studies identified through a systematic mapping of the literature.

[1]  Slinger Jansen,et al.  A Framework for Software Ecosystem Governance , 2012, ICSOB.

[2]  Klaus Marius Hansen,et al.  Software ecosystems - A systematic literature review , 2013, J. Syst. Softw..

[3]  Konstantinos Manikas,et al.  Revisiting software ecosystems Research: A longitudinal literature study , 2016, J. Syst. Softw..

[4]  George Valença,et al.  A theory of power in emerging software ecosystems formed by small-to-medium enterprises , 2017, J. Syst. Softw..

[5]  Chong Feng,et al.  A survey on mining stack overflow: question and answering (Q&A) community , 2018, Data Technol. Appl..

[6]  Daniel M. Germán,et al.  How the R Community Creates and Curates Knowledge: A Comparative Study of Stack Overflow and Mailing Lists , 2016, 2016 IEEE/ACM 13th Working Conference on Mining Software Repositories (MSR).

[7]  Chirag Shah,et al.  Questioning the Question -- Addressing the Answerability of Questions in Community Question-Answering , 2014, 2014 47th Hawaii International Conference on System Sciences.

[8]  Ying Wang,et al.  Platform adoption by mobile application developers: A multimethodological approach , 2018, Decis. Support Syst..

[9]  Ali Mesbah,et al.  Mining questions asked by web developers , 2014, MSR 2014.

[10]  Rodrigo Pereira dos Santos,et al.  MSECO-DEV: Application Development Process in Mobile Software Ecosystems , 2016, SEKE.

[11]  Slinger Jansen,et al.  Analyzing the Business of Software: A Modelling Technique for Software Supply Networks , 2007, CAiSE Forum.

[12]  Rodrigo Pereira dos Santos,et al.  ReuseECOS: An Approach to Support Global Software Development through Software Ecosystems , 2012, 2012 IEEE Seventh International Conference on Global Software Engineering Workshops.

[13]  Mário André de Freitas Farias,et al.  A systematic mapping study on mining software repositories , 2016, SAC.

[14]  Emad Shihab,et al.  What are mobile developers asking about? A large scale study using stack overflow , 2016, Empirical Software Engineering.

[15]  Klaus Marius Hansen,et al.  Reviewing the Health of Software Ecosystems - A Conceptual Framework Proposal , 2013, IWSECO@ICSOB.

[16]  P. Rousseeuw Silhouettes: a graphical aid to the interpretation and validation of cluster analysis , 1987 .

[17]  Paul Fox,et al.  Technology Ecosystem Governance , 2013 .

[18]  Ralf Krestel,et al.  Latent dirichlet allocation for tag recommendation , 2009, RecSys '09.

[19]  Jan Bosch,et al.  From software product lines to software ecosystems , 2009, SPLC.

[20]  Jakob Axelsson,et al.  Quality assurance in software ecosystems: A systematic literature mapping and research agenda , 2016, J. Syst. Softw..

[21]  Siobhan O’Mahony,et al.  The governance of open source initiatives: what does it mean to be community managed? , 2007 .

[22]  Alain Abran,et al.  A systematic literature review: Opinion mining studies from mobile app store user reviews , 2017, J. Syst. Softw..

[23]  Janice Singer,et al.  Guide to Advanced Empirical Software Engineering , 2007 .

[24]  Christoph Treude,et al.  The Social Side of Software Platform Ecosystems , 2016, CHI.

[25]  Daniel M. Germán,et al.  The Evolution of the R Software Ecosystem , 2013, 2013 17th European Conference on Software Maintenance and Reengineering.

[26]  A.E. Hassan,et al.  The road ahead for Mining Software Repositories , 2008, 2008 Frontiers of Software Maintenance.

[27]  Stefan Koch,et al.  Joining a smartphone ecosystem: Application developers' motivations and decision criteria , 2014, Inf. Softw. Technol..

[28]  Armin Heinzl,et al.  Knowledge boundaries in enterprise software platform development: Antecedents and consequences for platform governance , 2019, Inf. Syst. J..

[29]  John Krogstie,et al.  Modeling of Digital Ecosystems: Challenges and Opportunities , 2012, PRO-VE.

[30]  Slinger Jansen,et al.  Pragmatic and Opportunistic Reuse in Innovative Start-up Companies , 2008, IEEE Software.

[31]  Slinger Jansen,et al.  The Merits of a Meritocracy in Open Source Software Ecosystems , 2014, ECSAW '14.

[32]  Olavo Barbosa,et al.  A Systematic Mapping Study on Software Ecosystems , 2011, IWSECO@ICSOB.

[33]  Feida Lin,et al.  Operating System Battle in the Ecosystem of Smartphone Industry , 2009, 2009 International Symposium on Information Engineering and Electronic Commerce.

[34]  Eric Yu,et al.  Designing Software Ecosystems: How to Develop Sustainable Collaborations? - Scenarios from Apple iOS and Google Android , 2015, CAiSE Workshops.

[35]  Steven Bird,et al.  NLTK: The Natural Language Toolkit , 2002, ACL.

[36]  Jürgen Münch,et al.  GQM^+ Strategies -- Aligning Business Strategies with Software Measurement , 2007, ESEM 2007.

[37]  Ahmed E. Hassan,et al.  What are developers talking about? An analysis of topics and trends in Stack Overflow , 2014, Empirical Software Engineering.