8.5 million lines of code... Let alone, I would like to know how many lines of code makes whatever I do on my computer work as it does ATM.
Systems are not the work of one single guy just like everything in my computer was created by thousand of developers out there. Yet, it's just one computer, not an F35. Manufactured in 2013, I don't think everything in my computer was created in 2012; I'm pretty sure there are components/hardwre/software bits created in 2010, 2005, 2000, even before (Assembler code)... "
Avoid reinventing the wheel whenever possible" they constantly told us.
By the way, code blocks are made of lines of codes. Many of those blocks are known working well, so doesn't really require extensive testings unless you changed something in there. You can drop at least 2 millions lines of code from there.
Good codes are 1) working. 2) uses self explanatory keywords. 3) well documented. 4) capable of handling all posible cases of exceptions (bugs). and 5)
provides accurate description, context and location of an exception, if one would occur. Failing to take that fith condition is what lengthen beta testings and delays fixes. So, performance in beta testing 8.5 millions lines of code depends on what the programmer did. Yes, you have some obscure lines of code in any application, but usually, professional developers avoid doing it, because they are the first ones to get pissed if anything were to go wrong. Most part of that 8.5 millions lines are not that difficult to get working really well.
Beta/Alpha testing softwares (and hardwares by the way) doesn't occur the moment you merged all systems together, otherwise the F35 wouldn't have been able to fly yet. Each onboard system has ongoing tests from the start. The same for hardware and softwares.
Of course, you have evolving technologies, and just like in your everyday life, some components have to be updated. Ever tried to install a 2007 printer on Windows 10 ? It doesn't work. And so goes for some systems on the F35, the more since in a military/defense environment, data safety and latest researches in data encription are crucial. If you fear leaking data in sensible comunication systems, you can't sell the plane... For a program that has been suspended for a few years, you would surely have obsolete systems that has to be updated or replaced -> further delays.
So, it's very easy to declare "
there are 8.5 millions lines of blah blah in the F35" to make our brain focus on the massive amount of task that would have involved, so the software side of the project
may be the cause of the delays. Maybe... maybe... a very few of those softwares, but is that the responsibility of the software developper(s) ? In a program such as the F35, you have hundreds of sub-program schedules, hundreds of components manufacturers... When you fail to take account of the development margin errors, and make mistakes in the manufacturing process, you'll surely have delays. This can occur anywhere in the pipeline process of the entire program. And there's also the financial part of that process. Because someone failed to finance one part of the program, you don't get the working system (and software) on time ! Wrong deadline... is it the fault of the developpers, or does any line of code is involved at all ?
8.5 millions or more doesn't mean nothing, at least to me
