Re-engineering a CBT based digital platform using sophisticated state-machine with branching logic for evidence-based treatment of depression and anxiety
The client’s legacy system consisted of a call center application, a customer management app, and an account builder. The core of the system uses an account builder application that helps service providers to manage calls through a system-guided session. In addition to this, the client makes use of a call center application to manage calls, and a customer application to manage customer details.
During the discovery phase, Experion discovered that the identity server implementation (Authentication & Authorization) is in-built with the API, which was not a scalable approach. Both the above conditions resulted, on average, in daily 1.4 to 2.1 million API calls. For a system having an average of 25-35 concurrent users, this request count was on the higher side. The higher API calls resulted in frequent system outages and these system outages sometimes resulted in data loss, which makes the system non-compliant with HIPAA.
The client also wanted to revamp the user interface which would eventually aid different stakeholders using the system.
Experion conducted a 2-week discovery phase to study the existing system and establish the business goals of the client. This phase helped Experion to understand the underlying drivers for a successful outcome, in addition to the requirements brief shared by the client.
To fix the API request count, Experion introduced a mechanism to queue and persist the commands on the client browser. This is then processed as a batch with the help of a service worker (a background service) and synchronized with the server at fixed intervals. This implementation reduced the request count substantially, which in turn reduced the cost of the infrastructure. We also designed a resilience mechanism to prevent any further data loss in worst-case scenarios.
Since there were a large number of requests for user authentication, the authentication mechanism was implemented as a separate service.
Additionally, an intuitive user interface was designed and developed as part of the solution re-engineering activity, that offered ease of usage to all relevant stakeholders from the client’s side.
Post-delivery, Experion continues to provide development services for the client in the ongoing engagement.
- The new system architecture is highly scalable.
- The new system is highly modular. New features and updates could be added without affecting the core functionality
- Saves the client over 75k a year on infrastructure costs
- Reduced average request per day from 1.48M to 990K
- Average DTU consumption is reduced from 60% to 4%