Save 37% off PRO during our Black Friday Sale! »

DevOps & Legacy

F39630d87553fbd3f576bf78f6c8c1d8?s=47 Peter Götz
September 27, 2021

DevOps & Legacy

Unfortunately we can't all work in startup companies. Some of use have to deal with legacy code bases. These are often structured as a monolith and tightly coupled. They typically are hard to build and deploy. You might think all the new DevOps practices and toys are not suitable for your context. You are wrong! DevOps culture and practices can help you discover the new land while working in and with your legacy systems. The idea is not to continuously try and replace legacy, but find ways to work with it in a meaningful and sustainable way. We will discuss strategies to work with legacy code and still use DevOps practices and tools. These include breaking up of monolithic structures, migrating data and monitoring systems that aren't built to be monitored. We will show real-world examples of successful applications of these strategies. While dealing with legacy code will still be painful, you will have some applicable ideas to relieve your pain.

F39630d87553fbd3f576bf78f6c8c1d8?s=128

Peter Götz

September 27, 2021
Tweet

Transcript

  1. DevOps & Legacy Scrum Day Stuttgart, 2021 @DevOps_Events

  2. What is Legacy? ?

  3. Why DevOps?

  4. How?

  5. Tight Coupling Specialists Manual Processes SS4CP* Brittleness Why is it

    so hard? *Simple Solutions for Complex Problems
  6. Tight Coupling Specialists Manual Processes SS4CP* Brittleness *Simple Solutions for

    Complex Problems Why is it so hard? Overwhelming
  7. Tight Coupling Comes in different flavours: ▪ Architecture ▪ Infrastructure

    ▪ Code ▪ ... the degree of interdependence between things* a measure of how closely connected two things* are the strength of the relationships between things* things*: components, infrastructure, modules, code, people...
  8. Tight Coupling Comes in different flavours: ▪ Architecture ▪ Infrastructure

    ▪ Code ▪ ...
  9. Tight Coupling Comes in different flavours: ▪ Architecture ▪ Infrastructure

    ▪ Code ▪ ...
  10. Tight Coupling Comes in different flavours: ▪ Architecture ▪ Infrastructure

    ▪ Code ▪ ...
  11. Tight Coupling Comes in different flavours: ▪ Architecture ▪ Infrastructure

    ▪ Code ▪ ...
  12. Tight Coupling Comes in different flavours: ▪ Architecture ▪ Infrastructure

    ▪ Code ▪ ...
  13. Tight Coupling Comes in different flavours: ▪ Architecture ▪ Infrastructure

    ▪ Code ▪ ...
  14. Tight Coupling Comes in different flavours: ▪ Architecture ▪ Infrastructure

    ▪ Code ▪ ...
  15. Tight Coupling Comes in different flavours: ▪ Architecture ▪ Infrastructure

    ▪ Code ▪ ... public class Foo { public void foo() { new Bar().bar(); } } var GLOBAL_SHARED_VALUE = 23 import http.client con = http.client .HTTPSConnection("devops-events.de") con.request("GET", "/") res = connection.getresponse() print("Status: {} and reason: {}" .format(res.status, res.reason)) connection.close() <?xml version="1.0" encoding="UTF-8" standalone="no"?> <wsdl:definitions xmlns:soap=... <!-- ... --> </wsdl>
  16. Dealing with Legacy Code 1. Identify change points 2. Find

    test points 3. Break dependencies 4. Write tests 5. Make changes and refactor
  17. Baby Steps ▪ Big Bangs don’t work. ▪ There is

    always the next baby step. ▪ Legacy systems took time to grow bad. It will take time to fix them.
  18. About Us Peter Götz peter@devops-events.de @petersgoetz Save 50% for our

    next DevOps Lab training https://www.devops-events.de/trainings/devops-lab Buy one ticket and bring a friend or colleague for free (coupon code “2-4-1”) Oliver Hankeln oliver@devops-events.de @mydalon
  19. Credits ▪ @alexagorn (https://unsplash.com/photos/smuS_jUZa9I) ▪ @matthew_t_rader (https://unsplash.com/photos/bZbd02TN9t0) ▪ @jentheodore (https://unsplash.com/photos/qRtLPwRlXxI)

    ▪ @harlsta (https://unsplash.com/photos/ouyjDk-KdfY) ▪ @byrawpixel (https://www.pexels.com/photo/baby-s-standing-on-gray-floor-rug-1776136/) ▪ GoodReads.com (https://i.gr-assets.com/images/S/compressed.photo.goodreads.com/books/1348 627451i/44919._UY630_SR1200,630_.jpg)