Unified Domain Knowledge Engineering (UDKE) (BASE)

Unified Domain Knowledge Engineering (UDKE) (BASE)

Professor Dr. Mohamed E. Fayad

Motivations:

  1. “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] 

  2. 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

  1. Knowledge Unification

  2. Knowledge Stability

  3. Standardization 

  4. Engineering of Words

  5. Foundation knowledge 

  6. Achieving Art, Science, and Engineering per Word

7, Built-in Functional, Non-Functional Requirements, and Ultimate Design & Architecture 

Fayad’s Innovations and what is BASE?

We start looking at Core Knowledge, Field Knowledge, and Discipline Engineering. Domain Knowledge Engineering is the knowledge of a specific, specialized discipline, profession (skills), or activity in contrast to general knowledge. In other words, the term domain knowledge describes the knowledge of specialists or experts in a particular field [4]

We invented an innovation called “Fayad’s Unified Domain Knowledge Engineering (F-UDKE).” Unification turns domain knowledge into unified and stable patterns suitable to any domain knowledge. F-UDKE depends on Software Stability Model (F-SSM), Art of Abstraction (FAA), and Unified and Stable Linguistic Engineering (FULE). We engineer each word belonging to the domain of knowledge engineering with more than 50 discoveries, more than 200 innovative keys and more than 100 new facts. We can produce more than ten different contents for each domain: Knowledge: 

1) Stable Analysis Patterns (SAPs) or Enduring Business Themes (EBTs)

2) Stable Design Patterns (SDP) or Business Objects (BOs)

3) Stable Architecture Patterns (SArchPs) or Unified Software Architecture on-Demand (USA on-Demand)

4) Algorithms (Tank)

5) Knowledge Map for Unified Domain Analysis (KM-UDA) 

6) Unified Domain Knowledge Standard (UDKS)

7) Unified Software Engines (USEs)

8) Unified Domain Dictionary (UDD) 

9) Unified Modeling Engineering (UME)

10)   Unified Business Rules (UBRs)

11) Changeable Application Objects or Industrial Objects (IOs) 

 

References:

[1] https://www.google.com/url?sa

[2] Handbook of Research on Mobile Software Engineering: Design, Implementation, and Emergent Applications (2 Volumes), Paulo Alencar (University of Waterloo, Canada) and Donald Cowan (University of Waterloo, Canada), Release Date: May, 2012|Copyright: © 2012 |Pages: 914

 

[3] https://www.google.com/url?

 

[4] https://www.google.com/url?