640 likes | 654 Views
Learn about evaluating language suitability for domain modeling. Understand concepts like completeness, lucidity, and soundness in visual language design. Explore the role of ontologies in creating effective modeling languages.
E N D
On the role of Domain Ontologies in the design of Domain-Specific Visual Modeling Languages Giancarlo Guizzardi Luis Ferreira Pires Marten J. van Sinderen
Domain-Specific Visual Modeling Languages • How can we evaluate the suitability of a language to model certain aspects of a given domain ?
Representation to Represented • Completeness: A mapping from the conceptualization to its representation is total. Constructs Concepts
Representation to Represented • Incomplete Diagrams = lack of expressiveness Constructs Concepts
Representation to Represented • Lucidity: A mapping from the conceptualization to its representation is injective. Constructs Concepts
Representation to Represented • Non-Lucid Diagrams (construct overload) = ambiguity Constructs Concepts
Representation to Represented • Soundness: A mapping from the conceptualization to its representation is surjective. Constructs Concepts
Representation to Represented • Unsound Diagrams (construct excess) = meaningless representation Constructs Concepts
Representation to Represented • Laconic: A mapping from the conceptualization to its representation is functional. Constructs Concepts
Representation to Represented • Non-laconic (construct redundancy) = unnecessary complexity Constructs Concepts
Visual Concrete Syntax • concrete syntax, provides a concrete representational system for expressing the elements of the domain conceptualization • In sentential languages, there is a clear separation between vocabulary, syntax and semantics. The syntactic rules which permit construction of sentences, may be completely independent of the chosen vocabulary, and may be clearly distinguished from a definition of semantics. • The same does not hold for visual languages !
Pragmatics • visual representations are more or less effective depending on the level of isomorphism between the meta-models of the representing and the represented world.
Language Meta-Model & Conceptualization • The meta-model of the modeling language should be a lucid, sound, laconic and complete representation of a domain conceptualization
Ontologies • An ontology is an explicit and formal specification of a conceptualization. • They represent a shared agreement that must be necessarily true in all possible worlds considered by a community • There are formal ontologies in material domains (e.g. discrete processes, medicine, engineering, genetics, product design, multimedia, etc…)
Meta-model characteristics • identify which elements of the conceptualization must be made part of the incorporated in the syntax of the language • define the rules between syntactical elements that prescribe a criteria for the specification of valid statements in that language, i.e., well-formedness rules
Ontology-Based Method for DSVML design • Select or Develop a Domain Ontology • Extract from the Domain Ontology the language’s initial meta-model • Refine the language’s meta-model • Develop the language’s concrete syntax
Ontology Representation Language • The domain ontology OD is a concrete artifact. Therefore, it must also be expressed using a representation language L0.
Language L0 • We have another instance of the same pattern !
Language L0 • What constitutes a suitable domain modeling language L0? • If L0 is a domain independent conceptual modeling language, what is the nature of its meta-conceptualization ?
Conceptual Modeling • “Conceptual Modeling is the activity of formally describing some aspects of physicalandsocial world around us for the purposes of understanding and communication” (Myloupolos) • “Conceptual models offer abstract views on certain aspects of the real-world (descriptive view)” (Yourdon)
MOF Concepts Can UML be a candidate for L0? • UML is a standard visual notation for the purpose of specifying descriptive and prescriptive models of software systems
Formal Ontology and Conceptual Modeling • Conceptual modeling should be founded on formal upper-level ontologies, i.e., it a conceptual modeling language should explicitly defined ontological semantics
Formal Ontology and Conceptual Modeling • Conceptual modeling should be founded on formal upper-level ontologies, i.e., it a conceptual modeling language should explicitly defined ontological semantics
Individuals • Individuals: They belong to the realm of concrete entities, which means that they have necessarily temporal and spatial qualities. • Individuals may be substances, moments, situoids (processes), chronoids and topoids.
Universals • Universals: entities that can be instantiated simultaneously by a multiplicity of different individuals that are similar in given respects. Time- and space-independent patterns of features • The instantiation relation (::) is defined between individuals and universals • Characterized in terms of formal meta-properties (identity, essence, rigidity, dependence, unity,…)
Substance • A substance is that of which can exist by itself, i.e., they are not specifically constant dependent on any other entity. • Every substance is found on matter • Identity, Independence, Rigidity, Unity
Moments • It can only exist in another individual (e.g. a charge in a conductor, the color of a fruit, a purchase order, a fight connection) • There are one-place moments which are specifically constantly dependent on one substance (Quality) • and relational moments which depend on a multitude of substances • The inherence relation (i) glues moments to substances (their bearers)
~R+D ~R-D +R-D
Part-whole relations • Primary properties • non-reflexive, asymmetric, transitive • Secondary properties • shareable, essential, inseparable, mandatory
John part-of part-of Knowledge Representation Group part-of University of Twente
John’s Brain part-of John part-of part-of Knowledge Representation Group
Contextual Part-Whole relations • x <U y means “x is a part of y in the context of U” • For every universal U, there universals U1…Un, such that x::Ui and y::Ui and every instance of Ui is part of an instance of U
John part-of part-of Knowledge Representation Group Conceptual Modeling Group
John part-of John’s Heart
my car part-of its engine
John part-of John’s Brain
“…Composite aggregation is a strong form of aggregation, which requires that a part instance be included in at most one composite at a time and that the composite object has sole responsibility for the disposition of its parts. This means that the composite object is responsible for the creation and destruction of the parts. In implementation terms, it is responsible for their memory allocation. If a composite object is destroyed, it must destroy all of its parts. It may remove a part and give it to another composite object, which then assumes responsibility for it. If the multiplicity from a part to composite is zero-to-one, the composite may remove the part, and the part may assume responsibility for itself, otherwise it may not live apart from a composite.”
John part-of John’s Brain