DAT375 Modeling Business Requirements using Object Role Modeling (Part 1) LeRoy Tuttle, Jr. Program Manager Microsoft.

Slides:



Advertisements
Similar presentations
Database Systems: Design, Implementation, and Management Tenth Edition
Advertisements

Analysis Modeling.
1 CONCEPTUAL SCHEMA DESIGN PROCESS Information Processing and Technology, 2001 Yr 12 IPT.
Chapter 4 Enterprise Modeling.
1 Modeling Reactive Behavior in ORM © 2003, T. A. Halpin & Gerd Wagner Terry Halpin Northface University Salt Lake City, USA.
IT420: Database Management and Organization
Accounting System Design
Systems Development Life Cycle
1 CONCEPTUAL SCHEMA DESIGN PROCESS Information Processing and Technology, 2001 Yr 12 IPT.
Building Enterprise Applications Using Visual Studio ®.NET Enterprise Architect.
Modeling the Data: Conceptual and Logical Data Modeling
Entity-Relation Modeling Hun Myoung Park, Ph.D., Public Management and Policy Analysis Program Graduate School of International Relations International.
LIS 557 Database Design and Management William Voon Michael Cole Spring '04.
Chapter 3: Modeling Data in the Organization
DAVID M. KROENKE’S DATABASE PROCESSING, 10th Edition © 2006 Pearson Prentice Hall 5-1 David M. Kroenke Database Processing Tenth Edition Chapter 5 Data.
Modeling Data The Entity Relationship Model (ER) For Database Design.
© 2008 Pearson Prentice Hall, Experiencing MIS, David Kroenke
Chapter 3: Modeling Data in the Organization
Fundamentals, Design, and Implementation, 9/e COS 346 Day 2.
Introduction to Database Development. 2-2 Outline  Context for database development  Goals of database development  Phases of database development.
Chapter 3 © 2005 by Prentice Hall 1 Objectives Definition of terms Definition of terms Importance of data modeling Importance of data modeling Write good.
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 10 Structuring.
1 CONCEPTUAL SCHEMA DESIGN PROCESS Information Processing and Technology, 2001 Yr 12 IPT.
IT 244 Database Management System Data Modeling 1 Ref: A First Course in Database System Jeffrey D Ullman & Jennifer Widom.
Computer System Analysis Chapter 10 Structuring System Requirements: Conceptual Data Modeling Dr. Sana’a Wafa Al-Sayegh 1 st quadmaster University of Palestine.
3.1 CSIS 3310 Chapter 3 The Entity-Relationship Model Conceptual Data Modeling.
Data Modeling ERM ERD.
1 Introduction to modeling Relational modelling Slides for this part are based on Chapters 11 from Halpin, T. & Morgan, T. 2008, Information Modeling and.
1 Model Driven Development with ORM 2 and NORMA © 2007 T. Halpin & Neumont University Terry Halpin Neumont University
1 Introduction to Modeling Languages Striving for Engineering Precision in Information Systems Jim Carpenter Bureau of Labor Statistics, and President,
1 CONCEPTUAL SCHEMA DESIGN PROCESS Information Processing and Technology, 2001 Yr 12 IPT.
Database Systems: Design, Implementation, and Management Ninth Edition
9/14/2012ISC329 Isabelle Bichindaritz1 Database System Life Cycle.
1 ER Modeling BUAD/American University Entity Relationship (ER) Modeling.
Chapter 2: Modeling Data in the Organization
Information Systems: Databases Define the role of general information systems Describe the elements of a database management system (DBMS) Describe the.
Database Processing: Fundamentals, Design and Implementation, 9/e by David M. KroenkeChapter 2/1 Copyright © 2004 Please……. No Food Or Drink in the class.
A Z Approach in Validating ORA-SS Data Models Scott Uk-Jin Lee Jing Sun Gillian Dobbie Yuan Fang Li.
Chapter 2 Data Models Database Systems: Design, Implementation, and Management, Rob and Coronel Adapted for INFS-3200.
1/26/2004TCSS545A Isabelle Bichindaritz1 Database Management Systems Design Methodology.
Chapters 15 &16 Conceptual and Logical Database Design Methodology.
Metamodels for Object Role Modeling Hongyan Song March 2005.
44220: Database Design & Implementation Modelling the ‘Real’ World Ian Perry Room: C41C Ext.: 7287
MANAGING DATA RESOURCES ~ pertemuan 7 ~ Oleh: Ir. Abdul Hayat, MTI.
1 Introduction to modeling ER modelling Slides for this part are based on Chapters 8 from Halpin, T. & Morgan, T. 2008, Information Modeling and Relational.
1 Introduction to modeling Object-role modelling (ORM) Slides for this part are based on Chapters 3-7 from Halpin, T. & Morgan, T. 2008, Information Modeling.
DAT376 Modeling Business Requirements using Object Role Modeling (Part 2) LeRoy Tuttle, Jr. Program Manager Microsoft.
Databases Illuminated Chapter 3 The Entity Relationship Model.
Entity Relationship Modeling
MIS 385/MBA 664 Systems Implementation with DBMS/ Database Management
Assoc. Prof. Dr. Ahmet Turan ÖZCERİT.  The concept of Data, Information and Knowledge  The fundamental terms:  Database and database system  Database.
Lecture 91 Introduction to Data Analysis and Logic Specification Objectives l Draw an entity-relationship diagram, and explain the types of entity relationships.
©Silberschatz, Korth and Sudarshan2.1Database System Concepts Chapter 2: Entity-Relationship Model Entity Sets Relationship Sets Mapping Constraints Keys.
Introduction to modeling
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 10 Structuring.
The Relational Model Lecture #2 Monday 21 st October 2001.
Copyright © 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Slide 4- 1.
Lecture 5 Data Model Design Jeffery S. Horsburgh Hydroinformatics Fall 2012 This work was funded by National Science Foundation Grant EPS
The interplay of mandatory role and set-comparison constraints Dr. Peter Bollen School of Business and Economics Maastricht University, the Netherlands.
IT 5433 LM3 Relational Data Model. Learning Objectives: List the 5 properties of relations List the properties of a candidate key, primary key and foreign.
COP Introduction to Database Structures
Building Enterprise Applications Using Visual Studio®
Director – Engineering
Object Management Group Information Management Metamodel
Data Models.
MANAGING DATA RESOURCES
Entity-Relation Modeling
Introduction to modeling
Lecture 10 Structuring System Requirements: Conceptual Data Modeling
Presentation transcript:

DAT375 Modeling Business Requirements using Object Role Modeling (Part 1) LeRoy Tuttle, Jr. Program Manager Microsoft

Agenda – Part 1 (DAT375) Visual Studio.NET Enterprise Architect Visual Studio.NET Enterprise Architect Object Role Modeling Object Role Modeling Database Design Process Database Design Process Set Theory Review Set Theory Review Object Role Modeling Object Role Modeling Conceptual Schema Design Procedure Conceptual Schema Design Procedure – Modeling fact types – – Constraining fact types Documenting the Model Implementing the Model

VSEA Database Design Tools Visio-based (VEA) Visio-based (VEA) – Conceptual data modeling (ORM) – Logical database modeling (Relational, IDEF1X, “ER”) – Physical database modeling (SQL Server, Access, Oracle, DB2, etc.) – Forward and reverse engineering, sync, import/export, reports, etc. Non-Visio Non-Visio – Online physical database design tools – SQL query designer 3

Visio for EnterpriseArchitects(VEA) Database and Software modeling Networkdiagramming subsumes part of

Object Role Modeling (ORM) Understandable Understandable – Express facts and rules in plain language Capable Capable – Capture more business rules Reliable Reliable – Validate rules in English with sample data Stable Stable – Minimize the impact of change Executable Executable 5

Fact-Orientation Data examples are expressed as facts Data examples are expressed as facts How facts are grouped into structures (tables, classes, etc.) is not a conceptual issue How facts are grouped into structures (tables, classes, etc.) is not a conceptual issue Fact-orientation is at a level above object-orientation Fact-orientation is at a level above object-orientation Here is where domain expert and modeler should communicate Here is where domain expert and modeler should communicate 6

Examining a Scheduling Theme 7

Examining a Scheduling Theme (Tabular Information) Mon Tue Wed Thu Fri Mon Tue Wed Thu Fri Team Meeting Manager 1:1 Brownbag Lunch: ORM Data Modeling Project All-hands Quarterly Meeting Offsite Training Class Out of Office: Doctor Apt Team Meeting Manager 1:1 Brownbag Lunch: ORM Data Modeling Project All-hands Quarterly Meeting Offsite Training Class Out of Office: Doctor Apt Conf A NA Conf A NA Meeting subject LocationLocation RoomRoom DurationDuration NA NA BuildingBuilding 10:30 9:30 12:00 1:30 10:00 11:00 9:00 10:30 9:30 12:00 1:30 10:00 11:00 9:00 Yes No Yes No Yes No Yes No RecurringRecurring Appointment time HourHourWeekdayWeekday IDID 8

Examining a Scheduling Theme (Object Role Modeling) 9

It is impossible that more than one Room at the same HourSlot is booked for the same Activity 10

It is impossible that more than one Room at the same HourSlot is booked for the same Activity 11

ORM -> ER -> DDL demo demo 14

The Baseline Database Design Process 15 Modeling business requirements Modeling databases External Conceptual Logical Physical

Business Context as a Foundation 16 Universe of Discourse Record Keeping SQL

Analysis Is A Joint Activity The domain expert best understands the application domain The domain expert best understands the application domain The modeler elicits and formalizes this understanding The modeler elicits and formalizes this understanding 17

Who Are Domain Experts? Definition Definition Domain experts are the people who provide business requirements to the modeler Examples Examples – Subject matter experts – Knowledge workers – Business analysts – System architects – Developers 18

Database Design Roles External and Conceptual LogicalPhysical Principal database design roles Domain experts ModelerModelerDeveloperDeveloperModeler Focus Capture business requirements Document relational design Implement relational design Modeling methodology ORMER Transact-SQL DDL 19

Set Theory Review Instances, Populations, Sets, and Collections Instances, Populations, Sets, and Collections Instance Relationships Instance Relationships Set Existence Set Existence Set Forming Operations Set Forming Operations

Instances, Populations, Sets, and Collections Instance Instance Population Population Set Set Member Member Collection Collection 21 Population CC EE AA DD BB Collection CC EE DD AA AADD

1:1 n:m 1:n Instance Relationships Cardinality Cardinality – One-to-one (1:1) – One-to-many (1:n) – Many-to-many (n:m) Mandatory vs. optional cardinality Mandatory vs. optional cardinality 22 AA AA BB BB BB BB AA AA BB BB BB

Set Existence 23 Identity AABB Mutual exclusion A A B B Overlap B A Subset AA B

Intersection of sets Union of sets Difference of sets Set Forming Operations XY XY XY X U Y X Y U X - Y 24

Conceptual Schema Design Procedure (CSDP) Model Relationships 1) Analyze External Information and Create a Conceptual Model 2) Draw a Fact Types and Apply a Population Check 3) Identify Primitive Entity Types and Reformulate Arithmetically Derived Fact Types Derived Fact Types Constrain Relationships 4) Add Uniqueness Constraints and Check Arity of Fact Types 5) Add Mandatory Role Constraints and Check for Logical Derivations Derivations 6) Add Value and Set Constraints, and Create Entity Subtypes 7) Add Frequency, Ring, and Other Constraints

CSDP Step 1 Analyze External Information and Create a Conceptual Model – Creates the conceptual model – Fact-driven design – Object types – Predicates – Communicating intent

Fact-Driven Design Goals of the modeler Goals of the modeler – Represent semantic relationships between objects – Capture business rules – Do not capture business processes Purpose of the data model Purpose of the data model – Represent allowable states of data in the UoD – Reflect the scope of the UoD 27

What Are Fact Instances? Definition Definition A fact instance is an individual observation of the relationship between two or more data values Characteristics Characteristics – Are examples of relationships between specific data – Are related through an action statement – May have constraints 28

What Are Object Types? Definition Definition An object type represents the set of all possible instances of a given object Characteristics Characteristics – Generic representations of populations – Always named singularly – Always title case – Object kind 29

What Are Predicates? Definition Definition A predicate is a verb phrase that the domain expert uses to relate object types Characteristics Characteristics – Are sentence fragments with holes in them for object type names – Describe unqualified relationships – Have reversible readings 30

What Are Fact Types? Definition Definition A fact type is the set of fact instances that share the same object types and predicate relationships Characteristics Characteristics – Syntax: [Object type] predicate [Object type] – Arity of a fact type – Generic representation – Reversible predicate reading 31

Practice: Verbalizing Fact Types (Graphical Information) 32 London(LHR) Dakar(DKR) Rome(FCO) New York (JFK) Atlanta(ATL) Caracas(CCS) US62 US68 ES23 IT37 US72 UK11 VE59 VE56 Madrid(MAD) London(LHR) Dakar(DKR) Rome(FCO) New York (JFK) Atlanta(ATL) Caracas(CCS) US62 US68 ES23 IT37 US72 UK11 VE59 VE56 Madrid(MAD) Flight UK11 originates in London and terminates in New York. London(LHR) Dakar(DKR) Rome(FCO) New York (JFK) Atlanta(ATL) Caracas(CCS) US62 US68 ES23 IT37 US72 UK11 VE59 VE56 Madrid(MAD) Flight US62 originates in Atlanta and terminates in Rome. London(LHR) Dakar(DKR) Rome(FCO) New York (JFK) Atlanta(ATL) Caracas(CCS) US62 US68 ES23 IT37 US72 UK11 VE59 VE56 Madrid(MAD) Flight VE56 originates in Caracas and terminates in Rome. London(LHR) Dakar(DKR) Rome(FCO) New York (JFK) Atlanta(ATL) Caracas(CCS) US56 US68 ES23 IT37 US72 UK11 VE59 VE56 Madrid(MAD)

Practice: Verbalizing Fact Types (Tabular Information) UK11 US72 IT37 ES23 US56 VE59 VE56 US68 UK11 US72 IT37 ES23 US56 VE59 VE56 US68 London New York Rome Madrid Atlanta Caracas Atlanta London New York Rome Madrid Atlanta Caracas Atlanta :25 1:55 11:12 23:50 8:03 8:48 4:54 14:25 1:55 11:12 23:50 8:03 8:48 4:54 On Time Delayed Boarding On Time Canceled On Time Boarding On Time Delayed Boarding On Time Canceled On Time Boarding FlightnumberFlightnumberOriginationcityOriginationcity Departure info GateGateTimeTime StatusStatus 3 4E Int’l 3 T Int’l T 3 4E Int’l 3 T Int’l T TerminalTerminal New York London New York Atlanta Rome New York Rome Caracas New York London New York Atlanta Rome New York Rome Caracas Destination city 33

CSDP Step 1 demo demo 34

CSDP Step 2 Draw a Conceptual Model and Apply a Population Check – Conceptual data model vs. the diagram – Meaningful sample population

Object Type Names and Reference Mode Kinds of Object Types How Objects Types Are Symbolized 36

Arity Predicate Phrase Role Connector Role How Predicates Are Symbolized Binary Ternary Quaternary 37

38 Object Types Predicate Location’s Role in the Predicate Time’s Role in the Predicate Subject’s Role in the Predicate How Fact Types Are Symbolized

Validate Fact Types with a Meaningful Sample Population Data is representative Data is representative Data has meaningful variations Data has meaningful variations DATA IS REAL!! DATA IS REAL!! 39

CSDP Step 2 demo demo 40

CSDP Step 3 Check for entity types that should be combined, and note any arithmetic derivations – Trim schema – Coalesce like sets – Eliminate use of value types for calculated data

What Is a Conceptual Partitioning Scheme? Definition Definition A conceptual partitioning scheme is the systematic separation of the UoD’s population into meaningful object types Characteristics Characteristics – Group and division of UoD – Mutually exclusive partitions – Exhaustive partitions 42

Partitioning Object Types Atomic Numbers Atomic Strings Atomic Nested Entity Types Value Types Object Types in the Universe of Discourse 43

What Are Primitive Entity Types? Definition Definition Primitive entity types represent the most basic entity types in the UoD Characteristics Characteristics – Atomic – Mutually exclusive 44

Example of Primitive Entity Types 45 Car, Bus Van, Boat History, Math Literature City, State, County Student, Parent, Firefighter Vehicle Subject PersonLocation

Guidelines for Coalescing Entity Types Common instances Common instances Common relationships Common relationships Common partitioning scheme Common partitioning scheme Common unit-based reference mode Common unit-based reference mode Common primitive entity type Common primitive entity type Need to perform union on results Need to perform union on results Use intersection of sets to create results Use intersection of sets to create results 46 Look for commonalities Look for need to manipulate query results

What Are Derived Fact Types? Definition Definition A derived fact type is inferred from roles in other fact types Characteristics Characteristics – Derivation rule – Derived vs. derived and stored – Use of role names How derived fact types are symbolized How derived fact types are symbolized 47

CSDP Step 3 demo demo 48

Agenda – Part 2 (DAT376) Visual Studio.NET Enterprise Architect Object Role Modeling Database Design Process Set Theory Review Object Role Modeling Conceptual Schema Design Procedure – – Modeling fact types – Constraining fact types Documenting the Model Documenting the Model Implementing the Model Implementing the Model

Concluding Remarks Modeling Business Requirements vs. Modeling a Database Modeling Business Requirements vs. Modeling a Database Use ORM for information analysis Use ORM for information analysis Use data use cases to seed data models Use data use cases to seed data models Use Visual Studio.NET Ent. Architect for conceptual, logical, and physical database modeling Use Visual Studio.NET Ent. Architect for conceptual, logical, and physical database modeling

Further Resources MOC Course 2090: Modeling Business Requirements to Create a Database Using Visual Studio.NET Enterprise Architect MOC Course 2090: Modeling Business Requirements to Create a Database Using Visual Studio.NET Enterprise Architect (Episode 25) (Episode 25) us/dv_vstechart/html/vstchvsea_ormoverview.asp us/dv_vstechart/html/vstchvsea_ormoverview.asp us/dv_vstechart/html/vstchvsea_ormoverview.asp us/dv_vstechart/html/vstchvsea_ormoverview.asp (+ articles on use of VEA) (+ articles on use of VEA) Halpin, T.A. 2001, Information Modeling and Relational Databases, Morgan Kaufmann (ISBN ) Halpin, T.A. 2001, Information Modeling and Relational Databases, Morgan Kaufmann (ISBN )

Don’t forget to complete the on-line Session Feedback form on the Attendee Web site