Start with one real example

Show how a work order, booking or stock movement happens today. Identify who starts the task, who takes over and how you know it is complete. An anonymised example is a better starting point than a long feature list.

Separate rules from screens

Before implementation, I define required fields, allowed status transitions, permissions and corrections. If two people edit the same record, the application needs an explicit rule for accepting or rejecting their changes.

Agree on verifiable scope

The proposal describes the application, integrations, data transfer and acceptance checks. Importing old records, offline operation and mobile installation are separate requirements when needed. Price and schedule follow that specific scope.

Take a real task through the prototype

Reviewing the opening screen is not enough. Together, we walk through intake, corrections, cancellation and completion, then invalid inputs and network failures. Once the flow works, I refine the interface and connect the agreed services.

Move data with checks

Before migration, I examine columns, identifiers, duplicates and text encoding. A trial import runs separately; record counts and relevant totals are compared with the original. The source records remain available until the result is accepted.

Release with a way back

An update receives access checks, critical workflow tests and a backup plan. Guidance follows the agreed user roles. After release, reported issues and real usage inform subsequent changes.