Contents

Bridging the Gap Between Business Stakeholders and IT: Why and How

Bridging the Gap Between Business Stakeholders and IT: Why and How webp image

Companies today are increasingly dependent on technology. If you build a product or offer a service, there is a chance that you have an IT team supporting your business in delivering value to customers. This remains true even for organizations whose offerings aren’t strictly digital. If you don’t leverage technology, you risk falling behind competitors. On the other hand, if you do use technology, you likely manage many processes that IT must develop, maintain, and evolve over time in response to a constantly changing business landscape.

As your organization grows, IT systems inevitably become more complex. New teams form and specialize to meet diverse business needs, but they also begin relying heavily on one another. Over time, you may notice that your initial agility fades away. Introducing changes or building new features can take longer and often involves more people and teams. This is usually the result of complexity that accumulates when adding new features or modifying existing systems. While you can’t entirely escape the essential complexity of the business, you can manage the accidental complexity introduced on a technical level.

That’s where investing not only in excellent engineering skills but also in close collaboration and partnership comes in. Proper domain area identification, discovery of business processes, knowledge sharing, and thoughtful team setup can bring significant long-term benefits to your organization.

Speaking the same language and playing toward a common goal

It’s common to hear business stakeholders complain that IT is disconnected from 'real business' living only in a technical world. They may feel IT uses complicated jargon, doesn’t understand the product’s needs, or doesn’t meet delivery expectations. As a result, IT departments are sometimes seen as a 'necessary evil' and pure cost center only.

But does it have to be this way? What if your IT department spoke your language and could suggest new or improved ways of handling specific business cases, leveraging its knowledge of the technical details and possibilities? What if it spotted the hidden potential for new features that could give your business a competitive advantage? Ideally, everyone should work toward the same goal, right?

The good news is this can be done. There are proven approaches and techniques that help to decrease the distance between business and IT, enhance shared understanding of business problems, and ultimately converge into a truly unified product team. While it’s not a quick fix and does require time, effort, and discipline from both sides, it can pay off significantly. For instance, when business and tech teams collaborate during Event Storming workshops or when teams build Context Maps (from DDD toolbox), misunderstandings or hidden, implicit assumptions often surface. It’s much better to discover these during the 'sticky notes on the wall' workshop rather than weeks or months later when code addressing the wrong problem has already been written. Having tech people truly aligned with the business is a great asset.

Correct boundaries reduce change impact and increase delivery flow

Have you ever experienced a situation where building a new business feature required the involvement of most teams working on their own services? While that might be justified for big, strategic, business-wide changes, it shouldn’t be the norm. So why does it happen so frequently? One reason could be that the system is incorrectly partitioned: boundaries, responsibilities, and domain areas aren’t well-defined or have eroded over time.

For example, in order to add a new payment method, your inventory or shipment services might need to be modified to handle payment details, even though they shouldn’t really care about how an order was paid. Or teams managing customer services might have to introduce changes on their side to correctly notify customers based on the new payment method.

And, in case you wonder, it doesn’t matter whether you build on microservices or not. Failing to identify and maintain proper boundaries sooner or later leads to unintended coupling between teams. This, in turn, causes decreases in their independence and agility, slows delivery, and prevents experimentation and trying new features. What’s worse, changes applied in such incorrectly partitioned systems often require additional code to work around the unwanted coupling, increasing the accidental complexity mentioned above.

Investing in deep domain and business discovery, identifying boundaries, and mapping real dependencies correctly pays off. It’s relatively cheap because you gain that knowledge before any code is written, saving your teams from building on the wrong foundations. Of course, it’s not limited to greenfield projects only. Correcting courses of existing products may be more challenging due to already existing setups, constraints and codebases. On the other hand, it can be easier in a sense that you probably have answers to most of the business-related questions at hand. Many of the hidden assumptions have already surfaced over the course of the project. So it’s still beneficial, even for an existing project, to start now if you haven’t already. Additionally, augmenting discovery and modeling techniques with lessons learned from e.g. Team Topologies approach and aligning teams accordingly may bring measurable benefits in the aspect of delivery and effectiveness.

Evolution and adapting to changing business requirements

I mentioned earlier the potential of discovering hidden opportunities that can further expand your business. Again, such possibilities are far easier to spot when your system is properly partitioned and has clear boundaries, showing precisely how different business areas collaborate. Techniques like Event Storming or strategic Domain-Driven Design (with its Bounded Context and Context Map concepts) make it much easier to build systems where swift evolution, experimentation, and iterating without involving every team are relatively easy to achieve.

Because business is constantly in motion, your priorities and focus areas will also change. Some areas become more strategically important, new areas emerge to support existing ones, and others turn more into commodities over time. Tools like Wardley Maps can help you visualize and predict this evolution by simulating how your business context shifts in response to changing market conditions or competitors’ actions. Still, spotting potential changes isn’t enough - you also need a system and team structure that can adapt.

For example, imagine that you predict and bet that a certain area of your business will become a commodity soon as software supporting it starts to be available off the shelf. Then, you might decide to focus more on your core business domain and phase out in-house development of that commodity. Perhaps you may consider buying it or outsourcing it for maintenance and slowing down unprioritized development. Again, clear and well-maintained boundaries make such a shift easier, preserving some of the agility you had at the beginning.

Understanding the mythical 'big picture' from both sides

In large companies, building specialized areas of expertise can create knowledge silos. While having particular area experts is valuable, it’s equally important for teams to understand the bigger picture. Do your teams know where their work fits in the overall value chain? Do they understand how processes function end to end, or only their part?

Moving toward closer collaboration between business and tech helps reduce silos. It also encourages people to look beyond their own domains, leading to valuable insights, the identification of potential issues, and the discovery of new opportunities. Collaborative modeling approaches, such as Event Storming, are particularly useful when used consistently and correctly.

Already mentioned Context Maps (a concept from Domain-Driven Design) are also helpful. At first, they may seem purely technical, but I believe stakeholders can benefit from them too. By focusing on business areas and their interactions (rather than technical services and deployment units), these maps become understandable to everyone. You can see which team owns each area, which teams you need for a new feature, and how information and team dependencies flow across the system. This visibility helps you roughly gauge a feature’s impact on the system.

For engineers, Context Maps offer additional insights, such as team relationships and integration styles, which inform decisions about future changes. They also serve as living documentation for newcomers and team members transitioning between different areas.

Summary

By now, you can hopefully see the benefits of bringing your tech teams closer to the business. Not only can this improve delivery flow, but it also reduces misunderstandings and helps avoid delivering technically correct solutions that solve the wrong problem. Speaking the same language, sharing a clear picture of the business, and defining proper boundaries around business concepts all contribute to better strategic decision making, correct solution design, and more effective system maintenance and development over time.

At SoftwareMill, we not only deliver robust and high-performance software for our clients, meeting their demanding technical requirements. Our teams become their true technology partners, helping them to reach goals by building software that fits their businesses best at the current and future stages of growth. We know the ultimate goal is not the code. Code is usually just a vehicle necessary to reach it. The vehicle we build accelerates achieving the goal instead of holding it back. It also can travel a long distance while the business evolves over time. None of this is possible without great engineers who can and know how to truly understand the business, working closely alongside stakeholders and business experts.

Reviewed by: Rafał Maciak, Michał Stopyra

Blog Comments powered by Disqus.