Más contenido relacionado
La actualidad más candente (6)
Similar a Pal gov.tutorial1.session3 1.uniquenessrules (20)
Más de Mustafa Jarrar (20)
Pal gov.tutorial1.session3 1.uniquenessrules
- 1. أكاديمية الحكومة اإللكترونية الفلسطينية
The Palestinian eGovernment Academy
www.egovacademy.ps
Tutorial 1: Data and Business Process Modeling
Session 3.1
Uniqueness Rules
Prof. Mustafa Jarrar
Sina Institute, University of Birzeit
mjarrar@birzeit.edu
www.jarrar.info
Reviewed by
Prof. Marco Ronchetti, Trento University, Italy
PalGov © 2011 1
- 2. About
This tutorial is part of the PalGov project, funded by the TEMPUS IV program of the
Commission of the European Communities, grant agreement 511159-TEMPUS-1-
2010-1-PS-TEMPUS-JPHES. The project website: www.egovacademy.ps
Project Consortium:
Birzeit University, Palestine
University of Trento, Italy
(Coordinator )
Palestine Polytechnic University, Palestine Vrije Universiteit Brussel, Belgium
Palestine Technical University, Palestine
Université de Savoie, France
Ministry of Telecom and IT, Palestine
University of Namur, Belgium
Ministry of Interior, Palestine
TrueTrust, UK
Ministry of Local Government, Palestine
Coordinator:
Dr. Mustafa Jarrar
Birzeit University, P.O.Box 14- Birzeit, Palestine
Telfax:+972 2 2982935 mjarrar@birzeit.eduPalGov © 2011
2
- 3. © Copyright Notes
Everyone is encouraged to use this material, or part of it, but should properly
cite the project (logo and website), and the author of that part.
No part of this tutorial may be reproduced or modified in any form or by any
means, without prior written permission from the project, who have the full
copyrights on the material.
Attribution-NonCommercial-ShareAlike
CC-BY-NC-SA
This license lets others remix, tweak, and build upon your work non-
commercially, as long as they credit you and license their new creations
under the identical terms.
PalGov © 2011 3
- 4. Tutorial Map
Intended Learning Objectives
Topic Time
Module 1 (Conceptual Date Modeling)
Module I: Conceptual Data Modeling
A: Knowledge and Understanding
11a1: Demonstrate knowledge of conceptual modeling notations and concepts Session 0: Outline and Introduction
11a2: Demonstrate knowledge of Object Role Modeling (ORM) methodology. Session 1.1: Information Modeling 1
11a3: Explain and demonstrate the concepts of data integrity & business rules Session 1.2: Conceptual Data Modeling using ORM 1
B: Intellectual Skills Session 1.3: Conceptual Analyses 1
11b1: Analyze application and domain requirements at the conceptual level, Session 2: Lab- Conceptual Analyses 3
and formalize it using ORM. Session 3.1: Uniqueness Rules 1.5
11b2: Analyze entity identity at the application and domain levels. Session 3.2: Mandatory Rules 1.5
11b4: Optimize, transform, and (re)engineer conceptual models. Session 4: Lab- Uniqueness & Mandatory Rules 3
11b5: Detect &resolve contradictions & implications at the conceptual level. Session 5: Subtypes and Other Rules 3
C: Professional and Practical Skills Session 6: Lab- Subtypes and Other Rules 3
11c1: Using ORM modeling tools (Conceptual Modeling Tools). Session 7.1: Schema Equivalence &Optimization 1.5
Module 2 (Business Process Modeling) Session 7.2: Rules Check &Schema Engineering 1.5
A: Knowledge and Understanding Session 8: Lab- National Student Registry 3
12a1: Demonstrate knowledge of business process modeling notations and concepts.
Module II: Business Process Modeling
12a2: Demonstrate knowledge of business process modeling and mapping.
12a3: Demonstrate understand of business process optimization and re-engineering. Session 9: BP Management and BPMN: An Overview 3
B: Intellectual Skills Session 10: Lab - BP Management 3
12b1: Identify business processes. Session 11: BPMN Fundamentals 3
12b2: Model and map business processes. Session 12: Lab - BPMN Fundamentals 3
12b3: Optimize and re-engineer business processes. Session 13: Modeling with BPMN 3
C: Professional and Practical Skills Session 14: Lab- Modeling with BPMN 3
12c1: Using business process modeling tools, such as MS Visio. Session 15: BP Management & Reengineering 3
Session 16: Lab- BP Management & Reengineering 3
PalGov © 2011 4
- 5. Session ILOs
After completing this session students will be able to:
11a3: Explain and demonstrate the concepts of data integrity and
business rules.
11b1: Analyze application and domain requirements at the
conceptual level, and formalize it using ORM.
11b2: Analyze entity identity at the application and domain levels.
PalGov © 2011 5
- 6. Conceptual Schema Design Steps
1. From examples to elementary facts
2. Draw fact types and apply population check
3. Combine entity types
4. Add uniqueness constraints
5. Add mandatory constraints
6. Add set, subtype, & frequency constraints
7. Final checks, & schema engineering issues
PalGov © 2011 6
- 7. Uniqueness Constraint
For each state taken individually, each person has at most one weight.
How can we record such information without redundancy?
PalGov © 2011 7
- 8. Uniqueness on Unary Fact Types
Is their any problem with this schema?
How can we prevent people from adding such redundant information?
PalGov © 2011 8
- 9. Uniqueness on Unary Fact Types
The uniqueness constraint
ensures entities are
unique (no duplicates)
PalGov © 2011 9
- 10. Uniqueness on Binary Fact Types
Each Politician was born
in at most one Country
Each Politician heads
government of at most
one Country
Each Country has at
most one head Politician
PalGov © 2011 10
- 11. Uniqueness on Binary Fact Types
Means many to many
It is possible that the same Politician visited more than one Country
and that the same Country was visited by more than one Politician
Who can give more examples?
PalGov © 2011 11
- 14. Uniqueness on Binary Fact Types
The four uniqueness constraint patterns for a binary fact type:
No duplicates are allowed in a's column
Each a R's at most one b
No duplicates are allowed in b's column
Each b is R'd by at most one a
Both the foregoing constraints apply
No duplicate (a,b) rows are allowed
Each a may R many bs and vice versa
PalGov © 2011 14
- 15. How to think about Uniqueness
Is the population significant?
Adding counterexamples
to test the constraints
PalGov © 2011 15
- 17. Uniqueness on Ternary Fact Types
What are the uniqueness constraints?
Each (Person, Subject) combination is unique.
PalGov © 2011 17
- 18. Uniqueness on Ternary Fact Types
Allowed basic uniqueness constraints for a ternary fact type:
PalGov © 2011 18
- 20. Uniqueness on Ternary Fact Types
Allowed uniqueness constraint combinations for a ternary fact type:
PalGov © 2011 20
- 21. Uniqueness on Ternary Fact Types
Which of these constraint patterns is illegal? Why?
PalGov © 2011 21
- 22. Example of Uniqueness on n-ary fact types
Each (a,c,d) combination occurs in at most one row.
PalGov © 2011 22
- 23. Uniqueness with Nested Fact Types
This constraint is particularly
important! Why?
Explain what is unique
PalGov © 2011 23
- 24. What is the difference between these?
Explain the joins
Do we need uniqueness?
PalGov © 2011 24
- 26. External Uniqueness constraints
The meaning of the External Uniqueness
Each (b,c) combination is paired with at most one a
Each population R join S has bc unique
(where “join” denotes “conceptual inner join”)
PalGov © 2011 26
- 28. Key Length Check
What is wrong?
Splits into
Each UC in an elementary
n-ary relationship must
span at least n-1 roles
PalGov © 2011 28
- 30. Discussion
Summarize what you learnt until now?
Problems of uniqueness in your daily life?
Compare the uniqueness constraint in ORM
with the cardinality constraints in UML and EER?
PalGov © 2011 30
- 31. References
1. Information Modeling and Relational Databases: From
Conceptual Analysis to Logical Design, Terry Halpin (ISBN 1-
55860-672-6) – Chapter 4.
PalGov © 2011 31