1 / 55

Object oriented DB (not in book)

Object oriented DB (not in book). Learning objectives:. What basic concepts govern OO systems How OO features are related to the more traditional relational and ER models What the basic features of an OO database management system (OODBMS) are

harry
Download Presentation

Object oriented DB (not in book)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Object oriented DB (not in book)

  2. Learning objectives: • What basic concepts govern OO systems • How OO features are related to the more traditional relational and ER models • What the basic features of an OO database management system (OODBMS) are • What effect OO concepts are likely to have on data modeling and design Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  3. Object Orientation and Its Benefits • A set of design and development principles based on conceptually autonomous computer structures known as objects • Each object represents a real-world entity with the ability to act upon itself and interact with other objects • Modularity is therefore almost inevitable Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  4. The Evolution of Object Oriented Concepts • Object oriented programming • Developed as an alternative to traditional programming methods • Programmer creates or uses objects: • Self-contained, reusable modules that contain data as well as the procedures used to operate on such data Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  5. The Evolution of Object Oriented Concepts (continued) • Object oriented programming languageswere developed to: • Provide an easy-to-use software development environment • Provide a powerful software modeling tool for application development • Decrease development time by reducing the amount of code • Improve programmer productivity by making that code reusable Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  6. The Evolution of Object Oriented Concepts (continued) • Object oriented environment has several important attributes: • Data set is no longer passive • Data and procedures are bound together, creating an object • Object has an innate ability to act on itself Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  7. Object Oriented Concepts • Have their roots in programming languages • No knowledge of programming is necessary to understand these concepts Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  8. Objects: Components and Characteristics • Object: • Abstract representation of a real-world entity • Has: • Unique identity • Embedded properties • Ability to interact with other objects and act upon itself • Defining characteristic is its unique identity Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  9. Real-World Student Objects Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  10. Object Identity • Unique to that object • Assigned by system at moment of object’s creation • Cannot be changed under any circumstances • Can be deleted only if the object is deleted • Can never be reused Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  11. Attributes (Instance Variables) • Attributes: • Known as instance variables in OO environment • Domain: • Logically groups and describes the set of all possible values that an attribute can have Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  12. Object Attributes Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  13. Object State • Set of values that object’s attributes have at a given time • Can vary, although its OID remains the same • To change the object’s state, change the values of the object’s attributes • To change the object’s attribute values, send a message to the object • Message will invoke a method Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  14. Messages and Methods • Method: • Code that performs a specific operation on object’s data • Protects data from direct and unauthorized access by other objects • Used to change the object’s attribute values or to return the value of selected object attributes • Represent real-world actions Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  15. Method Components Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  16. Objects Send Messages to Each Other Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  17. Classes • Collection of similar objects with shared structure (attributes) and behavior (methods) • Class instance or object instance • Each object in a class Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  18. Class Illustration Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  19. Protocol • An object’s public aspect • How it is known by other objects as well as end users • Other objects communicate with the student object using any of these methods Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  20. Public and Private Aspects of an Object Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  21. Musical Instruments Class Hierarchy Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  22. Single Inheritance Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  23. Multiple Inheritance Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  24. Employee Class Hierarchy Method Override Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  25. Employee Class Hierarchy Polymorphism Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  26. Object Classification • Simple object Only single value attributes • Composite object Contains at least one multi-value attributes and no attributes that refer to other objects; ex: MOVIE • Compound object : Contains attribute that refer to other objects. Ex: Advisor • Associative object: represents relationship between two or more objects: ex: enrollment Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  27. Characteristics of an Object Oriented Data Model • Support the representation of complex objects • Are extensible: • Capable of defining new data types as well as the operations to be performed on them • Support encapsulation: • Data representation and method’s implementation must be hidden from external entities Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  28. Characteristics of an Object Oriented Data Model (continued) • Exhibit inheritance: • Object must be able to inherit properties (data and methods) of other objects • Support the notion of object identity (OID) Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  29. Comparing the OO and ER Model Components Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  30. Shared Representation for All Objects of the Class Person Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  31. State of a Person Object Instance Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  32. Referential Object Sharing Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  33. Class Hierarchy Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  34. Employee Object Representation Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  35. Representing a 1:M Relationship Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  36. Representing 1:1 and 1:M Relationships Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  37. Employee-Dependent Relationship Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  38. Representing the M:N Relationship Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  39. Representing the M:N Relationship with Associated Attributes Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  40. Representing the M:N Relationship with Intersection Class Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  41. Object Space Representation Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  42. Late and Early Binding: Use and Importance • Late binding: • Data type of an attribute is not known until execution time or runtime • Two different object instances of the same class can contain values of different data types for the same attribute • Early binding: • Allows database to check data type for each of the attribute’s values at compilation or definition time Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  43. INVENTORY Table with Predetermined (Base) Data Types Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  44. Inventory Class with Early Binding Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  45. OODM Inventory Class with Late Binding Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  46. Support for Versioning • Allows users to track history of changes in state of an object • If the changes do not yield expected results, they can be undone and the component restored to its original state • Reason OODBMS is such a strong player in the CAD and computer-aided manufacturing (CAM) arenas Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  47. OODM and Previous Data Models: Similarities and Differences • OODM object resembles entity and tuple in the ER and relational models but has additional characteristics • Class • Hierarchies • Encapsulation • Object ID (OID) not supported • Relationships • OODM produces a schema in which relations form part of the structure of the database Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  48. An Invoice Representation Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  49. Assume the following business rules: • A course contains many Sections, but each Section references only one course. • A Section is taught by one professor, but each professor may teach one or more different Sections of one or more courses. • A Section may contain many students, and each student may be enrolled in many Sections. • A Section may contain many students, and each student is enrolled in many Sections, but each Section belongs to a different course. (Students may take many courses, but they cannot take many Sections of the same course!) • Each Section is taught in one room, but each room may be used to teach different Sections of one or more courses. • A professor advises many students, but a student has only one advisor. Based on these business rules: • a. Identify and describe the main classes of objects. • B. Draw the object oriented diagram Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

  50. See figure p3.8 on 7/p95 • Draw object oriented diagram for it Database Systems: Design, Implementation, & Management, 6th Edition, Rob & Coronel

More Related