More Related Content
Similar to Pal gov.tutorial1.session1 1.informationmodeling
Similar to Pal gov.tutorial1.session1 1.informationmodeling (20)
More from Mustafa Jarrar (20)
Pal gov.tutorial1.session1 1.informationmodeling
- 1. أكاديمية الحكومة اإللكترونية الفلسطينية
The Palestinian eGovernment Academy
www.egovacademy.ps
Tutorial 1: Data Process and Data Modeling
Session 1.1
Information Modeling
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:
11a1: Demonstrate knowledge of conceptual modeling notations
and concepts.
11b1: Analyze application and domain requirements at the
conceptual level, and formalize it using ORM.
PalGov © 2011 5
- 6. Information Modeling - The need for good design
Do you like the design of this table?
MovieName ReleaseYear Director Stars
Robert De Niro
Awakenings 1991 Penny Marshall
Robin Williams
William Baldwin
Backdraft 1991 Ron Howard Robert De Niro
Kurt Russell
Cosmology 1994 Terry Harding
Kevin Costner
Dances with wolves 1990 Kevin Costner
Mary McDonnell
• This table is an output report. It provides one way to view the data.
• Different movies may have the same title.
• Movie numbers are used to provide a simple identifier.
• Each cell (row--column slot) may contain many values.
How can we design tables to store such facts?
PalGov © 2011 6
- 7. Information Modeling - The need for good design
A badly-designed table, why?
Movie
MovieName ReleaseYear Director Star
Awakenings 1991 Penny Marshall Robert De Niro
Awakenings 1991 Penny Marshall Robin Williams
Backdraft 1991 Ron Howard William Baldwin
Backdraft 1991 Ron Howard Robert De Niro
Backdraft 1991 Ron Howard Kurt Russell
Cosmology 1994 Terry Harding
Dances with wolves 1990 Kevin Costner Kevin Costner
Dances with wolves 1990 Kevin Costner Mary McDonnell
PalGov © 2011 7
- 8. Information Modeling - The need for good design
Do you like the design of this table?
Movie MovieName ReleaseYear Director
Awakenings 1991 Penny Marshall
Backdraft 1991 Ron Howard
Cosmology 1994 Terry Harding
Dances with wolves 1990 Kevin Costner
Movie Stars MovieName Star
Awakenings Robert De Niro
Awakenings Robin Williams
Backdraft William Baldwin
Backdraft Robert De Niro
Backdraft Kurt Russell
Cosmology
Dances with wolves Kevin Costner
Dances with wolves PalGov © 2011
Mary McDonnell 8
- 9. Information Modeling - The need for good design
Do you like the design of this table?
Movie MovieName ReleaseYear Director
Awakenings 1991 Penny Marshall
Backdraft 1991 Ron Howard
Cosmology
A relational database representation
1994 Terry Harding
Dances with wolves 1990 Kevin Costner
Movie Stars MovieName Star
Awakenings Robert De Niro
Awakenings Robin Williams
Backdraft William Baldwin
Backdraft Robert De Niro
Backdraft Kurt Russell
Cosmology
Dances with wolves Kevin Costner
Dances with wolves PalGov © 2011
Mary McDonnell 9
- 10. Information Modeling - The need for good design
Do you like the design of this table?
Movie MovieName ReleaseYear Director
Awakenings
Information Modeling is both aPenny Marshall an art.
1991 science and
Backdraft 1991 Ron Howard
When supported by a good modeling approach, this
Cosmology 1994 Terry Harding
design process is a stimulating and intellectually
Dances with wolves 1990 Kevin Costner
satisfying activity, with tangible benefits gained from
the quality of the database applications produced.
Movie Stars MovieName Star
Awakenings Robert De Niro
Awakenings Robin Williams
Backdraft William Baldwin
Backdraft Robert De Niro
Backdraft Kurt Russell
Cosmology
Dances with wolves Kevin Costner
Dances with wolves PalGov © 2011
Mary McDonnell 10
- 11. Information Modeling - The need for good design
• Why a good design is important?
– Consistency
– Efficiency
• What makes a good design good?
– Correct
– Complete
– Efficient
• What skills you should have to be a good information
modeler?
• What approaches exist to help you reach good models?
PalGov © 2011 11
- 12. Information Modeling - The need for good design
• The application area being modeled is called the universe of discourse
(UoD).
• Building a good model requires a good understanding of the world we
are modeling.
• The main challenge is to describe the UoD clearly and precisely.
• A person responsible for modeling the UoD is called a modeler.
• we should consult with others who, at least collectively, understand the
application domain—these people are called domain experts, subject
matter experts, or UoD experts.
• For implementation, it is important to represent information at the
conceptual level -in concepts that people (molders and domain
experts) find easy to work with.
• This added flexibility also makes it easier to implement the same
conceptual model in different ways, DB schema, XML schema, etc.
PalGov © 2011 12
- 14. Modeling Approaches
The main information modeling approaches are:
• Entity-Relationship modeling (ER)
• Object-oriented modeling (UML)
• Fact-oriented modeling (ORM)
PalGov © 2011 14
- 16. Entity-Relationship Modeling (ER)
• Introduced by Peter Chen in 1976, widely used approach for DB modeling.
• Pictures the world in terms of entities that have attributes and participate in
relationships.
• Many different versions of ER (no standard ER notation). Different versions of ER
may support different concepts and may use different symbols for the same concept.
• Relationships are depicted as named lines connecting entity types. Only binary
relationships are allowed, and each half of the relationship is shown either as a solid
line (mandatory) or broken line (optional). A fork or ―crow’s foot‖ at one end of a
relationship indicates that many instances of the entity type at that end may be
associated (via that relationship) with the same entity instance at the other end of
the relationship. The lack of a crow’s foot indicates that at most one entity instance
at that end is associated with any given entity instance at the other end.
PalGov © 2011 16
- 17. Object-Oriented Modeling (UML)
• UML class diagram are used to specify static data structures (OMG Standard).
• Encapsulates both data and behavior within objects.
• Pictures the world in terms of classes that have attributes and participate in
associations. Ternary associations are allowed, see the diagram.
• UML allow constraints in braces or notes in whatever language you wish.
• Form example, {P} can be added to denote primary uniqueness and {U1} for an
alternate uniqueness—these symbols are not standard and hence not portable. The
uniqueness constraints on the ternary are captured by the two 0..1 (at most one)
multiplicity constraints. The ―*‖ means ―0 or more‖. Attributes are mandatory by default.
PalGov © 2011 17
- 18. Fact-Oriented Modeling (ORM)
• Introduced by Sjir Nijssen early 1970s, was called NIAM.
• Revised by Terry Halpin (late 1980s), and called:
Object-Role Modeling (ORM)
• It views the world as object-types playing roles.
• Object-types are ellipses (no attributes), and relations consists of roles.
• Not only n-ary relations are supported, but ORM supports also more than 15 types
of constrains graphically.
• ORM allows verbalization of diagrams.
• More conceptual than UML and ER.
• ORM is a modeling approach, not only a modeling language.
PalGov © 2011 18
- 20. Information Levels (Data Modeling Viewpoint)
• What kind of facts/concepts we need,
Conceptual Level and how they are related.
• Conceptual models are designed for
clear communication, especially
between modelers and domain experts.
• Abstract data structures
Logical Level • Same conceptual schema
Object Oriented can be mapped into
Tree model
Relational OO-DB Graph Model several logical structures
XML
DB RDF
• The physical storage and access
structures used in a system (indexes,
Physical Level file clustering, etc.).
• Same Logical schema can be stored
in different ways
PalGov © 2011 20
- 21. Information Levels (Data Modeling Viewpoint)
Linguistic Level • Concerned with the terms used to lexicalize the meaning.
• Same meaning can be lexicalized in deferent languages.
• Concerned with the meaning, in the real world.
Ontological Level
• Same meaning (/intentions) can be conceptualized in different ways.
• What kind of facts/concepts we need,
Conceptual Level and how they are related.
• Conceptual models are designed for
clear communication, especially
between modelers and domain experts.
• Abstract data structures
Logical Level … • Same conceptual schema
Object Oriented can be mapped into
Tree model
Relational OO-DB Graph Model several logical structures
XML
DB RDF
• The physical storage and access
structures used in a system (indexes,
Physical Level … file clustering, etc.).
• Same Logical schema can be stored
in different ways
PalGov © 2011 21
- 22. Knowledge Levels (from philosophy viewpoint)
[Guarino]
Level Primitives Interpretation Main feature
Linguistic Linguistic Subjective Language
terms dependence
Conceptual Conceptual Subjective Conceptualization
relations
Ontological Ontological Constrained Meaning
relations
Epistemological Structuring Arbitrary Structure
relations
Logical Predicates, Arbitrary Formalization
functions
Will be discussed later
PalGov © 2011 22
- 23. Information Levels (Data Modeling Viewpoint)
Linguistic Level • Concerned with the terms used to lexicalize the meaning.
• Same meaning can be lexicalized in deferent languages.
• Concerned with the meaning, in the real world.
Ontological Level
• Same meaning (/intentions) can be conceptualized in different ways.
• What kind of facts/concepts we need,
Conceptual Level and how they are related.
• Conceptual models are designed for
clear communication, especially
between modelers and domain experts.
• Abstract data structures
Logical Level … • Same conceptual schema
Object Oriented can be mapped into
Tree model
ORM is the most suitable language for conceptual modeling (not
Relational OO-DB
XML
Graph Model several logical structures
only conceptual data modeling). That is,RDFallows modelers to think
DB
it
more conceptually and be more independent from the logical level.
• The physical storage and access
ORM is also being used as ontology modeling language, business
structures used in a system (indexes,
…
Physical Level rules and requirements specification, XML-schema modeling, etc.
file clustering, etc.).
• Same Logical schema can be stored
(not only DB modeling)
in different ways
PalGov © 2011 23