1 Introduction to Sharp’s Methods Striving for Engineering Precision in Information Systems Jim Carpenter Bureau of Labor Statistics, and President, DAMA-NCR.

Slides:



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

Software Modeling SWE5441 Lecture 3 Eng. Mohammed Timraz
Use Case Modeling SJTU. Unified Modeling Language (UML) l Standardized notation for object-oriented development l Needs to be used with an analysis and.
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.
The Use of Zachman Framework Primitives for Enterprise Modeling
Creating Architectural Descriptions. Outline Standardizing architectural descriptions: The IEEE has published, “Recommended Practice for Architectural.
Lecture a: Additional UML Models: Package, Activity, Deployment Lecture b: Generalization, Aggregation and Additional Domain Model Notation Copyright W.
Describing Syntax and Semantics
Common Mechanisms in UML
The Software Product Life Cycle. Views of the Software Product Life Cycle  Management  Software engineering  Engineering design  Architectural design.
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.
Software Design Description (SDD) Diagram Samples
MDC Open Information Model West Virginia University CS486 Presentation Feb 18, 2000 Lijian Liu (OIM:
Introduction To System Analysis and design
CSE314 Database Systems Data Modeling Using the Entity- Relationship (ER) Model Doç. Dr. Mehmet Göktürk src: Elmasri & Navanthe 6E Pearson Ed Slide Set.
What is UML? What is UP? [Arlow and Neustadt, 2005] January 23, 2014
SOFTWARE ENGINEERING BIT-8 APRIL, 16,2008 Introduction to UML.
1 Introduction to Modeling Languages Striving for Engineering Precision in Information Systems Jim Carpenter Bureau of Labor Statistics, and President,
Slide 1 Wolfram Höpken RMSIG Reference Model Special Interest Group Second RMSIG Workshop Methodology and Process Wolfram Höpken.
CIT UPES | Sept 2013 | Unified Modeling Language - UML.
Database Processing: Fundamentals, Design and Implementation, 9/e by David M. KroenkeChapter 2/1 Copyright © 2004 Please……. No Food Or Drink in the class.
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.
Alignment of ATL and QVT © 2006 ATLAS Nantes Alignment of ATL and QVT Ivan Kurtev ATLAS group, INRIA & University of Nantes, France
3rd Country Training, K.Subieta: System Engineering and Databases. Lecture 3, Slide 1 February 20, 2004 Lecture 3: Introduction to Software Analysis and.
METACASE. WHAT THIS PRESENTATION IS ABOUT  What’s META MODELING?  What’s METACASE?  METAEDIT+ 5.1 EVALUTION PROGRAM  Diagram and its kinds.
ISURF -An Interoperability Service Utility for Collaborative Supply Chain Planning across Multiple Domains Prof. Dr. Asuman Dogac METU-SRDC Turkey METU.
SWE © Solomon Seifu ELABORATION. SWE © Solomon Seifu Lesson 10 Use Case Design.
Lecture 1 Introduction Figures from Lewis, “C# Software Solutions”, Addison Wesley Richard Gesick.
An Introduction to Software Engineering. Communication Systems.
1 Introduction to Software Engineering Lecture 1.
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.
UML as a Specification Language for Embedded Systems. By, Mir Ahmed Ali, Asst. Professor, ECM department, SNIST. By, Prof. Narsiah sir, Director of School.
Building Simulation Model In this lecture, we are interested in whether a simulation model is accurate representation of the real system. We are interested.
Introduction to UML CS A470. What is UML? Unified Modeling Language –OMG Standard, Object Management Group –Based on work from Booch, Rumbaugh, Jacobson.
Lecture 9-1 : Intro. to UML (Unified Modeling Language)
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
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.
Assoc. Prof. Dr. Ahmet Turan ÖZCERİT.  The concept of Data, Information and Knowledge  The fundamental terms:  Database and database system  Database.
1 Database Systems Entity Relationship (E-R) Modeling.
21/1/ Analysis - Model of real-world situation - What ? System Design - Overall architecture (sub-systems) Object Design - Refinement of Design.
1 Information System Analysis Topic-3. 2 Entity Relationship Diagram \ Definition An entity-relationship (ER) diagram is a specialized graphic that illustrates.
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.
Data Modeling Using the Entity- Relationship (ER) Model
COP Introduction to Database Structures
Modeling with UML – Class Diagrams
Building Enterprise Applications Using Visual Studio®
Introduction to UML.
UML Diagrams By Daniel Damaris Novarianto S..
Entity- Relationship (ER) Model
Object Management Group Information Management Metamodel
Lecture 1 Introduction Richard Gesick.
Object-Oriented Analysis and Design
What is UML? What is UP? [Arlow and Neustadt, 2005] October 5, 2017
Unified Modeling Language
University of Central Florida COP 3330 Object Oriented Programming
Software Design Lecture : 15.
Introduction.
Lecture 10 Structuring System Requirements: Conceptual Data Modeling
Presentation transcript:

1 Introduction to Sharp’s Methods 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.4 dated 5/17/99 8 a.m.

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

3 Part II: Technology Framework Describe a technology context for Sharp’s methods and all other methods Provide contrast between Sharp’s methods and other methods Introduce the essential concepts in Sharp’s methods

4 Summary Context –Universal Systems Development Process: a network of transformations between models Contrast –Sharp’s methods: analysis of instances –Usual methods: conceptual debate Concepts –Valid fact type –Object –Predicate

5 A 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

6 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

7 The Notion of a Model A model is a projection (translation) of our knowledge of the real world onto 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?

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

9 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

10 Natural Language Modeling Language Words, sentences, equivalence John loves Mary. = Mary is loved by John. Object - thing we want to know facts about (John, Mary) Predicate - the glue that holds the object together, words that give an object meaning, what can be known about it: attributes & relationships (… loves …) = (... is loved by...) Note: “…” is a placeholder Complex sentence –Jack gave the ball to Jill –Object: (Jack, ball, Jill) like a parameter set (variable) –Predicate: ( … gave … to … ) like a function (fixed)

11 Class: defined by the predicate Fact: Jack gave the ball to Jill Context 1: Jack is one of 5 boys in a room with Jill Object: Jack (Class of boys) Predicate: … gave the ball to Jill Context 2: Jack & Jill are among 5 children in class Object: Jack, Jill (Class of children) Predicate: … gave the ball to … Context 3: Jack & Jill and toys in a classroom Object: Jack, ball, Jill (Class: children, toys) Predicate: …gave the…to

12 Fact Types: describing facts. Fact 1: Jack gave the red ball to Jill. Fact 2: John gave the red ball to Jill. Fact type: A boy gave the red toy to Jill. Fact 3: Jack gave the red ball to Jane. Fact type: A boy gave the red ball to a girl. Fact 4: Jane gave the red ball to Jack. Fact type: A child gave the red ball to a child. Fact 5: Jane gave the white ball to Jack. Fact type: A child gave a ball of a certain color to a child Fact 6: Jane gave the green truck to Jack. Fact type: A child gave a toy of a certain color to a child.

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

14 Mappings from NLM NLM maps well the principle concepts of existing data & process modeling languages, including business rules. The differences are in the methodologies To compare methodologies, we’ll consider a universal framework for the development process...

15 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 subset of statements –are kept as architectural documentation of the system. Network: The Zachman Framework is a metamodel of a network of models –

16 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 which 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

17 Fundamental Problems of Systems Development 1How to capture a complete and accurate set of well formed statements in some natural language? 2How to transform a set of well formed statements 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?

18 Model-guided discussions with subject expert –E.g., Use Case Analysis (many variations, see articles at ) Existing documentation –Statements of mission & objectives, methods handbook,... –Models (Sharp’s Lecture) –Database schemas –Forms used to collect data –Models of application packages used!!! –Code and code libraries Guided queries based on existing documentation Problem 1: Capturing the Statements reverse engineering & validation

19 Problem 1: Refining the Statements Usual methods: conceptual statement alternatives are compared and debated –example: is a “passenger” an entity or state of a person? Sharp’s method: –Each conceptual statement is analyzed by a truth comparison of specific instances –Refined statement is called a valid fact type well formed NLM sentence verifiable by tracing to yes/no answers to specific questions addressed to subject experts

20 Fact Type An assertion that a sentence formed from a set of domains and a predicate could be true for all (allowable) instances of the objects in the domains. Person identified by social security number has the name. Domains:, Predicate: … is identified by a … Instances: Jane Doe Jane Smith

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

22 Problem 3: Translating between languages Pair-wise translation –Each tool does N translations –N x N translations total Translator hub (repository) –Each tool does 2 translations (to & from the hub) –2 x N translations total Standard hubs –OMG: MOF –MDC: OIM (parallel structures???)

23 Problem 4: A Sufficient Network of Models (tentative ideas)