Show simple item record

dc.contributor.authorEl Mezouar, Mariamen
dc.description.abstractThe 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.en
dc.relation.ispartofseriesCanadian thesesen
dc.rightsCC0 1.0 Universalen
dc.rightsQueen's University's Thesis/Dissertation Non-Exclusive License for Deposit to QSpace and Library and Archives Canadaen
dc.rightsProQuest PhD and Master's Theses International Dissemination Agreementen
dc.rightsIntellectual Property Guidelines at Queen's Universityen
dc.rightsCopying and Preserving Your Thesisen
dc.rightsThis 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.en
dc.subjectSocial knowledgeen
dc.subjectSoftware development processen
dc.subjectCommunication channelsen
dc.subjectSocial networksen
dc.subjectData miningen
dc.titleLeveraging the Social Knowledge of Software Systems to Improve the Development Processen
dc.contributor.supervisorZou, Yingen
dc.contributor.departmentComputingen's University at Kingstonen

Files in this item


This item appears in the following Collection(s)

Show simple item record

CC0 1.0 Universal
Except where otherwise noted, this item's license is described as CC0 1.0 Universal