How good is your software?

How good is your software?

By John Koon, editor-in-chief, RTC Magazine

Good software performs the tasks you specify securely, safely and reliably. Moreover, it has to meet specific criteria such as application-specific, real-time requirements if your applications need them, meet your cost budget, and, most importantly, it won’t break. Sometime ago, I had a conversation with a Microsoft test manager. I asked him, “Why do I keep getting bug fixes from Microsoft for my Windows? Why don’t you test your software to make it bug-free?” He answered, “Indeed we do extensive tests on all our software products before we would consider releasing it to production. When we find a bug, you can be sure it will be fixed. Why would I want to ship a product with bugs?” Microsoft is the world’s largest software company with a lot of resources. If anyone can deliver bug-free software, it would be Microsoft. I am a hardware guy, I remembered when our team designed a system we made sure everything worked before we released it to production. Additionally, Test Engineering and QA will have to sign off the product to ensure it really worked. If it failed in the field, we blamed it on software. We all know a system is a combination of software and hardware. Software behaves in such a way that when certain combination of sequence of events occur, the software will fail. That is why Dynamic and Static Analysis tools are available to improve software quality.

Safety and security are on my mind a lot these days. When I think about driverless cars, I think about safety and security. How to prevent future autonomous cars from getting into an accident when we cannot even stop a train from derailing today? According to John Paliotta, CTO of Vector Software, a software quality company, “it is impossible to build completely bug-free applications, but we can build dependable and robust applications if we implement a continuous test process and measure testing completeness using code coverage analysis. The avionics industry has successfully used this approach to quality for years, and the automotive industry is well on its way to adopting a similar approach.” My conclusion is when something happens to a good piece of software, it will have either a backup plan or a way to shutdown orderly to avoid catastrophic consequences.

Here is another area of concern. We are all aware of the high profile hacking done to companies like Sony, banks and yes, even the police chief was hacked. I have the first-hand experience of being attacked by virus. Somehow, my security software was not strong enough. For a long time, hackers steal personal information such as credit cards and sell them on line. Now they came up with a business model call blackmailing. Recent reports, including that from BBC, indicated the Ransomware has found an easy target, hospitals, to extract money. A local hospital in Southern California did give in and pay the ransom. According to Eric Knight, CEO of SimpleWan, a security software consulting firm, “Today, companies are not proactive enough. You need to have the resources allocated including proper IT knowledge, anti-virus software and the team in place to fight battle. It will only get worse.” Demand for services form companies like SimpleWan has been increasing as more and more attacks occur.

In this special software Edition, we have listed solutions from 25 leading suppliers of RTOS and embedded software for your reference. Additionally, we have invited experts to share their expertise on safety and security. Finally, to look into the future of software we have a round table discussion with participants from Micrium, Express Logic, Wind River and Annabooks, LLC. If you have new ideas to share, let me know.