“The advantages of agile methods have become widely known, so that other areas of business are also engaging more deeply with this topic.”
Agile development may not yet be happening everywhere, but in many IT organizations it is at least being practiced to some extent. More and more companies are trying to move away from rigid release cycles and instead develop and deploy software products in smaller, faster steps.
Agile advantages have become widely known
The benefits of agile methods — speed, flexibility, quality — have now become widely recognized, so that other IT and business areas are also engaging more deeply with the topic. In business, agile approaches are being tested for new business models, process changes, and product ideas — many call this BizOps. Enterprise architects, who keep both business and IT processes and landscapes in mind, are working on agile methods, and IT itself is trying to apply agile principles beyond development, for example in IT infrastructure.
This more holistic application of agile methods is considered by agility consultants to be the highest level. According to their doctrine, only when the entire company is aligned with agility can the benefits truly be realized. As long as only individual silos — for example, software development — are made agile, other areas will continue to experience delays due to queries, misunderstandings, and technological gaps.
A prerequisite is accelerated infrastructure
One of the key pillars of company-wide agility is the acceleration of IT infrastructure. It represents a critical resource for almost all business areas and, of course, for all business and process changes. The speed and quality with which a digital product or service actually reaches the market depends on it. A simple example: if a new e-commerce platform is too slow due to insufficient server or network resources, customers quickly lose interest and turn to other providers.
However, making infrastructure agile is only one-quarter a technical challenge. The remaining three-quarters are organizational.
Software-defined everything
From a technical perspective, a management layer — software-defined everything — must be inserted between the infrastructure itself (i.e., server, storage, and network resources). This layer allows resources to be quickly and flexibly allocated to different workloads as needed.
For example, in the e-commerce platform mentioned earlier, this management layer must be able to scale resources according to load. The more visitors search for products, the more resources must be allocated to the platform. This is by no means trivial, especially considering that resource requests are not submitted by a dedicated and experienced infrastructure team, but rather, for example, through self-service by the platform’s developers.
For this management layer to function, a sophisticated performance management system is required—one that precisely monitors the operation and utilization of resources and even manages accurate load forecasts.
Naturally, agile infrastructure management works better in the cloud. However, this also means that cloud orchestration and provisioning tools must be factored into the technical equation.
Agile infrastructure teams
From an organizational standpoint, the first step is to structure infrastructure teams in an agile way. Previously, teams were typically organized according to different resources — storage teams, compute teams, and network teams. In agile infrastructure teams, however, these skills should be combined.
Secondly, the processes for delivering infrastructure services need to be simplified and, wherever possible, automated. Instead of submitting a dedicated infrastructure request for the e-commerce platform, which would then be reviewed and implemented by different infrastructure specialists, developer teams should be able to request it via self-service. This self-service tool must not only allow requests for a certain number of CPU cores, storage capacities, and network bandwidth, but also include a plausibility check.
If that is not (yet) possible, developers and infrastructure teams should collaborate during the platform’s development and jointly formulate infrastructure requirements. This leads to the third organizational challenge: infrastructure and development teams must work closely together to complete the process of infrastructure provisioning as quickly and seamlessly as possible.
The bottom line
Companies that want to build agile infrastructures in order to adapt quickly and flexibly to changing business processes and models must meet two conditions:
• On the technical side, they must adopt the software-defined everything paradigm.
• On the organizational side, they must create the conditions that allow agile forms of collaboration.
Companies that have already made their software development agile have an advantage here, because they are already familiar with the organizational challenges and have at least partially mastered them.