Commit 9ab502d7548f0cb82966618818113ccd9bb3bfbc
1 parent
a2245409
Exists in
master
and in
3 other branches
[ieeeSW] Review introduction and context
Showing
1 changed file
with
18 additions
and
18 deletions
Show diff stats
ieeeSW/releaseEng3/IEEE_ThemeIssue_ReleaseEng_CD.md
... | ... | @@ -17,11 +17,11 @@ We worked on a three-year-long Brazilian government project to evolve an |
17 | 17 | existing platform that had technical issues and lacked political support. The |
18 | 18 | evolution project started in a presidential election year and everyone involved |
19 | 19 | were under pressure to show results. Even with the re-election of the Brazilian |
20 | -President in 2014, leaderships in governmental agencies end up changing. Each | |
21 | -one of them had different political agendas which caused impacts on the | |
20 | +President in 2014, leaderships in governmental agencies ended up changing. Each | |
21 | +one of them had different political agendas which affected the project's | |
22 | 22 | requirements previously approved. Despite this scenario of instability, we |
23 | -managed to avoid delays in the delivery schedule and to prevent the abortion of | |
24 | -the project. | |
23 | +managed to avoid delays in the delivery schedule and to prevent the project's | |
24 | +cancellation. | |
25 | 25 | |
26 | 26 | Our team from the University of Brasília (UnB) and the University of São Paulo |
27 | 27 | (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 |
39 | 39 | (www.github.com/colab). |
40 | 40 | |
41 | 41 | During the entire SPB Portal evolution project, we had to handle three distinct |
42 | -issues, usual in a software engineering scenario: reaching the goals which have | |
42 | +issues, usual in a software engineering scenario: achieving the goals which have | |
43 | 43 | guided the platform development, managing the diversity of team project |
44 | -members, and communicating effectively with clients (in this particular case, | |
45 | -government agents). Managing the interaction of these elements was not easy and | |
44 | +members, and communicating effectively with clients (in this case, | |
45 | +government agents). Handling the interaction of these elements was not easy and | |
46 | 46 | the unstable Brazilian political scenario only made things worse. |
47 | 47 | |
48 | 48 | To achieve the SPB project goals, we had to overcome strong political bias tied |
49 | -with complicated technical issues as well as relatively low budget. Because it | |
49 | +with complicated technical issues and relatively low budget. Because it | |
50 | 50 | is open to the public, the government representatives saw the platform as a |
51 | -marketing opportunity and sometimes ignored the technical advice in favor of | |
51 | +marketing opportunity and sometimes ignored technical advice in favor of | |
52 | 52 | political decisions. Furthermore, integrating a number of distinct systems to |
53 | 53 | work seamlessly was not an easy job. We had to learn how each system worked and |
54 | 54 | 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. |
56 | 56 | |
57 | 57 | We also had to manage the diversity of the SPB team members. This team was |
58 | 58 | composed of approximately 50 undergraduate students (not all simultaneously) |
59 | -together with professors, masters students and professional designers as well | |
60 | -as senior developers from the Brazilian free software community. Undergraduate | |
61 | -students received a fellowship and, for most of them, this R&D project was | |
59 | +together with professors, masters students, professional designers and | |
60 | +senior developers from the Brazilian free software community. Undergraduate | |
61 | +students received a scholarship and, for most of them, this R&D project was | |
62 | 62 | their first professional experience. Seniors developers and masters students |
63 | 63 | had two important contributions to the project: transfer knowledge to |
64 | 64 | undergraduate students and address hard tasks. Finally, professors were |
... | ... | @@ -68,9 +68,9 @@ political pressures applied to the project. |
68 | 68 | The third point to be handled was the communication with two independent groups |
69 | 69 | of government representatives: requirements analysts and deployment |
70 | 70 | technicians. Requirements analysts were the real representatives of the |
71 | -Brazilian government in the project and their function was to test new | |
71 | +Brazilian government in the project and their role was to test new | |
72 | 72 | features, to provide feedback to the development team, and to report for the |
73 | -government leaders. Deployment technicians were in charge of accessing the host | |
73 | +government leaders. Deployment technicians were in charge of administering the host | |
74 | 74 | machines wherein SPB platform was running. They were, theoretically, |
75 | 75 | responsible for deploying the project. However, the new SPB Portal was composed |
76 | 76 | of more than ten different software projects, generating a complex deployment |
... | ... | @@ -79,10 +79,10 @@ process, for instance, working on seven servers. |
79 | 79 | To handle the interaction between these three elements, we realised we needed |
80 | 80 | to take control over the deployment process. We used CD as a mean to fulfill |
81 | 81 | the government expectations and to provide quick response to their requests, |
82 | -which were influenced most of the time by the uncertainties of project | |
82 | +which were influenced most of the time by the uncertainties of the project's | |
83 | 83 | continuity. We believed we would keep the project alive, even in a politically |
84 | 84 | unstable and technically complex scenario. For this reason, we worked hard to |
85 | -automate all deploy process; for instance, one of our senior developers created | |
85 | +automate the deploy process; for instance, one of our senior developers created | |
86 | 86 | a Chef-Server (www.chef.io/chef) front-end tool called Chake |
87 | 87 | (www.gitlab.com/terceiro/chake) to help us to manage the multiple hosts needed |
88 | 88 | 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. |
91 | 91 | |
92 | 92 | In this report, we describe our CD pipeline and how it improved our delivery |
93 | 93 | performance. The CD made us adaptable for all requested changes and helped us |
94 | -to mitigate those aforementioned political challenges, besides the technical | |
94 | +mitigate those aforementioned political challenges, besides the technical | |
95 | 95 | issues. Among CD’s known benefits [2], we also explain those which were the most |
96 | 96 | important in the project scenario for us: improving customer satisfaction and |
97 | 97 | 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 |
271 | 271 | addressed by the industry and academia together. |
272 | 272 | |
273 | 273 | ### Build CD from scratch |
274 | - | |
274 | + | |
275 | 275 | Taking on CD responsibilities had a significant impact on the team. We did not |
276 | 276 | have the know-how and had little time to come up with a working pipeline. The |
277 | 277 | senior developers were crucial at this point. They came up with an initial | ... | ... |