A multinational pharmaceutical and life sciences company endured tedious, time-intensive processes to compare large sets of crop trial data. To analyze this data, users had to download raw data sheets from one or more applications and import them. Sometimes users pulled data from three different software solutions just to provide basic reporting. The client engaged 1904labs to help combine the various reporting platforms into a single solution that offered more powerful analytic capabilities and improved the overall user experience.
1904labs turned a legacy data reporting system into a robust and faster tool for agronomists to retrieve, compare and report on enormous amounts of crop data. By building data visualization directly into the reporting tool, 1904 helped the client’s users save time, accurately analyze data and build compelling presentations.
The project had several phases. First, the 1904labs team had to migrate all the data to a shared data repository. 1904 worked with several internal client development teams to determine the best way to migrate services from direct database access to new APIs. 1904 built services to securely expose the data to authorized users only and ported the user interface to a new corporate-wide UI framework. To significantly improve performance and expand the analytic capabilities, 1904 also added data caches and document-stores. The technology solutions implemented by 1904 vastly reduced the time previously required to assemble the necessary information from 23 minutes to 33 seconds, representing a more than 4,000%+ improvement.
Human Centered Design Agile: Building the Right Reports that Work the Right Way
Following the data integration, 1904 leveraged its HCDAgile methodology to identify key requirements for the design phase. The 1904 team conducted interviews, evaluations and usability tests to ensure their designs would meet the end-users’ needs. Users needed a tool that would allow them to quickly analyze data by location and other attributes and create customizable and easy-to-read reports. Early on in the discovery phase, 1904 identified the need to streamline and document the database design and query processes. With input from the client’s users, 1904 reengineered the data-flow, business rules, and eliminated many steps in the process to increase efficiency. Applying industry best practices, the 1904labs team updated and documented access rights, calculations, naming conventions and data flows. They introduced standard continuous integration to implement the new reporting tool to ensure repeatable high-quality deployments.
Compelling Data Visualization
As a final step, 1904 designed and implemented a new user interface. Previously, users pulled raw data that provided limited context and value for the layperson. Because users had to import data into software such as Excel in order to do comparisons, calculations and create visualizations, non-technical people found it difficult to understand the underlying data, identify trends and present their findings. Working closely with crop science researchers and statisticians, the 1904labs team built out a series of customizable data visualization widgets into the application. With these tools, agronomists are now able to create compelling visualizations and tell a unique story about the crop results. 1904labs utilized several charting libraries to create seven standard visualizations ranging from a simple performance summary to bar graphs utilizing advanced statistics to display contextualized agronomic data. Each of these visualizations includes a ‘summary’ view as well as a ‘detailed’ view so that users can display individual product performance results. The 1904 team added a key feature, an ‘export’ button, to allow users to easily and quickly import images into presentations.
“Our cloud solution migrated a system whose reporting tools could compare data from 1,000 trials and 25 products to a platform that allows users to simultaneously compare data from 10,000 trials and unlimited products.”
Marc Brooks | 1904labs Agile Engineering Lead
- Significantly reduced time required to assemble key information from 23 minutes to 33 seconds
- Implemented entitlement management for trial data access and product naming rules
- Built high-performance data comparison and graphing components for large data sets
- Used continuous integration, continuous deployment, and unit/integration and UI testing to ensure repeatable high-quality deployments
- Backend Java 8 – Spring Boot – Nodejs Express
- Frontend Angular 6.x with TypeScript, Chartist and D3 for data visualizations, HTML5 with CSS3 (using SCSS)
- PDF generation with FreeMarker
- Graph generation with Chartist, D3 and SVG
- Testing JUnit/Mockito backend – Karma/Jasmine frontend
- Build automation Jenkins for CI/ CD, webpack frontend
- Cloud DynamoDB, Postgres, S3, Lambda, ElasticSearch, ElasticCache, Memcached, Elastic Load Balance, Ocelot routing, Ping authentication
- Platforms AWS deployed within CloudFoundry