Wallenius Wilhelmsen — EMS case study · Karine
All work

( Case study · B2B SaaS · Logistics )

EMS — Equipment Management System

For Wallenius Wilhelmsen — designed a logistics platform from scratch to track and coordinate terminal equipment such as lashing gear and rolltrailers across their full lifecycle.

Year
2026
Duration
3 years 10 months
Role
Senior UI/UX Designer

( 01 ) The problem

The Equipment team's daily work was heavily manual — roughly 450 emails a day, constant switching between disconnected systems, and no joint way to track equipment across the Group.

450

emails per day

Nearly all communication and requests ran through email, with no joint system to replace it.

The old way of working: a cluttered desk with a laptop and monitors open on Excel, a logistics portal, Outlook, Teams, a legacy system and a carrier website, surrounded by sticky notes reading Too many tools, Data not consistent and Need consolidated view
  1. All communication and most requests were based on email
  2. Most tasks required jumping between several different systems and applications just to collect data
  3. Manual tracking of the Group's cargo-carrying equipment
  4. Lack of visibility, with hours spent chasing missing manual updates
  5. No joint system within the Group
  6. Outdated, homebuilt solutions — no longer working, or requiring workarounds for bugs

( 02 ) The objective

Turning manual work into measurable equipment utilization gains.

  1. Increase EQ utilization — roll trailer utilization with a minimum 3–7 day improvement per lift (2.5–5.8% improvement)
  2. Increase response time on all EQ-related requests
  3. Process alignment across the Group
  4. Automation, digitalization & reduction of manual work

$410K–$963K

annual cost savings from needing less equipment to perform the same number of lifts

$5–13M

additional annual earning potential with the existing fleet, where cargo demand exists

$200K–$467K

additional annual savings via optimized use of lashing equipment

( 03 ) The solution

EMS: one platform for equipment, vessel and voyage tracking, contracts, port stock and vessel stock — plus maintenance and repair — built from the ground up.

Sketched from scratch with stakeholders, a business analyst, PM, and engineering, EMS replaces a patchwork of disconnected applications and Excel spreadsheets with a single system that ops teams, maintenance staff, and third-party partner companies all work from.

  • Centralized requests & approvals

    Equipment and lashing requests, maintenance & repair jobs, and cost estimates are raised, tracked, and approved or declined in one place instead of across disconnected tools.

  • Real-time vessel & equipment tracking

    Ops teams see live status on voyages, port stock, and equipment condition instead of manually cross-checking spreadsheets.

  • Third-party collaboration built in

    External partner companies (e.g. Sven Temmerman) work inside the same system as internal teams, instead of a parallel manual or spreadsheet process.

  • One source of truth across modules

    Voyage Inventory, Equipment Lease, Port Stock, Dwell Time, Lift Statistics, and Maintenance all live in one connected platform.

The EMS dashboard on a tablet: request counts, transaction overview, utilization and waiting-time cards, requested and in-transit tables, and a lashing inventory list with stock-level bars
The EMS mobile dashboard: an alert about expiring contracts, today's activity counts, a due-maintenance donut chart, performance cards and a list of expiring contracts

( 04 ) Background

EMS wasn't a redesign — it was built from scratch.

Before it existed, keeping equipment and vessel data aligned meant switching between multiple disconnected applications, with Excel doing the real work of holding everything together.

As the designer on the project, I worked closely with stakeholders, a business analyst, a PM, and engineers to translate real operational needs into a working product for an existing B2B audience — internal ops and maintenance teams, and the third-party companies they coordinate with day to day.

Equipment requests user flow

Equipment requests user flowFrom the Booking requests screen, users search by filters, view a ticket, filter and sort into a priority-wise list, or open archived requests, which are dropped after 90 days. Each request shows an equipment status: available, repositioning, or repo required. From request details, users approve (allocating equipment at the port of loading and updating stock), decline (releasing blocked equipment and updating stock), plan repositioning, request changes (notifying the ticket creator by email and Teams), or add notes.Booking requestsAvailableRepositioningRepo requiredSearch by filtersView ticketFilter & sortArchivedFilters combined (AND)Request detailsArchived listPriority-wise listDropped after 90 daysRequest detailsApproveDeclinePlan repoChange requestNotes & historyTicket approvedTicket cancelledPlan repositioningChanges requestedAdd / edit notesAllocate equipment at POLRelease blocked equipmentNotify creator / BOUpdate stock overviewEmail & Teams alertScreenUser actionOutcome
Equipment requests — user flow, simplified from the full map

Setup — user management flow

Setup — User management flowFrom EMS Admin, users are searched, viewed or modified, with edits opening a details popup covering general info, linked ports and terminal, and role and external info. Azure Team activates or deactivates accounts and onboards new EMS users, adding them to the EMS group and B2C list before an Azure user sync completes setup.EMS AdminAzure TeamNotifySearch userApply filterUser listExportBulk Excel export — usersView individual userdetailsView details / search bynameUser details — generalinfo, linked ports &terminal, role & externalModify individual userdetailsEdit popupIndividual user detailsUpdate Azure account foruserActivate / deactivateOnboarding of new EMSuserAdd user to EMS groupAdd user to B2C listAzure user sync for EMSScreenUser actionOutcome
Setup — user management flow, simplified from the full map

Lashing requests & stock transactions

Lashing requests & stock transactionsSimplified from the full map: EMS and Port Admin search, create or cancel lashing requests, which move from new through ongoing to complete or cancelled. Vessel Crew create stock transactions — loading or discharging for vessel or port stock — which confirm once complete.EMS / Port AdminVessel CrewLashing requestsSearch requestsCreate / cancelLashing request overviewLashing equipmentrequired qtyNewOngoingCompleteCancelledLashing stocktransactionCreate stock transactionLoad / discharge for vessel orport stock, unitizedTransaction confirmedScreenUser actionOutcome
Lashing requests & stock transactions, simplified from the full map

Lashing stock overview

Lashing stock overviewSimplified from the full map: the lashing stock overview is filtered by type and port, and can be broken down by port or by vessel into category and type-wise stock, or viewed as global transaction stats — each drilling into a filtered, exportable data list.Lashing stock overview(filters: type & port)Count by portCount by vesselGlobal transaction statsStock by category / type,region & portStock by type, current vsstandardGlobal or filtered active-transaction statsFiltered data list, port-or vessel-wiseScreenUser actionOutcome
Lashing stock overview, simplified from the full map

Stock overview

Stock overviewSimplified from the full map: EMS and Port Admin view stock either as of the current date or as a six-week forecast, filter by CC type, port or location, and drill down into region, port, terminal and depot-level counts shown as a chart, previewed as a list and exported.EMS / Port AdminStock overview: currentdateAvailability overview:forecastSearch filter — CC type,port or locationEquipment count by region,port, terminal & depot levelGraphical representation(bar / donut)Preview equipment listExport to Excel / applystatus filterScreenUser actionOutcome
Stock overview, simplified from the full map

Maintenance & repair

Maintenance & repairSimplified from the full map: an M&R supplier views port equipment stock and creates or cancels an estimate, which moves from pending to approved to confirmed, or is rejected. EMS Admin tracks the same statuses from a dashboard of stats, recent estimates and upcoming inspections.M&R SupplierEMS AdminView port equipmentstockM&R estimate — create /cancelEstimate overview & detailsPendingApprovedConfirmedRejectedView M&R dashboardStats, recent estimates &upcoming inspectionsStatus codes — Pending MRER,Approved MRAP, Confirmed MRRP,Rejected MRNAScreenUser actionOutcome
Maintenance & repair, simplified from the full map

Setup — depot location flow

Setup — depot location flowEMS Admin searches, filters and exports the depot location list; creates a new depot location; views or edits an individual one across overview, location and address details; and activates, deactivates or deletes it.EMS AdminSearch depot locationApply filterDepot location listExportBulk Excel exportCreate depot locationAdd newNew depot locationcreatedView individual depotlocationView details / search bycodeOverview info & locationdetailsModify individual depotlocationEdit popupOverview info & addressdetailsActivate / deactivateIndividual depotlocationDeleteScreenUser actionOutcome
Setup — depot location flow, simplified from the full map

( 05 ) Research & requirements

Because EMS is a B2B product for an existing, well-defined audience, the goal wasn't discovery research to find who the users were — we already knew.

Instead, the focus was getting the requirements right: I worked directly with stakeholders and real end users through interviews and requirements-definition sessions, alongside the business analyst and PM, to make sure the system matched how operations teams actually work — not how we assumed they worked.

What this looked like

  1. Interviews and requirement-definition sessions with real users (ops staff, maintenance team) rather than a formal generative-research phase
  2. Close, ongoing collaboration with the business analyst and PM to translate operational rules (contract terms, approval chains, equipment categories) into product requirements
  3. No formal user personas or user-journey mapping were produced for this project — requirements were validated directly and iteratively with the people who'd use the system
Research — requirement sessionsThe business owner and the business analyst/PM worked with the designer to discuss and map requirements — what each screen needed, why, and the integration points. That fed low-fidelity wireframes, then a Figma prototype to test the flow, confirmed against requirements with the business before high-fidelity wireframes with full components and states were handed off to developers.Business ownerBusiness analyst & PMDiscuss & map requirements — what's on each screen, why, and the integrationpointsLow-fidelity wireframesFigma prototype — test the flowConfirm with business against requirementsHigh-fidelity wireframes — full components & statesHandoff to developersStakeholderWorking sessionDeliverable
Research — requirement sessions, simplified from the full picture

( 06 ) User journey

From request to resolution

User journey map: five journey steps (user and role management, master data setup, supply planning, equipment management, contract management), each broken into actions, needs and pains, touchpoints, customer feeling, and backstage opportunities and process ownership

( 07 ) Define — who EMS serves

One system, several distinct roles

Rather than a single persona, EMS had to serve several distinct roles working from the same data:

( 08 ) Key decisions

Three calls that shaped EMS

01

Combine actions from integrated apps and emails in one system

Actions from third-party integrations and email threads — covering Voyage Inventory, Equipment Lease, Port Stock, Dwell Time, Lift Statistics, and Lashing Inventory — are pulled into one system, so nothing gets missed across scattered tools.

02

Third-party partner mailing and tracking

Partner companies like Figaro raise and track their own requests directly inside EMS, removing the friction of switching to a separate manual process.

03

Approval and rejection right on time

Requests across the system — creating bookings, preparing repositioning plans, maintenance and repair, and change requests — are approved or declined directly in EMS, with clear status tracking at each step, replacing manual, spreadsheet-based tracking with a full audit trail.

( 09 ) Process

From sketch to high-fidelity wireframe

Notebook sketch: summary boxes for Lift per RT and full-year lift, a hand-drawn monthly line chart, and year-over-year comparison boxes with the calculations worked out by hand Notebook sketch: a hatched bar chart of Total Lift by Year from 2018 to 2026 year to date

( 10 ) Information architecture

Eleven modules, one connected platform

Working from the requirements gathered with stakeholders and real users, I mapped EMS into its core modules and the flows connecting them:

Each module has its own detailed user flow, mapped in Figma alongside the interface design.

( 11 ) Design

Built for fast, time-sensitive decisions

With requirements defined, I moved into wireframes and then high-fidelity design in Figma, prioritizing scannability and fast decision-making over density for its own sake — this is a tool ops staff return to throughout the day, often to make time-sensitive calls on expiring contracts, urgent maintenance requests, and stock shortages.

The platform was designed responsively across web and mobile, so ops teams can review dashboards, approve requests, and track vessels and equipment whether they're at a desk or on the move.

EMS sign-in screen: a Wallenius Wilhelmsen vessel-and-cars hero image above email and password fields, remember-me and forgot-password links, and a support-contact line
EMS mobile dashboard: an alert banner for expiring contracts, activity-today counters for tickets, lashing requests and amendments, a due-maintenance donut chart, utilization and waiting-time trend cards, and a contracts-expiring list
Cargo Carrier Request list: a sortable table of tickets with business unit, ticket number, CC type, ports, vessel, voyage, ETD, status and last-modified columns
Mobile ticket detail: status, duration, route, vessel and voyage, CC revenue, and tabs for cargo unit, ticket history and notes
Welcome-back dashboard: Figaro request counters, a requested-vs-in-transit bar chart, utilization and waiting-time cards, requested and in-transit tables, and a lashing inventory list with stock-level bars
Mobile RT Lift stats: lift-per-RT and year-over-year cards, a WWO lift-volume bar, full-year lift figures, a 12-month line chart and year-over-year comparison rows
Project Request detail: overview fields, status, duration and revenue, and an expanded shipment row with CC type, quantity, commodity and dimensions
Mobile voyage-schedule changes list, showing vessel, voyage and the type of change — delays, vessel swaps, cancellations — per route
Port calendar: a year view of vessel arrivals and departures for a single port, with ETA/ETD chips per sailing
Dwell Time report: a region-by-region breakdown of equipment by CC type and days overdue, color-coded from on-time to over 30 days
Plan Repositioning: an automatic repositioning suggestion with allocated quantities, and a flagged shortfall offering ad-hoc booking or external transport
Repair estimate modal: a cost table by repair type with quantity and hours, a description field and a file-upload dropzone
Mobile tracking-issues and voyage-schedule-changes view, with a bar chart of issue types and a list of affected voyages
Role permissions: a role list and a screen-by-screen access matrix with view, edit, delete and full-access checkboxes
User detail: contact info, a map of linked ports and terminals, role assignment and company information
Equipment Lease report: grouped totals by leasing company and CC type, with quantities and last status update dates
Add a new project request: shipment template shared across shipments, with vessel, CC type, commodity and dimension fields, and a per-shipment note

( 12 ) Impact

Moving away from disconnected tools and spreadsheet workarounds toward one connected system.

01

Faster workflows

Teams no longer lose time jumping between applications or manually reconciling spreadsheet data.

02

Responsive across devices

The system was designed to be fully responsive, since many department users — particularly port admins — mostly access the application from mobile devices rather than desktop.

03

Centralized master data setup

Master data (the setup model) can only be added, updated, or deleted by EMS admins, keeping the system's core data consistent and controlled.

04

Reduced errors

Centralized data cut down on mistakes that came from manually re-entering or aligning information across separate applications and spreadsheets.

05

Full lifecycle visibility

Vessel tracking, equipment condition, and maintenance and repair requests — including estimate approval or decline — all handled in one place.

06

Clear cross-department visibility

Status indicators make it easy for other departments to see at a glance whether a booking or repositioning request is already completed, in process, or pending — improving communication without needing to check in manually.

( Next case study )

Flex Academy

( Like what you see? )

( Contact )

Let’s talk

How would you like to get in touch?

Or email me directly: kotinyankara@gmail.com