44
Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

Embed Size (px)

Citation preview

Page 1: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

Data Modeling for the BA

February 12th, 2014

Data Modeling for the BA

February 12th, 2014

Presented by Steve Strohl

Page 2: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

About SteveAbout Steve

22

Steve Strohl is a Senior Business Intelligence Architect with over 25 years of IT database experience and 15 years of BI experience. He has been with ICC for the past 5 years. He started his career at Battelle where he worked on defense systems overseas, manufacturing systems and environmental systems. He worked as a lead architect on the Exxon Oil Spill damage assessment database and subsequently lived in Alaska for the next 7 years. Steve worked for an environmental firm where he was able to marry his IT skills with actual field work in Prince William Sound

“Alaska is where I learned how to ask the question Why instead of just What”. Steve’s work as an adjunct professor at the University of Anchorage also taught him the importance of having a complete view of a problem in order to design an appropriate solution.Steve returned to Ohio where he began his consulting work in the Business Intelligence field specifically in the Information Delivery field where he designed numerous solutions using Business Objects, Microsoft Analysis Services, Cognos and Microstrategy. His work in the information delivery field led him very quickly to realize that data quality was a major problem in virtually all of the systems he had experienced. This knowledge has resulted in his move towards data governance, master data management and the key role that solid business analysis plays in a robust IT solution.He is currently consulting with Nationwide as the NF program architect for a large master data management initiative and is the Master Data Management Practice Lead @ ICC.

[email protected]

Page 3: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

3333

It’s a B.A. “Thing” …It’s a B.A. “Thing” …

What does the business want ?

How can I represent or relate those needs effectively to my developers ?

Have I captured “all” of the business requirements (even those they don’t know about) ?

It’s the Question that Drives Us …

Did I take the trash out this morning ?

Have I found all of the hidden complexities ?

Page 4: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

IntroductionIntroduction

44

• Establish a business modeling methodology• Interface more effectively with developers and tester• Create deliverables to use throughout the life cycle of the

project

The Goal

• Start with a Business Problem• Derive the Business Requirements• Derive the Business Rules• Generate a model that supports the business reqts and

rules

The Steps

• Common language• Better interaction and communication with developers• Better interaction and communication with testers• Better understanding and control over the project

The Outcome

Page 5: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

A Simple Business ProblemA Simple Business Problem

55

The ClientDiversified Underwater Demolition Experts

• Very profitable privately owned company • Dutch Langston is the owner of the company• Getting a lot more orders and is outgrowing his original tracking system• Thinks that spreadsheets are the answer to everything

The ProblemSystem to track order entry and shipping

• Duplicate customer entry• Inconsistent representation of data• Huge problem with returned mail• Has tough time knowing what customers ordered in the past

Interview SummaryAfter interviews you have discovered that the client requirements are …

• to track customer orders more efficiently• to track where orders are shipped• to track mailing address of customer• to clean up as many data quality issues as possible.

Page 6: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

Original Tracking System (Go Figure)Original Tracking System (Go Figure)

66

What are the problems with this solution ?

Page 7: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

The Two Major IssuesThe Two Major Issues

77

1.Difficult to trace solution back to the business requirements

2. Impossible to establish and enforce business rules to support those requirements

Page 8: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

BA’s DilemaBA’s Dilema

88

How do I …

Work with Dutch to discover the true business requirements

Derive the business rules that satisfy the business requirements

Vet my business requirements and business rules with the SME’s

Work with the developers to develop the right solution the first time

Work with the testers to accurately test the solution

Provide one set of documentation that can be used by all parties

Page 9: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

99

CustomerAddress Order

Person Organization

Product

In the end …it’s all about ???In the end …it’s all about ???

Page 10: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

The Modeling MethodologyThe Modeling Methodology

1010

Very High Level Model (VHDM)(Scope)

High Level (Conceptual) Model (HDM)(Business Need)

Logical Model (LDM)Business Solution

Physical Data Model (PDM)Technical Solution

Business AnalystStakeholders

Business AnalystSubject Matter Experts

Business AnalystArchitect

ArchitectDeveloper

Page 11: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

The Modeling MethodologyThe Modeling Methodology

11111111

Very High Level Model (VHDM)(Scope)

High Level (Conceptual) Model (HDM)(Business Need)

Logical Model (LDM)(Business Solution)

Physical Data Model (PDM)(Technical Solution)

Business AnalystStakeholders

Business AnalystSubject Matter Experts

Business AnalystArchitect

ArchitectDeveloper

Page 12: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

Very High Level Model – Tool BoxVery High Level Model – Tool Box

1212

Identify Subjects and Links Symbols

Subject Area or Business Area Highest Level View of Business Area or Subject Area Contains Title and Definition of Business or Subject area Can be any shape

Connection Line (optional) Highest Level View of connections or relationships Arrows indicate flow to and/or from subject area Dotted line indicates a “soft” relationship Relationships definitions can be defined in a table

(optional)

Title

Description

Page 13: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

Very High Level Model – How it WorksVery High Level Model – How it Works

1313

Identify “Subject” or “Business” Area and “Link (optional)” Symbols

Sales and Service Marketing

HR Facilities

R&D

Engineering

Department responsible for all aspects of the sales and service process

Department responsible for marketing material and marketing campaigns

Department responsible for all research and development of new products

Department responsible for all internal employee and benefits matters

Department responsible for all keeping the lights on

Department responsible for all design and development of new products

Page 14: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

Very High Level Model – Our ContextVery High Level Model – Our Context

1414

Can be used to describe the “scope” of your project.

Customer

A person or organization who purchases products from our company

Product

A sellable product that is manufactured by our company for sale

Address

A mailing or shipping address for our customers

Order

A contract to purchase one or more of our products.

Page 15: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

Very High Level Model – How It’s UsefulVery High Level Model – How It’s Useful

1515

How is this useful to me as a Business Analyst ?

Quick glance at the big picture of the project

Good reference for high level discussions with stakeholders

Feeds the high level (Conceptual) model

Feeds the business glossary

Focuses the scope of the project

Page 16: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

The Modeling MethodologyThe Modeling Methodology

16161616

Very High Level Model (VHDM)(Scope)

High Level (Conceptual) Model (HDM)(Business Need)

Logical Model (LDM)(Business Solution)

Physical Data Model (PDM)(Technical Solution)

Business AnalystStakeholders

Business AnalystSubject Matter Experts

Business AnalystArchitect

ArchitectDeveloper

Page 17: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

High Level (Conceptual) Model – Tool BoxHigh Level (Conceptual) Model – Tool Box

1717

Verb

Entity Abstract object (Noun) that describes a unique business meaning Contains Title and Definition (optional) of that meaning Can be any shape, but a box is standard.

Cardinality Indicators An indicator of the number of “instances” the relationship has3 Types of cardinality

- 0: Indicated by a line with a circle- 1: Indicated by a line with a smaller perpendicular line- M: Indicated by a line with crows feet

Action Verb

A description of the type of relationship between two entities.

Sub Class A symbol that indicates that two or more entities are grouped.

Relationship Line A line that indicates some type of relationship between two entities

Page 18: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

High Level (Conceptual) Model – How it WorksHigh Level (Conceptual) Model – How it Works

1818

Start with the Business RequirementNeed to track customer orders

Turn a business requirement into a model …A customer may place one or more orders.An order must be placed by only one customer.

5 Tasks to Complete …

1. Identify your entities2. Identify your relationship lines3. Identify the verb phrases4. Identify the cardinality5. Identify any super type/sub type groupings

Page 19: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

High Level Model – Define EntitiesHigh Level Model – Define Entities

1919

Turn a business rule into a model …

A customer may place one or more orders.An order must be placed by only one customer.

1. Identify the Entities (Find the nouns in the phrase)

EntitiesRelationshipVerbsCardinalitySub Types

Page 20: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

High Level Model – Define EntitiesHigh Level Model – Define Entities

2020

Turn a business rule into a model …

A customer may place one or more orders.An order must be placed by only one customer.

Customer Order

1. Identify the Entities (Find the nouns in the phrase)

EntitiesRelationshipVerbsCardinalitySub Types

Page 21: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

High Level Model – Establish RelationshipHigh Level Model – Establish Relationship

2121

Customer Order

2. Establish Relationship Line

EntitiesRelationshipVerbsCardinalitySub Types

Turn a business rule into a model …

A customer may place one or more orders.An order must be placed by only one customer.

Page 22: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

High Level Model – Establish RelationshipHigh Level Model – Establish Relationship

2222

Customer Order

2. Establish Relationship Line

EntitiesRelationshipVerbsCardinalitySub Types

Turn a business rule into a model …

A customer may place one or more orders.An order must be placed by only one customer.

Page 23: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

High Level Model – Define VerbsHigh Level Model – Define Verbs

2323

Turn a business rule into a model …

A customer may place one or more orders.An order must be placed by only one customer.

Customer Order

3. Identify the Verb Phrase for both directions

EntitiesRelationshipVerbsCardinalitySub Types

Page 24: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

High Level Model – Define VerbsHigh Level Model – Define Verbs

2424

Turn a business rule into a model …

A customer may place one or more orders.An order must be placed by only one customer.

Customer Orderplaces

3. Identify the Verb Phrase from left to right

EntitiesRelationshipVerbsCardinalitySub Types

Page 25: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

High Level Model – Define VerbsHigh Level Model – Define Verbs

2525

Turn a business rule into a model …

A customer may place one or more orders.An order must be placed by only one customer.

Customer Order

3. Identify the Verb Phrase from right to left

EntitiesRelationshipVerbsCardinalitySub Types

places

Page 26: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

High Level Model – Define VerbsHigh Level Model – Define Verbs

2626

Turn a business rule into a model …

A customer may place one or more orders.An order must be placed by only one customer.

Customer Orderplaces

placed by

3. Identify the Verb Phrase from right to left

EntitiesRelationshipVerbsCardinalitySub Types

Page 27: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

High Level Model – Define VerbsHigh Level Model – Define Verbs

2727

Turn a business rule into a model …

A customer may place one or more orders.An order must be placed by only one customer.

Customer Orderplaces

placed by

3. Identify the Verb Phrase for both directions

EntitiesRelationshipVerbsCardinalitySub Types

Page 28: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

High Level Model – Define CardinalityHigh Level Model – Define Cardinality

2828

Turn a business rule into a model …

A customer may place one or more orders.An order must be placed by only one customer.

Customer Orderplaces

placed by

4. Identify the cardinality from left to right

EntitiesRelationshipVerbsCardinalitySub Types

Page 29: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

High Level Model – Define CardinalityHigh Level Model – Define Cardinality

2929

Turn a business rule into a model …

A customer may place one or more orders.An order must be placed by only one customer.

Customer Orderplaces

placed by

4. Identify the cardinality from left to right

EntitiesRelationshipVerbsCardinalitySub Types

Page 30: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

High Level Model – Define CardinalityHigh Level Model – Define Cardinality

3030

Turn a business rule into a model …

A customer may place one or more orders.An order must be placed by only one customer.

Customer Orderplaces

placed by

4. Identify the cardinality from right to left

EntitiesRelationshipVerbsCardinalitySub Types

Page 31: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

High Level Model – Define CardinalityHigh Level Model – Define Cardinality

3131

Turn a business rule into a model …

A customer may place one or more orders.An order must be placed by only one customer.

Customer Orderplaces

placed by

4. Identify the cardinality from right to left

EntitiesRelationshipVerbsCardinalitySub Types

Page 32: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

High Level Model – Define CardinalityHigh Level Model – Define Cardinality

3232

Turn a business rule into a model …

A customer may place one or more orders.An order must be placed by only one customer.

Customer Orderplaces

placed by

4. Identify the cardinality from right to left

EntitiesRelationshipVerbsCardinalitySub Types

Page 33: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

How are we doing so farHow are we doing so far

3333

EntitiesRelationshipVerbsCardinalitySub Types

Page 34: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

1st Quiz: Customer and Address1st Quiz: Customer and Address

3434

Establish the cardinality …Define the business requirement …

Customer Addresshas

had by

Identify the cardinality between these two entities

EntitiesRelationshipVerbsCardinalitySub Types

Page 35: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

1st Quiz: Customer and Address1st Quiz: Customer and Address

3535

What is the business rule …

A customer may have more than one address.

Customer Addresshas

had by

Identify the cardinality between these two entities

EntitiesRelationshipVerbsCardinalitySub Types

Page 36: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

1st Quiz: Customer and Address1st Quiz: Customer and Address

3636

Customer Addresshas

had by

What is the business rule …

A customer may have more than one address.An address can be had by more than one customer.

Is this true ?

Identify the cardinality between these two entities

EntitiesRelationshipVerbsCardinalitySub Types

Page 37: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

2nd Quiz: More Abstract2nd Quiz: More Abstract

3737

Dog Treat

EntitiesRelationshipVerbsCardinalitySub Types

Turn the phrase into a model …

A dog may eat several treats

If he does eat any treats he won’t share.

Page 38: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

2nd Quiz: More Abstract2nd Quiz: More Abstract

3838

Dog Treateats

eaten by

Turn the phrase into a model …

A dog may eat several treats

If he does eat any treats he won’t share.

EntitiesRelationshipVerbsCardinalitySub Types

Page 39: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

High Level Model - Super Type/Sub Types High Level Model - Super Type/Sub Types

3939

A Customer is a person or organization …

A sub type/super type is where you have a natural grouping of two or more entities

Customer

Person Organization

EntitiesRelationshipVerbsCardinalitySub Types

is is

Page 40: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

High Level Model - Sub Types High Level Model - Sub Types

4040

A Customer is a person or organization …

A sub type/super type is where you have a natural grouping of two or more entities

Customer

Sub Type Sub Type

Super Type

Exclusive One or the other but not both.

Person Organization

EntitiesRelationshipVerbsCardinalitySub Types

is is

Page 41: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

High Level Model - Sub Types High Level Model - Sub Types

4141

A Customer is a person or organization …

A sub type/super type is where you have a natural grouping of two or more entities.A grouping of objects that share attributes, but also have different attributes

ProductSuper Type

Non Exclusive Can be one or more. (No “X” in the symbol)

Amazon Product Ebay ProductStore Product

Sub Ty

pe

Sub Ty

pe

Sub Ty

pe

EntitiesRelationshipVerbsCardinalitySub Types

isis

is

Page 42: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

High Level Model – How It’s UsefulHigh Level Model – How It’s Useful

4242

How is this useful to me as a Business Analyst…

Identify potentially undiscovered business requirements

Implement business rules to support business requirements

Clear understanding of the relationships of each entity

A working model of the business problem to give to the architect

A lot less churn !

EntitiesRelationshipVerbsCardinalitySub Types

Page 43: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

High Level Model– Putting it All TogetherHigh Level Model– Putting it All Together

4343

CustomerAddress Order

Person Organization

has

had by places

placed by

is is

Product

containscontained by

Page 44: Data Modeling for the BA February 12th, 2014 Presented by Steve Strohl

QuestionsQuestions

4444

CustomerAddress Order

Person Organization

has

had by places

placed by

is is

Product

containscontained by