DMS+ Workflow

Product design case study

DMS+ Workflow

Designing the approval engine DMS+ was missing

Role
Senior Product Designer
Team
1 PM, 2 Developers, 1 QA
Timeline
3 months
Product
Enterprise SaaS
BeforeOutside DMS+
Email to HRCall managerAny update?Chat follow upWho has it now?Approved? Reply all
What I did

A workflow engine inside DMS+.

I designed the workflow engine that sends every record for review before it goes live.

Problem

Submit meant approved.

Any record went live the moment someone clicked submit. Employee files. Vendor entries. Contracts. No check and no owner.

AfterInside DMS+
DMS+ workflow builder canvas for the Employee Onboarding workflow
Impact
40+Workflows live
3Customers using it
1 dayApproval time. Was 5 days
3Deals it was part of

01Context

DMS+ stored records. It never checked them.

A Master in DMS+ holds structured records and their documents. Before this project a record went from submitted to official in the same second.

02Research

Two ways in. Neither had a check.

A user uploads a document and picks a Master. Or a user opens a Master and creates a record directly. Both skip review.

How approvals worked outside DMS+

With our BA team I mapped employee onboarding step by step. Every step after the form happened on email, calls and chat.

15Customer conversations
6Companies
7Approval steps in onboarding
5Days per record
What it cost

HR spent hours chasing people for a yes or no.

Employee onboarding journey map with pain points
Click an image to zoomFigJam board

What I found

Finding 1

Nobody owned the next step.

Finding 2

Nobody could see where a record was.

Finding 3. Critical

Nobody could prove who approved what.

Compliance marked this as critical.

The market already had this

Laserfiche, DocuWare, M Files and Newgen all have workflow inside their DMS. DMS+ did not. We were losing deals because of this.

CapabilityLaserficheDocuWareM FilesNewgenDMS+ before
Workflow trigger
Approval rules
Escalation
Audit trail

03Problem

How might we

Move approvals out of email and into DMS+ so every record has an owner, a status and an audit trail before it goes live?

Clear ownership

One person owns each step.

Clear progress

Everyone can see where a record is.

Approval inside DMS+

No email or calls.

Trusted records

Nothing goes live until every step is done.

Less manual work

HR stops chasing people.

04Constraints

Small team. Short runway.

3Months
2Developers
1QA
1PM
1Designer. Me
Fewer options that always work. Every screen buildable in its sprint. Edge cases solved in design.

05Approach

Start with the work people do. Not a feature list.

I split every onboarding step into two groups. That split became the node system.

Four parts that work together

Every record moves through the same lifecycle. Each colour shows which part owns that step.

Master Pending

Holds records until approval is done.

Roles

Department, Designation, Reporting Manager, Department Head and User Group decide who acts.

Builder

Admins create the process.

Dashboard

People act on their tasks.

Information architecture for the DMS+ workflow system
FigJam board

06Solution

From submit to trusted record

Four parts. Each one answers a different question.

6.1

Submission and Master Pending

When a Master has a workflow attached a new record does not go live. It waits in Master Pending.

Decision

Separate submission from approval

A record can exist and still wait for approval. The whole system is built on this.

Before: one action
Submit = Live
After: two states
Submitted
Master Pending
Live in Master
DMS+ metadata view listing submitted records for a Master
6.2

Trigger

An admin picks a Master and the event that starts the workflow, from six trigger types.

Trigger configuration panel showing six trigger types
Decision

One trigger per workflow

You always know why a workflow started. Different events become separate workflows.

Option A

Many triggers

CreatedUpdated
→
One workflow

Unclear which event started a run.

Picked

One trigger

Created→
Flow A
Updated→
Flow B

Cost: more workflows to manage.

6.3

Builder

Admins drag and connect ten node types to build a real process.

Action nodes
ApprovalTaskEmailUpdate Metadata
Logic nodes
If/ElseConditional BranchSplitMergePauseEnd
Workflow builder canvas with connected nodes

The Approval node

The main node. Its settings answer five questions. Tap one to see the options.

Approval node basic configuration tab
  1. Hierarchy (Department → Designation → Role → User) or User Group.

Sub approval

The approver can ask others for input without adding a new step. The admin sets who can be picked.

When nobody responds

Day 0

Assigned

Task lands in My Actions.

Day 2

Reminder

Email goes to the approver.

Day 4

Escalation

Task moves to another person.

Day 7

Auto Finish

Closes as Approved or Rejected.

The other nine nodes

Task

Upload files, edit fields or mark done.

Email

Sends a message using workflow data.

Update Metadata

Changes a record field on its own.

If/Else

One condition and two paths.

Conditional Branch

Many conditions. No match goes to Others.

Split

Runs paths at the same time.

Merge

Joins paths. Waits for any or all.

Pause

Stops until a set time or date.

End

Closes the workflow.

Decision

Keep Split and Merge simple in V1

With two developers and one QA I picked fewer options that always work over more options that can break.

Shipped

  • Split runs paths at the same time
  • Merge waits for any or all

Roadmap

  • Split based on data
  • Merge with its own outcome
  • Multiple merge rules
6.4

Dashboard

The Builder creates the process. The Dashboard is where people do the work.

My Actions shows your turn. Nothing else.

Status page

Shows everything

People search for what is theirs.

Picked

Task list

Only what needs action now.

Decision

Only the active step shows up

Rahul from HR approves first. Sneha, the Hiring Manager, sees the record only after Rahul is done.

Workflow Dashboard showing My Actions task list

Review and progress on one screen

Three pages
Picked
Decision

One screen instead of three pages

Reviewers never leave the record to check progress. In testing, approval was completed in 3 clicks.

Action workspace with submissions, record and process panels
SubmissionsSwitch without going back.
RecordFields, files and activity log.
ProcessDone, active and pending steps.

The Builder decides what the approver sees

The Take Action screen is built from each step's settings. Change a setting and watch the screen.

Interactive. Try it
Admin sets this in the Builder
Approver sees this in the Dashboard

Tap a decision card to switch it.

Review and take action screen for the selected decision
Sent to the next step. Step 3, Manager, gets the task in My Actions.

Routing rules

The approver never sees these rules. They only see the result. The cell for your decision lights up.

End workflow ON
End workflow OFF
Approve
Next step or closeApprover picks. Close makes the record live.
Next stepNext person gets the task.
Reject
Send back or closeApprover picks. Close ends the workflow.
Send backGoes back a step to fix.

07Edge cases

What breaks at enterprise scale

Seven cases I solved in design before QA ever saw them. Pick one.

01

Admin edits a workflow while records are still inside it

Risk

Running records break or jump steps.

How I solved it

Every edit creates a new version. Running records finish on the version they started on. New records use the new one.

08Results

Approvals now run inside DMS+.

Was 5 days1 dayAverage approval time
Was all0Records live without review
Was 61HR follow ups per record
Was 03Customers using workflows
New3Deals where workflow helped

“We finally know who needs to act next.”

— PM
Before
Record created
Email and calls
Follow ups
Unknown status
HR adds by hand
After
Record created
Master Pending
Right person
Approved in DMS+
Live in Master
Clear ownershipEach step has one ownerClear progressShown in the Process panelApproval inside DMS+No email or callsTrusted recordsPending until completeLess manual workSystem follows up, not HR

09What is next

Roadmap

Split based on dataMerge with its own outcomeMultiple merge rulesDelegationWorkflow reports
What I learned

Complexity is acceptable when responsibility is clear.