Domain Engineering: The Challenge, Status, and Trends Stephanie White Michael Edwards Advanced Technology & Development Center Naval Surface Warfare Center Northrop Grumman M/S Code B44 M/S K04-14 10901 New Hampshire Avenue Bethpage N.Y. 11714 Silver Spring MD 20903-5640 Focus Group Participants: Thomas Conrad, Naval Undersea Warfare Center; C. Ronald Green, U.S. Army Space and Strategic Defense Command; Konrad C. King, Boeing; Richard McCabe, Software Productivity Consortium: Capt. Wayne J. Newton, Naval Surface Warfare Center; Teri Pay-ton, Loral; Lynda Rosa, Mitre; Doris Tamanaha, Hughes; and Gwen Taylor, Westinghouse. Abstract Naval Surface Warfare Center Dahlgren Division; under joint sponsorshipof the Office of Naval Research; the Naval Command, Control, and Ocean Surveillance Center; and the Naval Surface Wa.rf%rc Center; has initiated a thrust to examine the ongoing trends in engineering complex systems,to enrich and enhance the state-of-the-art in engineering methods and practices,and to facilitate the implementation of df&ed improvements. To support that thrust, the Second Annual Workshop on Engineering of Systems in the 21st Century: Facing the Challenge was held in June 1995. One hundred and seventy five technical and organizational leaders from industry, government agencies,and academia were invited. Each participated in one of thirteen Focus Groups. This paper summarizes the results of the Domain Engineering Focus Group. Background Domain engineering addresses knowledge and asset development, capture, and evolution for a family of systems. It is the process of identifying and recording commonalities and variables in a domain and using that information to createreusable assetsand new systems. Domain engineeringcreates a “space” of solutions from which application engineers will later draw point solutions. A domain is a clearly delineatedapplication area containing systems that share design decisions. Domains can pertain to functional capabilities, such as navigation or stores management, or can cross functional areas; e.g., user interfaces, reliability, and security. Domain engineering can be applied across all phases of system development and at different levels of abstraction to develop systems, subsystems, components, subcomponents, and engineering environments. For example, domain engineering might be applied to ships, sensors, networks, workstations or operating systems.The technology includes engineering of domain models, architectures, components, generators, processes, methods, and tools. Domain engineering can be a critical technique in deftig system requirements and exploring potential architectures. There has been significant research in applying domain engineering to software applications [3,4,71, but domain engineering approaches have not been widely applied and are in various states of development.There is little awareness or research at the systemsengineering level, and negligible work has been done on integrating domain engineering with an overall systems engineering process. The domain engineering process should be integral with the systems engineering process. Domains am definedbasedon business objectives and product lines. Engineers performing domain engineering capture product line technical and process knowledge. Assets they develop meet common requirements across the domain and are tailorable to support the differences. Application engineers use these tailorable products to produceproduct line systems. When these systems am used, additional customer requirements are fed to application engineers, who in turn pass them on to the domain engineers, helping to refine domain products (FIGURE 1). Approach The Domain Engineering FG represented a mix of participants from DoD, industry programs, and domain engineeringresearch efforts. This combination of talent provided a unique interaction that proposed an interesting challenge. FG members felt that domain engineering has reached a sufficient level of maturity, and bringing domain engineering into the mainstream 96 O-8186-7355-9/96 $05.00 0 1996 IEEE Proceedings of the IEEE Symposium and Workshop on Engineering of Computer Based Systems (ECBS) 0-8186-7355-9/96 $10.00 © 1996 IEEE