Zigs and zags, never straight lines: software strategy must be nimble, agile and fast

Remember those big-enterprise software implementations of 20+ years ago?

They were filled with dread.

Pre-cloud, enterprise software solutions were monolithic in architecture and deployment. Software or solution providers charged license fees in the millions of dollars, and that was just the beginning. Next came outsourced solution deployment services teams that would hang around coffee rooms for years, routinely increasing budgets by two to three times, sometimes more.

It would take about three years to roll out the first version of the project, only to discover that your business had changed during those three years, and the architected solutions simply wouldn’t support your business.

The resulting architecture wasn’t flexible; you couldn’t make any changes. Three-quarters of the people on the team had by then moved on, and the business and the markets in which it operated had changed completely.

This software strategy model relied on a structured, linear approach: “A” came before “B,” which had to be completed before “C”, and so on. As we’ve already seen, by the time you got to the end of the alphabet, too little had been delivered, too late, at too much cost.

Today I don’t think executives think about software, and they certainly don’t think in this linear fashion. When it comes to software strategy, we’ve made so much progress in the technology that the focus now — and rightly so — rests on the problems that need fixing. And the route we take to get there is never certain or predictable.

Enterprises and SMBs deserve and demand software solutions mapped explicitly to their business strategies. Across SaaS, cloud, security, operating environments, smart infrastructures, multiple devices, AI, machine learning, IoT — and much more — software has to integrate operations and strategy in ways unimaginable 15 years ago.

The software strategy environment today

That also translates into the business space, where we call it “agile”. In enterprises, adoption cycles are longer, for sure — but nowhere near as long as they used to be.

One of our Lenovo Smart Office customers, for example, was a pharmaceutical company, a valuable partner with a very clear set of expectations about what they needed from their software solutions. They were interested in exploring ways to enhance the capabilities of Smart Office and worked with us to define a cloud-based beta solution built using our User Device Service (UDS) Software Platform. The project called for 50 devices to be delivered over the weekend so that the company could test-drive the solution on the Monday morning of the following week.

In other words, the solution delivery was three days. Okay — that’s longer than three minutes! But it’s a lot quicker than three months, or three years. The key to software delivery is an iterative approach that creates a “closed loop” model. Let’s say your iteration is two weeks. Then you drop the code into production, measuring user sentiment, then port it back to the development process and a new iteration. You are certainly not going to release enterprise software every two weeks, but major product releases will be right on target when it comes to the features wanted by the customer and its users, and very easy to deploy when it comes to SaaS or PaaS incrementals.

Zigging and zagging

The CIO now acts very much as a business owner or business operations director. CIOs’ KPIs are measured on the success of the project (how it improves or changes the business), not the delivery of the project (whether or not it was delivered on time and on budget). The CIO is no longer the person in the basement, but now is the person in the boardroom, making decisions on business automation processes and whether or not they are CapEx spends or OpEx spends, not just making decisions on the 60-core processors of the servers in the basement.

The CIO now has to know where the company might need to be in three years’ time, without being able to rely on a straight-line view of how to get to that point.

And because of this, software planning cannot be done the way it’s been done for years, it has to be proactive and in step with the way our customers are heading, not reactive. It’s changed for good.

In fact, you could argue that to a large degree, strategy has been replaced by tactics, just like an ocean-going yacht race. Everyone knows where the finish line is, but they don’t know at the start the route they will take to get there or how that will be affected by the competition.

And that’s as it should be. The technology stack has been replaced with enabled-based software.

You’re zigging and zagging with small iterations because you’re focusing on the customer, which is at the heart of everything. Collaborate with the customer for long enough, and you collect enough data to know what will happen next — this is AI. Now you get predictive, knowing what the customer will need next, including knowing before the customer. Eventually, AI will predict how to get to point B.

You now know where you’re going strategically. You now know you can’t get there in a straight line. It’s the software-cloud-edge-client model that enables you to be agile and iterative, placing you in the position of knowing where to go next. And this translates directly to the financials of an organization. Boston Consulting Group claims that being agile (or zigging and zagging) can accelerate time to market by 55%, increase the speed to revenue by as much as four times, decrease costs by up to 25%, and boost employee engagement by 30%.

This is what I call a customer-centric exercise of joy! The customer wins because they get to market faster, and enjoy the benefits of the solutions sooner. The software developer wins because the customer is happy, and the approach taken has been effective, fast, and profitable.

As a strategy for software development, this is the way forward (in zigs and zags!).

Originally published on LinkedIn.

Vice President of Cloud & Software at Lenovo