Architecting for Sustainable Software Delivery

Ronald Koontz, Robert L. Nord · 2012

With increasing emphasis on avionics system rapid development and reduced cycle times, software architecting practices can be applied with agility to enhance evolving stakeholder concerns while sustaining long-term business goals. The Networked Common Operating Real-Time Environment (NCORE) software architecture for the Apache Longbow helicop- ter Mission Processor provides a case study to illustrate the archi- tecting practices that support agility and sustainment of long-term business goals. The NCORE architecture was initially developed and flight-tested during the jointly funded Army Aviation Technol - ogy Directorate (AATD) and Boeing Manned/Unmanned Com- mon Architecture Program, Phase II (MCAP II). The MCAP II risk reduction program initially focused on the evaluation of emerging software technologies such as real-time Java. Since then, the NCORE architecture continues to evolve on the Apache Longbow Block III Program. The driving architectural requirements include safety, performance, availability/reliability, modifiability, and interoperability. As initial platform capabili - ties are realized and as avionics computing lifecycles shorten, increased emphasis is placed on extensibility and the desire to host applications developed by third parties. In parallel, embedded infrastructure software must be architected to reduce overall time and cost to incorporate hardware upgrades (proactive obsoles- cence management) and to enable the hosting of new or existing application-level software. In the section that follows, each practice is described and illustrated with an NCORE architecture example. Next, incremen- tal delivery of new capabilities is described in terms of how it is realized by combining all of the practices. Finally, the essential characteristics of the practices are summarized according to agile development and architecture criteria. This summary provides a checklist to aid learning for others developing software-reliant systems, and provides feedback on whether their application is on track to help meet project goals.

Read the paper · More papers on PaperTik