A Technical History of the SEI
ihQTwP
ihQTwP
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.