top of page

FORM STUDIO

[ Year ]

2026

[ Type ]

Product Design

[ Contribution ]

100%

OVERVIEW

I created a structured civic workflow platform that reduced ambiguity in publishing and payment logic.

FS-Main.png
Product

Govstack SaaS form platform for municipalities

Role

Product Designer (End-to-End Ownership)


Publishing, Payment logic, System architecture


Cross-functional collaboration with PM & Engineering

Duration

4 Weeks

Context

Form Studio is a municipal SaaS platform used to manage publishing workflows, payment logic, and service configurations. Over time, tightly coupled states and nested rules made system behavior unpredictable and difficult to maintain. I redesigned the workflow architecture by introducing explicit state models and structured payment logic to improve clarity, scalability, and trust.

Problem

The legacy product supported only simple form creation. Its UI/UX was not user-friendly, resulting in low sales performance and making it difficult to position the product as a core digital tool. To support meaningful digital transformation within government organizations, the product needed to be rebuilt as a practical, operational tool that could fully realize its potential.

Quotes.png
Target Users

The primary target users were small to mid-size municipalities, with the strongest product-market fit in mid-size cities serving approximately 100,000 to 500,000 residents. Existing customers such as Waterloo, Ann Arbor, and Corpus Christi reflected this profile.

These environments typically operate with multiple administrators managing shared forms across departments, requiring clear ownership visibility and role-based coordination. They are highly compliance-driven, with legal, financial, and transparency obligations shaping daily operations.

At the same time, municipal institutions tend to be risk-averse and less tech-forward. Adoption rates for new systems are often slow, and many staff members are not digitally native. This made cognitive simplicity, structural clarity, and governance safeguards essential to successful implementation.

Lifecycle.png
System foundation

This citizen request lifecycle became the structural lens for every design decision.

Key Design Decisions

Decision 1

Publishing as Governance

The existing system treated publishing as a lightweight toggle. However, in multi-stakeholder, compliance-driven environments, that model introduced operational risk:

In government environments, publishing is not a simple on/off action.
It represents accountability, compliance, and public trust.

  • No clear visibility into approval states

  • Ambiguity around ownership

  • Limited audit traceability

  • High risk of accidental exposure

Government teams operate in risk-sensitive contexts where actions must be defensible, reversible, and clearly documented. Unlike commercial tools optimized for speed and experimentation, public-sector systems must prioritize predictability and governance.

Why This Redesign Mattered
Design Strategy

The goal was to reduce cognitive load while increasing structural clarity. The publishing system was redesigned to make states explicit and continuously visible, clearly distinguishing between draft, scheduled, published, archived, and disabled conditions. Approval-aware workflows were introduced to reflect real operational processes, and audit traceability was embedded into the structure to support accountability requirements. By minimizing accidental state transitions and aligning the interface with government operational logic, the product evolved from a basic form builder into an accountable workflow system.

Form - Publish - General.png
Form - Settings - General Status Tracking Enabled.png
Old
New
Publish States

To address this, I introduced explicit lifecycle states (Draft, Published, and Archived) and clearly separated structural status from runtime availability conditions such as Live, Pending, Expired, and At Capacity.

Unpublished.png
Pending.png
Live.png
Expired.png
AtCapacity.png
Archived.png
Screenshot 2026-02-14 at 11.22.40 PM.png
Screenshot 2026-02-14 at 11.22.58 PM.png
Navigation to Reflect Operational Sequence

Pre-publish: Content → Settings → Publish
Post-publish: Content → Settings → Share → Results

Trade Off

Publishing became slightly more structured.
But operational ambiguity was significantly reduced.

Outcome

Publishing decisions became predictable.
Shared ownership became visible.
Backend state logic and UI mental model were aligned.
Increased confidence for non-technical staff
Prevented accidental public exposure

Decision 2

Payment as Controlled Calculation

The legacy form system supported only basic, linear logic. However, real-world usage revealed that municipalities required multi-layered and conditionally structured payment models. This exposed a structural gap between the existing logic framework and the operational realities of government workflows, making it necessary to introduce a more robust form logic foundation.

The new form builder was built on top of SurveyJS, which offered the option to directly leverage its native logic engine. At this stage, we faced a strategic decision: whether to adopt SurveyJS logic as-is, or design a new solution tailored to our specific governance and payment requirements.

The Risk

Technically, everything could be handled in one place.But technically possible does not mean cognitively manageable.

If question logic and financial calculation logic were mixed together, the form would collapse into a single, fragile condition tree. Non-technical administrators would lose clarity and control over how the system behaved, and even small changes could introduce cascading errors. This would significantly increase the risk of payment mistakes and support overhead. At its core, this was not just a structural issue. It was a cognitive boundary problem.

8-gui.png
https___dev-to-uploads.s3.amazonaws.com_uploads_articles_oqv3upi6z92aw9dseqq9.webp

SurveyJS Conditional Logic System

Design Strategy

Instead of allowing all payment logic to live inside survey rules,
 I proposed a structural boundary:

  • SurveyJS → question visibility & response logic

  • Form Studio Fee Items → financial calculation logic

This separation reduced mental load and clarified ownership.

For Govstack Form Studio fee architecture, I redesigned payments into structured fee items. Supported types were flat amount, per unit/quantity, tier/option-based, time-based, external lookup, and formula-based. Each fee type had a dedicated configuration pattern.

Early Modelling

Initial exploration revealed that pricing logic quickly expanded into nested conditional trees.
 Even simple scenarios introduced combinatorial complexity.

Instead of exposing this complexity to administrators, I encapsulated the logic in independent Fee Items, each responsible for a single pricing rule.

Form Studio-2 2.jpg
Form Studio-3 2.jpg
Final Design

Instead of requiring users to write multiple nested IF rules, the system enabled administrators to configure structured tiers in a clear and intuitive way.

I examined complex, real-world municipal scenarios and restructured them into a simplified fee framework that could be configured without fragile conditional trees. The goal was to allow realistic but operationally complex cases to be implemented through a controlled and predictable fee structure.

Scenario

Community Hall Rental and Permit Application

  1. Event type base fee

    • Private event: $150

    • Commercial: $300

    • Non-profit: $80

  2. Resident vs Non-resident

    • Resident: No additional cost

    • Non-resident: +20%

  3. Late booking fee

    • Less than 7 days $50 rush/late fee

  4. Add-ons

    • AV equipment: $40

    • Cleaning service: $60

    • Security staff: $30 / hr

  5. Security deposit

    • Deposit $200 (no tax, refundable)

    • Pay only the deposit at the application, rest will be invoiced after the approval

  6. Tax

    • HST 13%: Base fee + Room rental + Add-ons

    • Deposit - no tax applied

Structured Complexity

Each fee item was designed as a modular unit with clear categorization and inclusion rules.
Rather than embedding logic directly into form conditions, fees were structured as independent objects with defined properties:

Form - Settings - Payments - ON - LateFee.png
Checkbox group fee item_EventType.png
Checkbox group fee item_ResidentFee.png
Checkbox group fee item_SecurityDeposit.png
Token and Report

Fee items were not just calculation units. They became reusable tokens across reporting and communication.

Modal.png
Modal.png
Results

The redesign significantly reduced cognitive load in fee configuration by clearly separating content logic from financial logic. This structural boundary created a scalable foundation for future payment models while ensuring safer configuration for municipal staff. 

Outcome

This project resulted in clearer operational boundaries, reduced governance risk, and increased structural integrity across the product. Hidden system states were surfaced, UX issues were reframed as architectural problems, and structural boundaries were intentionally defined to prevent cascading complexity.

By balancing flexibility with clarity, the redesign protected long-term product integrity in a risk-sensitive environment and reduced the likelihood of configuration errors under pressure. This was not a visual refresh. It embedded governance into the core architecture of the product.

Reflection

If extended further, I would validate publish-state comprehension through structured usability testing and measure configuration error rates before and after the redesign to quantify its impact. I would also introduce additional guardrails, such as automated fee conflict detection, to proactively prevent misconfiguration in complex scenarios.

bottom of page