Commit 3a10467c470dae646983c79e9acfd0d4fc5388b7
Exists in
master
and in
3 other branches
Merge branch 'master' of http://softwarepublico.gov.br/gitlab/softwarepublico/articles
Showing
1 changed file
with
14 additions
and
12 deletions
Show diff stats
ieeeSW/releaseEng3/IEEE_ThemeIssue_ReleaseEng_CD.md
... | ... | @@ -102,12 +102,14 @@ worst political crisis after the re-democratization in Brazil. |
102 | 102 | |
103 | 103 |  |
104 | 104 | |
105 | -Figure 1 represents our CD pipeline. The pipeline started when new code arrived. | |
106 | -As it went through each step, it was tested and improved until it finally reached | |
107 | -the production environment. At this point we got back to the first stage to release | |
105 | +Figure 1 represents our CD pipeline. A new feature might require changes on more | |
106 | +than one SPB integrated software project. Notice that each on of them could be | |
107 | +modified independently. The pipeline started when new code arrived. As it went | |
108 | +through each step, it was tested and improved until it finally reached the | |
109 | +production environment. At this point we got back to the first stage to release | |
108 | 110 | more new code. |
109 | 111 | |
110 | -### Automated tests | |
112 | +### Automated Tests | |
111 | 113 | |
112 | 114 | The SPB portal consists of more than 10 integrated software projects and each |
113 | 115 | of them, as well as the entire platform, had to be tested. These software |
... | ... | @@ -124,7 +126,7 @@ by either a test error or coverage reduction below a certain threshold, the |
124 | 126 | pipeline stopped. Only when all tests pass, the pipeline proceed to the step of |
125 | 127 | preparing the release. |
126 | 128 | |
127 | -### Preparing a new release | |
129 | +### Preparing a New Release | |
128 | 130 | |
129 | 131 | A SPB Portal release was composed of all its software components releases. Each |
130 | 132 | software component release was a git tag that referred to a specific feature or |
... | ... | @@ -195,7 +197,7 @@ accelerated time to market, building the right product, productivity and |
195 | 197 | efficiency improvements, reliable releases and better customer satisfaction. |
196 | 198 | Working with the government, we noticed the following additional benefits. |
197 | 199 | |
198 | -### Responsiveness to change | |
200 | +### Responsiveness to Change | |
199 | 201 | |
200 | 202 | Responsiveness was one of the direct benefits of adopting the CD pipeline. The |
201 | 203 | ability to react quickly to changes requested by the government was vital for |
... | ... | @@ -213,7 +215,7 @@ way, we always had something to show on meetings, reducing anxiety to get the pl |
213 | 215 | project would last a little longer and they would not go looking for other |
214 | 216 | jobs. |
215 | 217 | |
216 | -### Shared responsibility | |
218 | +### Shared Responsibility | |
217 | 219 | |
218 | 220 | Before the adoption of CD, the development team could not track what happened to the code |
219 | 221 | after its delivery, since government technicians were the only responsible |
... | ... | @@ -229,7 +231,7 @@ Additionally, developers worked to improve the CD pipeline |
229 | 231 | to speed up the process of making available, in the production environment, |
230 | 232 | new features for the platform. |
231 | 233 | |
232 | -### Synchronicity between government and development | |
234 | +### Synchronicity Between Government and Development | |
233 | 235 | |
234 | 236 | Despite the positive impacts that the CD pipeline brought to the project, its |
235 | 237 | implementation was not easy at first. The CD pipeline performance |
... | ... | @@ -244,7 +246,7 @@ This problem was softened when the analysts realized the impact of |
244 | 246 | these delays on the final product and decided to allocate the revisions in its |
245 | 247 | work schedule and to request the access to production in time. |
246 | 248 | |
247 | -### Strengthening trust in work relationship with the government | |
249 | +### Strengthening Trust in Work Relationship with the Government | |
248 | 250 | |
249 | 251 | Continuous delivery was also a tool that helped to strengthen trust in the |
250 | 252 | relationship between developers and government analysts, as well as between the |
... | ... | @@ -268,7 +270,7 @@ process from the government. That allowed us to survive into an unstable |
268 | 270 | political scenario. However, we recognize that many challenges still need to be |
269 | 271 | addressed by the industry and academia together. |
270 | 272 | |
271 | -### Build CD from scratch | |
273 | +### Build CD From Scratch | |
272 | 274 | |
273 | 275 | Taking on CD responsibilities had a significant impact on the team. We did not |
274 | 276 | have the know-how and had little time to come up with a working pipeline. The |
... | ... | @@ -282,7 +284,7 @@ out-of-the-box standardized CD pipelines would be of great help for |
282 | 284 | inexperienced teams. Tools that track each step of the pipeline and organize |
283 | 285 | logs in a human-manageable way are necessary too. |
284 | 286 | |
285 | -### Handling inexperienced teams | |
287 | +### Handling Inexperienced Teams | |
286 | 288 | |
287 | 289 | After the developers learned how CD worked, it was difficult to pass the |
288 | 290 | knowledge along to other teammates. We tried to mitigate this problem by |
... | ... | @@ -290,7 +292,7 @@ encouraging members to migrate to the DevOps team. We suggest further research |
290 | 292 | on how to effectively spread knowledge across inexperienced developers in a high |
291 | 293 | turnover scenario. |
292 | 294 | |
293 | -### Overcoming mistrust | |
295 | +### Overcoming Mistrust | |
294 | 296 | |
295 | 297 | In the project's beginning we struggled with deployment issues in the government |
296 | 298 | structure. We were in a paradoxical situation. The government demanded fast | ... | ... |