A Case Study in

Research Infrastructure

Introduction

Custom web applications have never been more accessible to analytics teams thanks to easy-to-deploy frameworks like Shiny. However, such applications can quickly expand in scope and complexity, posing technical challenges that are not easily addressed by data analysts. Our specialized team of software developers and data scientists can address common performance and quality issues that prevent such applications from becoming useful and trustworthy.

The challenge

An internal analytics team at a clinical research organization (CRO) had developed several interactive web applications in R using Shiny . The intended users of these applications were epidemiologists and statisticians conducting survival analysis . The purpose of the applications was to enable users to rapidly conduct survival analysis, including model specification, population selection, and output visualization - all without writing new code.

However, as these applications were deployed internally and their value was recognized, more features were added and the tools were shared with more users. As the applications’ complexity and traffic grew, so did the occurrence of errors and performance issues. This prompted management to hire Precision Analytics for support.

How Precision Analytics responded

Our team began by meeting with stakeholder and development teams to understand the requirements and pain points of their tools. We then performed an in-depth review of the code base and tested features for performance and accuracy.

We confirmed the presence of significant loading times and problems with user input features. For example, some user inputs would reset to their defaults unexpectedly and were not be used correctly in underlying calculations, leading to incorrect or misleading results. We also found user inputs that accepted values outside of the expected range, leading to crashing and other undesired behaviour.

We implemented several changes including:

  • removing obsolete and redundant components that were contributing to poor performance and difficulty in maintaining the codebase,
  • separating UI and server (i.e., back-end) components to reduce unnecessary re-rendering and/or re-analysis of data,
  • fixing user input features to ensure that values were being supplied to analysis functions as intended, and
  • testing and documenting new features according to best practices (e.g., versioning with release notes)
The results

Our work transformed these tools by:

  • eliminating long load times,
  • fixing bugs that resulted in frequent crashing or resetting of inputs, and
  • correcting the use of user inputs to ensure accurate and reproducible results.

Before Precision Analytics, this CRO had invested considerable resources into applications that were failing to improve the efficiency or quality of their survival analysis pipeline. Our work directly improved this CRO’s survival analysis-related offerings to their clients by lowering analysis costs, improving speed, and enabling non-analysts to run models and explore results.

Call-to-action

Web applications for statistical analysis can be challenging to implement because they require both software and data analysis expertise. Our team of developers and data scientists work together to ensure that these tools are not only scientifically robust but scaleable and performant.

At Precision Analytics, we have experience working with external scientific and development teams to assess existing tools and make improvements that ensure they can deliver value for years to come.


Image

Let’s get work together

Contact us to reduce your data analysis workload and optimize your workflow.

Contact Us