• Home
  • Current congress
  • Public Website
  • My papers
  • root
  • browse
  • IAC-08
  • B4
  • 7
  • paper
  • Modular Flight Architectures for Rapid Development A Patterned Approach to Flight Software

    Paper number

    IAC-08.B4.7.1

    Author

    Mr. Edward Birrane, The Johns Hopkins University Applied Physics Laboratory, United States

    Coauthor

    Mr. Christopher Krupiarz, The Johns Hopkins University Applied Physics Laboratory, United States

    Coauthor

    Mr. Alan Mick, The John Hopkins University Applied Physics Laboratory, United States

    Year

    2008

    Abstract
    Traditional flight software development follows the model of custom-built, tightly-coupled software compiled into a monolithic architecture.  The high cohesion and proprietary nature of such architectures limit software reuse across missions and across platforms. This results in mission software that can take years to write at costs of millions of dollars. A potential solution to this problem is a set of application design templates layered on a distributed, open architecture which maximizes re-use and modularity and achieves flight robustness through mature fault tolerance, more powerful development tools, and a more active user support community. 
    
    To this end, researchers at the Johns Hopkins University Applied Physics Laboratory have developed an architectural concept which provides a “buffet-style” software approach to mission software through the interconnection of multiple, discrete software processes. Such an approach significantly reduces software development schedules and budgets once the set of software building blocks has been created.  This “many small processes” approach is a critical part of any cross-platform flight software solution.
    
    The architecture builds upon the practice of software design patterns that are an ongoing area of research in computer science.  Software patterns present a known solution to a known problem in a way that is customizable to the constraints of a particular implementation.  A patterned view of flight software is valuable to the rapid development of interoperable software systems as it introduces a standard set of terminology, data flow, and control structures.  By basing these patterns on similarly successful endeavors in other, terrestrial domains these concepts also bring a functional heritage to their application.  
    
    This paper presents a set of eight such patterns identified as necessary to increase cross-platform compatibility and software re-use.  Specifically, we provide patterned solutions for decoupling software, ensuring that software modules are cohesive, and that only those portions of the software that must be real-time have real-time constraints.  Flight software built from these patterns provides a plug-and-play ability that can dramatically reduce the testing time for any software implementation effort.  Additionally, as more decoupled software modules are collected in libraries, the time-to-flight for heterogeneous systems should continue to decline.  We also present a sample C&DH flight software system built from the identified patterns.
    
    Abstract document

    IAC-08.B4.7.1.pdf

    Manuscript document

    IAC-08.B4.7.1.pdf (🔒 authorized access only).

    To get the manuscript, please contact IAF Secretariat.