Understanding the Role of Synchronous and Asynchronous Communication in Agile Software Development and its Effect on Quality Open Access
Downloadable ContentDownload PDF
Through inward perceptions, we intuitively expect distributed software development to increase the risks of achieving quality goals compared to co-located software development. To compound this problem, Agile Software Development (ASD) maintains that face-to-face (synchronous) communication attributed to co-location of the development team is a key success factor. Face-to-face communication is the richest communication medium available. The following study explored the relationship between synchronous and asynchronous communication within ASD teams and its effects on quality of software produced. Within two out of four ASD phases (2 out of 6 activities within the phases), the analysis supported the hypothesis that when synchronous communication scores were held constant, asynchronous communication scores predicted final quality of software developed by distributed teams. In other words, higher asynchronous communication scores resulted in higher quality for distributed teams, but not for co-located teams. Furthermore, the study examined the relationship of distributed ASD teams and challenges encountered through team proximity, frequency of contact, time differences, and language barriers. The analysis identified a positive relationship between proximity, time, and language and asynchronous communication in several ASD phases. Accordingly, greater dispersed distributed teams that have increased time difference between team members; and use more primary languages to communicate tend to use more asynchronous than synchronous communication techniques. Moreover, ASD teams that communicate more times per day with their dispersed team members tend to use equal amounts of synchronous and asynchronous communication.