Loading

Project 01Enterprise Web

← All work

CDG OneFMS - Movement Order

Designing a vehicle handover workflow that adapts when real operations don't follow the plan.

CDG OneFMS is an enterprise fleet-management platform. Movement Order handles one specific part of it: moving a vehicle from one handover point to another. It looked simple at first - Vehicle A to Location B - until real operations brought booking context, vehicle assignment, one-time delivery addresses, accessories and documents, and planned versus actual handover.

I redesigned the workflow so standard cases remain simple while operational exceptions remain fully supported.

Role
Senior UX/UI designer
Year
2023
Scope
UX analysis · Workflow design · Information architecture · UX/UI · Prototyping
Platform
Enterprise fleet management · Web
Context
Product work on CDG's OneFMS fleet-management platform. Customer and staff details in the screens are fictional
A large monitor seen from below, against a pale grey background, showing the CDG OneFMS movement order list for a corporate rental: status and search filters, an Add new button, and a table of movement orders with their vehicles, handover routes, assignees, planned dates and statuses

01The challenge

A vehicle movement isn't just From → To

A Movement Order doesn't exist independently. It begins inside an existing operational context.

  1. Corporate Customer
  2. Service Booking
  3. Movement Order
  4. Execution
  5. Complete / Cancel
  • What the system already knows

    • Customer
    • Booking
    • Service requirement
    • Vehicle requirement
    • Booking reference
  • What's specific to the movement

    • Assigned vehicle
    • Schedule
    • Handover points
    • Accessories
    • Documents
    • Actual outcome

The first UX problem

Don't ask users to rebuild context the system already knows.

But a second problem made the workflow harder. Real vehicle movements don't always follow predictable paths, so the interface needed to support exceptions without turning the normal workflow into a giant form.

A vehicle might move

  • Known location → Known location
  • Known location → One-time customer address
  • Planned location → Different actual handover location

02From form to workflow

The design problem wasn't really the form

The feature could easily have become a long list of fields: vehicle, date, from, to, address, contact, accessories, documents, remarks. But the real workflow was much easier to understand as five questions - and they became the mental structure of the experience.

  1. What?

    Which vehicle is moving?

  2. When?

    When should it move?

  3. From?

    Where is it handed over from?

  4. To?

    Where is it going?

  5. What else?

    Accessories, documents and operational notes.

Instead of
Design all required fields
I approached it as
Design the lifecycle of a vehicle movement
  1. 01

    Plan

    Define what should happen.

  2. 02

    Execute

    Handle what is happening.

  3. 03

    Record

    Preserve what actually happened.

This distinction became especially important when reality differed from the original plan.

03UX strategy

Make complex vehicle movement predictable without making the interface rigid

North star

Users should manage the vehicle movement itself while the system handles surrounding booking context and operational exceptions.

Principles

The workflow follows four principles.

  1. 01

    Inherit what is already known

    Customer and booking context should flow into the Movement Order automatically.

  2. 02

    Focus the interface on movement

    Vehicle, schedule and From → To should visually dominate supporting information.

  3. 03

    Reveal exceptions progressively

    One-time addresses and unusual handover information only appear when required.

  4. 04

    Preserve intent and outcome

    What actually happened should never overwrite what was originally planned.

04Core experience

Start with context, not data entry

Movement Orders are created from an existing Service Booking, so creation begins by establishing context: Corporate Customer → Booking Reference → Create Movement Order.

Before entering anything, the user already knows whose booking this belongs to, which service it supports, and what business context surrounds the movement. The form can therefore focus only on information unique to the operation.

Form hierarchy
  1. Booking context

  2. Vehicle assignment

  3. Movement schedule

  4. Hand-over From → Hand-over To

  5. Accessories

  6. Documents

  7. Remarks

Supporting information sits below the primary operational decision rather than competing with it.

Design principle

Use inherited context to reduce input, then prioritise the decisions specific to the task.

OneFMS

Rental management

Corporate customerArc Asia Pacific Pte LtdSRB-0723-008Create movement order

Service booking

Booking period

11/07/2023 23:00 - 11/12/2023 00:00

Customer name

Arc Asia Pacific Pte Ltd

Customer address

12 Kallang Way #03-08 Arc Tower 349215 SG

Sale staff

Marcus Tan

Main driver

Daniel Ong Wei Ming

Service booking remark (Contract remark)

N/A

Movement details

Movement type *

Check-out

Collection option

Delivery - Saved Address

Planned movement time *

01/05/2023
14:30

Assignee

Vehicle no.VA no.GroupMake & modelColorAssignment periodStatus
SHB 6646S00018308403A - rentalSubaru Impreza WRX STI RA Spec-C 1.6L AutomaticBlack01/05/2023 - 01/08/2024Reserved

Hand-over from

ComfortDelGro Rent-A-Car

Origin *

Head quarter - 205 Braddle road, Singapore, Singapore

Hand-over to *

Destination *

Accessory

Add new
NameQuantityAccessory no.
Select
Enter
Enter
Seat cover0109209000
Tool kit02N/A

Attachments

Upload filesor Drop Files

Only files with the following extensions are allowed: pdf, image extension, excel
Maximum size: 300 MB

Remarks

Preference

Step 1 / 9

Assignee

Pick who's moving the vehicle.

The Service Booking above is already filled in - customer, driver and address. Nothing to retype.

Fig. 01Create Movement Order - a working prototype. The Service Booking's context comes first and is already filled in; only the movement's own decisions are asked for.

Make From → To the central object

The movement itself is the most important part of the order. So instead of presenting From and To as unrelated form fields, I treated them as one connected route: a vehicle is moving between two operational states.

For the normal case, the experience stays compact. If the vehicle needs to reach a customer address that isn't stored as a reusable location, additional fields appear only after that option is chosen - never during a normal branch-to-branch transfer.

Standard location
LocationDateTime3 steps
One-time delivery
ContactAddressDate / timeAdditional information4 steps

Design principle

Progressive disclosure should protect the simple case without preventing the complex one.

OneFMS

Rental management

Corporate customerArc Asia Pacific Pte LtdSRB-0723-008Create movement order

Service booking

Booking period

11/07/2023 23:00 - 11/12/2023 00:00

Customer name

Arc Asia Pacific Pte Ltd

Customer address

12 Kallang Way #03-08 Arc Tower 349215 SG

Sale staff

Marcus Tan

Main driver

Daniel Ong Wei Ming

Service booking remark (Contract remark)

N/A

Movement details

Movement type *

Check-out

Collection option

Delivery - Saved Address

Planned movement time *

01/05/2023
14:30

Assignee

Vehicle no.VA no.GroupMake & modelColorAssignment periodStatus
SHB 6646S00018308403A - rentalSubaru Impreza WRX STI RA Spec-C 1.6L AutomaticBlack01/05/2023 - 01/08/2024Reserved

Hand-over from

ComfortDelGro Rent-A-Car

Origin *

Head quarter - 205 Braddle road, Singapore, Singapore

Hand-over to *

Destination *

Accessory

Add new
NameQuantityAccessory no.
Select
Enter
Enter
Seat cover0109209000
Tool kit02N/A

Attachments

Upload filesor Drop Files

Only files with the following extensions are allowed: pdf, image extension, excel
Maximum size: 300 MB

Remarks

Preference

Step 2 / 9

Hand-over to

Choose who receives it. From → To is the centre of the order; From is already the depot.

Fig. 02Hand-over From → To - a working prototype. The standard route stays one choice; a one-time delivery address opens inline only when it's needed.

Preserve planned versus actual

Creating an order describes intention. Completing it describes reality. Those aren't always the same thing.

A vehicle may be scheduled for delivery at Location A, then during execution the customer requests handover somewhere else. The system shouldn't replace Location A with Location B. Location A tells us what was planned; Location B tells us what actually happened. So completion records the outcome separately.

Planned
Hand-over FromHand-over To
Actual
Actual hand-over FromActual hand-over To
Lifecycle
  1. Create
  2. Active
  3. Update
  4. Complete - or Cancel

Complete records the real operational outcome. Cancel remains a separate path so an order that never happened can never appear as a completed movement.

User flow - one movement order
Service bookingCreate orderCustomer · booking inheritedAssign vehicleSet scheduleKnowndestination?Pick locationEnter one-time addressActive orderPlanned route keptGoesahead?CancelledHanded overas planned?Record actual locationMark completeCompletedYesNoNoYesYesNoContact, address and timeappear only nowNever shown as acompleted movementThe plan stays; the outcomeis recorded beside itPlanned and actualboth on record
  • Screen
  • Decision
  • Action
  • Yes
  • No

Design principle

Operational software should preserve both intent and outcome.

OneFMS

Rental management

Corporate customerArc Asia Pacific Pte LtdSRB-0723-008MO-CR-0007Update movement order

Service booking

Booking period

11/07/2023 23:00 - 11/12/2023 00:00

Customer name

Arc Asia Pacific Pte Ltd

Customer address

12 Kallang Way #03-08 Arc Tower 349215 SG

Sale staff

Marcus Tan

Main driver

Daniel Ong Wei Ming

Service booking remark (Contract remark)

N/A

Latest Check-out form

CO-CR-000002-signed.pdf

Latest NRT form

NRT-CR-000002-03-signed.pdf

Movement details

Movement type

Check-out

Collection option

Delivery - Saved Address

Planned movement time

01/05/2023
14:30

Assignee

Ethan Lim - Service advisor - 0012345678
Vehicle no.VA no.GroupMake & modelColorAssignment periodStatus
SHB 6646S00018308403A - rentalSubaru Impreza WRX STI RA Spec-C 1.6L AutomaticBlack01/05/2023 - 01/08/2024Reserved

Hand-over from

ComfortDelGro Rent-A-Car

Status

Successful

Origin

Head quarter - 205 Braddle road, Singapore, Singapore

To complete this Movement order requires following fields to be filled

Actual origin

Head quarter - 205 Braddle road, Singapore, Singapore

Actual hand-over time

01/05/2023
14:20

Mileage

1900
km

Fuel/Battery Level

F

Hand-over to *

Daniel Ong Wei Ming - 0012345678

Status

Successful

Destination

12 Kallang Way #03-08 Arc Tower 349215 SG

To complete this Movement order requires following fields to be filled

Actual destination

Actual hand-over time

01/05/2023
15:05

Actual hand-over to

Mileage

1948
km

Fuel/Battery Level

F

Accessory

Add new
NameQuantityAccessory no.
Seat cover0109209000
Tool kit02N/A

Forms

Form typeVer.Generated versionGenerated atLatest signed versionLast upload at-by
Check-out02CO-CR-000002.pdf23/08/2023 14:00CO-CR-000002-signed.pdf25/08/2023 14:00 by Amy Tan
NTR02NRT-CR-000002.pdf23/08/2023 14:00NRT-CR-000002-03-signed.pdf25/08/2023 14:00 by Amy Tan
Check-out01CO-CR-000001.pdf23/08/2023 14:00

Attachments

Upload filesor Drop Files

Only files with the following extensions are allowed: pdf, image extension, excel
Maximum size: 300 MB

supportingdocument.pdf

Remarks

Preference
In progressLast updated by Amy Tan - Sale Manager 23/06/2023 22:35

Step 7 / 9

Actual hand-over to

The plan stays above, read-only. Actuals start as the plan - change only what differs.

Try Other - the exception path.

Fig. 03Mark as complete - a working prototype. The plan stays visible, read-only, above the actual handover, which starts as the plan.

05Designing for exceptions

The edge cases were part of the core workflow

In many products, edge cases happen rarely enough to remain secondary. That wasn't true here. The movement model needed to support at least three legitimate operational scenarios - and complexity appears only as the operation requires it.

  1. 01

    Standard handover

    Minimal input.

    1. Known location
    2. Known location
  2. 02

    One-time delivery

    Reveal address, contact and delivery information only when required.

    1. Known location
    2. Unique customer destination
  3. 03

    Actual handover somewhere else

    Capture the actual handover without destroying the original plan.

    1. Planned location
    2. Different real-world destination

Design principle

The interface shouldn't expose every exception all the time, but it must make every valid operation possible.

OneFMS

Rental management

Corporate customerArc Asia Pacific Pte LtdSRB-0723-008MO-CR-0007Update movement order

Service booking

Booking period

11/07/2023 23:00 - 11/12/2023 00:00

Customer name

Arc Asia Pacific Pte Ltd

Customer address

12 Kallang Way #03-08 Arc Tower 349215 SG

Sale staff

Marcus Tan

Main driver

Daniel Ong Wei Ming

Service booking remark (Contract remark)

N/A

Latest Check-out form

CO-CR-000002-signed.pdf

Latest NRT form

NRT-CR-000002-03-signed.pdf

Movement details

Movement type

Check-out

Collection option

Delivery - Saved Address

Planned movement time

01/05/2023
14:30

Assignee

Ethan Lim - Service advisor - 0012345678
Vehicle no.VA no.GroupMake & modelColorAssignment periodStatus
SHB 6646S00018308403A - rentalSubaru Impreza WRX STI RA Spec-C 1.6L AutomaticBlack01/05/2023 - 01/08/2024Reserved

Hand-over from

ComfortDelGro Rent-A-Car

Status

Successful

Origin

Head quarter - 205 Braddle road, Singapore, Singapore

To complete this Movement order requires following fields to be filled

Actual origin

Head quarter - 205 Braddle road, Singapore, Singapore

Actual hand-over time

01/05/2023
14:20

Mileage

1900
km

Fuel/Battery Level

F

Hand-over to *

Daniel Ong Wei Ming - 0012345678

Status

Successful

Destination

12 Kallang Way #03-08 Arc Tower 349215 SG

To complete this Movement order requires following fields to be filled

Actual destination

Actual hand-over time

01/05/2023
15:05

Actual hand-over to

Mileage

1948
km

Fuel/Battery Level

F

Accessory

Add new
NameQuantityAccessory no.
Seat cover0109209000
Tool kit02N/A

Forms

Form typeVer.Generated versionGenerated atLatest signed versionLast upload at-by
Check-out02CO-CR-000002.pdf23/08/2023 14:00CO-CR-000002-signed.pdf25/08/2023 14:00 by Amy Tan
NTR02NRT-CR-000002.pdf23/08/2023 14:00NRT-CR-000002-03-signed.pdf25/08/2023 14:00 by Amy Tan
Check-out01CO-CR-000001.pdf23/08/2023 14:00

Attachments

Upload filesor Drop Files

Only files with the following extensions are allowed: pdf, image extension, excel
Maximum size: 300 MB

supportingdocument.pdf

Remarks

Preference
In progressLast updated by Amy Tan - Sale Manager 23/06/2023 22:35

Step 7 / 9

Actual hand-over to

Handed to someone else on site? Choose Other and record who - the order still completes, as it really happened.

Fig. 04Handover scenarios - a working prototype. Record a vehicle actually handed to someone else, or dropped somewhere new; the order still completes, and the difference shows against the plan.

06Supporting the full operation

More than a vehicle and two locations

The order also needs enough context to remain useful to everyone involved. These aren't the main experience, but they make the workflow operationally complete.

  • Accessories

    Additional items handed over with the vehicle stay attached to the order.

  • Attachments

    Documents and supporting files remain part of the same operational record.

  • Remarks

    Free-form information captures things structured fields cannot anticipate.

  • Audit context

    Users can understand who last updated the order and when.

07Designing for scale

One movement model instead of multiple separate forms

A simple solution could have been a delivery form, a return form, a workshop transfer form and an other-transfer form. But the underlying job is still the same: move a vehicle from one state or location to another. So CDG OneFMS uses one Movement Order model whose behaviour adapts to context.

  • Location types

    • Known location
    • One-time location
    • Other / actual location
  • Lifecycle

    • Create
    • View
    • Update
    • Complete
    • Cancel

Design principle

Standardise the workflow, not the scenario.

New movement cases reuse the same structure instead of introducing another specialised form each time.

08Outcome

From a static movement form to a flexible operational workflow

The redesigned experience supports the complete movement lifecycle.

  1. Service Booking
  2. Create order
  3. Assign vehicle
  4. Define handover
  5. Handle exceptions
  6. Update
  7. Record actual outcome
  8. Complete / Cancel
  • Less repeated input

    Existing booking context flows naturally into the order.

  • Complexity only when needed

    Exceptional addresses and handover information appear conditionally.

  • Better operational history

    The system preserves both what was planned and what actually happened.

09Reflection

Enterprise forms are workflows disguised as forms

Movement Order initially appeared to be a form-design problem. Answering these questions defined the experience far more than arranging individual fields.

  • What does the system already know?
  • What information genuinely changes?
  • What happens when reality differs from the plan?

Takeaway

Good enterprise UX doesn't remove complexity the business genuinely needs. It reveals that complexity at the right moment.