alphaspirit - Fotolia
For thousands of years, we have been devising ways to cross bodies of water. Historically, our attempts were crude -- makeshift rafts and rickety, ferrylike vessels. So, we started building bridges, albeit basic ones. Ferries and bridges still need upkeep as weather and increasing traffic require intelligent decision-making and technology to optimize transit.
Let's apply this to DevOps. Like bridging two shorelines together, DevOps involves efficiently linking an organization's business idea to its market. For an organization to fulfil its DevOps transformation, it must continuously improve upon each of the bridges, or DevOps stages, connecting its mission and its market.
Below, I've identified the four key bridges of the DevOps journey and how you can successfully navigate each to fully scale your entire enterprise.
The software release ferry
If you need to get from one side of a river to another, you and cargo get loaded onto a ferry. If you miss the ferry, you wait. Some teams deliver software this way, too -- batching work up and manually taking it from one stage to the next.
This software release ferry represents one of the pre-DevOps stages, where teams are likely feeling the pain of this old way of delivering software. Software is still viewed in batches, and development is conducted in a Waterfall fashion, with infrequent releases, no continuous integration (CI) and minimal customer feedback. But customers now demand faster and faster releases, and the old process just can't keep up. Too many passengers are waiting on shore for the next ferry.
This stage calls for a plan. Imagine yourself as the engineer who comes to the ferry landing and envisions a bridge of free-flowing goods and services. It's easy to get overwhelmed at this point, but don't. Pick one or two teams who can start with basic automation and CI.
Don't forget to share your wins, however large or small they may be. Making DevOps success visible is important, especially early on. That's because it allows early adopters to share their knowledge and facilitate discussions about DevOps that are centered on practical, real-world results, instead of just opinion.
Building a standard DevOps bridge
Ferries were a key initial innovation. But their limitations pushed us to create bridges. As an analogy to software development, the bridge represents the addition of CI and Agile development tools, enabling cooperation between different development teams. DevOps tools are being leveraged during these DevOps stages, but they're used locally and are not standard across the enterprise yet.
Standard is the optimal word for this phase of DevOps; now is the time to focus on establishing an automated, repeatable process that can be enacted by every team. This is crucial to reaching the desired delivery speed at scale for a couple of reasons.
First, you need to free up your people from many of the manual tasks along the way so they are empowered to pursue further innovation. Second -- and this is common sense -- it's simply harder and less efficient to start from scratch every time you begin a project. Having established processes allows you to easily adjust, build on improvements and set the DevOps foundation needed for enterprise-wide scaling.
Time for the DevOps highway
As wonderful as the early bridges were at facilitating commerce, they weren't always stable -- think of early stone bridges or even suspension bridges, like in Indiana Jones and the Temple of Doom. So, we made architectural improvements and invented highway bridges with multiple lanes to scale volume and the distance of travel.
Now, we're at a point in DevOps when continuous development is underway, and tech stacks are heterogeneous. This is one of the DevOps stages where organizations usually have many teams distributed across multiple geographies and the business (e.g., front-end, mobile, middleware and back-end processing engineers), and complex integrations are taking place.
With your DevOps transformation really ramping up, now is the time to enable dual mode, in which business and nontechnical users can start speaking your language. This goes beyond the evangelization in earlier DevOps stages and requires communicating at scale. After sharing your key findings and successes, you need to help your colleagues imitate your successes and avoid your pitfalls. Facilitate ongoing discussions with tools like Slack, where people can flag real-time risks, feedback and more, to raise up the information to nontechnical participants. Everyone will have to come together in this stage before they can transition to the next.
Don't set it and forget it; build a smart bridge
Even with a highway, we can hit limits if we just build it and walk away. We've created capacity, but also demand; highways can become congested and difficult to maintain. Just think about major bridges at rush hour. So, modern engineers are bringing about the next stage of smart bridges. Take the Øresund Bridge, an engineering marvel that connects the Danish capital of Copenhagen to the Swedish city of Malmö. It's 8 km long, leading into another 4 km tunnel section, and supports automotive and rail traffic, all kept running smoothly and safely through a continuous monitoring system that is capable of measuring temperature, wind characteristics, air humidity, strains, acceleration and more. These bridges can adjust dynamically for different traffic patterns and take other data-driven steps to ensure safety and smooth operation.
During these DevOps stages, you've achieved enterprise-wide continuous development, self-service capabilities for developers and full integration of components like security and real-time feedback loops that deliver the business intelligence needed for your organization to become more self-aware.
You're not quite done, though. So much investment goes into DevOps that we can't just set it and forget it. Take your newfound business intelligence, and be sure to measure progress against your established goals and metrics. Performing this analysis, including historical trends, is essential for understanding the benefits your customers are receiving and remediating problems earlier. These lessons from the earlier DevOps stages then become part of your process going forward. Use the data to adjust and constantly identify areas to improve.
Now that you've scaled DevOps across your organization, it's important to keep planning for the future. For instance, how might the growth of mesh apps, serverless architectures, the internet of things, machine learning and AI change how your organization builds software? Just as bridges require continual consideration of new technologies, like self-driving cars and delivery drones, DevOps requires planning for what's next and evolving along with technological change. Failing to do so puts organizations at risk of falling behind competitors and experiencing chronic scaling issues.
Above all else, all the DevOps stages involve change management, continuous improvement and being goal-driven. So, no matter your organization's size, available resources or industry, prioritize constant visibility, and determine which data points you need to demonstrate progress and success.
- Get started with continuous integration and continuous delivery
- Learn how Git, GitHub and distributed version control is impacting source code management
- Get your builds under control with Maven, Gradle and artifact repositories
- Start developing RESTful microservices with Jakarta EE or Spring Boot
- Test your skills with these Git and CI/CD quizzes
- See how you would do on a Jenkins or DevOps job interview