11.01.2017 Views

A Technical History of the SEI

ihQTwP

ihQTwP

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Feature-Oriented Domain Analysis<br />

The Challenge: Achieve Cost Reductions By Means <strong>of</strong> S<strong>of</strong>tware Reuse<br />

A 1993 report by <strong>the</strong> Government Accounting Office 61 [GAO 1993] cited a comprehensive effort<br />

to incorporate s<strong>of</strong>tware reuse practices into <strong>the</strong> DoD’s s<strong>of</strong>tware development efforts. Reuse was<br />

viewed as a way to manage s<strong>of</strong>tware costs, which in 1993 exceeded $24 billion a year, and to improve<br />

<strong>the</strong> DoD’s ability to develop and maintain high-quality s<strong>of</strong>tware. In practice, however, <strong>the</strong><br />

promise <strong>of</strong> s<strong>of</strong>tware reuse had not been realized. The report<br />

stated that “methodologies to implement reuse have<br />

not been fully developed, tools to support a reuse process<br />

are lacking, and standards to guide critical s<strong>of</strong>tware reuse<br />

activities have not been established” [GAO 1993, p. 1].<br />

One <strong>of</strong> <strong>the</strong> technical issues cited in <strong>the</strong> GAO report was<br />

that <strong>the</strong> variation in <strong>the</strong> domains in which s<strong>of</strong>tware reuse<br />

was being attempted was proving intractable. Standard<br />

methods were needed to process information about domains—“domain<br />

analysis”—<strong>the</strong> purpose <strong>of</strong> which is “to<br />

generalize common features in similar application areas,<br />

identify <strong>the</strong> common objects and operations in <strong>the</strong>se areas,<br />

and define and describe <strong>the</strong>ir relationships.”<br />

A Solution: Feature-Oriented Domain<br />

Analysis<br />

The View from O<strong>the</strong>rs<br />

An examination <strong>of</strong> <strong>the</strong> proceedings<br />

from <strong>the</strong> S<strong>of</strong>tware Product<br />

Lines Conference (SPLC) over its<br />

16-year history shows a preponderance<br />

<strong>of</strong> papers that refer to<br />

FODA and domain analysis.<br />

FODA has proven to be a fruitful<br />

research area, and FODA and variation/variability<br />

analysis have<br />

been <strong>the</strong> most common <strong>the</strong>mes at<br />

SPLC.<br />

At this time, <strong>the</strong> <strong>SEI</strong> was working with an Army program called Army Tactical Command and<br />

Control System (ATCCS) [Williamson 2005] that had five separate programs supporting five<br />

function areas: maneuver control, air defense, combat service support, intelligence/electronic warfare,<br />

and fire support. Seeking to identify isolated areas with common requirements shared by<br />

<strong>the</strong>se programs, <strong>the</strong> <strong>SEI</strong> identified “domains,” or specific areas <strong>of</strong> knowledge. An <strong>SEI</strong> staff member<br />

on this project proposed <strong>the</strong> idea <strong>of</strong> “features” based on experience at AT&T, where equipment<br />

builds were classified by <strong>the</strong>ir features. For example, for switches, some would be automatic,<br />

some would be manual, etc. Features would be <strong>the</strong> way to analyze <strong>the</strong> common<br />

characteristics <strong>of</strong> a domain, prior to formal requirements engineering. The <strong>SEI</strong> pioneered this idea<br />

<strong>of</strong> features and developed a methodology that it called “feature-oriented domain analysis,” or<br />

FODA [Kang 1990].<br />

The <strong>SEI</strong> saw a domain as a special area <strong>of</strong> knowledge, and characterized large-scale systems as<br />

comprising several domains. The Army asked <strong>the</strong> <strong>SEI</strong> to look at movement control—route planning,<br />

scheduling, and deconfliction, to ensure that, for example, a road would not be taken up by<br />

two different vehicles at <strong>the</strong> same time. Movement control was attractive to <strong>the</strong> Army because it is<br />

a domain that applied to many <strong>of</strong> <strong>the</strong> ATCCS systems. The <strong>SEI</strong> described movement control as a<br />

domain, identifying commonalities about how units were handled and organized, how routes were<br />

planned and convoys scheduled, etc. After conducting this domain analysis, <strong>the</strong> <strong>SEI</strong> developed a<br />

61 Now known as <strong>the</strong> Government Accountability Office.<br />

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