Exploring the socio-technical impact of continuous integration: tools, practices, and humans

dc.contributor.authorElazhary, Omar M.
dc.contributor.supervisorStorey, Margaret-Anne
dc.date.accessioned2021-11-12T21:02:18Z
dc.date.available2021-11-12T21:02:18Z
dc.date.copyright2021en_US
dc.date.issued2021-11-12
dc.degree.departmentDepartment of Computer Science
dc.degree.levelDoctor of Philosophy Ph.D.en_US
dc.description.abstractContinuous software engineering is a rapidly growing discipline in software engineering. Among its many reported benefits is increased development velocity, faster feedback for developers, and better software quality. It also comes with its own share of challenges, most of which are centered on making automated builds more efficient or detecting problems with build configuration. However, the majority of literature in this area does not take into account software developers, which are arguably the cornerstone of software development. Software development is still a human-driven endeavour. It is a developer who writes the code, tests it, makes the final decision while factoring in the build results, and so on. Furthermore, software development does not happen in a vacuum. Development takes place within the context of practices dictating how it should be done, and perceived benefits that drive practice adoption and implementation. Software development, and by extension continuous software development, is a socio-technical endeavour that features interactions between human aspects (developers, testers, etc.), technical aspects (automation), and environmental aspects (process, project-specific characteristics, infrastructure, etc.). While the software engineering field has its share of theories, frameworks, and models, or borrows them from other fields, we still do not have a human-centric framework for software engineering that takes into account other socio-technical aspects (technical and environmental). My dissertation addresses this need for a socio-technical framework by illustrating a series of studies that ultimately resulted in the creation of a socio-technical theory of continuous software engineering that focuses on phenomena involving both humans and automation. In particular, I focus on the role of continuous software engineering tools (automation) in the software development process and how they displace existing tools, disrupt existing workflows, and feature in software developer decision making. This theory will enable further research in this area as well as allow researchers to make more grounded recommendations for industrial applications.en_US
dc.description.scholarlevelGraduateen_US
dc.identifier.bibliographicCitationO. Elazhary, M. Storey, N. Ernst and A. Zaidman, "Do as I Do, Not as I Say: Do Contribution Guidelines Match the GitHub Contribution Process?," 2019 IEEE International Conference on Software Maintenance and Evolution (ICSME), 2019, pp. 286-290, doi: 10.1109/ICSME.2019.00043.en_US
dc.identifier.bibliographicCitationO. Elazhary, C. Werner, Z. S. Li, D. Lowlind, N. A. Ernst and M. -A. Storey, "Uncovering the Benefits and Challenges of Continuous Integration Practices," in IEEE Transactions on Software Engineering, doi: 10.1109/TSE.2021.3064953.en_US
dc.identifier.bibliographicCitationC. Werner, Z. S. Li, D. Lowlind, O. Elazhary, N. A. Ernst and D. Damian, "Continuously Managing NFRs: Opportunities and Challenges in Practice," in IEEE Transactions on Software Engineering, doi: 10.1109/TSE.2021.3066330.en_US
dc.identifier.bibliographicCitationO. Elazhary, M. -A. Storey, N. A. Ernst and E. Paradis, "ADEPT: A Socio-Technical Theory of Continuous Integration," 2021 IEEE/ACM 43rd International Conference on Software Engineering: New Ideas and Emerging Results (ICSE-NIER), 2021, pp. 26-30, doi: 10.1109/ICSE-NIER52604.2021.00014.en_US
dc.identifier.bibliographicCitationO. Elazhary, "Investigating the Interplay between Developers and Automation," 2021 IEEE/ACM 43rd International Conference on Software Engineering: Companion Proceedings (ICSE-Companion), 2021, pp. 153-155, doi: 10.1109/ICSE-Companion52605.2021.00064.en_US
dc.identifier.urihttp://hdl.handle.net/1828/13492
dc.languageEnglisheng
dc.language.isoenen_US
dc.rightsAvailable to the World Wide Weben_US
dc.subjectsoftware engineeringen_US
dc.subjectcontinuous integrationen_US
dc.subjectcontinuous software engineeringen_US
dc.subjectautomationen_US
dc.subjectautomated build systemsen_US
dc.titleExploring the socio-technical impact of continuous integration: tools, practices, and humansen_US
dc.typeThesisen_US

Files

Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Elazhary_Omar_PhD_2021.pdf
Size:
1.63 MB
Format:
Adobe Portable Document Format
Description:
Doctoral Dissertation
License bundle
Now showing 1 - 1 of 1
No Thumbnail Available
Name:
license.txt
Size:
2 KB
Format:
Item-specific license agreed upon to submission
Description: