Whit works for the DoD.
Unique application, very long-lived. Data around since the 1950′s. Fully redundant — take battle damage and keep going. Survices nuclear explosions, runs underwater.
Naval Surface Warfare Center, Dahlgren Virginia. Started with Harvard Mark II.
The submarine platform — SSN (ship submersible, nuclear). SSBN (ballistic missile). Software never used for its intended purpose, hopefully never will be. 50% of US warheads are on subs. 24 missiles, each with multiple targetable warheads. Stay hidden and be ready. 560 feet long, 16K tons, crew of 156. SSGN is an SSBN converted to Guided conventional missile. 154 tactical cruise missiles.
Trident missile, 44 feet long, 130K lbs. 4600 mile range, moves at 20K feet per second, cost $30.9 million. Cost to reload one sub is $1B (one billion dollars).
Fire control problem: Fly missile to space, land in a small spot. Moving launcher, ballistic flight (warhead freefalls, must hit with accuracy, through multiple layers of air each with distinct characteristics), re-targetable (targets assigned as needed). Safety, maintainability paramount.
Originally one processor, 1 MB of memory, built specifically for the system. OS built in house so they know exactly what is going on.
Now VxWorks on PowerPC, source code scrubbed, VxWindows (X and Motif), own shell and file system. Two of everything, complete redundancy.
So what about XML?
19-year old running the software, written procedures for everything, rigid checklists. Goal is to leverage system information to better control information flow.
XML in Government, xml.house.gov — collection of DTDs.
Still checklist-based, but now electronic. BALPARS = Ballistic Parameters! Each action logged.
Extensive use of XML for procedure guide. Using XML as a scripting language! Instructions for what to do to carry out task. “Localization is not a big problem for us.” Uses the libxml parser, open source.
Each operational step described in a block of XML, with pre (check first) and post (do after) conditions.
Audience member asks, why XML? Value will become apparent over time. Create docs and scripts in one file, manage using CM system, associate docs with step. Do transformations of the XML into hypertext for testing. Also political reasons within the Navy.
No XSL running on the boat, only in the testing environment.
XML written using XML Spy.
They must always have source code, and they must always have the right to recompile it. They have to scrutinize all external software and demonstrate that they know how it works.