Risk management strategies for building software in a complex and chaotic environment

The crisis is here. Nobody knows how long it will stay with us. The only thing we know for certain is that you can either face it on your own terms or passively wait until it’s gone. The more agile and conscious of upcoming changes your company is, the more likely it is to emerge from the crisis stronger. But how to embrace this opportunity? Read the first of three articles based on Boldare’s three-part Crash Course webinar series, “Risk Management In Software And Digital Product Development” to learn how and get inspired.

This first article lays out the key risks facing businesses in these challenging times and the digital transformation strategies that you can apply to minimize and manage those risks, including a case study and inspiring practical example from one of our recent clients, Chartipedia, the recently-launched data visualization platform.

From Complexity To Chaos

Before we deep dive into the more practical aspects of risk management strategies, let’s briefly check out their theoretical foundations.

Ralph D. Stacey’s book “Managing Chaos, Managing the Unknowable: Strategic Boundaries Between Order and Chaos” offers us a useful lens through which to view the complexity of the current crisis. Stacey suggests that any situation can be analyzed in terms of how well we understand it and its predictability (how certain the situation is).

A well-understood, certain scenario is simple to deal with. However, the less we understand and the less we can predict with certainty, the more complicated it is, becoming more and more complex until it reaches a point of unknown, unpredictable chaos.

Right now, businesses are operating (or trying to) on the border between ‘Complex’ and ‘Chaotic’. And that brings a variety of risks that must be faced. Drawing on research carried out by McKinsey over the last 10 years, the five biggest risks facing businesses involved in software development and digitization are:

  • New and unproven technologies
  • User and functional requirements
  • Application and system architecture
  • Performance
  • Organization

Out of these risks, the people-related factors present the greatest degree of unpredictability and are therefore the most influential on, and influenced by, the complex and chaotic scenario we are currently facing.

That ‘people factor’ includes your products’ users and their needs and requirements, and also your own people working within the business: their capabilities and, by extension, the organization and processes within which they are operating.

In terms of risk mitigation and management strategies, your organization and processes are crucial, not least because it is these factors over which you have most influence and control.

Enough of theory, let’s explore how you can handle these risks.

8 Risk Management Strategies

In our experience at Boldare, working with digitally transformed and transforming clients all over the world, the following eight strategies are your key points of organizational control when faced with an unpredictable environment:

  1. Budgetary dispersion – As part of your project financial planning, map out the potential areas of financial uncertainty to predict, in detail, where the pain points and risks may occur.
  2. Decentralized decision-making – Operating in an agile manner is important when you don’t know where the next change or pivot might be coming from. A key strategy is to flatten the organizational hierarchy, encouraging decision-making at the lowest appropriate level of self-organizing teams, according to roles and responsibilities. Working in scrum (or nexus, a scaled scrum system) brings multiple benefits.
  3. Reduction of validation time – The earlier you know whether your product is meeting user requirements and needs or not, the more efficient your development process will be. For this, approaches such as prototyping and minimum viable products (MVPs) can streamline the process by testing individual key functionalities with user groups. This is what we have done working with Chartipedia, and you can read about the tests we conducted in the Chartipedia case study.
  4. Evolutionary learning – Prototypes and MVPs can be used as part of a lean build-measure-learn approach that embeds learning in the development process. Each stage is based on the learning from the stage before, enabling the project to pivot when necessary in response to external changes in order to still meet user needs.
  5. Technology – The use of technologies such as distributed architecture and microservices can remove or spread risks (such as hardware limitations, server location issues, or the potential for catastrophic failure of monolithic architecture).
  6. User involvement – Ongoing user research and user-oriented decision-making (e.g. by having a group of users available for repetitive and rapid testing) means you are continuously validating user needs throughout the process.
  7. Focus on communication – Aim for transparent, effective and efficient exchange of knowledge within the development team, with key stakeholders, and with involved users.
  8. Culture – Within the organization and especially the development team for your product(s), the above activities and principles should be part of their basic philosophy, their way of operating.

All of the above strategies and ways of working are common to agile organizations. An agile business - for example, one that adopts the scrum framework (or similar) - will be working in a way that minimizes and manages risk in a complex (and chaotic) world.

Thanks to an agile approach and constant readiness to pivot, such businesses are simply more likely to adapt faster to new, even harsh conditions.

At Boldare, for software development as part of our clients’ digital transformation journey, we use the lean startup approach.

The lean startup approach as a low-risk strategy

If there’s one thing we absolutely know here at Boldare, it’s that the lean startup approach is an excellent framework for building digital products. It’s not because we “think so”. We base this declaration on 16 years’ experience in software development and the lessons we’ve learned working on the more than 250 products we’ve developed so far. As for lean startup’s relevance to risk management in times of crisis, the clue is in the name:

  • It’s “lean”, meaning there’s no wasted effort; it gets you to the goal (a product that meets your user and business requirements) as quickly and efficiently as possible in the circumstances.
  • The “startup” part means it’s designed for operating in conditions of uncertainty and unpredictability.

At the heart of the process is the build-measure-learn loop which ensures your development project is based on regular research (into user needs and circumstances) and review (of how you’re doing meeting those needs under the current circumstances). Basically, it works like this:

Build – establish a hypothesis (for example, users have a problem/need that can be solved by X; build a product iteration (a prototype or MVP) that does X (or a key element of X); test that prototype or MVP with users.

Measure – gather data about the product iteration’s performance against the hypothesis (did it do what users want and need it to?)

Learn – evaluate the product iteration’s performance, increasing your understanding of users’ needs (was your hypothesis correct?)

THEN, pivot if necessary by adjusting your hypothesis, and repeat, building a new (and improved) iteration of the product. Simple as that!

Despite appearances, the build-measure-learn cycle is not circular. It’s a spiral in which you learn more about your users (and goals) with each revolution, climbing up towards the goal of a working digital product that solves their problem, meets their wants and needs, and is profitable for your business.

What makes the lean startup approach a perfect strategy in times of complexity and chaos is:

  • It is based on real data.
  • It gives you quick and frequent feedback on progress (each cycle or ‘sprint’ is usually one to two weeks in length)…
  • … what makes it highly responsive to change.
  • It’s entirely possible to run multiple cycles concurrently; for example, testing two alternative prototypes simultaneously to test two different hypotheses.

The upward spiral is the fastest, most efficient route through uncertainty, identifying and managing changing circumstances and risks at each stage.

For more detail on the lean startup approach, the build-measure-learn cycle, and how it can keep your software development agile and focused, read our article, Lean process for a better product.

See other articles from the “Risk management“ series:

In the next part of this article, we will focus on the case story of the Chartipedia startup and their MVP app. It’s a great example of a lean startup approach to digital product development, with all of its advantages.

Case story: Chartipedia

Chartipedia is a platform for data visualization designers (or, at the risk of oversimplifying, chart-makers!) to present their work. It began as a passion project on Instagram to solve a common problem in the modern world: information overload. However, although charts are a great response to the overload issue, the project faced two more specific problems:

  • Creators need a place to share their data visualizations.
  • Consumers who appreciate and use those visualizations need a place to find them.

Hence, Chartipedia: the data visualization platform and online community for both groups of identified users.

Creating an MVP through the lean startup approach was the best way to develop and test the platform’s core features with its intended users (Chartipedia’s 53,000 Instagram followers). During a two-day kick-off workshop with the Boldare team and the Chartipedia product owners, product personas were used to identify and profile the main target users, a product canvas was used to define the purpose and aim of the platform, and user story mapping techniques were used to define the platform’s main features for design and testing.

See other articles from the “Risk management“ series:

With this solid foundation, the Boldare team began work on the MVP: the key features were wireframed and moodboards were used to create the product’s look. With constant and close communication (using tools such as Slack and Google Meet, and Jira for project management) product iterations were created and tested and progress was reviewed and refined regularly in a series of weekly sprints. Before hitting the market, the app was tested within a group of active Chartipedia Instagram community users. The results brought valuable feedback to the development team and application stakeholders.

The MVP was created and polished according to user feedback and ready to go public in just eight weeks. The Chartipedia platform debuted online in April 2020.

The future depends on risk management

In a complex (and currently, often chaotic) world, the process of digital product development must be able to handle rapid and unpredictable changes; both in terms of user requirements and the wider world. After all, at the beginning of 2020, who could have predicted so many people would be working from home by March? The key to successful development is the capacity and capability to anticipate, identify and manage the risks.

What’s clear is that in such a world:

  • People and processes are crucial factors for any organization.
  • The lean startup approach offers an agile process tailor-made to the current circumstances.
  • Development decisions must be based on real data and for digital products that means frequent, in-depth user feedback.

This series of webinars and articles is our response to the current global pandemic and reflects our firm belief that a digital transformation strategy is the best way to come out of this crisis thriving, and not just surviving.