Project Overview
Who
Somewhere in Canada, right now, someone is receiving a blood transfusion, a plasma treatment, or a stem cell match that only exists because Canadian Blood Services made it possible. As the national nonprofit organization responsible for the country’s blood supply, they manage a system that more than 4.5 million patients across Canada and the U.S. rely on every year.
Running healthcare infrastructure at that scale means there’s no such thing as a “small” process. Even something as specific as a request form has to be accurate, auditable, and fast enough not to slow down patient care.
So when Canadian Blood Services kicked off a multi-year digital transformation, one of the first priorities was PPRP: modernizing how Plasma Protein and Related Products requests got submitted, reviewed, and managed inside their Medical Case Management system.
Cheeky Monkey Media led that work. PPRP came first — but in a system where nothing’s really small, the work didn’t stop there. Once the new workflow was live, we kept going, improving other areas of the Medical Case Management dashboard and its supporting forms.
What
- Drupal 8-to-9 upgrade
- Medical Case Management system development
- Complex digital form design
- User experience strategy
- Extensive interactive prototyping
- Conditional form logic
- Workflow and permissions development
- Audit-logging API development
- Dashboard and form improvements
Results at a Glance
We worked closely with the Canadian Blood Services PPRP team to turn a paper-based request process into a faster, more efficient digital workflow. The most important part? We built it right into the Medical Case Management system they already had.
Here’s what changed:
- Paper forms and manual data entry are gone, replaced by a fully digital request process
- We transformed a long, dense form into something a lot easier to use
- We used conditional logic so people only see the questions and products that actually apply to them
- All existing and archived case data stayed fully intact
- We made sure that request review and adjudication became more consistent
- Reduced room for errors during submission and manual entry
- Made complex patient and product information easier for case managers to work with day-to-day
- Improved the dashboard; the Canadian Blood Services team now has a stronger foundation to keep improving on
The Challenge
Moving from Paper to a Digital Workflow
Picture the old PPRP process: a case manager fills out a paper form. Someone else then manually retypes that same information into the Medical Case Management system. This meant duplicated work, additional administrative work, and a higher chance of missing or incorrectly entered information.
Canadian Blood Services wanted that gone. The fix wasn't just "build an online form." It meant bringing the entire request process into the existing system, so that information had to be entered only once and could be managed digitally from then on.
Modernizing the Existing System at the Same Time
This wasn't a clean-slate build. We weren’t developing the new PPRP experience as a separate, standalone application. The new PPRP experience had to live inside the Medical Case Management system Canadian Blood Services was already using.
At the exact same time, we needed to upgrade the system from Drupal 8 to Drupal 9.
By introducing a substantial new workflow, we delivered what Canadian Blood Services needed while preserving existing functionality, data, and case-management processes.
A Complex Process with Many Possible Paths
PPRP requests involve different products, medical conditions, indications, and eligibility requirements. In the past, completing a single form could overwhelm case managers because it required so much information.
The new system needed to collect detailed patient-level information without needing every user to answer questions unrelated to their case. Our goal was to lighten the case managers’ load by ensuring they didn’t have to sort through unrelated data.
Integrating New Requirements with Existing Data
Years of current and archived case data already lived inside the Medical Case Management system. The new PPRP workflow couldn't just sit on top of that — it had to work with it, seamlessly.
Our team needed to carefully identify, map, and reconfigure every field so the updated form could support the new process without disrupting historical records.
Supporting Consistent Adjudication
The system needed to do more than collect information. It also had to help Canadian Blood Services:
- Apply product-listing criteria
- Adjudicate patient cases against those criteria
- Collect patient-level utilization data
- Assign appropriate roles and permissions
- Allow different internal groups to manage cases through established workflows
- Support approvals, response templates, and notifications
- Maintain an audit history of case access
This required a carefully structured experience for both the people submitting requests and the teams reviewing them.
Keeping Everything on One Page
Canadian Blood Services wanted the complete request form to stay on a single page. At the same time, the form couldn’t feel excessively long or difficult to navigate.
The challenge was to accommodate a growing range of products and indications while keeping the interface clear and manageable.
HOW WE WORKED
Our Process
Discovery and Field Mapping
We started in the least glamorous place possible: mapping every single field in the new form back to what already existed in the system. New fields, existing fields, related fields — all documented, all tracked, all turned into a clear implementation plan, so nothing important got left behind.
Collaborative UX Planning
Our UX designer met with the PPRP team twice each week to work through requirements, workflows, and edge cases. These regular sessions meant technical and business perspectives were in the room together from the start. The result? Catching small details early and giving both sides a shared picture of what "done" actually needed to look like.
Mapping Every Possible Path
Conditional logic is what made the form manageable — but it also meant the form could branch dozens of different ways depending on what someone selected. Before writing a single line of code, we needed to see all of those paths clearly. So we built one: a 66-artboard interactive prototype.
For example, when a user selected a particular product or medical indication, the prototype showed only the questions, eligibility information, and supporting fields relevant to that request.
The prototype let the Canadian Blood Services team experience the proposed workflow before it was built. More importantly, it revealed gaps, conflicts, and edge cases early enough to resolve them before development and deployment.
Development Within the Existing System
With the prototype validated, we built the real thing directly inside the existing Medical Case Management platform while the broader application was upgraded to Drupal 9.
This included updates to user roles and permissions, support for cases managed by different internal groups, and the development of an API for recording case-access audit information in a separate database.
Testing and Refinement
The detailed prototype provided a shared reference for development and testing. We were able to check every conditional pathway against the approved workflow and cut down on guesswork during implementation.
Audit & Prioritization
We identified and prioritized key improvements across the front-end and back-end of the Drupal website, including module needs, code improvements, UX issues, and upgrade considerations.
Execution of Priorities
Get key improvements for the websites live, including fixing UI/UX issues, refining design elements, and etc.
Research & Testing
We investigated module upgrade paths, researched solutions for non-compatible upgrades, reviewed custom integrations, and completed extensive testing at each phase of the Drupal 10 upgrade process.
Ongoing Strategy
We implemented a structured monthly maintenance cycle to support proactive upkeep, ongoing security, website stability, and continuous improvements.
WHAT WE DID
Ongoing Website Maintenance & Support for a Complex Drupal Website
We’re technical enough for the complicated stuff and human enough to explain it clearly.
Conditional Form Logic
We used conditional logic to build the form, meaning it only ever shows what’s relevant. Select a product, and the questions, options, and eligibility details adjust accordingly. This helped cut out the noise for case managers, letting them move through even complex requests quickly.
A More Manageable Single-Page Experience
To meet the requirement for a single-page form without creating endless scrolling, we organized indication categories into expandable accordions. Users can open and close the sections they need. Plus, they can still compare multiple selected indications side by side.
Direct Digital Data Collection
No more filling out a form twice. PPRP requests now get entered once, directly into the system where the case will actually be managed. Start to finish, in one place.
Drupal 9 Upgrade
We upgraded the entire Medical Case Management application from Drupal 8 to Drupal 9 alongside the new PPRP build, giving Canadian Blood Services a modern technical foundation for this project — and future improvements too.
Roles, Permissions, and Internal Workflows
We updated system roles and permissions to support the responsibilities of different users and internal groups. Cases can move through the established Canadian Blood Services workflow while supporting the approvals and access controls required by the updated process.
Audit Logging
We developed a new API that now records case-access information into a separate Oracle database. This supported Canadian Blood Services’ need for a reliable audit history while allowing the functionality to operate within the broader case-management environment.
Legacy Data Protection
We carefully mapped the new workflow to the existing Medical Case Management system so that current and archived records could be retained. This made it possible to introduce new functionality without sacrificing valuable historical information.
Continued Dashboard and Form Improvements
PPRP was the main project, but it set the stage for more collaboration. After completing the primary responsibilities, Cheeky Monkey Media continued to update other areas of the Medical Case Management dashboard and to improve additional forms within the system.
Project Outcomes
What Canadian Blood Services has now is a structured digital process where a paper form and manual entry used to be. Complex patient requests are easier to enter, review, and submit. Adjudication is more consistent as a result.
Key Outcomes
- A more efficient digital request process
- Reduced form length through conditional content
- Easier navigation using expandable indication categories
- Preservation of existing and archived case data
- More consistent collection of patient-level utilization information
- Better support for adjudication, permissions, notifications, and communication
- Fewer opportunities for errors during request submission and manual entry
- A successful Drupal 9 upgrade
- A stronger foundation for ongoing dashboard and form improvements
Turning Complexity into a Clearer Workflow
Complex healthcare processes need digital tools that can handle that complexity without dumping more work on the people using them. Through close collaboration, deep prototyping, and UX design that took the process seriously, Canadian Blood Services now has a more efficient way to manage PPRP requests. And, they didn’t need to lose any of the data, standards, permissions, or workflows that make their work possible.
Got a Process Like This?
Every organization has one: a process everyone’s working around instead of actually fixing. Maybe it’s a form nobody trusts, a system that means entering the same information twice, or a workflow that was never built to handle how much your team relies on it today.
For over 18 years, we’ve used our technical web development expertise to help organizations like Canadian Blood Services turn that kind of complexity into something clear, reliable, and actually easy to manage. If that sounds like something your team is dealing with, we’d love to hear about it and give you a real solution.