
Unified Domain Knowledge Engineering (UDKE) (BASE)
Unified Domain Knowledge Engineering (UDKE) (BASE)
Professor Dr. Mohamed E. Fayad
Motivations:
“Domain engineering is reusing domain knowledge to produce new software systems. It is a key (Word) in systematic software reuse and product line engineering.” [1]
Domain Engineering consists of three core phases: Domain Analysis, Domain Design, and Domain Implementation. Domain analysis is gathering and analyzing
experiences in building systems or parts of a system within a specific domain in the form of reusable assets. Domain design and domain implementation focus on designing and implementing reusable domain-specific languages, components, and code generators to support model-driven development, respectively. Domain Engineering is also referred to as System Family Engineering [2] [3]
Those definitions raised many questions, such as What domain? The concept of “domain” has many synonyms. Is domain engineering the key to systematic software reuse and product line engineering.? The answer: This is false, and there is no systematic reuse in existing software development and product line engineering.
Goals
Knowledge Unification
Knowledge Stability
Standardization
Engineering of Words
Foundation knowledge
Achieving Art, Science, and Engineering per Word