As I sit at my local airport, waiting for my flight to Washington, DC, I pause to appreciate all of the technology that goes into making modern air travel possible. Ticketing systems take in thousands of requests per day and must respond to flight deviations, adverse weather conditions and missed flights. State of the art, fly-by-wire avionics systems enable an aircraft’s computers to perform functions without pilot input and guide airplanes safely to their destinations. Gone are the days of air cowboys and flying by the seat of your pants. Today’s pilot relies heavily on very sophisticated software to lower the landing gear, trim the aileron and illuminate the please fasten your seatbelt sign.

Of course, this array of aircraft computer programs goes through a very rigorous set of processes during development, testing and fielding.  Specialized and deterministic software programs are used to ensure that exactly what the coder intended is subsequently executed. The days of buffer overruns or dangling pointers are behind the airline industry (or so I hope as I board my flight).

As I settle into my seat, I can rest with some confidence believing that this airplane’s avionics system has been tested, re-tested, inspected, certified, re-certified and re-inspected, all by an army of experts well versed in such endeavors. Yet, in my slightly apprehensive passenger state, I wonder, “How many times has it been tested and re-tested?”

Obviously, testing and certifying these complex systems is a tremendous undertaking for both the airlines and the government. Many initial factors for airliner systems, such as barometric pressure, time of day, latitude, longitude, flight level and precipitation are all keyed into test parameters. To certify a system ready for deployment, those tests must be run and re-run thousands of times to ensure the integrity of the system under test with many different combinations of parameters. Then these and all mission-critical systems must be tested and retested daily, again with the many varying parameters!

At Innovative Defense Technologies (IDT), we realize that thorough system testing involves the exhaustive checking of test parameters and limits that are input into a computer system. Our Automated Test and ReTest (ATRT) technology enables testing that is accelerated, automated and can certify readiness for large, complex systems. Even after a software program is fielded, or a system or an airplane is christened, IDT’S unique software can constantly test and re-test systems that are in production.  Every minor change in configuration can be efficiently run through the battery of automated tests to re-ensure that the software is still within all applicable requirements and the system has not been compromised as a result of the change.

As my plane prepares for departure, I notice our pilot walking around the plane doing his visual checks.  Of course, he does not have x-ray vision and cannot see defects inside the structure of the aircraft.  Unfortunately, much of today’s software testing boils down to visual checks due to lack of analyst manpower, funding or both.  However, on software systems that are routinely constrained by manpower and funding, I maintain that it would be near foolish NOT to do automated tests and re-tests of these systems…and then get a hardcopy report!

My flight is just about ready to depart. My nerves are fully engaged. I only wish I had my own personal copy of the flight computer test reports.  Surely there is something onboard that lets me know everything is working correctly.  I hear the familiar ding-ding and look up.  The please fasten your seatbelt sign flashes.  Hopefully it’s a good indicator. I chuckle…that will have to do.

Tim Schauer is a Senior Systems Analyst at Innovative Defense Technologies (IDT).