Pal gov.tutorial1.session1 1.informationmodeling
Upcoming SlideShare
Loading in...5
×
 

Like this? Share it with your network

Share

Pal gov.tutorial1.session1 1.informationmodeling

on

  • 543 views

 

Statistics

Views

Total Views
543
Views on SlideShare
307
Embed Views
236

Actions

Likes
1
Downloads
30
Comments
0

2 Embeds 236

http://www.egovacademy.ps 230
http://paluro.ps 6

Accessibility

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-NonCommercial LicenseCC Attribution-NonCommercial License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Pal gov.tutorial1.session1 1.informationmodeling Presentation Transcript

  • 1. ‫أكاديمية الحكومة اإللكترونية الفلسطينية‬ The Palestinian eGovernment Academy www.egovacademy.psTutorial 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. AboutThis tutorial is part of the PalGov project, funded by the TEMPUS IV program of theCommission of the European Communities, grant agreement 511159-TEMPUS-1-2010-1-PS-TEMPUS-JPHES. The project website: www.egovacademy.psProject 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, PalestineCoordinator:Dr. Mustafa JarrarBirzeit University, P.O.Box 14- Birzeit, PalestineTelfax:+972 2 2982935 mjarrar@birzeit.eduPalGov © 2011 2
  • 3. © Copyright NotesEveryone is encouraged to use this material, or part of it, but should properlycite 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 anymeans, without prior written permission from the project, who have the fullcopyrights on the material. Attribution-NonCommercial-ShareAlike CC-BY-NC-SAThis license lets others remix, tweak, and build upon your work non-commercially, as long as they credit you and license their new creationsunder the identical terms. PalGov © 2011 3
  • 4. Tutorial Map Intended Learning Objectives Topic TimeModule 1 (Conceptual Date Modeling) Module I: Conceptual Data ModelingA: Knowledge and Understanding11a1: Demonstrate knowledge of conceptual modeling notations and concepts Session 0: Outline and Introduction11a2: Demonstrate knowledge of Object Role Modeling (ORM) methodology. Session 1.1: Information Modeling 111a3: Explain and demonstrate the concepts of data integrity & business rules Session 1.2: Conceptual Data Modeling using ORM 1B: Intellectual Skills Session 1.3: Conceptual Analyses 111b1: Analyze application and domain requirements at the conceptual level, Session 2: Lab- Conceptual Analyses 3and formalize it using ORM. Session 3.1: Uniqueness Rules 1.511b2: Analyze entity identity at the application and domain levels. Session 3.2: Mandatory Rules 1.511b4: Optimize, transform, and (re)engineer conceptual models. Session 4: Lab- Uniqueness & Mandatory Rules 311b5: Detect &resolve contradictions & implications at the conceptual level. Session 5: Subtypes and Other Rules 3C: Professional and Practical Skills Session 6: Lab- Subtypes and Other Rules 311c1: Using ORM modeling tools (Conceptual Modeling Tools). Session 7.1: Schema Equivalence &Optimization 1.5Module 2 (Business Process Modeling) Session 7.2: Rules Check &Schema Engineering 1.5A: Knowledge and Understanding Session 8: Lab- National Student Registry 312a1: Demonstrate knowledge of business process modeling notations and concepts. Module II: Business Process Modeling12a2: 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 3B: Intellectual Skills Session 10: Lab - BP Management 312b1: Identify business processes. Session 11: BPMN Fundamentals 312b2: Model and map business processes. Session 12: Lab - BPMN Fundamentals 312b3: Optimize and re-engineer business processes. Session 13: Modeling with BPMN 3C: Professional and Practical Skills Session 14: Lab- Modeling with BPMN 312c1: 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 ILOsAfter 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 NiroAwakenings 1991 Penny Marshall Robin Williams William BaldwinBackdraft 1991 Ron Howard Robert De Niro Kurt RussellCosmology 1994 Terry Harding Kevin CostnerDances 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?MovieMovieName ReleaseYear Director StarAwakenings 1991 Penny Marshall Robert De NiroAwakenings 1991 Penny Marshall Robin WilliamsBackdraft 1991 Ron Howard William BaldwinBackdraft 1991 Ron Howard Robert De NiroBackdraft 1991 Ron Howard Kurt RussellCosmology 1994 Terry HardingDances with wolves 1990 Kevin Costner Kevin CostnerDances 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 CostnerMovie 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 CostnerMovie 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
  • 13. Modeling Approaches PalGov © 2011 13
  • 14. Modeling ApproachesThe main information modeling approaches are:• Entity-Relationship modeling (ER)• Object-oriented modeling (UML)• Fact-oriented modeling (ORM) PalGov © 2011 14
  • 15. Modeling ApproachesGiven simple data for room scheduling:ER-model UML-model ORM-model PalGov © 2011 15
  • 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
  • 19. Information Levels PalGov © 2011 19
  • 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 relationsEpistemological 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
  • 24. ReferencesInformation Modeling and Relational Databases: From ConceptualAnalysis to Logical Design, Terry Halpin (ISBN 1-55860-672-6) –Chapter 1. PalGov © 2011 24