Case Study

Engaging students in online testing

Moving testing for millions of students to the cloud

The client

Data Recognition Corporation (DRC)

Modernizing test-taking with AWS technologies

Challenge

Data Recognition Corporation (DRC) needed to modernize its computer-based student testing platform to meet the changing needs of K-12 school districts. Before our work on this project, DRC used a thick client Java application that made it technically and procedurally difficult to distribute updates in the field. DRC had limited options to fix issues discovered while the system was in use, which created an unsatisfactory UX for schools and students due to the resource-intensive nature of the thick client.

Flexion’s task for this modernization project was to develop a reimagined test delivery platform that could respond to evolving web standards and a customized version of Chrome to deliver high-stakes tests to students in various secure environments. These changes prevented cheating, protected the test intellectual property, and allowed for proctoring.

Our approach

Our work included transitioning to open-source technologies and migrating from on-premise VMware vBlock hardware to AWS Infrastructure as a Service (IaaS) and Platform as a Service (PaaS) technologies.

We spearheaded cloud adoption at DRC by exposing them to cloud-ready architecture styles they could leverage immediately and paving the way for an eventual transition to AWS. With an agile methodology, we built the web-based test system using various modern technologies.

The student-facing application became a single-page app delivered through a highly customized version of Chrome serving as a secure browser. The student application was deployed to AWS Simple Storage Service (AWS S3) and served through the Amazon CloudFront content delivery network (CDN).

Student assessments became available via an Apache Groovy/Grails Framework web service hosted on virtualized Linux servers in an on-premise VMware environment. Student voice responses can be recorded in real-time and streamed to AWS S3, where asynchronous, event-driven serverless Lambda functions transcode the audio to MP3 files for scoring.

The system is provisioned end-to-end with cloud-native IaC technologies. We developed additional platform components with Angular and node.js for dynamic and interactive web applications on the frontend. Additionally, we used TypeScript to enhance the JavaScript code with static typing and other features for better scalability and maintainability. We deployed CoffeeScript as an option for writing JavaScript with a more concise syntax.

For backend development, we implemented Grails, a web application framework based on Groovy, a dynamic programming language for the Java Virtual Machine (JVM). We used node.js for cloud-native, serverless API development and development tooling.

AWS Lambda implemented serverless functions to run code in response to triggers from other AWS services or HTTP requests (node.js). We deployed Serverless Framework and managed serverless applications on various cloud providers, including AWS (node.js).

AWS S3 handled data storage and management to store and retrieve data objects, including static files, images, and multimedia content. Amazon DynamoDB was utilized as a fully managed NoSQL database for storing and querying structured data at scale.

Technology stack

Frontend development

Angular
CoffeeScript
TypeScript

Backend development

Apache Groovy
Grails Framework

Server-side JavaScript

node.js

Serverless computing

AWS Lambda
Serverless Framework

Cloud services

Amazon CloudFront
Amazon DynamoDB
AWS Simple Storage Service (AWS S3)

Continuous Integration/Continuous Deployment (CI/CD)

Jenkins

Embedded browser

Chromium Embedded Framework

Real-time communication

WebSockets

Outcomes

The custom multi-platform Secure Browser and Chrome/Chromebook-based Secure Browser extension we developed represent a thin client, empowering DRC to deliver changes to the students during test windows. Previously,  schools and school districts had to interrupt testing to reload the thick client Java application on all their testing devices. 

The big transition was using flexible and web-based technologies. Flexion enabled DRC to pivot to delivering interim assessments in unsecured environments, which became necessary during the pandemic. Using only AWS technology, we also helped build an on-demand remote proctoring service to ensure that everyone who was supposed to be in a test was there. 

DRC has dramatically increased its client base and revenue thanks to the new platform, which is now scalable, cost-effective, secure, and reliable. Our efforts also resulted in a shift to a cloud-first strategy across the company. 

By enabling Chromebooks to use our thin client approach, school districts with budgetary constraints could choose this more economical machine, enabling DRC to support this (at the time) emerging platform.

By 2023 DRC has grown from delivering two million online tests across two states to 43.3 million online tests across 38 states annually. During their peak testing windows, they deliver up to 1.6 million tests daily (to over 487,000 students at once) with an average response time of less than 50 milliseconds and over 13K transactions sustained during peak usage periods.

Ready to change the way you’re doing business?

Contact us to talk about how Flexion can help your organization re-imagine and re-implement your legacy application.

A proud AWS partner.

AWS Select Tier Services Partner
Privacy Preferences

When you visit our website, we store information through your browser from specific services, usually in the form of cookies. Feel free to change your Privacy preferences now:

Click to enable/disable Google Analytics tracking code.
Click to enable/disable Google Fonts.

You can also adjust your privacy preferences at any time by visiting the Privacy Policy. Blocking some types of cookies may impact your experience on our website.

Google Analytics tracking is disabled by default, but you can help us understand and improve your experience by enabling it.