
Imagine you are an app developer, one relatively tiny glitch in your app could cause your end users' smartphones to freeze or crash. Sometimes small bugs in software can have devastating effects, it could result in your app being rejected by users or even worse getting deleted for good from the store. But at least your customers' smartphones or tablets don't cost more than $100 million.

I discovered this report in the Guardian that Lockheed Martin and the United States Air Force identified a major software flaw in the F-35 Joint Strike Fighter's (JSF) systems. This fighter jet — called the "most software-driven warplane ever built", has been in the works since 2001, and some estimates suggest over $1 trillion has been sunk into the development of the aircraft. That doesn't mean errors can't occur even in the most sophisticated of machines. In fact, the whole development of the F-35 has been tumultuous, and this recently identified flaw is just one software glitch in a series of bugs discovered. The F-35's radar just "stops working" while in combat. The solution seems silly: turn it off and back on again. But if this fighter jet were to see protracted combat action, that one bug could mean defeat. Therefore, testing is necessary regardless of where software runs.
Unfortunately, software problems have been the most common issues with the F-35. A different glitch was discovered almost a year ago, when pilots noticed that the aircraft's targeting systems were not functioning correctly. So engineers went back to the drawing board and updated the F-35's software, now, a year later and problems still exist.
Fixing a Fighter Jet's Software
When this author spoke to the spokesperson of Lockheed Martin during the Aero India 2015 Airshow with regard to the software glitches facing the JSF program, he said rather nonchalantly, "I think we should bring in the Indians to deal with the software bugs", this may have been remarked in just jest, but Lockheed Martin understands the importance of continuous quality and continue with rigorous performance testing.
"Lockheed Martin discovered the root cause, and now they're in the process of making sure they take that solution and run it through the [software testing] lab," USAF Major General Jeffrey Harrigian said, according to The Guardian.
What about the TEJAS Program? - Implemented Vigorous Testing and Validation

Software testing is the key, the development of software ver 3.0 for the Light Combat Aircraft (LCA) TEJAS Mission Computer was a large and complex project in which ADA was used as both design and code language, the code is written in subset of the ADA programing language for software implementation (for Avionics and Weapon Systems). TEJAS has open architecture software for avionics. DRDO can update it as and when required.
The Independent Verification & Validation (IV&V) laboratory at ADA has been set up to address the safety issues of software intensive systems of TEJAS, thereby obtaining a high level of confidence in the operations of new systems prior to their use IV&V plays a major role in the design and development of embedded software and ensures the development of hazard free and mission-success oriented software employing modern CASE tools viz. Modelling and simulation, Rapid prototyping, Tool based analysis and Randomised Non Real Time Testing (NRT). Seven safety critical and twenty three mission critical software systems of TEJAS have been evaluated and over 3,100 successful sorties of TEJAS have been completed adhering to IV&V practices.
The IV&V process supports standards like IEEE-12207 and RTCA DO-178B. The IV&V process has evolved to support concurrent software development techniques using OOAD and Model Driven Development (MDD) methods for LCA applications. ADA-IV&V group has also evolved the safe subset of Ada, C and Very High Speed Integrated Circuit Hardware Description Language (VHDL) languages to be used in LCA subsystems and is now in the process of evolving the guidelines for design, development, verification and certification of Field-Programmable Gate Array (FPGA) to be used in LCA-MK2 and future projects of ADA.
Matlab/Simulink, Rhapsody, Rational Development Suite, AdaTest, Logiscope, LDRA, Understand for Ada/C++, Beyond Compare, Questa Prime and Clear case are some of the tools used by IV&V during various stages of development to improve the product and make it robust apart from shortening the development and certification time.
It's essential to test throughout development — if Lockheed Martin was testing during the development life-cycle like the TEJAS team was doing, some of these problems might have already been caught and it wouldn't have to optimize software years later. (Adapted)
Admin - IDN