Leveraging the Social Knowledge of Software Systems to Improve the Development Process
Loading...
Authors
El Mezouar, Mariam
Date
Type
thesis
Language
eng
Keyword
Social knowledge , Software development process , Communication channels , Social networks , Data mining
Alternative Title
Abstract
The software development process is steadily evolving into a collaborative, distributed, and knowledge-intensive venture. This evolution has led to growing demands towards supportive technologies and tools. These demands have been addressed using a spectrum of social and communication channels, that are continuously evolving and growing. As a result, a wealth of knowledge has emerged around the intensive use of the social and communication channels, and can potentially be leveraged to benefit the software development process.
In this dissertation, we describe the empirical studies conducted to understand how mining the social knowledge of software systems can improve aspects of the development process. We look into three types of social knowledge: a) the crowdsourced feedback from the end-users, b) the organizational structure of the developers, and c) the developers' wisdom. We investigate the value of monitoring the end-users' feedback posted on non-developer oriented social media platforms, such as Twitter. Our findings demonstrate that the end-users feedback can possibly allow an earlier discovery of the bugs that are critical to a large user base. Next, we look into how the developers self-organize on social coding platforms, such as GitHub. We are able to identify the organizational structures that are associated to better project outcomes, such as faster merge time of code contributions. To learn from the wisdom of the developers, we perform user studies for two purposes. First, we focus on the mechanisms adopted for the informal communication of the developers, specifically the chat-based services. Our investigation highlights the affordances and impacts of such mechanisms, to allow for a more efficient and informed use of the chat-based services. Second, we ask the developers to reflect on their experiences using a set of communication channels. Results from the survey and from an associated quantitative analysis reveal interesting insights to guide the developers in setting up the communication flow of their projects. Overall, the research conducted in this dissertation highlights the value of accounting for the social aspects of the software development process, to improve the efficiency of the tasks and make informed decisions about the communication mechanisms used in the software projects.
Description
Citation
Publisher
License
CC0 1.0 Universal
Queen's University's Thesis/Dissertation Non-Exclusive License for Deposit to QSpace and Library and Archives Canada
ProQuest PhD and Master's Theses International Dissemination Agreement
Intellectual Property Guidelines at Queen's University
Copying and Preserving Your Thesis
This publication is made available by the authority of the copyright owner solely for the purpose of private study and research and may not be copied or reproduced except as permitted by the copyright laws without written authority from the copyright owner.
Queen's University's Thesis/Dissertation Non-Exclusive License for Deposit to QSpace and Library and Archives Canada
ProQuest PhD and Master's Theses International Dissemination Agreement
Intellectual Property Guidelines at Queen's University
Copying and Preserving Your Thesis
This publication is made available by the authority of the copyright owner solely for the purpose of private study and research and may not be copied or reproduced except as permitted by the copyright laws without written authority from the copyright owner.