Meaningful Modeling: What’s the Semantics of “Semantics”? David Harel, Weizmann Institute of Science Bernhard Rumpe, Technische Universität Braunschweig.

Slides:



Advertisements
Similar presentations
1 Knowledge Representation Introduction KR and Logic.
Advertisements

Language Specification using Metamodelling Joachim Fischer Humboldt University Berlin LAB Workshop Geneva
Computer Science CPSC 322 Lecture 25 Top Down Proof Procedure (Ch 5.2.2)
Rigorous Software Development CSCI-GA Instructor: Thomas Wies Spring 2012 Lecture 11.
CHAPTER 1: AN OVERVIEW OF COMPUTERS AND LOGIC. Objectives 2  Understand computer components and operations  Describe the steps involved in the programming.
Presented by: Thabet Kacem Spring Outline Contributions Introduction Proposed Approach Related Work Reconception of ADLs XTEAM Tool Chain Discussion.
The Application of Black Box Theory to System Development
Formal Techniques in Software Engineering Universiteit AntwerpenIntroduction 1.1 Formal Techniques in Software Engineering 3de BAC Informatica Chapter.
Object-Oriented Analysis and Design
Informatics 43 – May 7, Restatement of Goals for Testing Want to verify software’s correctness  Need to test  Need to decide on test cases  No.
Train Control Language Teaching Computers Interlocking By: J. Endresen, E. Carlson, T. Moen1, K. J. Alme, Haugen, G. K. Olsen & A. Svendsen Synthesizing.
Constraint Logic Programming Ryan Kinworthy. Overview Introduction Logic Programming LP as a constraint programming language Constraint Logic Programming.
Knowledge Acquisitioning. Definition The transfer and transformation of potential problem solving expertise from some knowledge source to a program.
Institute For Software Integrated Systems Vanderbilt University Applications of Model Integrated Computing to The Synchronous Language Signal Ethan Jackson.
Introduction to UML Visual modeling Models and its importance
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
Kari R. Schougaard, PhD Stud. Værktøjer og Teknikker, 2006 UNIVERSITY OF AARHUS Department of Computer Science Unified Modeling Language Visual language.
PRAGMATICS. 3- Pragmatics is the study of how more gets communicated than is said. It explores how a great deal of what is unsaid is recognized. 4.
Foundations This chapter lays down the fundamental ideas and choices on which our approach is based. First, it identifies the needs of architects in the.
Basic Concepts The Unified Modeling Language (UML) SYSC System Analysis and Design.
An Information Theory based Modeling of DSMLs Zekai Demirezen 1, Barrett Bryant 1, Murat M. Tanik 2 1 Department of Computer and Information Sciences,
UML Unified Markup Language Ziya Karakaya Atılım University, Computer Engineering
Syntax & Semantic Introduction Organization of Language Description Abstract Syntax Formal Syntax The Way of Writing Grammars Formal Semantic.
1 Data Modeling : ER Model Lecture Why We Model  We build models of complex systems because we cannot comprehend any such system in its entirety.
1 Introduction to Modeling Languages Striving for Engineering Precision in Information Systems Jim Carpenter Bureau of Labor Statistics, and President,
Towards Human-Executable Business Process Modeling Janis Barzdins, Edgars Rencis, Agris Sostaks Institute of Mathematics and Computer Science, University.
ArchiMate Authors : eSchoolink Group - ITNLU. Contents 1. What’s ArchiMate ? 2. Why ArchiMate ? 3. Main Benefits of ArchiMate 4. Layers of ArchiMate 5.
9/10/2012ISC 329 Isabelle Bichindaritz1 Entity Relationship (E-R) Modeling.
Assessing the Suitability of UML for Modeling Software Architectures Nenad Medvidovic Computer Science Department University of Southern California Los.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
LDK R Logics for Data and Knowledge Representation Modeling First version by Alessandro Agostini and Fausto Giunchiglia Second version by Fausto Giunchiglia.
Introduction to Formal Methods Based on Jeannette M. Wing. A Specifier's Introduction to Formal Methods. IEEE Computer, 23(9):8-24, September,
Programming in Java Unit 3. Learning outcome:  LO2:Be able to design Java solutions  LO3:Be able to implement Java solutions Assessment criteria: 
SOFTWARE DESIGN.
CHAPTER 6 - MODELING ANH AU. BACKGROUND Architectural model – an artifact that captures some or all of the design decisions that comprise a system’s architecture.
Unit-1 Introduction Prepared by: Prof. Harish I Rathod
Chapter Two The UML – Unified Modeling Language Ku-Yaw Chang Assistant Professor, Department of Computer Science and Information.
An Ontological Framework for Web Service Processes By Claus Pahl and Ronan Barrett.
Copyright © Curt Hill Languages and Grammars This is not English Class. But there is a resemblance.
Copyright © 2013 Curt Hill UML Unified Modeling Language.
 What is Modeling What is Modeling  Why do we Model Why do we Model  Models in OMT Models in OMT  Principles of Modeling Principles of Modeling 
Verification of behavioural elements of UML models using B Truong, Ninh-Thuan and Souquieres, Jeanine In Proceedings of the 2005 ACM Symposium on.
Automata Based Method for Domain Specific Languages Definition Ulyana Tikhonova PhD student at St. Petersburg State Politechnical University, supervised.
Programming Languages and Design Lecture 3 Semantic Specifications of Programming Languages Instructor: Li Ma Department of Computer Science Texas Southern.
Communication Vocabulary
Computer Science CPSC 322 Lecture 22 Logical Consequences, Proof Procedures (Ch 5.2.2)
1 Technical & Business Writing (ENG-715) Muhammad Bilal Bashir UIIT, Rawalpindi.
Week 04 Object Oriented Analysis and Designing. What is a model? A model is quicker and easier to build A model can be used in simulations, to learn more.
CSCI 3428: Software Engineering Tami Meredith UML Unified Modeling Language.
UML Profile BY RAEF MOUSHEIMISH. Background Model is a description of system or part of a system using well- defined language. Model is a description.
Requirement Analysis SOFTWARE ENGINEERING. What are Requirements? Expression of desired behavior Deals with objects or entities, the states they can be.
1 CEN 4020 Software Engineering PPT4: Requirement analysis.
A UML-Based Pattern Specification Technique Presented by Chin-Yi Tsai IEEE TRANSACTION ON SOFTWARE ENGINEERING, VOL. 30, NO. 3, MARCH 2004 Robert B. France,
Software Engineering: Models David Millard
Informatics 43 – May 5, Restatement of Goals for Testing Want to verify software’s correctness  Need to test  Need to decide on test cases  No.
UML (Unified Modeling Language)
1 “UML compilation” A more formal approach for SysML 2.0 OMG SE DSIG – SysML roadmap meeting Cambridge MA - Sep 24, 2015 Yves BERNARD.
Defects of UML Yang Yichuan. For the Presentation Something you know Instead of lots of new stuff. Cases Instead of Concepts. Methodology instead of the.
Language = Syntax + Semantics + Vocabulary
SysML 2.0 Requirements for Visualization
SysML 2.0 Formalism: Requirement Benefits, Use Cases, and Potential Language Architectures Formalism WG December 6, 2016.
Object-Oriented Analysis and Design
SysML v2 Formalism: Requirements & Benefits
State Digrams in UML: A Formal Senmatics using Graph Transformations
Software Design Methodology
Seminar 1 Design of Informatics Systems
SysML 2.0 Concept and Needs for Visualization
Chapter 2, Modeling with UML, Part 4 UML 2 Metamodel
Informatics 121 Software Design I
ETSI TC MTS TDL SC meeting Reports
Presentation transcript:

Meaningful Modeling: What’s the Semantics of “Semantics”? David Harel, Weizmann Institute of Science Bernhard Rumpe, Technische Universität Braunschweig Presented by: K M Sabidur Rahman Date: Feb 25,

Outline  Elements of language definition  Syntax  Semantic domain  Semantic mapping  Representation  Metamodeling in UML  Degree of Formality  Doodling Phenomenon  Accommodating the intended audience  Pertinent questions  Summary 2

Why “Semantics”? Confusion in definition in formal language Distinction between Syntax and Semantics Influence of assumptions in definition Human factors (People gets confused) This paper tries to clarify some concepts regarding Syntax and Semantics; their differences and other issues focusing on Unified Modeling Language (UML). 3

Elements of a Language Definition Formal: Data is used in communication Informal: Syntactic representation of Data Mapping: Interpretation which assigns a meaning to each piece of Data 4

Example of Confusion Two pieces of data with same information -June 20, The last day of the first spring in the second millennium 5

Example of Confusion Single data with multiple meaning - John’s Birthday * Depends on John who? 6

Elements of a Language Definition Language consists of: Syntactic notation – infinite set of legal elements Meaning of these elements – Semantic Domain Mapping between Syntax and semantic domain 7

Syntax Can be - words Sentences Statements Boxes Diagrams Terms Models Clauses Modules 8

Syntax Textual Language – linear character sequences Diagrammatic language - lines, arrows, curves and boxes -More intuitive/expressive than textual language -Harder to express formally 9

Syntax 10

Syntax What does really “+” means? Who said that read() is reading something as in English! *Language must be clear and rigid about it’s rules and their meaning. 11

Wrong ways to view semantics Semantics is the metamodel Semantics is the semantic domain Semantics is the context conditions Semantics is dealing with behavior Semantics is being executable Semantics is the behavior of a system Semantics is the meaning of individual constructs Semantics means looking mathematical Semantics is ________ * not all languages specify behavior, and not all those that do so are (or need to be) executable 12

Semantic Domain A language’s semantics must provide the meaning of each expression, and that meaning must be an element in some well-defined and well-understood domain. Often confused with behavior Serves as an abstraction of reality, capturing decisions about the kinds of things the language should express Prerequisite to comparing semantic definitions. Independent of the notation Description can be from plain English to rigorous mathematics 13

Semantic mapping A sound language definition must relate the syntactic expressions to the semantic domain elements so that each syntactic creature maps to its meaning. Can be explained by examples and plain English Or more formally Semantics are compositional; the meaning of a composite creature being fully based on the meanings of its parts 14

Arithmetic Expressions Semantic Domain, S : all natural numbers Semantic mapping, M : Obvious interpretation: Agreed on interpretation: 15

Dataflow Diagrams 16

Representation Layers of representation (textual languages): A set of characters forms an alphabet. Groups of characters form words. A third layer groups these words into sentences or expressions A fourth and final layer constrains the sentences by imposing context conditions, for example, that variable use be consistent with variable types. 17

Representation Layers of representation (visual languages): create the first layer with two kinds of basic topological elements: open and closed line segments specialize these elements geometrically into several kinds of lines and closed shapes—arrows, straight lines, splines, boxes and circles, and so on—with various line styles and colors arrange the geometric shapes into diagrams by first making topologically meaningful combinations using connectivity, insideness, partitioning and intersection, and the like and then laying these out geometrically in a 2D or 3D diagram create the fourth layer by imposing context conditions for the set of legal diagrams. 18

Representation 19

Metamodeling in UML Official UML definitions use the class diagram approach in a recursive, bootstrapping fashion: metamodeling. Benefit is the user doesn’t need to learn a new external notation But, this only deals with syntax, not semantics. 20

Metamodeling in UML The class diagram and Object constraint language used in metamodeling must be defined with Semantics, first. Currently, OMG doesn’t offer complete definition of UML’s true semantics, not even semantic domain. Only discussion on abstract syntax is not enough for developers or vendors. 21

Degree of Formality Misconceptions - Textual languages are more formal than Visual languages - Formality means lots of Greek letters and mathematical symbols 22

Degree of formality It’s possible to make imprecise statements with a precise, rigorously defined language, but it’s hard to be precise with an imprecise language 23

Degree of formality What really matters? -Well defined language -Precise statements - Model’s Detailedness 24

The Doodling Phenomenon A mind-set that says diagrams are what an engineer scribbles on the back of a napkin, but the real work is done with textual languages. 25

The Intended Audience If the target audience is users, formulas won’t be suitable Language developers and methodologists, would be willing to cope with the notations for semantics. Developers would gather insights into what would be the best form for language concepts. Methodologists would be motivated to use the notation in the interest of discovering how to advise language users. Tool vendors should also be exposed to a rigorous semantics, but they are probably better off with precise descriptions of “how to deal with” instead of the “what” and the “why.” 26

Pertinent Questions Does the given formalization capture the intended users’ intuition? Are the context conditions sufficient to ensure that language expressions are consistent and meaningful? Does the notation permit the specification of important semantic domain properties? If analysis techniques or transformations for the language exist, are they sound with respect to the semantics? 27

Summary  Elements of language definition  Syntax  Semantic domain  Semantic mapping  Representation  Metamodeling in UML  Degree of Formality  Doodling Phenomenon  Accommodating the intended audience  Pertinent questions 28

29