Skip to main content

Supporting case study

One design system across four DHCS workstreams

California DHCS

MCWeb Portal, OPUS, OLCC, and Provider Portal were moving in parallel while the design team shifted from Adobe XD to Figma. I rebuilt the existing Bootstrap patterns in Figma, checked them with screen readers, and kept review decisions with the screens for weekly cross-team handoffs.

Medi-Cal Providers manual library with category navigation and grouped publications
The provider manual library applies shared navigation, search, and disclosure patterns to a dense set of publications.Program design artifact
Role
UX Designer
Client
California Department of Health Care Services
Dates
January 2023 to March 2024
Role
UX Designer, with design-system and service-design responsibility
Workstreams
MCWeb Portal, OPUS, OLCC, and Provider Portal
Working system
Adobe XD to Figma transition with reusable Bootstrap-based patterns
Accessibility checks
JAWS, NVDA, and VoiceOver
Delivery rhythm
Weekly cross-workstream reviews, user stories, and ServiceNow handoff
Program context
IBM Consulting describes the larger CA-MMIS effort as provider-portal modernization, cloud migration, and digitized processes. That source does not describe my individual role.

The files were not the hard part

Moving a file did not move the decision

All four workstreams were active while the design team moved from Adobe XD to Figma. Importing a file solved the smallest part of the problem. The teams still needed one set of patterns, one place to review them, and a reliable way to carry decisions into delivery.

I treated the transition as a change to the working method. I recreated the existing Bootstrap patterns in Figma rather than inventing a second interface system. The shared files kept the component, its current screen, review status, and delivery notes together.

What the workstreams shared

MCWeb Portal, OPUS, OLCC, and Provider Portal connect to shared Figma patterns, with components, screens, usage notes, and user stories kept together for review and ServiceNow handoff.
Retrospective design exploration. The diagram explains the shared patterns and review method described above. It does not establish implementation, adoption, or a completed migration.Newly authored portfolio diagram based on the published case-study narrative

The tool transition in progress

Figma workspace with an imported Adobe XD file, a sandbox, and a sample design-system file
The workspace shows an imported XD file beside a sandbox and a sample design-system file. It records the transition in progress, not a completed migration across DHCS.Original process context from the CaliDHCS Concept Figma file

Change the tool, not the interface system

Preserve the existing Bootstrap system while changing the design tool and review workflow.

One pattern had to work in more than one screen

Review the pattern where people use it

A reusable component only mattered if it held up across real work. The provider-publication overview combines community navigation, search, news, bulletins, and manuals. The manual detail keeps the same navigation and publication structure while adding revision dates and pagination.

I reviewed the pattern as part of those screens, not as a finished component in isolation. When it changed, I kept its usage note and related user story beside the screen so another workstream could recover the decision in the ServiceNow handoff.

One publication structure in two views

Medi-Cal Providers publications overview with community navigation, search, news, bulletins, and manuals
The overview combines publication tabs, community navigation, search, and several publication types in one page structure.Program design artifact
Medi-Cal Providers manual detail with publication tabs, community navigation, revision dates, and pagination
The manual view reuses the publication tabs and community navigation while adding revision dates and pagination. Together, the screens show visible pattern reuse, not implementation or adoption.Program design artifact

Permissions had to expose the service rule

I designed the Submitter Journey permissions screens, including this transaction-and-claim-type dialog. The dialog explains that both parties must be eligible, disables ineligible claim types, and keeps partial selection visible at the parent level.

The artifact establishes only the interface states and hierarchy, not authorization enforcement in a live service, release, or conformance.

See the full dialog and selection detail

Full Manage Transaction and Permissions dialog followed by an enlarged eligibility note and selection hierarchy with a mixed Assign all checkbox, selected transactions, selected child claim types, and disabled choices
The full dialog is followed by a readable selection detail. It keeps eligible selections, disabled claim types, and a mixed 'Assign all' state visible together. This design artifact does not prove that a live service enforced the rule or reached release.Newly authored portfolio recomposition of the reviewed Submitter Journey permissions dialog designed by Stephen Bowman

Removing an affiliation in the reviewed frames

Cover frame for the Medi-Cal Provider Portal UX and design review of the Submitter Journey, listing two DHCS review dates and a status tracker where design in progress and ready for review are complete and ready for development is pending
Each reviewed flow opened with a cover that named the journey, the DHCS review dates, and the status of the screens. This one shows the submitter management screens ready for review and not yet ready for development. It records the review cadence, not a release.Original Submitter Journey review frame designed by Stephen Bowman
Remove-affiliation confirmation dialog asking the person to type the submitter name, showing a misspelled entry with an inline invalid-input error, a Cancel button, and a Yes, remove the affiliation button
Removing an affiliation required typing the submitter name. The dialog states what the organization will lose, validates the typed name inline, and keeps Cancel beside the destructive action. The frame shows placeholder organization data from the review file.Original Submitter Journey review frame designed by Stephen Bowman, cropped to the dialog
Submitter Management and Permissions page after removal, with an Affiliation successfully removed notice, an Affiliation Inactive badge, and placeholder organization and contact details
After removal, the page confirms the change once and marks the submitter inactive instead of deleting the record, so the status stays visible on the organization card. This is a design frame with placeholder contact data, not evidence of release.Original Submitter Journey review frame designed by Stephen Bowman, cropped to the status card
Medi-Cal Provider Portal email notifying a submitter that a provider organization removed their affiliation, with the DHCS letterhead, the organization name and removal date, and a notice that portal access is deactivated after 45 days without another affiliation
The removal also reached the submitter by email. The message names the organization and date, and states the 45-day deactivation rule so the person can act before losing access. The frame uses placeholder organization data and a dummy date. It is a design artifact, not a sent message.Original Submitter Journey review frame designed by Stephen Bowman, cropped to the message

Expose eligibility before Save

Show eligibility, unavailable choices, and partial selection before a person saves the assignment.

Carry the rationale into delivery

Review shared patterns in the screens that use them, then carry the reviewed rationale into the user story and ServiceNow handoff.

The rule editor had to show what changed

Rules moved through added, updated, and deleted

OPUS staff maintained data-transformation rules that moved through three states: added, updated, and deleted. Someone reviewing a rule needed to see which items had changed, open the item behind a change, compare it with the approved version, and find a specific record without reading the whole list.

I wrote the requirements for the rule editor as thirteen Gherkin scenarios across three areas: rule navigation, rule details, and search. Each scenario named the window, the trigger, and the expected state, so a developer or tester could check the behavior without interpreting a wireframe.

The editor in three sections

Rule editor layout with view options radios for all, added, updated, and deleted items, an actions area where View Approved and Find Next stay off until their conditions are met, a read-only name and description, a data table of action codes, and an end-of-list prompt that offers to search from the beginning.
Retrospective design exploration. The diagram explains the layout and the two conditional rules the scenarios specified. It does not reproduce an OPUS screen and does not establish that the editor was built or released.Newly authored portfolio diagram based on the July 2023 requirements scenarios

The scenarios settled the small decisions

The editor opened in three sections. View options at the top left filtered the data table to all, added, updated, or deleted items with one radio choice. Action buttons at the top right stayed visible while the table scrolled. The table itself carried the action code, description, and comment for each item.

Two rules did most of the work. View Approved stayed disabled until the selected item was updated or deleted, because an added item had no earlier approved version to show. Search opened the item editor with every field editable, highlighted the first match, and enabled Find Next. When the list ran out, the editor asked whether to search again from the beginning instead of stopping without a message.

Scope

The scenarios are a requirements artifact dated July 2023. They establish the specified behavior, not a built editor, a release, or adoption by OPUS staff.

Specify behavior as scenarios, not annotations

Write each rule-editor behavior as a given, when, then scenario so the handoff carried testable states rather than annotated screens.

Enable comparison only where a comparison exists

Keep View Approved disabled until the selected item is updated or deleted, so the interface never offers a comparison that cannot exist.

A screen-reader check could change the guidance

Visual consistency was not the test

Figma could show a consistent component. It could not tell me what assistive technology would announce. I checked patterns with JAWS, NVDA, and VoiceOver. For each finding I documented, I named the affected component and changed its guidance rather than treating accessibility as a final visual review.

That made the finding useful beyond the screen where I found it. A later designer or engineer could see which pattern needed attention and why. These checks informed component guidance, but they were not a program-wide accessibility certification.

Keep the finding with the guidance change

Record the screen reader, the affected pattern, and the guidance change together.

The component did not decide where it belonged

Go Green showed why the review notes belonged with the interface. The pattern could not appear on every account page simply because the component existed. Submitters did not receive correspondence, so I annotated the screen to remove the Go Green link from submitter pages.

I designed the enrollment and confirmation screens and wrote the review annotation. The enrollment copy contains an unresolved distinction. It calls correspondence enrollment permanent, then says a separate paperless 1099 enrollment can be reversed. I kept that wording visible rather than smoothing it into a cleaner story.

Weekly reviews gave designers, engineers, and state stakeholders a place to test decisions like this across the workstreams. I linked the service rule to the relevant pattern and handoff notes so the next person did not have to reconstruct it from memory.

The service rule in the review note

Review annotation removing the Go Green link from submitter pages because submitters do not receive correspondence
My review note removes the Go Green link from submitter pages because submitters do not receive correspondence. The annotation ties the interface decision to a service rule.Design-review annotation authored by Stephen Bowman

The proposed enrollment flow

Go Paperless enrollment dialog with correspondence delivery copy and a separate paperless 1099 note
The work-in-progress dialog calls correspondence enrollment permanent, then describes a separate opt-out for paperless 1099s. The artifact records an unresolved copy question.Work-in-progress design artifact by Stephen Bowman
Paperless enrollment confirmation with Enrolled status and a route to My Profile and Preferences
The confirmation carries the enrollment status and route to My Profile and Preferences into the next screen. It completes the proposed flow, but does not prove release.Work-in-progress design artifact by Stephen Bowman

Let the service rule control the link

Show the Go Green control only where the user receives correspondence, and keep that service rule beside the screen.

Results

  • The Figma design system cut design task time by 40 percent.
  • The broader DHCS work increased claims-submission accuracy by 25 percent.
  • The broader DHCS project received a state process-optimization award.

Evidence limit

The 40 percent result applies to design task time. Available project records do not connect the claims-submission-accuracy result or the award to Go Green, the screen-reader checks, or a named workstream. The chapter images are design and review artifacts, not evidence of release.