‫أكاديمية الحكومة اإللكترونية الفلسطينية‬
        The Palestinian eGovernment Academy
                         www.egovacademy.ps



Tutorial 1: Data and Business Process Modeling
                        Session 1.2
    Conceptual Data Modeling using
     Object-Role Modeling (ORM)

                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
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
© 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
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
Session ILOs


After completing this session students will be able to:

    11a1: Demonstrate knowledge of conceptual modeling notations
    and concepts


    11a2: Demonstrate knowledge of Object Role Modeling (ORM)
    methodology.


    11c1: Using ORM modeling tools (Conceptual Modeling Tools).




                             PalGov © 2011                         5
Remark: this tutorial is about
    Object-Role Modeling (ORM),
Not Object-Relational Mapping (ORM)




                PalGov © 2011         6
Object-Role Modeling (ORM)
                  Room                Time      Activity Code           Activity Name
                         20        Mon 9am              VMC         VisioModeler Class
                         20        Tue 2pm              VMC        VisioModeler Calss
                         33        Mon 9am              AQD         ActiveQuery Demo
                         33        Fri 5 pm                 SP              Staff party
                         …               …                  …                         …

               Time
               (dh)

Room                                 Activity                            Activity
 (Nr)                                (code)                               Name
        …at … is booked for…                        Has / refers to
         20   Mon 9am     VMC                        AQD         ActiveQuery Demo
         20   Tue 2pm     VMC                          SP               Staff party
         33   Mon 9am     AQD                        VMC     VisioModeler Calss
         33    Fri 5pm        SP                     VMC     VisioModeler Class
         …         …          …                       Y2K         Year 200 seminar
                               PalGov © 2011           …                        …         7
Object-Role Modeling (ORM)

                     Representing information graphically

        MovieName                 ReleaseYear       Director         Stars
                                                                     Robert De Niro
        Awakenings                1991              Penny Marshall
                                                                     Robin Williams
                                                                     William Baldwin
                     ReleasedIn
        Backdraft                 1991              Ron Howard       Robert De Niro
                                                    Year             Kurt Russell
        Cosmology                 1994              Terry Harding
                                                                     Kevin Costner
        Dances with wolves        1990              Kevin Costner
                                                                     Mary McDonnell
              DirectedBy/Directs

Movie
                                                     Person
                    StaredBy/


                                    PalGov © 2011                                      8
Object-Role Modeling (ORM)

•   ORM is conceptual modeling language.
•   ORM has an expressive graphical notation.
•   ORM is designed for modeling DB schemes at the conceptual level.
    You build an ORM schema and then click a bottom to automatically generate
      a database.
                     ReleasedIn
                                      Year

                 DirectedBy/Directs

         Movie
                                      Person
                   StaredBy/




                 Conceptual Level                              Logical Level

Our goal in this course is to use ORM as general Conceptual Modeling
  language, rather than as database modeling language.
 ORM can be used for modeling business rules, ontology, XML
  schemes, and others.

                                               PalGov © 2011                    9
ORM Usage Scenarios


                                                    Originally



                                                                                Database


                         Later



                                                                                Ontology




                                                                 Requirements      Record
XML Schema   Warehouse                                            Engineering    my recipes !
                         Business Rules        Web (x)Forms
                                          PalGov © 2011                                         10
Object-Role Modeling (ORM): Other Examples



             Has/Is-Of
                                       Title


Book
          Witten-By/Writes
                                      Author




                      PalGov © 2011            11
Object-Role Modeling (ORM): Other Examples



             Has/Is-Of
                                       Title
              1   Databases Systems
              2   Intro to Java
Book
                                               Called Population
          Witten-By/Writes
                                      Author
             1    J. Date
             2    B. Hacker
             2    A. Smith



                      PalGov © 2011                            12
Object-Role Modeling (ORM): Other Examples




               PalGov © 2011             13
Object-Role Modeling (ORM) constructs
  Called Object Type
(or Concept, or Class)                                       Relation
                                            Each part is called a Role




               Subtype relation
                                  PalGov © 2011                          14
Object-Role Modeling (ORM) constructs




                                            Called Fact Type
                         Each fact type should be elementary.




              PalGov © 2011                                15
Object-Role Modeling (ORM) constraints
                                              Uniqueness Constraint:
                                  Each ISBN must Is-Of at most one Book
           Uniqueness Constraint:
Each Book must has at most one ISBN




                                                           Uniqueness Constraint:
                                      It is possible that a Book is Written-By more
                                                    than one Author, and vice versa




               Mandatory Constraint:
  Each Book must has at Least one ISBN © 2011
                                   PalGov                                         16
eGov Ontology (using ORM)




             PalGov © 2011   17
Modeling Approaches (short discussion)

   Which is more intuitive for modelers? For domain experts?

 ER-model                                 UML-model




Nice for picturing to DB-schemes          Close to the way programmers
                                                       think
   ORM-model
                                                   Suitable for general
                                                 conceptual modeling, not
                                                    only DB schemes

                               PalGov © 2011                             18
References

1. www.zinnar.pna.ps

2. Information Modeling and Relational Databases: From
   Conceptual Analysis to Logical Design, Terry Halpin (ISBN 1-
   55860-672-6) – Chapter 1.




                               PalGov © 2011                      19

Pal gov.tutorial1.session1 2.conceptualdatamodelingusingorm

  • 1.
    ‫أكاديمية الحكومة اإللكترونيةالفلسطينية‬ The Palestinian eGovernment Academy www.egovacademy.ps Tutorial 1: Data and Business Process Modeling Session 1.2 Conceptual Data Modeling using Object-Role Modeling (ORM) 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 ispart 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 Everyoneis 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 completingthis session students will be able to: 11a1: Demonstrate knowledge of conceptual modeling notations and concepts 11a2: Demonstrate knowledge of Object Role Modeling (ORM) methodology. 11c1: Using ORM modeling tools (Conceptual Modeling Tools). PalGov © 2011 5
  • 6.
    Remark: this tutorialis about Object-Role Modeling (ORM), Not Object-Relational Mapping (ORM) PalGov © 2011 6
  • 7.
    Object-Role Modeling (ORM) Room Time Activity Code Activity Name 20 Mon 9am VMC VisioModeler Class 20 Tue 2pm VMC VisioModeler Calss 33 Mon 9am AQD ActiveQuery Demo 33 Fri 5 pm SP Staff party … … … … Time (dh) Room Activity Activity (Nr) (code) Name …at … is booked for… Has / refers to 20 Mon 9am VMC AQD ActiveQuery Demo 20 Tue 2pm VMC SP Staff party 33 Mon 9am AQD VMC VisioModeler Calss 33 Fri 5pm SP VMC VisioModeler Class … … … Y2K Year 200 seminar PalGov © 2011 … … 7
  • 8.
    Object-Role Modeling (ORM) Representing information graphically MovieName ReleaseYear Director Stars Robert De Niro Awakenings 1991 Penny Marshall Robin Williams William Baldwin ReleasedIn Backdraft 1991 Ron Howard Robert De Niro Year Kurt Russell Cosmology 1994 Terry Harding Kevin Costner Dances with wolves 1990 Kevin Costner Mary McDonnell DirectedBy/Directs Movie Person StaredBy/ PalGov © 2011 8
  • 9.
    Object-Role Modeling (ORM) • ORM is conceptual modeling language. • ORM has an expressive graphical notation. • ORM is designed for modeling DB schemes at the conceptual level. You build an ORM schema and then click a bottom to automatically generate a database. ReleasedIn Year DirectedBy/Directs Movie Person StaredBy/ Conceptual Level Logical Level Our goal in this course is to use ORM as general Conceptual Modeling language, rather than as database modeling language.  ORM can be used for modeling business rules, ontology, XML schemes, and others. PalGov © 2011 9
  • 10.
    ORM Usage Scenarios Originally Database Later Ontology Requirements Record XML Schema Warehouse Engineering my recipes ! Business Rules Web (x)Forms PalGov © 2011 10
  • 11.
    Object-Role Modeling (ORM):Other Examples Has/Is-Of Title Book Witten-By/Writes Author PalGov © 2011 11
  • 12.
    Object-Role Modeling (ORM):Other Examples Has/Is-Of Title 1 Databases Systems 2 Intro to Java Book Called Population Witten-By/Writes Author 1 J. Date 2 B. Hacker 2 A. Smith PalGov © 2011 12
  • 13.
    Object-Role Modeling (ORM):Other Examples PalGov © 2011 13
  • 14.
    Object-Role Modeling (ORM)constructs Called Object Type (or Concept, or Class) Relation Each part is called a Role Subtype relation PalGov © 2011 14
  • 15.
    Object-Role Modeling (ORM)constructs Called Fact Type Each fact type should be elementary. PalGov © 2011 15
  • 16.
    Object-Role Modeling (ORM)constraints Uniqueness Constraint: Each ISBN must Is-Of at most one Book Uniqueness Constraint: Each Book must has at most one ISBN Uniqueness Constraint: It is possible that a Book is Written-By more than one Author, and vice versa Mandatory Constraint: Each Book must has at Least one ISBN © 2011 PalGov 16
  • 17.
    eGov Ontology (usingORM) PalGov © 2011 17
  • 18.
    Modeling Approaches (shortdiscussion) Which is more intuitive for modelers? For domain experts? ER-model UML-model Nice for picturing to DB-schemes Close to the way programmers think ORM-model Suitable for general conceptual modeling, not only DB schemes PalGov © 2011 18
  • 19.
    References 1. www.zinnar.pna.ps 2. InformationModeling and Relational Databases: From Conceptual Analysis to Logical Design, Terry Halpin (ISBN 1- 55860-672-6) – Chapter 1. PalGov © 2011 19