11.01.2017 Views

A Technical History of the SEI

ihQTwP

ihQTwP

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Ada Adoption Handbook<br />

The Challenge: Where and When to Adopt Use <strong>of</strong> <strong>the</strong> Ada Language<br />

When <strong>the</strong> DoD mandated <strong>the</strong> use <strong>of</strong> <strong>the</strong> Ada language, compilers, runtime systems, and <strong>the</strong> supporting<br />

programming environments were just coming to market. While <strong>the</strong>y held <strong>the</strong> promise <strong>of</strong><br />

making s<strong>of</strong>tware development for real-time systems more effective, <strong>the</strong>re was considerable uncertainty<br />

on <strong>the</strong> part <strong>of</strong> DoD program managers who had to make difficult decisions about <strong>the</strong> technical<br />

maturity and <strong>the</strong> production quality <strong>of</strong> <strong>the</strong> language support as applied to <strong>the</strong>ir system developments.<br />

In some cases, although compilers and supporting environments were available, code<br />

generators for <strong>the</strong> embedded processors were still in development and <strong>the</strong> runtime systems for<br />

those processors unproven. As a result, <strong>the</strong>re remained those who were skeptical that a higher order<br />

language could be used for real-time embedded systems. While <strong>the</strong>re were some early success<br />

stories and considerable pressure on <strong>the</strong> DoD program managers, <strong>the</strong>re was also a considerable<br />

amount <strong>of</strong> uncertainty, <strong>of</strong>ten based on bias or myth ra<strong>the</strong>r than hard data.<br />

A Solution: The Ada Adoption Handbook<br />

The <strong>SEI</strong> had committed to helping those DoD program managers who chose to use Ada to do so<br />

successfully. Efforts such as <strong>the</strong> Ada Embedded System Testbed were initiated to provide program<br />

managers with <strong>the</strong> kind <strong>of</strong> data that allowed <strong>the</strong>m to assess <strong>the</strong> maturity <strong>of</strong> <strong>the</strong> language support<br />

for specific embedded processors. While <strong>the</strong> testbed was under development, compiler maturity<br />

for specific processors was just one <strong>of</strong> many questions that remained unanswered. In some<br />

cases, program managers were avoiding <strong>the</strong> decision or leaning toward <strong>the</strong> use <strong>of</strong> o<strong>the</strong>r high-level<br />

languages because <strong>of</strong> <strong>the</strong> lack <strong>of</strong> authoritative data (<strong>of</strong> any sort) and <strong>the</strong> lack <strong>of</strong> “honest broker”<br />

guidance. The Air Force program manager for <strong>the</strong> <strong>SEI</strong> asked that <strong>the</strong> <strong>SEI</strong> develop definitive guidance<br />

upon which DoD program managers could base an informed decision.<br />

By that time, <strong>the</strong> <strong>SEI</strong> had several members <strong>of</strong> <strong>the</strong> technical staff with a great deal <strong>of</strong> experience<br />

with Ada and with real-time systems. Never<strong>the</strong>less, <strong>the</strong> requested effort was daunting since <strong>the</strong>re<br />

was so much difference in opinion in <strong>the</strong> s<strong>of</strong>tware development community between those who<br />

understood <strong>the</strong> promise <strong>of</strong> Ada and those who were adamantly opposed to its use. The <strong>SEI</strong> committed<br />

to providing an honest assessment, providing <strong>the</strong> pros and cons <strong>of</strong> adopting <strong>the</strong> language,<br />

independent <strong>of</strong> DoD mandate.<br />

The <strong>SEI</strong> embarked on a strategy that has been employed on many <strong>of</strong> its efforts. Relying on its internal<br />

expertise to separate fact from fiction, <strong>the</strong> <strong>SEI</strong> invited comment from those with experience<br />

with <strong>the</strong> language, whe<strong>the</strong>r positive or negative. The handbook authors organized this information<br />

and supplemented it with <strong>the</strong>ir own experience to produce a first draft that was distributed widely<br />

for comment. Comments on this first draft were addressed to produce a second draft, which was<br />

distributed for additional comment. Subsequent drafts followed <strong>the</strong> same process. Recognizing<br />

that <strong>the</strong> <strong>SEI</strong> was dealing with a moving target in that <strong>the</strong> products to support Ada were maturing<br />

at an accelerating rate, <strong>the</strong> <strong>SEI</strong> and <strong>the</strong> Air Force agreed that it was in everyone’s best interest to<br />

distribute <strong>the</strong> final version widely to DoD program managers in May 1987 [Foreman 1987]. As<br />

<strong>the</strong> technology supporting Ada changed, <strong>the</strong> information in <strong>the</strong> document became obsolete. Therefore,<br />

based on requests from a broad constituency, <strong>the</strong> <strong>SEI</strong> produced an updated version <strong>of</strong> <strong>the</strong><br />

handbook in 1992 [Hefley 1992].<br />

CMU/<strong>SEI</strong>-2016-SR-027 | SOFTWARE ENGINEERING INSTITUTE | CARNEGIE MELLON UNIVERSITY 33<br />

Distribution Statement A: Approved for Public Release; Distribution is Unlimited

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!