The Disconnection Between Business & Software Engineering
Create valuable software that is aligned with the desired outcomes.
Hi there, it’s Niels. 🤗 Welcome to my bi-weekly newsletter. This newsletter helps with the creation of valuable digital solutions, making better digital investments, and creating an efficient organization. Questions? Ask them here.
Building software solutions can be challenging, even for experienced software engineers.
The best engineers are very pragmatic and masters at selecting the best tool for the job. They are great at coaching juniors. They like to convert complex problems into easy-to-understand solutions. Their efforts result in maintainable and extendable code. They help new team members to become productive in a short time frame.
If you don’t like the idea of building useless software or software that costs multiples of what it will ever return, then this article will be interesting for you.
Working with technology is not that hard for an experienced software engineer. One thing I feel, that makes it challenging, is the disconnection between the business and software engineering.
Technology is dependent on business strategy and goals. If you don’t understand the business:
How can you be confident in making the right technology decisions?
How can you make sure the project succeeds?
How do we even measure success?
I know it is not the job of a software engineer to define the business strategy or the business architecture. The goal of this article is to help software engineers and their leaders with creating valuable software solutions that are aligned with the desired business outcomes. This information can also be used to challenge the business about what they are asking you to build.
If you are solving the wrong problem, it doesn’t make a difference if you’re the best at writing beautiful and maintainable code.
Disclaimer: My background is in software engineering, I don’t have an MBA. I’m just very interested in creating valuable software. In order to create valuable software, I feel it’s necessary to know how a software solution fits into what a business wants to achieve.
Decomposing The Business
I like to decompose things in order to better understand their internal components. A business can be viewed as a function. You feed the business input, the business processes it, and finally, the output is generated. If you change the input or the process, another output is generated. A business can grow and a business can shrink.
A business is a process where resources are used as input. The outcome is the output of the process. Output is not the same as outcome. The business strives to maximize the outcome.
Two things can increase the outcome:
change in resources (sometimes less is more)
improved efficiency of the business processes
Outcome
Output, outcome, and benefit are all related but they are definitely not the same.
Output: The product, service, feature, or result created by an initiative. Example: The new company website explains the advantages of the created products.
Outcome: The result of the change derived from implementing the project. Example: Shorten the average sales cycle time by 30%.
Benefit: The measurable benefit resulting from an outcome. Example: Increase sales revenues by 10%.
For any business, there are two categories of desired outcomes: your customer outcomes and your company outcomes.
While they are very different, you must not prioritize one over the other. You must work on achieving both simultaneously or you will fail on both fronts. Going overboard on either prevents you from achieving long-term business success!
Some examples of desired outcomes for your business:
Profit
Customer value added
Shareholder value added
Customer retention rate
Employee morale increased
And some examples for your customer’s business:
Cost reduction
Equipment uptime
Create peace of mind for the buyer
Permit innovation
Business outcomes influence the input of the business process. Outcomes can be positive or negative. The image below presents a simplified sketch of how business and customer outcomes fit in the overarching business.
The business strategy determines the desired business outcomes and customer outcomes. Measurable benefits can be used to track progress towards the desired outcomes.
It’s important to question how solution initiatives relate to desired business or customer outcomes. If no one can answer this question for you, then you might start preparing for failure even before the initiative has even started.
Resources
Let’s investigate the input of the business process. What helps to discover and categorize these inputs is The Business Model Canvas.
The key resources from The Business Model Canvas are necessary to create value for the customer and also indirectly for the business. They are considered assets to a company. They are needed to sustain and support the business. They are also important for growing the business. These resources can be categorized into four main categories:
Physical resources: raw materials, buildings, vehicles, transportation, storage facility, machines, factory, …
Human resources: staff, such as talented engineers or marketing experts. These resources are more important in companies in the knowledge-intensive and creative sectors.
Intellectual resources: brand, patents, copyrights, partnerships, customer databases, customer insights, technology systems, software, and processes
Financial resources: cash, credit, …
Bare in mind that key resources can also be acquired via partners (Key Partners from the Business Model Canvas).
Software (built or bought) is a non-tangible resource, which means that it can potentially be an important enabler for your business. But, it can also be a bad investment.
The Business Process
A business model describes how a business creates, delivers, and captures value back from its customers.
Business Process Phases
The business process goes through different phases unless you fail at a previous one.
Problem-Solution Fit: You have evidence that customers care about certain jobs, pains, and gains. You don’t have evidence that they care enough to buy it.
Product-Market Fit: A need is identified and validated in the market. The customers from that market are also prepared to buy what the business creates.
Business-Model Fit: The value proposition creates value for your customers. The business model also creates value for your organization. The business model is now profitable.
Profitable businesses capture more value from the customers than it costs to create and deliver their products and services.
Decomposing the Business Process
We can use the definition of the business model to divide the business process into three sequential steps. Each subprocess includes people that do the work. These people use technology to make the work they do more efficient.
Creating, delivering, and capturing value are all primary activities or core business processes. They are essential for adding value and creating a competitive advantage. When further decomposing these processes, we can make make a distinction between core and supporting processes. The role of the supporting processes is to help make the core processes more efficient.
Examples of core business processes: product development, logistics, marketing, and sales
Examples of supporting business processes: accounting, finance, quality control, human resource management, procurement, and R&D
It’s important to know where a software solution is located in the business process. Is the solution part of a supporting business process or is it part of a core business process?
When a clothing manufacturer sells manufactured clothes via a website, then that website is part of a core business process.
When a software company has a public website for recruiting new employees, then that website is part of a supporting process. In this case, recruiting is not the core business. Recruits support the organization in becoming more efficient at the core business processes.
It is not because technology is part of a core business process that you should build it yourself. The company should do what the company is good at and for which it can access the right talent.
A technology solution that is part of a core business process should match how the business wants to differentiate itself. If you want to be the most convenient online business to buy a particular product from, then it is important that your website is convenient to use.
Core business processes create customer value. They should result in benefits for the customer.
Supporting business processes make the organization more efficient. They should result in benefits for the organization.
Challenging The Business
By now, you have the necessary foundation to start questioning a solution initiative. Make sure you collect enough information about the items underneath. If no one can provide you with this information, then prepare for failure and a waste of time.
The Problem: What problem is this initiative solving? It should include what’s going wrong, and why it is a problem. It should be clear what customer or business outcomes it relates to and if the problem is part of a core business process or part of a supporting process.
The Proof: Ideally you want proof of the problem. You want to avoid participating in wild guesses. Evidence should back up the problem statement. A combination of qualitative and quantitative data works best.
The Measurement: How will we measure the success of this initiative? For each outcome, one or more measurable benefits can be inferred. Quantitative data might show us where we are now. Now, where do we want to move the measurable benefits?
The Target Audience: Who are we building this solution for? Is this for employees or for customers? What kind of employees or what kind of customers?
People with the following roles should be able to provide you with answers: business architects/enterprise architects, domain experts, business analysts, product managers, and project managers.
Conclusion
It’s challenging to create valuable software solutions when there is a disconnection between the business and software engineering.
In this article, I have explained how I see the business at a macro level. Resources are used as input for the business. The business model processes the resources. The outcome is the output of the process. It represents the change result of implementing the software solution.
The outcome can be beneficial for either the customer, the business, or both. In the long run, it is important to balance customer outcomes and business outcomes.
A solution initiative is either part of a core business process or a supporting business process. Core business processes create value for the customers. Supporting business processes make the business more efficient.
As a software engineering team, it’s important that there is transparency and clarity about how a software solution fits into the business strategy. You should have at least an idea about the problem to be solved, what will make the solution successful, and the target audience of the solution.
At Sirris, we help you make better digital investments:
We provide vendor-neutral guidance on how you can build valuable digital solutions and products.
We focus on people and processes and never look at technology in isolation.
Schedule a free conversation now if you want to maximize the impact of your digital initiative.