November 06, 2012
Credit: Credit: U.S. Navy
Few ships are more dependent on proper software development than the thinly crewed DDG-1000 Zumwalt-class destroyers, which rely on computer networks to run more automated systems for their operation.
Thus far, Raytheon Integrated Systems, one of the Zumwalt’s prime contractors developing a major portion of that software, has been able to meet program deadlines and milestones for those systems.
One of the keys for that success, says Bill Marcley, Raytheon DDG-1000 program manager and vice president of Total Ship Mission Systems, has been a “new agile software development approach” for software development and production.
“The commercial world is largely shifting away from a software development approach that has you develop all of your requirements and then go into a design-code-test phase and get all of that done and then you go into software integration testing,” he says.
“Instead, you develop smaller amounts of the requirements,” he says. “You do your coding and you integrate it all in smaller stories incrementally instead of people wringing out all of the requirements and people doing integration separately. You do it as a team.”
He says the small-unit development and integration are called “scrums,” an allusion to the rugby term for the organized, hard-hitting rumble for the ball between the two teams.
“We basically grab functionally and break it down into story points,” he says. “The benefit is there is less thrown over the wall. There is more face-to-face interaction and quicker turnaround on problem solutions and development.”
Also, he says, the approach combines the talents of the various software development teams earlier and more fully. “The folks who are helping develop and the people doing the requirements development and integration are testing it,” he says.
Marcley adds, “All support is linked together across the team, so there is much tighter interaction. There is lots of face-to-face work. We actually changed our facilities — instead of software writers and requirements people sitting in separate cubes, we got rid of all that and now they’re in collaborative work environments. They sit and face each other around conference tables specifically designed to facilitate software testing.”