skip to main content
10.1145/1879063.1879075acmconferencesArticle/Chapter ViewAbstractPublication PagesadaConference Proceedingsconference-collections
short-paper

Experience report: Ada & Java integration in the FAA's ERAM SWIM program

Published:24 October 2010Publication History

ABSTRACT

The Ada language has been architected to provide a strong foundation for building software at the heart of safety critical, real-time, and long-maintained programs. The benefits of Ada in such environments have led to its use in a wide range of systems where correctness and predictability are critical. The current trend in our industry is to loosely tie systems together to share data that previously required manual re-entry, simply was not available, or worse could have been inconsistent between systems. This trend is resulting in a need to connect previously closed systems over in-house and external networks to perform that loose linkage.

The FAA has embraced this technology and has been developing an architecture, code framework, and standards for sharing data across their entire spectrum of Air Traffic Control systems and consumers. The FAA's overall umbrella for this is termed SWIM (System Wide Information Management), and programs participating in the architecture are called "SWIM implementing programs". The ERAM (EnRoute Automation Modernization) program I work on and previously presented at SIG Ada 2009 is one of the first SWIM implementing programs. ERAM has recently entered the test phase of the first increment of SWIM functionality. ERAM SWIM faced many of the same hurdles as other legacy Ada systems around the globe. The new interfaces are built on standard web protocols and need to provide secure reliable information flow to both other internal FAA systems, and external customers such as the major commercial air carriers.

In an effort to use best industry practices Lockheed Martin and the FAA chose Java and other web-standard technologies to implement much of the new SWIM interface. Java has gained a strong foothold in the internet environment and the classrooms for a variety of reasons. The result is that Java enjoys a large amount of FOSS and commercial support that makes it a natural choice for such a web interface, even in a high stakes environment such as ATC. ERAM SWIM development has encountered several issues with bridging the gap between Ada and Java and the quickly evolving world of FOSS/COTS SW.

Performance issues and command and control issues have dominated our internal discussions and been the focus of much of our effort to achieve test readiness. Efficient data representation, baseline control (remember much of it is FOSS), and debugging have also received a lot of attention. We had a lot of prior experience with mixed languages having several hundred thousand lines of C and C++ and considered ourselves prepared. However, integrating with Java is completely unlike integrating with those others, and we have had to adapt across the board to this new challenge. My talk will focus on the challenges we have encountered, and the lessons we have learned about the strengths and weaknesses of the various languages and other technology elements we have used implementing ERAM SWIM.

Index Terms

  1. Experience report: Ada & Java integration in the FAA's ERAM SWIM program

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • Published in

      cover image ACM Conferences
      SIGAda '10: Proceedings of the ACM SIGAda annual international conference on SIGAda
      October 2010
      90 pages
      ISBN:9781450300278
      DOI:10.1145/1879063
      • cover image ACM SIGAda Ada Letters
        ACM SIGAda Ada Letters  Volume 30, Issue 3
        SIGAda 2010
        December 2010
        63 pages
        ISSN:1094-3641
        DOI:10.1145/1879097
        Issue’s Table of Contents

      Copyright © 2010 Copyright is held by the author/owner(s)

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 24 October 2010

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • short-paper
    • Article Metrics

      • Downloads (Last 12 months)0
      • Downloads (Last 6 weeks)0

      Other Metrics

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader