• Products
    API hub
    • Design

      Collaborative API Development

    • Portal

      API Developer Portal

    • Explore

      Validate API Functionality

    • Testing

      Automated API Testing

    • Contract Testing

      API Integration Testing

    ReadyAPI

    Automated API Testing Platform

    Test hub
    • TestComplete

      Automated UI Functional Testing

    • BitBar

      Real Browser and Device Cloud

    • LoadNinja

      Automated UI Performance Testing

    • Reflect

      Codeless Automation with Gen AI

    • QMetry

      Test Management with Gen AI

    Zephyr

    Jira-Native Test Management

    Insight hub
    • Performance Monitoring

      Resolve Bottlenecks & Improve Responsiveness

    • Error Monitoring

      Debugging & Application Stability

    • Distributed Tracing

      Trace Issues Across Services

    AlertSite

    Global, Synthetic API Monitoring

    View All Tools

    Empowering QA Leadership: How User-friendly Automation Tools Drive QA Team Success

    View All Products →
  • Solutions
    Solutions
    API Lifecycle Observability Performance Testing
    Test Management UI Testing
    Integrations
    Source Code Management Collaboration
  • Resources
    Support
    AlertSite AQTime Pro BitBar Collaborator CucumberStudio LoadComplete LoadNinja PactFlow QAComplete
    ReadyAPI SwaggerHub SwaggerHub Explore TestComplete TestEngine TestLeft VisualTest Zephyr Zephyr Enterprise
    New Support Case
    Manage My Cases
    Resources
    Case Studies Webinars eBooks White Papers
    Academy Community Docs
    Blog
    Recent Posts
    What is Visual Testing?
    How to Use ChatGPT in Your Automated Tests
    About Us
    News
    Partners
  • Careers
  • Cart
  • Login
  • Try Any Tool for Free
    API Hub Insight Hub TestComplete ReadyAPI BitBar VisualTest Collaborator Zephyr Zephyr Essential Zephyr Enterprise LoadNinja AlertSite

VersaTrans

VersaTrans RP is a school bus planning and routing solution designed to help school districts manage their bus scheduling needs effectively. The current version builds on 20 years of providing scheduling solutions for the K-12 market.

VersaTrans completely rewrote their flagship application during their latest upgrade. During development they noticed performance issues and decided they needed a good profiling tool, so they turned to AQtime for help.

Redesigning a Flagship Application

"We completely rewrote our company’s flagship application, VersaTrans RP, when we went from version 8 to version 9. We went from using file based database with many data elements in flat files to a client server application designed with Microsoft SQL Server as the back end datastore," said Chris Miller, from VersaTrans.

"While moving from a design geared for flat file storage to client/server, many of the processes that we used to manipulate data had to be rewritten from scratch. Mid-way through the development process, we started noticing some performance issues that would make the new version difficult to use."

Slow Batch Assignments

Chris said that they had performance issues in one particular operation: their batch assignment feature. "To grossly oversimplify what our batch assignment does, it allows the user to take a selection of students and generate all of the transportation requests (which bus stop, which school) and assign each request to a school bus route. Under the hood, a lot of calculations get done on both the client side and on the database side. For a mid sized school district, a batch assignment of 15,000 students was taking about 10 to 12 hours to run on a Pentium 4 box. With the previous version, the equivalent action would take abut an hour to run. The 10 fold increase in execution time made the new version a non-starter. We had to fix this."

VersaTrans Needs a Profiler Tool

"We knew we had to refactor some code; but the question was "Where do we start?". We needed to measure how long the various functions used by the batch assignment took to execute and how often they were called. That's when we knew we needed a profiler tool and we needed a good one," said Chris.

Searching for the Right Tool

Chris said that once they determined that they needed a profiler tool, they checked Borland's newsgroups. "I read a lot of good things about AQtime from SmartBear. I downloaded the trial version and I was blown away with the scope and breadth of the features. This was the profiler tool that we had to get."

Working with AQtime

"We work with the AQtime in two modes. First, we use it on new or updated code to make sure that we have not introduced any performance bottlenecks. This is fairly straight forward, we run the code and examine the execution times and percentages," said Chris.

"We also use it when we have a module or feature that needs to run more efficiently. We do an initial pass on the code to find bottlenecks and with that information we decide if we need to optimize the existing code or if we need to rethink how we are doing things."

"In either case, we use AQtime to drill down into specific functions that we are using to see where we need to concentrate our efforts. It’s seeing where you need to optimize and what you don’t need to touch. AQtime is invaluable for this type of work!"

AQtime Produces Results

Chris said that AQtime allows them to determine where they need to address performance issues. "We are able to prioritize our optimization efforts, based on the analysis provided by AQtime. For example, we were able to take the batch assignment process that took 10+ hours to run and get it under 15 minutes. Using the results from AQtime was significant in getting that optimization done."

"If you are doing any coding where performance time is an issue, then AQtime is your best friend. The ability to profile execution time down to individual lines of code is invaluable. It allows you to tell which modules or functions need to be optimized and which ones don’t"
— Chris Miller, from VersaTrans

Saving Time and Implementing More Features

"AQtime has saved us too many hours to count. It takes the guesswork out of optimization. We can measure performance changes as we make them. The time that we save using AQtime is spent implementing more features," said Chris.

Chris said that the flexibility that AQtime provides is a great time saver. "The flexibility in how you can profile your code was a great time saver. We didn’t have to profile every line of code; we could do it by the module or the function. We only needed to see what we needed to see."

VersaTrans
Key Products

Webinar
6 Steps to Achieving Performance Nirvana in 2016
Performance improvements are multifaceted: they can be challenging and sometimes
1 hour 2 minutes
Webinar
6 Steps to Become a .Net Performance Expert
To get you started, we are offering a tutorial-like webinar for testing performance
60 minutes
Webinar
6 Ways to Measure the ROI of Automated Testing
Join SmartBear's testing experts to discover what it means to transition from manual to
60 minutes
  • 0
  • 1
  • 2

Contact us

  • USA +1 617-684-2600
  • EUR +353 91 398300
  • AUS +61 391929960

Company

  • About
  • Careers
  • Contact Us
  • Newsroom
  • Partners
  • Responsibility

Resources

  • Academy
  • Community
  • Resource Center
  • Support

Products

  • API Hub
  • Insight Hub
  • TestComplete
  • ReadyAPI
  • Zephyr Enterprise
  • View All Products

Legal

  • Privacy
  • Security
  • Terms of Use
  • Website Terms of Use
Facebook Instagram Linkedin X YouTube

© 2025 SmartBear Software. All Rights Reserved.

LOGIN

Additional SmartBear Tools

  • AlertSite
  • QAComplete
  • BitBar
  • SwaggerHub
  • CucumberStudio
  • VisualTest
  • LoadNinja
Additional Links
SmartBear Community
Case Management
License System