Blog

Customer Success Story: Medical Platform

Published on 2024-09-23.
Spotlight on one of our projects in the area of scalable portal solutions.

The Situation

Our client had already laid a solid foundation with a core backend (data provider), several dedicated applications, and specialized domain teams. A framework-independent component library was also in place. However, these elements functioned independently, with no cohesive structure tying them together.

The Problem

Our client needed to develop a unified portal that would seamlessly integrate existing code written in multiple frameworks (Angular, React) while allowing different teams to collaborate and contribute to this ecosystem. A licensing solution was essential to enable dynamic combinations of various frontends within the portal.

Our Solution

We partnered with our client to deliver a comprehensive solution that integrated disparate frontend frameworks and streamlined collaboration between teams. Our contributions included:

  • Piral Feed Service: We introduced this service to simplify and streamline frontend integration for multiple teams.
  • Central Platform Team Setup: We helped establish an “app shell” platform team, consisting of core architects, dedicated to frontend integration and maintenance.
  • App Shell API Design: We designed a flexible app shell API that could accommodate multiple frameworks, allowing teams to integrate their micro frontends seamlessly.
  • Communication and Training: Extensive training sessions and continuous communication were provided to different teams to ensure smooth collaboration and adoption of best practices.
  • Best Practices and Documentation: We crafted, documented, and shared best practices, which helped streamline the development process across teams.
  • Licensing Solution: Leveraging Open Policy Agent (OPA), we designed a dynamic licensing solution with synchronized rules in the feed service to ensure flexible frontend combinations.
  • CI/CD Pipeline Design: We helped architect continuous integration and continuous deployment (CI/CD) pipelines that allow new teams to onboard and integrate automatically.
  • Component Library Guidance: We provided ongoing support and improvements for the framework-independent component library, ensuring scalability and ease of use for all teams.

Architecture

With the previously described solution the following architecture diagram was derived:

By utilizing a load balancing and caching solution (1) for the incoming requests, the scalability of the solution as a whole in ensured. Requests for backend services are then routed to the dynamic API Management layer (2), while requests for the static resources associated with the portal itself are going to the actual web application (9).

The API Management layer is connected to all container instances (6, 8, 7), as well as the Function-as-a-Service (10) written to support the portal itself. The actual infrastructure hosts these systems in multiple instances (11, 12) to guarantee optimal response times.

Persistence layers have been introduced in a managed way (3). As such, they ensure fast response times with great scalability. Importantly, a distributed cache (4) is used to avoid consistency issues.

For the deployment keys a key vault (5) has been utilized. This way, the individual teams can integrate deployment processes in their pipeline without having security concerns.

Any event that occurs in the system is send to one of the responsible collection systems (13, 14, 15). Special audit logs are send to more secure storage systems (16, 17).

A central system for the frontend scalability has been the micro frontend discovery service. Here, the solution from us - the Piral Cloud Feed Service - has been taken. One of the reasons was the great compatibility with the Piral frontend framework, as well as the great feature set combined with its super fast responses.

Interview

We interviewed Stefan Bley about their benefits from using the Piral Cloud Feed Service.

Importantly, Stefan emphasizes that the decision for Piral came after a careful evaluation of every solution available on the market.

It was essential for us to enable micro frontends to integrate with each other. The Piral framework provides that out-of-the-box with extensions and customizable APIs.

The Outcome

The result was a highly scalable, compliant, and integrated solution that passed all regulatory acceptance requirements. Today, the portal is supported by 8 teams providing over 15 micro frontends, with each team also managing their own backend services. The system is scalable on both the backend and frontend, making it future-proof and ready for further expansion.

This successful transformation positioned our client to continue growing its platform efficiently while maintaining a cohesive, integrated user experience.

Florian Rappl
Florian RapplSolution Architect