Decisions & frameworks

Remove the work you do not need

Every automated step creates future obligations. Remove rituals before building them into software, while preserving the decisions that protect the work.

Pattern Engine · Practical field notes

An unnecessary approval has a larger cost once it becomes software. It needs permissions, reminders, exception handling, tests and an owner. Automating the step can make it faster while making it harder to question.

Removing needless work before a build reduces more than today’s clicks. It removes a set of future obligations. The judgment lies in distinguishing a ritual from a control whose value is easy to overlook.

Look for the decision the step protects

A report can survive long after the meeting it served. An approval can survive a policy change that removed the approver’s discretion. Ask what someone can do differently because the step exists, and what would be lost if it disappeared.

This question also protects useful checks. A second review may rarely find a problem because it discourages a risky action or catches a consequential exception. Infrequent intervention is not proof of uselessness. Understand the failure it was designed to prevent.

The Agile Manifesto’s simplicity principle values avoiding unnecessary work. In practice, that requires understanding the work before deleting it. A smaller process is valuable when it preserves the necessary decisions with fewer obligations around them.

Separate the rule from the habit

A team may say every expense needs a particular manager’s approval. Investigate whether that reflects an actual policy, an old workaround or a preference that nobody has revisited. The solution depends on the answer.

For a hypothetical routine purchase process, the business might decide that preapproved categories below an agreed threshold need no extra review. Exceptional purchases would still require a decision. Software can then support a simpler rule instead of chasing a signature for every transaction. The responsible business owner must approve that change; an engineer should not silently redefine the policy.

Reduce duplicate handling

Look for the same information being requested or entered more than once. Determine which copy is authoritative and why the others exist. Sometimes an integration is justified. Sometimes a shared view of the existing record is enough.

Also examine notifications. Sending every event to everyone can make important exceptions harder to notice. Define who needs to act, which information enables that action and when a summary would be more useful than an interruption.

Test a smaller process

Try the revised approach with a limited group or a bounded type of work. Explain what changed and how to report a problem. Compare completion, errors and exceptions with the previous approach before expanding it.

Keep a recovery path while uncertainty is high. If the old report is being retired, preserve the ability to reproduce its important information during the trial. If an approval is removed, verify that the replacement rule behaves as intended.

Automate the part that remains

Once the purpose and ownership of each step are clear, automation has a more stable target. The resulting workflow can be easier to understand, test and maintain because fewer branches exist only to accommodate old habits.

A shorter process leaves fewer obligations to explain, test and maintain. That reduction can be the most durable result of the project.

Keep exploring