Testing and Self driving cars per USDOT

I have written about self driving and embedded software in cars. Now the US Government is stepping up via the USDOT (dept of transportation) on auto-drive cars. And much to my happiness, Validation (and testing and Verification) made their list of things the gov cares about as “must do” to companies. Now there is a more detailed guide from USDOT and a lot of work to happen before we have “smart” cars on the roads generally for the public, but they are coming and getting smarter.

Such cars use embedded, mobile, IoT, AI, and other concepts along with sensors to work. We have questions about using “traditional” life cycles or Agile/Dev-Ops to develop cars. partnerships between hardware (transportation companies) and software (think high tech) are forming so each brings expertise.  I don’t have big preferences between these life cycles and companies. I more support a hybrid approach (use the right parts from each them to form an organization building “smart”), but the measure (covered by USDOT) will be to see if these smart cars reduced accidents and death. A measure has been defined, but will take time to be reached.

I think concepts coming from groups such as ISO and IEEE standards should become part of the USDOT details. This is not to say that standards are the complete answer, but they may be a beginning rather than another branch of the government defining their own standard from nothing (recreating the wheel). ISO and IEEE standards may have concerns surrounding them, but they do have some history. I see companies already having “test drive program”, which make the news, but testing/V&V is so much more than just field testing. The complexity and data space of these system is large. We will see what HAV testing/V&V industry comes up with.

So what standards to consider?

Here is my list: IEEE1012, ISO12207, ISO15288, ISO/IEEE29119 as starters. They all need to be tailored to be useful but again, they are a start.

There also concept like test automation, test modeling, math based testing, and exploratory testing with tours and attacks done by skilled testers, which need to be consider too. Then there is the testing/V&V of qualities such as trust, reliability, safety, security, system interaction, etc. Just today we saw hackers taking control of a Telsa remotely (with a new software patch from Tesla pushed right away to fix the hole).  There will be more of this, so rapid software updates should be part of the life cycle.

So if you are skilled and thinking tester, the future looks bright. But even if standards are used, we can NOT be script bound testing robots where we check only requirements. People will die (have died) in these “smart” cars.  We must use many testing strategies and basis concepts.

We’ll see where things go.