9
Object Role Modeling Prepared by Ahmed Magdy Ezzeldin

Object Role Modeling

Embed Size (px)

DESCRIPTION

Object Role Modeling (ORM) is a powerful method for designing and querying database models at the conceptual level, where the application is described in non-technical terms.

Citation preview

Page 1: Object Role Modeling

Object Role Modeling

Prepared by Ahmed Magdy Ezzeldin

Page 2: Object Role Modeling

Outline

What & Why ORM?

ORM Building Blocks

Example

ORM Process

ORM Symbol Glossary

Summary

Page 3: Object Role Modeling

What & Why ORM?

Object Role Modeling (ORM) is a powerful method for designing and querying database models at the conceptual level, where the application is described in non-technical terms.

1. Communicating models with your team2. Communicating and validating models with your client3. Great brainstorming tool

In practice, ORM data models often capture more business rules, and are easier to validate and evolve than data models in other approaches.

Page 4: Object Role Modeling

ORM Building Blocks

Object Types- Entity Types (map directly to an ER Entity)- Value Types (map directly to ER attributes)

Facts- Predicates: {0} is enrolled in {1}- Roles: {0} and {1}

Constraints- Like uniqueness constraint

Page 5: Object Role Modeling

Example

The Student named Ahmed is enrolled in the Course named Math

Entity Types: Student, Course Value Types: Ahmed, Math

We have 3 Facts (predicates) with 2 roles each:- Student is named Ahmed- Course is named Math- Student is enrolled in Course

Page 6: Object Role Modeling

ORM Process

To model any application using ORM we need to follow these steps starting from the requirements provided by the domain expert:

1. Transform information examples into facts

2. Draw the Entity & value types

3. Add Fact types and assign roles

4. Add constraints

Page 7: Object Role Modeling

Description Symbol Example

Entity Type Student, course, song, band

Value Type Student name, course name, song title, band name

Fact with 2 roles (Predicate with 2 arities)

Student is enrolled in course

Uniqueness Constraint (has one) the first role is unique ti the second role.

Each student has at most 1 namebut there may be 2 students who have the same name

1:1 both roles are unique to each other

Every student has at most one name and there are no 2 students with the same name.

m:n Many to many Every student may be enrolled in many courses and each course may have many students.

ORM Symbol Glossary

Value

Entity

Page 8: Object Role Modeling

Summary

ORM can be changed to ER.

ORM can easily be changed to UML.

ORM is rich as it captures more business details by capturing facts and constraints.

Page 9: Object Role Modeling

Questions

Thank you

Questions

???