23
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.

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

Embed Size (px)

Citation preview

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

1

Introduction to Sharp’s MethodsStriving for Engineering Precision in Information Systems

Jim CarpenterBureau of Labor Statistics, and

President, DAMA-NCR

Seminar on Validating ModelsMay 24, 1999: BLS only

May 25, 1999: DAMA-NCR

Draft Version 1.4 dated 5/17/99 8 a.m.

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

2Agenda

• Part I: History Context (coming)

• Part II: Technology Framework (good start)

• Part III: Business Context (if time)

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

3Part 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

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

4Summary

• 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

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

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

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

6Some 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

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

7The 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 Carownership

Jimpoint

Note: Dimension of “when” is lost and other subtle info. We could recover some info by extending the “sentence”. But when to stop?

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

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

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

9UML - 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

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

10Natural 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)

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

11

Class: defined by the predicate

Fact: Jack gave the ball to JillContext 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 classObject: Jack, Jill (Class of children)

Predicate: … gave the ball to …

Context 3: Jack & Jill and toys in a classroomObject: Jack, ball, Jill (Class: children, toys)

Predicate: …gave the…to

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

12Fact 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.

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

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.

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

14Mappings 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 ...

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

15The 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

– http://www.dama-ncr.org/Library/Frameworks.ppt

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

16Isomorphism, 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

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

17Fundamental Problems of

Systems Development1 How to capture a complete and accurate set of well

formed statements in some natural language?

2 How to transform a set of well formed statements into a model in a given modeling language?

3 How to transform a model from one language to another? (Some good news!)

4 What set of modeling languages is sufficient to capture all of the knowledge embodied in the statement set?

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

18

• 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 – 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

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

19Problem 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

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

20Fact 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 <SSN> has the name <PersonName>.

Domains: <SSN>, <PersonName>

Predicate: … is identified by a …

Instances: 123-45-6789 Jane Doe

987-65-4321 Jane Smith

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

21Problem 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)

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

22Problem 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???)

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

23Problem 4:

A Sufficient Network of Models

• (tentative ideas)