Synthesis Opportunistic Domain Engineering
PRODUCT DESCRIPTION
PROCESS DESCRIPTION
INTERACTIONS WITH OTHER ACTIVITIES
Domain Implementation is an activity of Domain Engineering for implementing
product and process support for application engineering projects in a business
area. The Domain Implementation must satisfy the Domain Specification created
by Domain Analysis. Product support consists of a set of production procedures
and associated Adaptable Components that can be used to create standardized
work products for members of a work
product family. Process support consists of procedures, documentation, and,
optionally, automation that
support opportunistic reuse during Application Engineering. The Domain
Implementation Activity is performed for each work product family in the
domain.
The objectives of the Domain Implementation Activity are to:
-
Create a set of Adaptable Components and associated
Generation Procedures as specified in the Product Design for the work product
families designated as relevant to the targeted project
-
Create standard procedures by which production of application engineering work
products takes advantage of provided reuse opportunities
The Domain Implementation Activity requires the following information:
-
Domain Specification
-
Legacy Products
The Domain Implementation Activity requires domain and software knowledge and
experience in:
-
Technologies for creating, adapting, and composing Adaptable Components into
work products
and the verification of such Adaptable Components and work products
-
Documenting and providing automated support for Application Engineering
activities
-
How work products of existing systems in the domain are implemented
-
- Name:
-
Domain Implementation
- Purpose:
-
A Domain Implementation contains sets of Adaptable Components and associated
production procedures that you can use to create
members of work product families relevant to the targeted project.
The Domain Implementation also consists of the procedures, documentation, and,
optionally, automation that support opportunistic reuse during Application
Engineering.
- Content:
-
A Domain Implementation consists of two components:
-
Product Implementation.
A Product Implementation contains organized implementations of work product
families
(see
Section DE.3.1).
-
Process Support.
An application engineering infrastructure that supports the targeted project in
performing opportunistic reuse of work products
(see
Section DE.3.2).
- Verification Criteria:
-
The Domain Implementation supports each designated work product family
identified in the Domain Specification as prescribed by the Product
Requirements for that family.
The Domain Implementation Activity consists of the two steps shown in
Figure DE.3-1 Domain Implementation Process
Follow these steps for the Domain Implementation Activity.
Activity:
Product Implementation
-
- Action:
-
Implement a work
product family.
- Input:
-
-
Domain Specification
-
Legacy Products
- Result:
-
Product Implementation
- Heuristics:
-
-
Derive the Product Implementation of a work
product family from appropriate Legacy Products.
-
Describe a mechanical procedure by which application engineers can select,
adapt, and compose a draft
application work product.
-
Implement only the portions of the product (i.e., members of the work product
family) required for the targeted project.
Activity:
Process Support Development
-
- Action:
-
Create an application engineering infrastructure to support reuse of existing
application engineering work products.
- Input:
-
-
Product Implementation
-
Domain Specification: Process Requirements
- Result:
-
Process Support
- Heuristics:
-
-
Document a procedure that application engineers can follow, as part of their
normal process for developing a work product, to help them locate and reuse
existing work products.
-
Optionally provide automated mechanisms which support the effective and correct
performance of the reuse-related activities of Application Engineering for the
targeted project.
None
-
- Contingency:
-
The Domain Specification is incomplete, ambiguous, or inconsistent.
- Source:
-
Domain Analysis Activity
- Response:
-
Describe how the Domain Specification is inadequate and suggest how it may be
modified. Proceed with Domain Implementation as far as possible with the
current Domain Specification.
- Contingency:
-
Unforeseen opportunities arise that cannot be exploited given the current
Domain Specification, e.g., a situation where substantial software is made
available for use in the Domain Implementation that was not available when the
Domain Specification was completed.
- Source:
-
Domain Analysis Activity
- Response:
-
Document the opportunities and the required changes to the Domain
Specification.
-
- Contingency:
-
The Domain Implementation for a work product family
is incorrect, inconsistent, or incomplete.
- Source:
-
Domain Verification Activity
- Response:
-
Request clarification of the intent of the Domain Specification, if necessary.
Modify the Domain Implementation to satisfy the Domain Specification.
- Contingency:
-
The support for the Application Engineering process is inefficient.
- Source:
- Project Support Activity
- Response:
-
Revise the Domain Implementation based on Application Engineering experience.