1 Introduction to Modeling Languages Striving for Engineering Precision in Information Systems Jim Carpenter Bureau of Labor Statistics, and President,

Slides:



Advertisements
Similar presentations
Ch:8 Design Concepts S.W Design should have following quality attribute: Functionality Usability Reliability Performance Supportability (extensibility,
Advertisements

Chapter 5: Introduction to Information Retrieval
CIT731: Database Development Object Oriented Modeling (OOM)
Use Case Modeling SJTU. Unified Modeling Language (UML) l Standardized notation for object-oriented development l Needs to be used with an analysis and.
A Brief Introduction. Acknowledgements  The material in this tutorial is based in part on: Concurrency: State Models & Java Programming, by Jeff Magee.
Chapter 22 Object-Oriented Systems Analysis and Design and UML Systems Analysis and Design Kendall and Kendall Fifth Edition.
ISBN Chapter 3 Describing Syntax and Semantics.
Unified Modeling Language
Object-Oriented Analysis and Design
Building Enterprise Applications Using Visual Studio ®.NET Enterprise Architect.
Software Testing and Quality Assurance
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
Introduction to UML Visual modeling Models and its importance
Understanding Metamodels. Outline Understanding metamodels Applying reference models Fundamental metamodel for describing software components Content.
UML CASE Tool. ABSTRACT Domain analysis enables identifying families of applications and capturing their terminology in order to assist and guide system.
The Use of Zachman Framework Primitives for Enterprise Modeling
Describing Syntax and Semantics
Common Mechanisms in UML
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.
UML Class Diagrams: Basic Concepts. Objects –The purpose of class modeling is to describe objects. –An object is a concept, abstraction or thing that.
MDC Open Information Model West Virginia University CS486 Presentation Feb 18, 2000 Lijian Liu (OIM:
1 Introduction to Sharp’s Methods Striving for Engineering Precision in Information Systems Jim Carpenter Bureau of Labor Statistics, and President, DAMA-NCR.
Chapter 6 System Engineering - Computer-based system - System engineering process - “Business process” engineering - Product engineering (Source: Pressman,
SOFTWARE ENGINEERING BIT-8 APRIL, 16,2008 Introduction to UML.
CIT UPES | Sept 2013 | Unified Modeling Language - UML.
Developing Use Cases in a Group Carolyn L. Cukierman Face-to-Face Technology Conference March 27, 2000.
Introduction to UML By: Prof. Aiman Hanna Department of Computer Science, Concordia University, Montreal, Canada.
SWE © Solomon Seifu ELABORATION. SWE © Solomon Seifu Lesson 10 Use Case Design.
Metadata. Generally speaking, metadata are data and information that describe and model data and information For example, a database schema is the metadata.
Lecture 1 Introduction Figures from Lewis, “C# Software Solutions”, Addison Wesley Richard Gesick.
LOGIC AND ONTOLOGY Both logic and ontology are important areas of philosophy covering large, diverse, and active research projects. These two areas overlap.
UML What Is the UML? The Unified Modeling Language (UML) is the successor to the wave of object- oriented analysis and design (OOA&D) methods.
UML diagrams What is UML UML diagrams –Static modeoing –Dynamic modeling 1.
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
Copyright © 2013 Curt Hill UML Unified Modeling Language.
1 Intro to Sharp’s Methods Jim Carpenter Bureau of Labor Statistics OTSP Seminar May 24, 1999.
CS 772: Global Knowledge Networks V. “Juggy” Jagannathan CSEE, West Virginia University.
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
Unified Modeling Language. Object Oriented Methods ► What are object-oriented (OO) methods?  OO methods provide a set of techniques for analyzing, decomposing,
Unified Modelling Language (UML) Software Engineering Lab. Sharif University of Technology.
MODEL-BASED SOFTWARE ARCHITECTURES.  Models of software are used in an increasing number of projects to handle the complexity of application domains.
1 Introduction to the Zachman Framework Jim Carpenter President, DAMA-NCR May 11, 1999 Program Version 1.04 dated 5/13/99 8 AM.
SYSE 802 John D. McGregor Module 1 Session 2 Requirements Modeling in SysML.
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.
MDA & RM-ODP. Why? Warehouses, factories, and supply chains are examples of distributed systems that can be thought of in terms of objects They are all.
Assoc. Prof. Dr. Ahmet Turan ÖZCERİT.  The concept of Data, Information and Knowledge  The fundamental terms:  Database and database system  Database.
Presented by Kyumars Sheykh Esmaili Description Logics for Data Bases (DLHB,Chapter 16) Semantic Web Seminar.
5. 2Object-Oriented Analysis and Design with the Unified Process Objectives  Describe the activities of the requirements discipline  Describe the difference.
Object Oriented Programming and Data Abstraction Earl Huff Rowan University.
Artificial Intelligence Knowledge Representation.
UML. Model An abstract representation of a system. Types of model 1.Use case model 2.Domain model 3.Analysis object model 4.Implementation model 5.Test.
Elements Of Modeling. 1.Data Modeling  Data modeling answers a set of specific questions that are relevant to any data processing application. e.g. ◦
Method – Notation 8 Hours.
Modeling with UML – Class Diagrams
Building Enterprise Applications Using Visual Studio®
Introduction to UML.
Advanced Computer Systems
An Overview of Requirements Engineering Tools and Methodologies*
UML Diagrams By Daniel Damaris Novarianto S..
Object Management Group Information Management Metamodel
Lecture 1 Introduction Richard Gesick.
Unified Modeling Language
University of Central Florida COP 3330 Object Oriented Programming
UML Diagrams Jung Woo.
Software Design Lecture : 15.
Nov. 29, 2001 Ontology Based Recognition of Complex Objects --- Problems to be Solved Develop Base Object Recognition algorithms that identify non-decomposable.
Visual Modeling Using Rational Rose
Chapter 22 Object-Oriented Systems Analysis and Design and UML
Presentation transcript:

1 Introduction to Modeling Languages Striving for Engineering Precision in Information Systems Jim Carpenter Bureau of Labor Statistics, and President, DAMA-NCR Seminar on Validating Models May 24, 1999: BLS only May 25, 1999: DAMA-NCR Draft Version 1.2 dated 5/13/99 5 PM

2 Agenda Part I: History Context (coming) Part II: Technology Framework (good start) Part III: Business Context (if time)

3 Part II: Technology Framework

4 Central Theme: How to Describe a System Answer: use a network of descriptions –Starting from a bunch of English sentences. –Can use any natural language –Ending in the ultimate description, i.e., the system itself –Information Technology: the executable binary code. –Architecture: the building –Manufacturing: the product

5 Some Basic Notions Description = Model (for our purposes) Model = a description in some language –The Modeling Language Language = a set of concepts with representations –also has rules but we’ll gloss over this for now Concept = a unit of thought, a notion Representations –sound –word = a group of letters –graphic –mathematical symbol

6 The Notion of a Model A model is a projection (translation) of our knowledge of the real world into a fixed set of concepts. Example: –Knowledge: “This person I, Jim, am pointing at right now who I know as John owned a thing we call a car yesterday.” –Concepts: Object: relationship: –Projection: a “sentence” in the modeling language: John Car ownership Jim point Note: Dimension of “when” is lost and other subtle info. We could recover some info by extending the “sentence”. But when to stop?

7 Data & Process Modeling Languages –Entity Relationship  UML –Data Flow  Work Flow Programming Languages Linear Models (Math & Statistics) –Vector, V (observation) –Space,  (hypothesis) –Projection, P (statistic) –Difference, E (Error) Software packages ( Microsoft PowerPoint, etc.) Technical languages - branches of science Natural Language Modeling Language: word, sentence, object, predicate Some Modeling Languages V  P E

8 UML - a standard language ( Unified Modeling Language) A standard set of 90 some elements (concepts) established by OMG Each element has a fixed graphical representation Nine (overlapping) bags of elements are defined Each bag is called a diagram type = dialect –Use Case Diagram  Collaboration Diagram –Class Diagram  Activity Diagram –Object Diagram  Component Diagram –State Diagram  Deployment Diagram –Sequence Diagram

9 Natural Language Modeling Language Words, sentences John loves Mary. = Mary is loved by John. Objects (John, Mary) Predicate (the glue that holds the objects together) (… loves …) = (... is loved by...) Note: “…” is a placeholder Complex sentence –Jack gave the ball to Jill –Objects: (Jack, ball, Jill) like a parameter set –Predicate: ( … gave … to … ) like a function (Can you think of good graphical representations for object & predicate?)

10 Fundamental Axiom of Information Technology Idea occurs repeatedly in IT –Bob Schmidt’s book Data Modeling for Information Professionals in a discussion of whether modeling is possible. –Basis for concept of “round trip engineering” –Basis for OMG’s & MDC’s tool interoperability architectures It is possible to map some elements from one language into elements of another. In other words: languages may have similar structures and rules.

11 The Universal Systems Development Process: A network of transformations between models. Starting model is a set of statements representing the knowledge of the subject domain expert Ending model is the system, a set of executable binary code (in a machine language) Intermediate models –provide insightful views based on the statement set –are kept as architectural documentation of the system. Network: The Zachman Framework is a metamodel of a network of models –

12 Isomorphism, Validity, & Equivalence ISOMORPHIC MAPPING (a very nice mathematical concept) –A mapping from one set to another (ordered pairs) –Properties of the mapping One-to-one (some rule with pairs the elements) Onto (no elements left over) VALID MODEL: if there is a subset of statements that is isomorphic to the model VALID SYSTEM: if the entire statement set is isomorphic to the system EQUIVALENT MODELS: if there is an isomorphic mapping between them

13 Fundamental Problems of Systems Development 1How to get a complete and accurate set of well formed statements in some natural language? 2How to transform the statement set into a model in a given modeling language? 3How to transform a model from one language to another? (Some good news!) 4What set of modeling languages is sufficient to capture all of the knowledge embodied in the statement set?

14 Problem 1: Capturing the Statements **** Note common failure: statement set is not preserved. **** Model-guided discussions with subject expert –E.g., Use Case Analysis (many variations, see articles at ) Existing documentation (reverse engineering) –Mission, objectives, methods,... –Models of all kinds –Database schemas –Forms used to collect data –Models of application packages used!!! –Code and code libraries Guided queries based on existing documentation

15 Problem 1: Refining the Statements Usual methods: conceptual statement alternatives are compared and debated Sharp’s method: –Each conceptual statement is analyzed by a truth comparison of specific instances –Refined statement is called a fact type Fact type: assertion that a sentence formed from a set of objects and a predicate is always true for all instances of the objects.

16 Problem 2: Transforming the statement set Usual method: mental process (usually treated as part of problem 1) –E.g.: Use Case Analysis Identify the “objects” Identify the “relationships” Sharp’s method: algorithm –Well defined map from set of fact types to a unique model in any given language

17 That’s all, so far. This is the basic technology framework of part II. I still need to show connections to Sharp’s NLM methods & a few other popular methods. Still need brief history context as a Part I. May do a business context as Part III. -- Jim C.