From 9ab502d7548f0cb82966618818113ccd9bb3bfbc Mon Sep 17 00:00:00 2001 From: Diego Araújo Date: Sun, 30 Jul 2017 11:02:36 -0300 Subject: [PATCH] [ieeeSW] Review introduction and context --- ieeeSW/releaseEng3/IEEE_ThemeIssue_ReleaseEng_CD.md | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/ieeeSW/releaseEng3/IEEE_ThemeIssue_ReleaseEng_CD.md b/ieeeSW/releaseEng3/IEEE_ThemeIssue_ReleaseEng_CD.md index e54ddcf..b8cd07e 100644 --- a/ieeeSW/releaseEng3/IEEE_ThemeIssue_ReleaseEng_CD.md +++ b/ieeeSW/releaseEng3/IEEE_ThemeIssue_ReleaseEng_CD.md @@ -17,11 +17,11 @@ We worked on a three-year-long Brazilian government project to evolve an existing platform that had technical issues and lacked political support. The evolution project started in a presidential election year and everyone involved were under pressure to show results. Even with the re-election of the Brazilian -President in 2014, leaderships in governmental agencies end up changing. Each -one of them had different political agendas which caused impacts on the +President in 2014, leaderships in governmental agencies ended up changing. Each +one of them had different political agendas which affected the project's requirements previously approved. Despite this scenario of instability, we -managed to avoid delays in the delivery schedule and to prevent the abortion of -the project. +managed to avoid delays in the delivery schedule and to prevent the project's +cancellation. Our team from the University of Brasília (UnB) and the University of São Paulo (USP) developed the new platform for the Brazilian Public Software (SPB, @@ -39,16 +39,16 @@ free software tools such as Gitlab (www.gitlab.com), Mailman (www.github.com/colab). During the entire SPB Portal evolution project, we had to handle three distinct -issues, usual in a software engineering scenario: reaching the goals which have +issues, usual in a software engineering scenario: achieving the goals which have guided the platform development, managing the diversity of team project -members, and communicating effectively with clients (in this particular case, -government agents). Managing the interaction of these elements was not easy and +members, and communicating effectively with clients (in this case, +government agents). Handling the interaction of these elements was not easy and the unstable Brazilian political scenario only made things worse. To achieve the SPB project goals, we had to overcome strong political bias tied -with complicated technical issues as well as relatively low budget. Because it +with complicated technical issues and relatively low budget. Because it is open to the public, the government representatives saw the platform as a -marketing opportunity and sometimes ignored the technical advice in favor of +marketing opportunity and sometimes ignored technical advice in favor of political decisions. Furthermore, integrating a number of distinct systems to work seamlessly was not an easy job. We had to learn how each system worked and to come up with ideas of how to integrate them as fast as possible, with a team @@ -56,9 +56,9 @@ of mostly inexperienced developers. We also had to manage the diversity of the SPB team members. This team was composed of approximately 50 undergraduate students (not all simultaneously) -together with professors, masters students and professional designers as well -as senior developers from the Brazilian free software community. Undergraduate -students received a fellowship and, for most of them, this R&D project was +together with professors, masters students, professional designers and +senior developers from the Brazilian free software community. Undergraduate +students received a scholarship and, for most of them, this R&D project was their first professional experience. Seniors developers and masters students had two important contributions to the project: transfer knowledge to undergraduate students and address hard tasks. Finally, professors were @@ -68,9 +68,9 @@ political pressures applied to the project. The third point to be handled was the communication with two independent groups of government representatives: requirements analysts and deployment technicians. Requirements analysts were the real representatives of the -Brazilian government in the project and their function was to test new +Brazilian government in the project and their role was to test new features, to provide feedback to the development team, and to report for the -government leaders. Deployment technicians were in charge of accessing the host +government leaders. Deployment technicians were in charge of administering the host machines wherein SPB platform was running. They were, theoretically, responsible for deploying the project. However, the new SPB Portal was composed of more than ten different software projects, generating a complex deployment @@ -79,10 +79,10 @@ process, for instance, working on seven servers. To handle the interaction between these three elements, we realised we needed to take control over the deployment process. We used CD as a mean to fulfill the government expectations and to provide quick response to their requests, -which were influenced most of the time by the uncertainties of project +which were influenced most of the time by the uncertainties of the project's continuity. We believed we would keep the project alive, even in a politically unstable and technically complex scenario. For this reason, we worked hard to -automate all deploy process; for instance, one of our senior developers created +automate the deploy process; for instance, one of our senior developers created a Chef-Server (www.chef.io/chef) front-end tool called Chake (www.gitlab.com/terceiro/chake) to help us to manage the multiple hosts needed for the project. We also formed a specific team dedicated to the deployment @@ -91,7 +91,7 @@ confidence and agility to comply with government requirements. In this report, we describe our CD pipeline and how it improved our delivery performance. The CD made us adaptable for all requested changes and helped us -to mitigate those aforementioned political challenges, besides the technical +mitigate those aforementioned political challenges, besides the technical issues. Among CD’s known benefits [2], we also explain those which were the most important in the project scenario for us: improving customer satisfaction and making reliable releases. Both kept the project alive for more two years during @@ -271,7 +271,7 @@ 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 -- libgit2 0.21.2