Subscribe

How to crush complexity in software delivery

The speed of software delivery is vital in today’s high-speed world, but achieving this while ensuring the quality of the applications can create high levels of complexity for the business.

Johannesburg, 09 Oct 2020
Raffi Margaliot, Senior VP and GM: App Delivery Management Product Group, Micro Focus
Raffi Margaliot, Senior VP and GM: App Delivery Management Product Group, Micro Focus

In today’s fast-paced digital world, business success largely depends on the ability of a company’s IT organisation to deliver services at the speed of DevOps, but without sacrificing any performance, security or governance.

Unfortunately, most enterprises find that their effectiveness at software delivery is compromised by a landscape that is both diverse and unpredictable, as it is constantly changing. This scenario brings with it a whole new level of complexity that cannot be controlled by conventional management methods.

According to Raffi Margaliot, senior VP and GM for Application Delivery Management Product Group at Micro Focus, too much complexity distracts from delivering business results, which is why it is so vital for IT leaders to identify ways to significantly reduce this complexity.

“It is critical for such players to focus on understanding market trends – such as the rise of consumer expectations – along with the difficulty of navigating software development, due to myriad devices and platforms. Only by achieving such an understanding can businesses achieve the balance that allows it to release new applications faster, while still ensuring quality, increasing business visibility and retaining development flexibility,” he says.

“The growth of the digital world means that there are an increasing number of environments, and if you are to ensure your apps are able to run on all of these, while performing at a high level of quality, your software needs to be tested on every operating system and type of mobile device. This is what really creates the challenges and complexity businesses face in this arena.

“Complexity is also created by the type of cloud environment being used. On-premises, private and hybrid create their own additional complexities when it comes to software and application delivery.”

Margaliot suggests there are three key areas that an organisation must ensure are covered if it truly wants to reduce complexity. The first of these is to make work visible. As he explains, in IT there are a lot of tools, along with data and various types of management, which makes things more complicated, and the key here is to make your work visible despite the potential complexity.

“This is where DevOps comes into the picture, as this enables far greater visibility. Of course, for DevOps to be successfully adopted, the enterprise absolutely has to define, by objective, the relevant key performance indicators (KPIs). The business can determine its KPIs by asking the following question: do we want to increase the value of a product; improve the quality of a service; accelerate delivery; or maintain reliability?

“The second area of focus should be on automation and how to go about automating everything happening across every pipeline. This can only be done with true visibility into your organisation’s processes, but once you have this level of visibility, it becomes possible to deliver automation, no-touch deployments and auto-provisioning – for both apps and infrastructure.”

Finally, he adds, it is crucial to align strategy and execution across the business, which is why it is necessary to analyse initiatives being implemented towards the delivery of value. Such analysis is typically undertaken by type, strategic alignment, status, effort and forecast cost.

“Implementing the visibility, automation and alignment strategy above leads to a huge increase in velocity, which translates to a decreased time to market and a significant reduction in defects in applications. This, in turn, means higher quality delivery and ultimately fewer outages, which results in less downtime.”

As the business begins to understand where the bottlenecks truly are, it can make efforts to fix these, once again making the company more agile, and thus more capable of delivering new software and applications at high speed, but low risk.

“The key recommendations I would give to entities seeking to reduce complexity in software delivery are to implement agile and/or DevOps without replacing your existing tools; then create a common set of metrics; follow this up by automating to increase your delivery velocity, while ensuring you never compromise on application quality; and finally, be sure to continuously measure and maintain so that you are constantly aware of what is happening and can remain flexible and capable of rapid change, if required.

“In this way, you can ensure that your business is able to simplify complexity and deliver software and applications rapidly, but safely, so that you can fully participate in ongoing digital business success,” concludes Margaliot.

Share