Robert Dewar
April 1, 2012
Robert Dewar of AdaCore imparts information and advice
on ensuring the safety and security of unmanned aerial vehicles (UAVs).
UAVs will share
public airspace. What are some concerns?
UAVs do not pose
quite the same set of safety concerns as manned aircraft. Obviously, there are
no pilots or passengers on board to worry about; however, the risks to other
aircraft from air collisions and to people on the ground from ground collisions
are just as real. UAVs, like manned aircraft, are heavily dependent on complex
software.
For commercial
aircraft, and increasingly any military aircraft flying through commercial
space, we have rigorous requirements for software in the form of the DO-178C
standard. These standards, in practice, are remarkably effective, as evidenced
by the fact that we have never lost a life due to a software bug on a
commercial aircraft in the entire history of commercial aviation.
Unfortunately, UAV
software is written without any requirements for meeting this or any similar
standard. Instead, it is typically written using normal industry practices for
commercial software; but, we only have to look at news stories that come out every
week, not to mention our own experiences with commercial software, to know that
such industry practices are far from reliable.
Do current software
tools offer protection from drones being hacked by adversaries?
We do have
techniques for writing highly reliable, unhackable
secure software. We simply have to take matters more seriously and deploy such
techniques in this context. This may possibly involve additional costs, but
clearly such costs are warranted; in fact, it is not always clear that it does
cost more to do things right. The cost of failed missions is high!
Can UAV close calls
and accidents be prevented with software testing and verification?
Exactly-by applying
the same kind of techniques that are reliable enough for us to all feel safe
flying on modern commercial aircraft, even though our lives in such a
circumstance depend on the absolute reliability of complex software systems.
(The software onboard the Boeing 787 is more than 5 million lines of critical
code.)
What advice would
you offer to the Federal Aviation Administration (FAA)?
A starting point
would be to require DO-178 certification for all planes flying in commercial
space, including UAVs. If you fly a Cessna around, its software must be
certified. Why should we have laxer standards for UAVs?
What advice would
you give engineers and developers involved with UAVs?
All engineers need
to adopt the "failure-is-not-an-option" attitude that is necessary
for producing reliable, certified software. UAVs require at least as much care
as commercial avionics applications.
BIO:
Name:
Robert Dewar
Title: President and CEO
Co.: AdaCore
Role: Provider of commercial software solutions for the Ada programming
language for safety-, security-, and reliability-critical applications
Contact: www.adacore.com
To access
this Article, go to:
http://www.militaryaerospace.com/content/mae/en/articles/print/volume-23/issue-4/the-last-word/robert-dewar.html