Case Study: How FHIR Supports Acquisitions in a Healthcare Business
Welcome to a new GigaTECH blog series where we will outline and describe, in detail, how we utilize FHIR to support our software integration and development lifecycle approach. Our research and development department is mimicking a large healthcare organization that makes decisions based on contract proposals. We are building an FHIR-based infrastructure that ultimately showcases an application to display customer-required information in a user-friendly, search/filterable manner, displaying multiple data sources in one central location for our business development team. The key items we will be addressing with this project and future blogs are that the data we want is in a proprietary system, thus requiring extensions to existing FHIR resources, we are building an FHIR façade and mapping this data to an FHIR resource including extensions, building multiple UIs as standalone SMART on FHIR applications, and standing up token based security all in a multi-cloud system utilizing AWS and Azure. Let’s discuss this current project, the basic requirements, and what’s to come in this series.
Why did we choose this project?
The first question we asked ourselves before tackling this project was why. GigaTECH specializes in utilizing FHIR to create software-agnostic integration solutions. This specific project allows us to demonstrate FHIR’s flexibility and how it can be expanded to outside use cases that still fall under TPO, treatment, payment and operations. We are building this project internally to aid in our own acquisition lifecycle to make determinations on contracts. Our contract lifecycle involves multiple capture phases, gate reviews, team reviews, contract submittal, acceptance and then revenue tracking, all things needed in large healthcare businesses. Throughout these stages, we make notes of conversations and decisions from our review phases. Our current system makes this tedious and this project will help simplify the process for all users.
How do we identify our goals?
When starting a new project, we gather as much information as possible to create the best solution. To do this, we incorporate the concepts of Product Thinking and Human-Centered Design. This process puts the end-user at the forefront of solutioning. First, we ensure the problem is well-defined, the solution provides the right value, aligns with business goals, and contains meaningful and useful outcomes. Once these pain points and overall goals are determined, we begin solutioning and creating prototypes with end-user input throughout the process to ensure we are continually capturing our goals identified in the Product Thinking phase. We will discuss more about our internal processes in the next blog when we do a deep dive into Product Thinking and Human Centered Design.
How do we achieve our goals?
The goal of this project is to create the software solution above. To achieve this, we identified three main components. We need to build a SMART on FHIR UI, access the proprietary data source, and have an FHIR façade to enable communication between the two and handle data transformation. We begin by identifying and building upon specific FHIR core concepts – CodeableConcepts, Data Types, and interacting through REST development. Once identified, we prototyped the mapping necessary to transform the proprietary data into FHIR resources. These newly created resources are then sent to our SMART on FHIR UI to be displayed per the end-user’s requirements. The prototyping phase culminates in an Implementation Guide (IG). The IG acts as our development blueprint. It contains mapping architecture, security considerations and processes, SMART on FHIR application wireframing and examples, and as many example artifacts as necessary for a developer to understand the scope and resources required to accomplish the project goal. Here is a current IG GigaTECH has created for example.
The development itself occurs in multiple Agile scrum-based iterations, using integration and production environments hosted within a multi-cloud environment (AWS/Azure). All developed software is controlled via rigorous DevSecOps pipelines. These pipelines support multiple deployments per day, linting, peer reviews, SAST and DAST scanning, and integration testing.
Next in the series:
With the project defined, let’s discuss what comes next. The next five blogs are going to go into much more detail about Human Factors Engineering and our behind-the-scenes HCD and Product Thinking philosophy, our overall Software Development/DevSecOps Process, setting up FHIR Security, Selecting and Implementing a FHIR Server/Façade, and lastly the SMART on FHIR Application Development and Integration.
- In Human Factors Engineering, we will discuss our process of understanding current problems with existing processes and validating concepts with a customer utilizing prototyping.
- In the Software Development/DevSecOps Process, we will detail our GigaTECH Agile Methodology (GAMe) and how we set up infrastructure and CI/CD pipelines for development success.
- In setting up FHIR Security, we will discuss the authorization and authentication workflows we implement for access control, token management, and single sign-on, as well as how we use FHIR scopes to manage data.
- In the FHIR Server/Façade blog, we will discuss comparing and selecting our FHIR server, mapping non-FHIR data to a FHIR resource, and the concept of blacklisting vs whitelisting in access control.
- In SMART on FHIR Application Development and Integration, we will discuss the technical aspects we implemented to bring it all together, including libraries used, OAuth 2.0 flow, standalone EHR launch workflows, and FHIR semantics for making requests to the FHIR façade,
We look forward to bringing a deep dive and technical explanation of FHIR and its multiple use cases to the masses and hope you stick around to try out your own FHIR implementation!
GigaTECH Specializes In FHIR Applications
We specialize in working with FHIR and SMART on FHIR applications, creating functional, concise, and easy-to-use applications to accomplish tasks as small as triaging service tickets for customers all the way to importing bulk FHIR data from insurance databases for use by hospitals and clinicians as they seek a holistic view of integrated health information to support clinical decisions.