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.

Structural Modeling<br />

The Challenge: Efficiently Replicating Aircrew Trainers<br />

The U.S. Air Force has a long history <strong>of</strong> using aircrew trainers as an integral part <strong>of</strong> aircrew training<br />

programs. These trainers are expensive to build. However, <strong>the</strong> benefits <strong>of</strong> trainers justify <strong>the</strong><br />

expense. Aircrew trainers reduce training costs, improve safety, support security, and provide<br />

flexibility and convenience [Rolfe 1988].<br />

Flight simulators train pilots for flight missions in a safe, convenient, and cost-efficient way. To<br />

effectively provide this training, <strong>the</strong> s<strong>of</strong>tware for a flight simulator must work with <strong>the</strong> hardware<br />

to faithfully reproduce <strong>the</strong> behavior <strong>of</strong> <strong>the</strong> aircraft being simulated. Flight simulator s<strong>of</strong>tware,<br />

<strong>the</strong>refore, must perform in real time, be developed and continually altered to keep pace with <strong>the</strong><br />

technological advances in <strong>the</strong> simulated aircraft, and undergo a validation process that certifies<br />

acceptability as a pilot training device. In addition to this inherent complexity, <strong>the</strong> flight simulator<br />

s<strong>of</strong>tware is typically very large in scale, in <strong>the</strong> range <strong>of</strong> one million lines <strong>of</strong> high-level language<br />

code. For example, <strong>the</strong> B-2 trainer contained more than 1.7 million lines <strong>of</strong> Ada simulation code.<br />

The scale and complexity <strong>of</strong> <strong>the</strong> s<strong>of</strong>tware precipitated numerous problems in both <strong>the</strong> developed<br />

product and <strong>the</strong> development and evolution processes. Modifications to <strong>the</strong> simulator s<strong>of</strong>tware severely<br />

lagged behind modifications to <strong>the</strong> aircraft being simulated, resulting in a s<strong>of</strong>tware product<br />

that did not faithfully simulate <strong>the</strong> current aircraft. As is <strong>of</strong>ten <strong>the</strong> case in large-scale s<strong>of</strong>tware development<br />

efforts, geographically remote s<strong>of</strong>tware teams were concurrently developing parts <strong>of</strong><br />

<strong>the</strong> flight simulator system. The time required to integrate <strong>the</strong>se parts, developed by <strong>the</strong> diverse<br />

work teams, was growing at alarming rates. The correction <strong>of</strong> errors in <strong>the</strong> simulator s<strong>of</strong>tware was<br />

complicated and time consuming. Modifications to add functionality were also time sinks. Often<br />

<strong>the</strong> cost <strong>of</strong> modifications to <strong>the</strong> s<strong>of</strong>tware exceeded <strong>the</strong> s<strong>of</strong>tware development cost.<br />

Moreover, certain flight behaviors were becoming increasingly difficult to simulate because <strong>the</strong><br />

organization <strong>of</strong> functionality in <strong>the</strong> simulator was different from that in <strong>the</strong> physical aircraft. The<br />

unwieldy s<strong>of</strong>tware architecture reduced effective communication <strong>of</strong> <strong>the</strong> design in reviews and interactions<br />

among <strong>the</strong> work team members. Ultimately, this lack <strong>of</strong> effective communication decreased<br />

<strong>the</strong> control and visibility <strong>of</strong> <strong>the</strong> s<strong>of</strong>tware to <strong>the</strong> point where it created risk in development<br />

and maintenance.<br />

A Solution: Structural Modeling<br />

The recognition <strong>of</strong> <strong>the</strong> technical risk with simulators was <strong>the</strong> catalyst that drove <strong>the</strong> development<br />

<strong>of</strong> <strong>the</strong> structural modeling method. Structural modeling is an object-based s<strong>of</strong>tware engineering<br />

strategy developed by <strong>the</strong> collaborative efforts <strong>of</strong> <strong>the</strong> U.S. Air Force, Air Force contractors, and<br />

<strong>the</strong> <strong>SEI</strong>. The broad objective behind structural modeling was to take a problem domain <strong>of</strong> great<br />

complexity and scale and to abstract it to a coarse enough level to make it manageable, modifiable,<br />

and able to be communicated to a diverse user and developer community.<br />

Work on structural modeling began in 1986, when Air Force engineers recognized that <strong>the</strong> traditional<br />

s<strong>of</strong>tware architecture for flight simulators was reaching its limits. The <strong>SEI</strong> initially responded<br />

to a request by <strong>the</strong> Air Force by initiating an effort to assist with <strong>the</strong> simulator for <strong>the</strong> B-2<br />

(at that time a classified program). What <strong>the</strong> contractor and <strong>the</strong> Air Force at first thought was a<br />

problem in applying Ada, <strong>the</strong> <strong>SEI</strong> quickly realized was a conceptual problem in applying notions<br />

CMU/<strong>SEI</strong>-2016-SR-027 | SOFTWARE ENGINEERING INSTITUTE | CARNEGIE MELLON UNIVERSITY 241<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!