Lely Monalisa

Case study · B2B SaaS · Manufacturing OEE

Closing the two gaps that kept Prochiz on Excel.

Evomo is an IoT-based OEE platform for manufacturing. At Prochiz, a cheese manufacturer, the platform tracked downtime — but didn't calculate what that downtime cost, and had no way to assign or track corrective action. Two features were designed to close those gaps — both inside the existing IA.

Role

UI/UX Designer

Timeline

2 sprints · Mar–Jun 2022

Client

Cheese mfg · B2B SaaS

Focus

Loss calculator & Issue tracker

Process

Artifact analysisPersona definitionFeature designSprint reviews & iteration

TL;DR

The loss calculator adds expected-loss columns (pcs and value) to the Pareto view. Prochiz's monthly reports required this — it was filled in manually before. The issue tracker adds PIC assignment, corrective action logging, and status tracking. The weekly per-line report now generates automatically as a side effect of using the tracker.

Evomo Dashboard — OEE OverviewProduction Line 101
Evomo OEE main dashboard

00  /  Context

Evomo connects shop-floor IoT data to management decisions.

OEE?

Overall Equipment Effectiveness — a 0–100% score for how productively a factory runs. 100% means no downtime, no defects, running at full speed.

How Evomo works

IoT sensors

Data collected

OEE dashboard

Manager reviews

Decision & action

01Sensor → Evomo

IoT sensorsOn every machine

Sensors installed on each machine automatically detect when it starts and stops. No manual logging required from operators.

Drag or click to explore each step

01  /  The Problem

Prochiz's monthly operation had five workflows Evomo didn't cover.

Click the priority gaps to see which feature was designed to close them.

Evomo already had

Real-time OEE
Downtime detection
Machine & line logs
Pareto analysis
Platform covers
Manual / Excel
01

OEE target not in platform

02

Reports built manually in Excel

05

Yield data entered manually in Excel

03High

Expected losses not calculated

Click to expand ▾

04Critical

No owner, tracking, or record

Click to expand ▾

Priority matrix — Impact vs Effort

Not built
Built
Impact ↑
Quick winsDo first
MajorPlan it
Fill-insIf time allows
AvoidDeprioritize
01
02
05
03
04
← Low effortEffort →High effort →

02  /  Discovery

Both gaps were visible in the CSV before the first interview.

Prochiz shared their monthly reports, downtime logs, and production spreadsheets as CSVs. Two things stood out immediately: a column for expected production loss that Evomo didn't fill, and a corrective action column tracked separately in Excel. Interviews with the Engineer and Plant Manager confirmed both.

Two gaps confirmed in interviews

Feature 03Priority

Monthly reports included an expected production loss column per downtime event

Confirmed by the Plant Manager: this column is required for management reporting. Evomo didn't compute it. Prochiz filled it in manually every month.

Feature 04Priority

Downtime logs had a corrective action and owner column

Confirmed by the Engineer: tracking who owns a problem and what was done is standard on the floor. Evomo had no assignment or status tracking — handled in a separate Excel sheet.

Three personas

Plant Manager

Users

Plant, Engineering, QC, Production Supervisor

Pain

Too much time processing data. Hard to align floor with management.

Access

Dashboard · Analysis · Chat · Download reports

Director

Users

Dir, HoM, HoMS, BU Head, Engineering Head

Pain

OEE data arrives late. Can't verify accuracy. No factory-wide view.

Access

Dashboard · Analysis (Production & Downtime) · Download reports

Engineer (Admin)

Users

Engineer (Admin)

Pain

Floor data gaps make accurate production plans unreliable.

Access

Full config: Runtime · Machine · Schedule · Reason · Product

03  /  Design Decisions

Loss calculator and issue tracker — two features, one workflow.

Both features extend what's already in Evomo. No new pages. No new navigation. The loss calculator adds a column where Prochiz needed one. The issue tracker turns the same downtime event into an actionable record.

Feature 03

Expected Losses

One column added to the Pareto view. No new page.

The data was already there — downtime duration, cycle time, product price. The only missing piece was the calculation and where to show it. A new page would have required a navigation step every time. A column requires nothing extra.

Why this column matters

Downtime logged as minutes is a time problem. The same event expressed as 340 pieces and Rp 4.2M is a business problem. The column doesn't add new data — it changes what the data means.

Formula

Expected Loss (pcs) = Downtime (min) ÷ Cycle Time (min / pcs)

Expected Loss (value) = Expected Loss (pcs) × Product Price (Rp / pcs)

Cycle time and product price are pre-configured by the Engineer (Admin) in platform settings.

Pareto view with expected losses
Expected Losses

Pareto view — the added pcs column (expected losses) highlighted.

Feature 04

Core Feature

Problem Tracker — log it, assign it, close it, report it.

Why it matters

The weekly per-line report was assembled by hand in Excel every week. The tracker doesn't create new reporting work — it turns the act of closing an issue into the data source for that report.

The loss-reduction chain

01

Problem occurs

Machine stops, downtime logged

02

Loss quantified

Expected losses (pcs) auto-calculated

03

PIC notified immediately

Tracker opened → assignee alerted

04

Weekly report

Closed issues aggregated per production line

Role walkthrough

Operasional (create)

Operasional (create)
Click for Zoom

Tapping a downtime block opens the Input Reason modal. Start/end times are pre-filled from the sensor. Operasional selects a reason, adds a note, submits.

Timestamps come from sensors — no manual entry. Manual input is still available for edge cases.

Dashboard — downtime auto-logged

Dashboard — downtime auto-logged
Click for Zoom

On the operator dashboard, downtime is automatically logged from sensor data. Tapping a downtime card opens the Input Reason modal.

Input Reason — step-by-step flow

Input Reason — step-by-step flow
Click for Zoom

Inside the modal: select a reason from the list, add a note, then submit. Start and end times are pre-filled — no manual time entry needed.

Superadmin

Superadmin
Click for Zoom

Superadmin opens the issue list, selects an issue, assigns a PIC. Status moves from Open to Assigned.

Pareto view — reviewing downtime reasons

Pareto view — reviewing downtime reasons
Click for Zoom

Superadmin reviews downtime reasons and loss values in the Pareto view. Clicking a dot on the chart then selecting 'Pilih Sebagai Issue' converts it into a tracked issue.

Issue list → Edit Issue

Issue list → Edit Issue
Click for Zoom

On the Issues page, Superadmin selects Edit on the relevant issue. The Edit Issue dialog opens — status is changed and a PIC is assigned to take ownership.

Edit Issue — status, PIC, and corrective instructions

Edit Issue — status, PIC, and corrective instructions
Click for Zoom

Inside the dialog: select a status, assign a PIC, and write corrective instructions in the Tindakan Perbaikan field before submitting. The assigned PIC receives a notification.

Operasional (fix)

Operasional (fix)
Click for Zoom

Operasional opens the assigned issue, sets it to In Progress, logs the corrective action, then closes it.

Notification — assigned issue alert

Notification — assigned issue alert
Click for Zoom

Once Superadmin assigns a PIC, Operasional receives a notification on the dashboard. Tapping it navigates directly to the Issues list.

Issue list → Edit Issue

Issue list → Edit Issue
Click for Zoom

Operasional finds the assigned issue in the list and selects Edit. The dialog opens — status is updated to In Progress to signal work has started.

Log corrective action and close

Log corrective action and close
Click for Zoom

Operasional logs the corrective action taken in the Tindakan Perbaikan field, sets status to Close, and submits. The issue is resolved and recorded.

Prototype walkthrough

Design decisions

Flow

Issue creation from the Pareto row

The expected-loss figure stays visible while logging. A separate page breaks that context.

Flow

Superadmin: Open first, then assign PIC

Open means acknowledged but unassigned. Assigning before reviewing skips the accountability step.

Flow

Operasional entry point is a notification

Floor staff don't watch a dashboard. A push notification is the only reliable handoff signal.

Data

Three statuses only

Every person interviewed used exactly these three states. Pending approval didn't exist in their process.

Data

Session tied to the operator, not the line

Same line, different shift, different context. The session field makes weekly reports attributable.

Data

Closed issues feed into Trends

Closure isn't the end. Each resolved issue becomes input for the next Pareto cycle.

04  /  Outcomes

Two gaps closed.

Before and after for each.

JobBeforeAfter
Expected loss calculationCalculated by handAuto-computed in the Pareto view
Problem tracking & weekly line reportManual ledgers + Excel report built weekly per lineDowntime → Issue tracker → PIC notified → weekly report auto-generated

Plant Manager — weekly BoD presentation

The Plant Manager presents per-line OEE to the Board of Directors every week. Before: two tools assembled into one deck. After: both are in Evomo.

Loss calculator

Per-downtime loss in pcs and value, directly from the Pareto view. No separate calculation.

Issue tracker

The weekly aggregated view shows what broke, who fixed it, and what was done — per line. No Excel.