Free Republic
Browse · Search
News/Activism
Topics · Post Article

Skip to comments.

Pentagon focused on resolving F-35 software issues
Reuters ^ | Reuters

Posted on 04/01/2012 9:20:55 PM PDT by U-238

The Pentagon is focused on resolving complex software issues on the new Lockheed Martin Corp F-35 fighter jet, even as it struggles to drive down costs, a top Pentagon official said on Friday, noting that software failures could "bring us to our knees."

Air Force Major General John Thompson, the No. 2 official in charge of the huge multi-nation warplane development program, said the latest restructuring of the program had given officials enough resources and time to address future challenges.

"Both the hardware and the software issues that we're addressing are all within the realm of being resolved," Thompson told reporters on Friday, noting that Pentagon plans to postpone orders for 179 for five years would allow more time for development before production shifts into high gear in 2019.

He said the F-35 program office, the military services, and Lockheed were working together to reduce costs.

The Pentagon told lawmakers on Thursday that the projected cost to develop, build, operate and maintain the plane for 55 years rose by 8.6 percent to $1.51 trillion from $1.38 trillion in the latest Pentagon estimate.

Thompson said the program was also stepping up work on the 24 million lines of code needed to fly and operate the new warplane and associated ground-based equipment, such as simulators, Thompson said.

"The complexity there gives us pause," he said. "We know we can go fix the mechanical engineering issues associated with structural problems. We're very confident in that. But in terms of fusing together that many lines of code into actual warfighting capability, we realize that could bring us to our knees if it doesn't work."

(Excerpt) Read more at reuters.com ...


TOPICS: Foreign Affairs; Government; News/Current Events
KEYWORDS: aerospace; dod; f35; jointstrikefighter; lockheedmartin; miltech; navair; northop; pentagon; software; usaf
Navigation: use the links below to view more comments.
first previous 1-2021-4041-42 next last
To: U-238
Stop outsourcing the software to India and China then, dipwad.

See also Sen. Carl Levin on what proportion of military components is sourced from Red China.

Scum members of Congress & Clinton sold us out.

Castration and burning at the stake is too good for some of them...

NO cheers, unfortunately.

21 posted on 04/02/2012 4:33:34 AM PDT by grey_whiskers (The opinions are solely those of the author and are subject to change without notice.)
[ Post Reply | Private Reply | To 1 | View Replies]

To: grey_whiskers; NVDave; OneLoyalAmerican
Stop outsourcing the software to India and China then, dipwad.
See also Sen. Carl Levin on what proportion of military components is sourced from Red China.
Scum members of Congress & Clinton sold us out.
Castration and burning at the stake is too good for some of them...
NO cheers, unfortunately.


cc:NVDave,OneLoyalAmerican

grey_whiskers, you are someone who gets it.

All software does NOT necessarily have bugs. Software coded by people who hate us, and which is inadequately tested, i.e software that is programmed fast, and on the cheap will have bugs and likely 'back doors' built in.

Prespective One
Prespective Two
Prespective Three
22 posted on 04/02/2012 5:00:57 AM PDT by khelus
[ Post Reply | Private Reply | To 21 | View Replies]

To: magslinger

ping


23 posted on 04/02/2012 5:54:59 AM PDT by Vroomfondel
[ Post Reply | Private Reply | To 1 | View Replies]

To: Revolting cat!
You must know by now that there is no computer software without bugs. Think about it next time you board that shiny Boeing aircraft!

We software developers like to think of them as "undocumented features".

But most of the time they are due to a hardware problem....

24 posted on 04/02/2012 6:23:14 AM PDT by Mannaggia l'America
[ Post Reply | Private Reply | To 2 | View Replies]

To: U-238

Ever worked on a software project in the millions of lines of code (mega-LOC)?

I have. cisco’s IOS. Watched it grow from hundreds of thousands to millions of LOC. Last I knew it was over 8 MLOC.

Once you get above the, oh, 500K to 1 MLOC range... most developers simply cannot hold the complexity of the whole system in their heads any more. Out of the entire company’s engineering department, there were only about 12 of us who could hold millions (plural) of LOC complexity in our heads for any length of time. That’s not “memorizing” the code, but simply knowing that “something happens like this over there” in the system map, so that when you make a change “here,” you know you must do something accordingly “over there.”

Most developers tend to lose this ability, and the result is bugs. Some easy to find, some horribly subtle and seemingly random.

Once you get to 10’s of MLOC, you’d better not be using something like C++ or C, because you’ll NEVER, EVER close all the bugs. NEVER. Every C++ system I know of at that size ships with known bugs that they haven’t found yet. Dozens to hundreds of known bugs will be shipped.

The way Boeing got a handle on the situation in the FMS system of the 777 project was to start two competing projects - one in C++ and one in Ada. After awhile, they evaluated which system was closing bugs faster, not writing as many new ones, making deadlines with more certainty. It was the Ada effort. So they closed down the C++ effort and put everything into Ada.

Now, this doesn’t surprise me in the slightest. Ada was created back in the 80’s to enable large s/w systems like these... but the problem is that most of the kids coming out of CS/EE schools today aren’t taught Ada, nor are they taught real-world, “Big System” s/w engineering. They don’t know jack, really. They come out knowing C/C++ and Java... and how to code their silly social media websites... and this corrupts their minds. How you think about large system design is, in part, predicated upon your implementation language.

Anyway, due to lack of newbie engineers trained in something other than C/C++, the F-35 systems are written in C/C++, last I looked. This is one of the reasons why I think we should just kill it now.

C++ in large systems leads to bugs that are hard to replicated, hard to find and a need for lots of static code analysis to try to find the bugs in the source. Seen it many times in industry. C++ is a horrible implementation language unless you literally disable many so-called “features” in the language to preclude them ever being used.


25 posted on 04/02/2012 6:39:11 AM PDT by NVDave
[ Post Reply | Private Reply | To 3 | View Replies]

To: khelus

Per my reply to U-238, most large systems will have bugs, regardless of the language in which they’re written.

Most large systems written in C++ will have more bugs.

Once you get beyond trivial systems where you can review all the code and know all the states, transitions and responses to inputs... you’ll have bugs. How many you have is a function of design, implementation language and how willing management is to “do the right thing” instead of meeting their silly schedules.

Now as to back doors, et al... dunno about that, but outsourcing s/w development for anything critical is a Bad Idea[tm]. Especially when the systems become huge.


26 posted on 04/02/2012 6:44:50 AM PDT by NVDave
[ Post Reply | Private Reply | To 22 | View Replies]

To: khelus
Prespective One....Prespective Two....Prespective Three

Most software requires a modicum of correct inputs to produce a modicum of correct results.

Your predicted output results are..........

(ERROR) One

(ERROR) Two

(ERROR) Three

Epic FAIL

27 posted on 04/02/2012 7:34:25 AM PDT by diogenes ghost
[ Post Reply | Private Reply | To 22 | View Replies]

To: NVDave

While I agree with much of what you say about C++, Java is much better at large systems. The biggest problem is lack of good programmers and changing requirements. Changing requirements is the nature of the beast nothing to be done about that, but most programmers suck, only a few really good ones out there. Sadly the butt kissers and bean counters are the ones in charge so the good programmers rarely get the chance to make a difference.


28 posted on 04/02/2012 8:02:14 AM PDT by jpsb
[ Post Reply | Private Reply | To 25 | View Replies]

To: jpsb; NVDave
... The biggest problem is lack of good programmers and changing requirements. Changing requirements is the nature of the beast nothing to be done about that... Sadly the butt kissers and bean counters are the ones in charge so the good programmers rarely get the chance to make a difference.

This have been very true in my experience. While multiple studies have shown the cost effectiveness of good programmers and good testing, the bean counters and butt kissers are all about quarterly profits. I was continually amazed me how poor work by butt kisser programmers and managers was excused as 'the learning curve.'. What's worse is that upper management continually bought it.
29 posted on 04/02/2012 8:50:55 AM PDT by khelus
[ Post Reply | Private Reply | To 28 | View Replies]

To: NVDave
... but the problem is that most of the kids coming out of CS/EE schools today aren’t taught Ada, nor are they taught real-world, “Big System” s/w engineering. They don’t know jack, really. They come out knowing C/C++ and Java... and how to code their silly social media websites... and this corrupts their minds. How you think about large system design is, in part, predicated upon your implementation language. ...

... Once you get beyond trivial systems where you can review all the code and know all the states, transitions and responses to inputs... you’ll have bugs. How many you have is a function of design, implementation language and how willing management is to “do the right thing” instead of meeting their silly schedules. ...


I read your reply to U-238 and me.

Now that I see where your perspective is coming from, we are not that far apart. My perspective is of a vintage in IT professional who started pre C++ and Java, working on huge business systems. My associates in IT are of the same era. Good software engineering requires being able to look at both forests and trees, knowing when to consult with those who run production and manage data bases, being able to look backwards and forwards. These are skills that do not seem to be fostered in newer software engineers.

As systems become more complex and interface with more platforms, it is more likely that bugs will develop, however they ought to be the result of a set of exceedingly rare circumstances.

See my post # 29.
30 posted on 04/02/2012 9:04:55 AM PDT by khelus
[ Post Reply | Private Reply | To 26 | View Replies]

To: khelus

management is clueless. they think the people that write huge routines with great embedded complexity are the good programmers but the programmers that write small simple routines that can easily be maintained are a dime a dozen.

Maintenance is 80% of the cost of software systems. I can’t tell you how many times I’ve looked at code and said screw this, I am rewriting the entire thing. I would run my code thru a complexity analyzer and rarely got over 20, I’d run code written by the other “top guns” in the company and seldom saw less than 80 sometimes over 200! over 100 was consider unmaintainable due to code complexity. I would beg to be allowed into that code (almost 1 million lines of jdbc) so I could re engineer it. Of course that never happened so I did it on my own time using plain old java objects and hibernate, took me almost two years, I did it just to prove it could be done. I swapped out the entire database layer in a huge enterprise document management system and demo it to management. 1 million lines of complex code to under 100,000 lines of simple code. They were unimpressed. Of course my code had “issues” and did not do all the jdbc code did but the issues could be resolved. A little while later I got canned and software sent to India for maintenance and development. lol, I still have my version running on my computers. Might open source it one of these days.


31 posted on 04/02/2012 9:52:59 AM PDT by jpsb
[ Post Reply | Private Reply | To 29 | View Replies]

To: khelus

I started in FORTRAN when memory was NOT cheap, lol. I always liked Cobol, loved C and think Java is pretty cool too. C++ is OK I guess but I’ve never seen a really good reason for using C++ over C or if you need objects over Java. Sometimes I have to talk to the hardware on a PC, so I’ll use a C++ compiler to link with C++ libraries but I still just write in plain old C code.


32 posted on 04/02/2012 10:04:13 AM PDT by jpsb
[ Post Reply | Private Reply | To 30 | View Replies]

To: khelus

I think we’re of the same vintage and we agree more than we disagree.

The one central problem I see in many of these huge systems written in C++ is that C++ tries to be all things to every coder, giving tools and paradigms to do literally everything.

When it was just “C with classes” in the late 80’s, it was OK. I have no problem with more modest OOP C implementations, eg, Objective-C and the like, where they try to be more modest and firm in their goals.

But C++? Holy crap. The excuse and reason given by management for not going to Ada-83 in the 80’s was that “Ada is too complex in the wrong areas - we don’t have as much as we need in the area of hardware interface in Ada...”

The excuses I’ve heard for not going to Ada-95, which fixed most of those issues, was that “Ada-95 is too complex.”

Then along comes C++, which is more complex than any other programming language I’ve seen (and I’ve programmed in more than a dozen languages, from assembly to Common Lisp, Smalltalk-80, etc) and management swallows all their Ada excuses and jumps on the bandwagon... because they don’t want to have to train Ada coders in-house.

Morons.

Now, as far as error rates:

The two projects I know of that have error rates one-tenth or lower of the common industry error rates are the Shuttle orbiter and ground system code (not written in C or C++) and the Boeing 777 FMS (written in Ada). The way they both achieved their low error rates was intensive requirements tracking, walk-throughs of design, code walk-throughs, change management, etc. Nothing that wouldn’t work today in any other language.

Trouble is, the C++ shops I’ve seen all leave that behind. They’re all about buying lots of flashing-screen tools and IDE’s, class libraries and pumping out the code.

One of my biggest beefs with C++ is that they mix two huge paradigms into one language: programming by template and programming by classes. I believe that a language should pick on and do it well. Then there’s the lack of native memory management in C++, which I find inexcusable. One of the best reasons I know of to skip C++ and go straight to Java (or similar) languages is that the typical newb programmers are horrid at managing dynamic memory allocation/returns, leading to leaks that remind one of the Titanic.

Google’s Chrome browser and Firefox both have their roots in C++ and they have memory leaks that require I restart them frequently.


33 posted on 04/02/2012 12:07:44 PM PDT by NVDave
[ Post Reply | Private Reply | To 30 | View Replies]

To: NVDave

Believe me, Newb programmers will find ways to create memory leaks in Java.


34 posted on 04/02/2012 12:13:42 PM PDT by dfwgator (Don't wake up in a roadside ditch. Get rid of Romney.)
[ Post Reply | Private Reply | To 33 | View Replies]

To: jpsb
management is clueless. they think the people that write huge routines with great embedded complexity are the good programmers but the programmers that write small simple routines that can easily be maintained are a dime a dozen. ...

ROFL. Boy is that ever the truth!

Maintenance is 80% of the cost of software systems. I can’t tell you how many times I’ve looked at code and said screw this, I am rewriting the entire thing ...

Been there, done that, got the t-shirt!

I once, on a consulting gig, was assigned to add one item to a simple report program that had been created off-shore. It was one huge mass of spaghetti code that did not accomodate change.

In this shop one had to comment out, not delete code for audit trail purposes. In essence, I commented out 90% of the old program, and had to keep reassuring production that yes this was the version I wanted released. Yes there really were that many lines of code commented out.

In addition, all the lines and columns were smashed together, so I fixed that. The first comment from the manager who had to okay the release, was about how easy the report was to read.

Here's the best part. An increasing percent of programming was mandated to be off-shored and I was replaced by some one overseas.
35 posted on 04/02/2012 1:01:25 PM PDT by khelus
[ Post Reply | Private Reply | To 31 | View Replies]

To: Vroomfondel; SC Swamp Fox; Fred Hayek; NY Attitude; P3_Acoustic; investigateworld; lowbuck; ...
SONOBUOY PING!

Photobucket

Click on pic for past Navair pings. Post or FReepmail me if you wish to be enlisted in or discharged from the Navair Pinglist. The only requirement for inclusion in the Navair Pinglist is an interest in Naval Aviation. This is a medium to low volume pinglist.

36 posted on 04/02/2012 1:10:12 PM PDT by magslinger (If I wanted to vote for a Commie I would vote for Obammie. He has a chance of winning.)
[ Post Reply | Private Reply | To 1 | View Replies]

To: NVDave
... The way they both achieved their low error rates was intensive requirements tracking, walk-throughs of design, code walk-throughs, change management, etc. Nothing that wouldn’t work today in any other language.
Trouble is, the C++ shops I’ve seen all leave that behind. ...


Thanks for your reply. It explains a lot. In essence management has exchanged sturdy, well coded, well tested, easy to maintain for doing things fast and dirty and flashy on the cheap.

... Google’s Chrome browser and Firefox both have their roots in C++ and they have memory leaks that require I restart them frequently.

Thanks for this tidbit. It verifies what I have suspected about Firefox.
37 posted on 04/02/2012 1:16:34 PM PDT by khelus
[ Post Reply | Private Reply | To 33 | View Replies]

To: jpsb
I started in FORTRAN when memory was NOT cheap, lol ...

A lot of people don't realized that's why only the last two digits were stored and that's why so much needed changing for Y2K.

I can remember being chastened by a manger in the 1990's for designing records and code using four position years. I told him times had changed. Memory was cheap.
38 posted on 04/02/2012 1:23:46 PM PDT by khelus
[ Post Reply | Private Reply | To 32 | View Replies]

To: khelus

don’t = didn’t


39 posted on 04/02/2012 3:00:02 PM PDT by khelus
[ Post Reply | Private Reply | To 38 | View Replies]

To: grey_whiskers
Stop outsourcing the software to India and China then, dipwad

The source code has always been the sticking point with this plane. The source code is basically the brain of the airplane.The US have consistently refused to provide access to the source codes.However, the F-35I acquisition agreement is opening opportunities for the installation of Israeli systems in future production batches
40 posted on 04/02/2012 6:30:40 PM PDT by U-238
[ Post Reply | Private Reply | To 21 | View Replies]


Navigation: use the links below to view more comments.
first previous 1-2021-4041-42 next last

Disclaimer: Opinions posted on Free Republic are those of the individual posters and do not necessarily represent the opinion of Free Republic or its management. All materials posted herein are protected by copyright law and the exemption for fair use of copyrighted works.

Free Republic
Browse · Search
News/Activism
Topics · Post Article

FreeRepublic, LLC, PO BOX 9771, FRESNO, CA 93794
FreeRepublic.com is powered by software copyright 2000-2008 John Robinson