Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "1 Introduction to Modeling Languages Striving for Engineering Precision in Information Systems Jim Carpenter Bureau of Labor Statistics, and President,"— Presentation transcript:

1 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 2 Agenda Part I: History Context (coming) Part II: Technology Framework (good start) Part III: Business Context (if time)

3 3 Part II: Technology Framework

4 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 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 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 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 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 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 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 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 –http://www.dama-ncr.org/Library/Frameworks.ppt

12 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 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 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 http://www.crim.ca/~aseffah/investigation/use_case.htm ) 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 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 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 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.


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

Similar presentations


Ads by Google