Commit 86bc0133798a8f937d67fe0ba1f52407776a2bc9
Exists in
master
and in
3 other branches
Merge branch 'ieee_new' of http://softwarepublico.gov.br/gitlab/softwarepublico/…
…articles into ieee_new
Showing
1 changed file
with
25 additions
and
25 deletions
Show diff stats
ieeeSW/releaseEng3/IEEE_ThemeIssue_ReleaseEng_CD.md
... | ... | @@ -209,9 +209,9 @@ fixes were finally available to the end users. |
209 | 209 | |
210 | 210 | ## Benefits |
211 | 211 | |
212 | -Research points out many advantages of CD usage in industry[2, 5], such as: | |
212 | +Research points out many advantages of CD usage in the industry[2, 5], such as | |
213 | 213 | accelerated time to market, building the right product, productivity and |
214 | -efficiency improvements, reliable releases and better customer satisfaction. | |
214 | +efficiency improvements, stable releases, and better customer satisfaction. | |
215 | 215 | Working with the government, we noticed the following additional benefits. |
216 | 216 | |
217 | 217 | ### Strengthening Trust in Work Relationship with the Government |
... | ... | @@ -247,13 +247,13 @@ would not go looking for other jobs. |
247 | 247 | ### Shared Responsibility |
248 | 248 | |
249 | 249 | Initially, the development team could not track what happened to the code after |
250 | -its delivery, since government technicians were the only responsible for | |
250 | +its delivery, since government technicians were the only ones responsible for | |
251 | 251 | deploying the project. The implementation of CD made developers feel equally |
252 | 252 | responsible for what was getting into production and take ownership of the |
253 | 253 | project. |
254 | 254 | % |
255 | 255 | Interestingly, the CD pipeline had the same effect on the team of requirement |
256 | -analysts. They became more engaged on the whole process, opening and discussing | |
256 | +analysts. They became more engaged in the whole process, opening and discussing | |
257 | 257 | issues during the platform evolution. Additionally, developers worked to improve |
258 | 258 | the CD pipeline to speed up the process of making new features available in the |
259 | 259 | production environment for analysts’ validation. |
... | ... | @@ -262,11 +262,11 @@ production environment for analysts’ validation. |
262 | 262 | ### Synchronicity Between Government and Development |
263 | 263 | |
264 | 264 | Despite the positive impacts that the CD pipeline brought to the project, its |
265 | -implementation was not easy at first. The CD pipeline performance depended on | |
266 | -the synchronicity between developers and government analysts, so that the | |
265 | +implementation was not smooth at first. The CD pipeline performance depended on | |
266 | +the synchronicity between developers and government analysts so that the | |
267 | 267 | latter were prepared to start a step as soon as the former concluded the |
268 | -previous step, and vice versa. Initially, this concern was not contemplated | |
269 | -in the agenda of the governmental team, which generated delays in the validation | |
268 | +previous step and vice versa. Initially, the agenda of the government team | |
269 | +did not contemplate this concern, which generated delays in the validation | |
270 | 270 | of new features. This situation combined with governmental bureaucracy |
271 | 271 | (up to 3 days) to release access to the production environment resulted in |
272 | 272 | additional delays for the deployment step to begin. This problem was softened |
... | ... | @@ -276,29 +276,29 @@ to production in time. |
276 | 276 | |
277 | 277 | ## Challenges |
278 | 278 | |
279 | -Due to the successful built of the CD pipeline, we improved the government | |
279 | +Due to the successful building of the CD pipeline, we improved the government | |
280 | 280 | deployment process and kept the project alive in an unstable political scenario. |
281 | 281 | We map here lessons learned in this successful case, as well as issues that |
282 | -still need to be addressed in future works between industry and academia. | |
282 | +future works between industry and academia still need to address. | |
283 | 283 | |
284 | 284 | ### Build CD From Scratch |
285 | 285 | |
286 | 286 | Taking on responsibilities for implementing CD impacted on the whole team. |
287 | 287 | Our team did not have know-how in this approach, and we had few working hours |
288 | -available to allocate for the building of pipeline. The construction and | |
289 | -maintenance of the CD process was possible by taking some decisions to mature | |
288 | +available to allocate for the building of the pipeline. The construction and | |
289 | +maintenance of the CD process were possible by taking some decisions to mature | |
290 | 290 | the project: |
291 | 291 | |
292 | 292 | 1. _Selecting the most experienced professionals and some developers of the |
293 | 293 | project to work on a specific team for DevOps._ These professionals used their |
294 | -experiences in OSS projects to get an initial proposal of deployment process. | |
294 | +experiences in OSS projects to get an initial proposal for the deployment process. | |
295 | 295 | The solution enabled us to automate the deployment, even though the process was |
296 | 296 | still rudimentary. |
297 | 297 | |
298 | 298 | 2. _Interchanging team members and encouraging teammates to migrate to DevOps |
299 | 299 | team._ The benefits of these movements were twofold: mitigating the difficulty |
300 | 300 | to pass the knowledge between DevOps developers and features developers, and |
301 | -evolving the process on-the-fly | |
301 | +evolving the process on-the-fly. | |
302 | 302 | |
303 | 303 | Building a CD pipeline was hard in the beginning. We believe that more tools |
304 | 304 | to provide out-of-the-box standardized CD pipelines would be of great help for |
... | ... | @@ -313,39 +313,39 @@ Taking an unfamiliar approach requires trust. In the Ministry of Planning, |
313 | 313 | software is the product delivered at the end of a development contract. They |
314 | 314 | expected and were prepared to validate and deploy a single delivery. Because |
315 | 315 | the SPB portal is a system of systems, the steady growth of its complexity made |
316 | -large deliveries unsustainable. In addition, long time for homologation of | |
317 | -developed features gave government room to change requirements and priorities. | |
316 | +large deliveries unsustainable. Also, the long time for homologation of | |
317 | +developed features gave the government room to change requirements and priorities. | |
318 | 318 | The CD approach was necessary, but how to build trust and gain autonomy to |
319 | 319 | implement a process that was not yet part of the dynamics of the Ministry? |
320 | 320 | |
321 | -1. _Demonstrate actual results, do not simply tell._ Initially we did not have | |
321 | +1. _Demonstrate actual results, do not simply tell._ Initially, we did not have | |
322 | 322 | access to the government infrastructure, so we created our own validation |
323 | 323 | environment. Thus, we were able to follow the CD pipeline until the stage of |
324 | -production deployment, when we were faced two problems. Our pace of intermediate | |
324 | +production deployment, when we faced two problems. Our pace of intermediate | |
325 | 325 | deliveries to the government was faster than the deployment in production by their |
326 | -technicians. Furthermore specific issues of government infrastructure made some | |
326 | +technicians. Furthermore, specific issues of government infrastructure made some | |
327 | 327 | validated features not work as expected in the production environment. That |
328 | 328 | situation gave us arguments to negotiate access to production. |
329 | 329 | |
330 | 330 | 2. _Make our project management transparent and collaborative for analysts._ |
331 | 331 | Allowing the analysts to follow our process for version deliveries and bug |
332 | 332 | fixes, we showed them we were meeting our commitments. They started to interact |
333 | -more strongly in the generation of versions and actually became part of the | |
333 | +more actively in the generation of versions and became part of the | |
334 | 334 | process. After understanding the process, analysts helped us in negotiations |
335 | -with government agentes. Finally, the agents created a VE as an isolated replica | |
335 | +with government agents. Finally, the agents created a VE as an isolated replica | |
336 | 336 | of PE and gave us access to it. |
337 | 337 | |
338 | 338 | 3. _Gain the confidence of government agents._ With the replica of PE, we were |
339 | 339 | able to run the entire pipeline and won the trust of the government analysts and |
340 | 340 | technicians involved in the process. On the one hand, analysts saw the |
341 | -mobilization and responsiviness of the team to generate a new version package. | |
341 | +mobilization and responsiveness of the team to generate a new version package. | |
342 | 342 | On the other hand, technicians recognized the quality of our packages and our |
343 | -deployment process. Finally, the government agents then realised that it could | |
343 | +deployment process. Finally, the government agents then realized that it could | |
344 | 344 | be beneficial for the project if they granted us access to part of the |
345 | 345 | infrastructure. |
346 | 346 | |
347 | -More research is required on development protocols and policies to improve the | |
348 | -relation between industry and government, specially regarding CD. | |
347 | +More research is required on developing protocols and policies to improve the | |
348 | +relationship between industry and government, especially regarding CD. | |
349 | 349 | |
350 | 350 | ## Acknowledgements |
351 | 351 | ... | ... |