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