An Industrial Calculation Tool Changed How I Write Software

Most of my projects are web systems, but one WPF industrial calculation tool made me write software in a different way.

The tool solved busbar cutting calculations. The input was the spacing between location points. The output was the cut busbar length and installation position. The rules were specific: lengths had to stay between 6 and 12 meters, terminal heads had to keep a required distance from the nearest location point, and the first and last segments had fixed constraints. The goals were also clear: minimize the number of busbars, or maximize reuse of a certain length.

The hard part of this kind of project is not page complexity. The hard part is making the rules computable and the result explainable.

Business Rules Become Constraints

When I build backend systems, I often decompose a business into objects and workflows. In this tool, the first step was translating business rules into mathematical constraints.

Location points, spacing, possible lengths, start and end positions, and valid installation points cannot be cleanly handled by piling up if statements. They restrict one another. If one segment length changes, later installation positions change. If one cut point is invalid, the whole plan may become unusable.

So I modeled possible lengths as a domain, possible cut points as another domain, and let the solver enumerate feasible solutions. In that shape, the code expressed the business rules themselves rather than one fixed algorithm trick.

Excel Was Part of the Real Workflow

This tool had no database and no complex account system, but it was not simple.

The user's real workflow was Excel. Location-point data came from Excel, and the calculation result needed to go back to Excel. For this kind of tool, Excel is not a temporary format. It is the collaboration medium already used on site.

The implementation had to handle template export, data import, result lists, and result export. The value of the software was not replacing the whole workflow. It was catching the calculation step that was most error-prone, then returning the result to the existing workflow.

Desktop Tools Should Stay Out of the Way

Web systems often emphasize permissions, collaboration, and long-term maintenance. Desktop calculation tools care deeply about something else: not interrupting the person using them.

Import button, calculate button, export button, result table. The interaction should be direct. Disable controls while calculating, refresh results when finished, and show a clear message when no feasible solution exists. The interface does not need to be complicated, but every step should tell the user what the software is doing.

The experience of this kind of tool comes less from visual polish and more from certainty.

Results Need to Be Understandable

The worst outcome for an industrial tool is a result that looks correct but no one trusts.

That is why the output needs more than a calculated length. It also needs installation position. It needs to appear in the interface and be exportable. The user has to take the result back into drawings, spreadsheets, or process documents.

This made me care more about explainable output. In business systems, explainability may appear as logs, states, and permissions. In a calculation tool, it appears in whether each output field can be traced back to a real-world rule.

Small Tools Still Train System Thinking

This project showed me that system thinking is not limited to web platforms.

A small desktop tool still needs an understanding of business input, constraint relationships, calculation goals, user workflow, and delivery shape. Its system boundary is not servers, APIs, and databases. It is rules, algorithms, spreadsheets, and the working site.

When I look at requirements like this now, I first ask whether the business rules can be expressed clearly, whether input and output fit the real workflow, and whether the result can be explained. If those questions have answers, a small tool can create very practical value.

Have a 0-to-1 system or technical lead role to discuss? Email me

©2026 Eddie Xu. All rights reserved