DoD Software Systems
DoD Software Systems
Characteristics of DoD S/W Development
Evolution of DoD S/W Development
Learning from the Commercial World
Additional Technologies
Approach and Implementation
Characteristics of DoD S/W
Development
It’s a Government Acquisition
• Competitive bidding, development specification part of RFP
• Awarded to and, designed and implemented by civilian
contractor(s)
• Contractor has personnel requirements
• Contractor has procurement and reporting rules
• And adherence to DoD and military standards
RFP: Request for Proposal
Characteristics of DoD S/W
Development
Approach and Implementation
•
•
•
•
•
•
•
Extensive planning
Long delivery schedule (IOC)
Process driven
Formal project management
Rigorous quality control
Oversight/formal reviews
Documentation intensive
Sequenced Activities
• Defined by DoD or military standard
• Interim design reviews
• Verification activities
IOC: Initial Operating Capability
Characteristics of DoD S/W
Development
In Most Cases it’s Requirements Driven
Requirements Can Get to be Volatile
• Long delivery cycles means folks have time to think
• Risk management activities are key to managing
requirements
Development Requires Focus on Minimizing Volatility
Risk
Military Flight Simulator
Simultec Full Mission Simulator
Depicted: Cockpit w/ Yoke, Throttle & Rudders
Instrument Panel w/ Heads Up Display (HUD) and Multifunction Displays (MFDs)
Instructor Operator Station (IOS)
Military Flight Simulator
It’s the Software That
Makes it all Work!
Software Behind the Scenes …This is what the trainer looks like.
Evolution of DoD S/W
Development
Moore’s Law Helps Explain the Advancement of
Technology Which Benefits
• Processing speed
• Disk capacity
• Memory capacity
Working with the Hardware
• Initially programming the hardware required intimate
knowledge of the target H/W
• From machine code/assembly language
• Towards independence from target H/W
• And to the mature complier tools we use today
Moore’s Law: The number of components in an integrated circuit doubles approximately every two years.
Evolution of DoD S/W
Development
Evolution of Languages
• Languages used to develop DoD applications numbered
over 400
• Different languages for different problems
• Focus now is more of extensions to the more recent
languages; C++
Language Standardization/Extensions
• Wrappers/Plug-ins
• Math Libraries/Special Functions/Reuse
• Reusable standards/components
Maintenance on Legacy Systems Still Biggest Cost;
Fortran, Pascal, Jovial, Ada…
Evolution of DoD S/W
Development
Process Models
• Originally ads-hoc development
• Adoption of disciplined approach introduce less defects,
meaning less rework
• SEI’s CMMI establishes levels of maturity
• ISO 9001 establishes quality standards for software
products
Variation of Approaches have Evolved
• Waterfall
• Evolutionary (incremental, spiral, agile…)
Evolution of DoD S/W
Development
Moving Towards Adopting Commercial Practices
• Tailor processes to developer’s best practices
• Leverage on evolving and maturing development standards
and methods
• Application under development determines the approach
Development Methods have Evolved
• Structured Analysis / Structured Design
• Object Oriented
• Agile
It’s iPhone vs Space Shuttle
Learning from the Commercial
World
Development Flexibility
•
•
•
•
Agile vs disciplined balanced development approach
Tailored engineering work products
Reduced documentation
Testing approaches
Scaling is Key
• Scope
• Team
• Time
Additional Technologies
Information Assurance / Cyber Security
Architectures
Maintenance
Configuration Management
Logistics
Architecture Models for
Integrating S/W
Can’t Do It Without A Team
It’s a team effort that goes into the success of the
software design/development
and
It’s the individual talent within the team that ensures
the team’s success
Personnel/Team Capability
Trumps All
References
Cook, David A., CrossTalk Journal of Defense Software
Engineering, CrossTalk and Software – Past, Present and Future.
Hinchcliffe, Dion, Architectures, http:hinchcliffe.org.
Boehm, Barry, Software Engineering Economics.
Jones, Capers, CrossTalk Journal of Defense Software Engineering,
Defense Software Development in Evolution.
Kennedy, Matthew, CrossTalk Journal of Defense Software
Engineering, An Agile Systems Engineering Process.
Cook, David A., CrossTalk Journal of Defense Software
Engineering, Evolutionary Trends in Programming Languages.