diff --git a/ieeeSW/releaseEng3/IEEE_ThemeIssue_ReleaseEng_CD.md b/ieeeSW/releaseEng3/IEEE_ThemeIssue_ReleaseEng_CD.md index a86d086..49f7528 100644 --- a/ieeeSW/releaseEng3/IEEE_ThemeIssue_ReleaseEng_CD.md +++ b/ieeeSW/releaseEng3/IEEE_ThemeIssue_ReleaseEng_CD.md @@ -271,24 +271,35 @@ governmental nucleus and improved the interactions with our development team. ## Challenges -We successfully built a CD pipeline. In the end, we took over the deployment -process from the government. That allowed us to survive into an unstable -political scenario. However, we recognize that many challenges still need to be -addressed by the industry and academia together. +Due to the successful built of the CD pipeline, we took over the deployment +process from the government and kept the project alive in an unstable political +scenario. However, we recognize that many challenges still need to be addressed +by the industry and academia together. ### Build CD From Scratch -Taking on CD responsibilities had a significant impact on the team. We did not -have the know-how and had little time to come up with a working pipeline. The -senior developers were crucial at this point. They came up with an initial -solution to get the team started. That already enabled us to automatize -deployment, even though the process was still rudimentary. We had to evolve our -solution on-the-fly. We dedicated a few developers to this task. - -Building a CD pipeline was hard in the beginning. More tools that provide -out-of-the-box standardized CD pipelines would be of great help for +Taking on responsibilities for implementing CD impacted on the organization and +activities of the whole team. Our team did not have know-how in this approach +and we had few working hours available to allocate to building a pipeline. The +construction and maintenance of the CD process was possible by taking some +decisions to mature the project: +(i) Selecting the most experienced professionals and a few developers of the +project to work on a small DevOps team. These professionals used their +experiences in FLOSS projects to get an initial proposal of deployment process. +The solution enabled us to automate the deployment, even though the process was +still rudimentary. +(ii) Interchanging team members and encouraging teammates to migrate to DevOps +team. The benefits of these movements were twofold: mitigating the difficulty +to pass the knowledge from developers who had already understood the CD to the +others who were dedicated to the development of features of the platform, and +evolving the process on-the-fly. +% +Building a CD pipeline was hard in the beginning. We believe that more tools +to provide out-of-the-box standardized CD pipelines would be of great help for inexperienced teams. Tools that track each step of the pipeline and organize -logs in a human-manageable way are necessary too. +logs in a human-manageable way are necessary too. We also suggest further +research on how to effectively spread knowledge across inexperienced developers +in a high turnover scenario. ### Handling Inexperienced Teams -- libgit2 0.21.2