Object-Oriented Databases v OO systems associated with – graphical user interface (GUI) – powerful modeling techniques – advanced data management capabilities.

Slides:



Advertisements
Similar presentations
OO databases 1 Object Oriented databases. OO databases 2 Developing OODBMS - motivation motivation more and more application areas require systems that.
Advertisements

Object-Oriented Programming Python. OO Paradigm - Review Three Characteristics of OO Languages –Inheritance It isn’t necessary to build every class from.
Database Systems: Design, Implementation, and Management Ninth Edition
Introduction to Databases
Solutions to Review Questions. 4.1 Define object, class and instance. The UML Glossary gives these definitions: Object: an instance of a class. Class:
Chapter 1 Object-Oriented System Development
Chapter Object-Oriented Practices. Agenda Object-Oriented Concepts Terminology Object-Oriented Modeling Tips Object-Oriented Data Models and DBMSs.
OBJECTS Object Oriented ???????. OBJECTS Object-Oriented n OO convenient label for a collection of interconnected ideas n OO approach views computer.
Object Oriented System Development with VB .NET
Chapter 2 Data Models Database Systems: Design, Implementation, and Management, Seventh Edition, Rob and Coronel.
File Systems and Databases
Basic OOP Concepts and Terms
Object-Oriented Databases
File Systems and Databases Hachim Haddouti
Object-oriented Programming Concepts
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 2 Data Models Database Systems, 8th Edition 1.
Object Oriented Concepts. Movement toward Objects Instead of data-oriented or process-oriented Analysis, many firms are now moving to object-oriented.
Chapter 4 Object and Object-Relational Databases (Part ½: Object-Oriented Concepts) Lecturer: H.Ben Othmen Department of Computer Science, Umm Al-Qura.
BACS 287 Basics of Object-Oriented Programming 1.
Introduction To System Analysis and design
Chapter 24 Introduction to Object DBMSs Prepared by Kai Huang CS157B Prof Sin-Min Lee.
Week 1 Lecture MSCD 600 Database Architecture Samuel ConnSamuel Conn, Asst. Professor Suggestions for using the Lecture Slides.
Introduction to the Other Databases
DBMS Lecture 9  Object Database Management Group –12 Rules for an OODBMS –Components of the ODMG standard  OODBMS Object Model Schema  OO Data Model.
11 1 Object oriented DB (not in book) Database Systems: Design, Implementation, & Management, 6 th Edition, Rob & Coronel Learning objectives: What.
An Object-Oriented Approach to Programming Logic and Design
Geog 495 GIS Database Design Midterm review. Outlines 1.Database Concepts 2.Relational Database 3.Object-oriented Database 4.Entity-Relationship Diagram.
Database Design - Lecture 2
Object-Oriented Database Management Systems (ODBMS)
Copyright 2002 Prentice-Hall, Inc. Modern Systems Analysis and Design Third Edition Jeffrey A. Hoffer Joey F. George Joseph S. Valacich Chapter 20 Object-Oriented.
Database Management System Prepared by Dr. Ahmed El-Ragal Reviewed & Presented By Mr. Mahmoud Rafeek Alfarra College Of Science & Technology Khan younis.
Unified Modeling Language, Version 2.0
Object Orientation and Its Benefits
7 Object Oriented Database and UML MIS 304 Winter 2006.
11 Chapter 11 Object-Oriented Databases Database Systems: Design, Implementation, and Management 4th Edition Peter Rob & Carlos Coronel.
11 1 Chapter 11 Object Oriented Databases Database Systems: Design, Implementation, and Management, Sixth Edition, Rob and Coronel.
Chapter # 2 Data Models BIS Database Systems A.Thanop Somprasong
11 Chapter 11 Object-Oriented Databases Database Systems: Design, Implementation, and Management 4th Edition Peter Rob & Carlos Coronel.
DataBase Management System What is DBMS Purpose of DBMS Data Abstraction Data Definition Language Data Manipulation Language Data Models Data Keys Relationships.
Basic OOP Concepts and Terms. In this class, we will cover: Objects and examples of different object types Classes and how they relate to objects Object.
What is Object-Oriented?  Organization of software as a collection of discreet objects that incorporate both data structure and behavior.
ITEC 3220A Using and Designing Database Systems Instructor: Prof Z. Yang Course Website: 3220a.htm
ITEC 3220A Using and Designing Database Systems Instructor: Gordon Turpin Course Website: Office: CSEB3020.
Learners Support Publications Object Oriented Programming.
Summing Up Object Oriented Design. Four Major Components: Abstraction modeling real-life entities by essential information only Encapsulation clustering.
CSC 131 Fall 2006 Lecture # 6 Object-Oriented Concepts.
CS 3050 Object-Oriented Analysis and Design. Objectives What is “Object-Oriented?” Object-Oriented Approach Vs. Structured Approach How Has the Object-Oriented.
Basic Concepts of Object Orientation Object-Oriented Analysis CIM2566 Bavy LI.
11 Chapter 11 Object-Oriented Databases Database Systems: Design, Implementation, and Management 4th Edition Peter Rob & Carlos Coronel.
Business Applications with Object-Oriented Paradigm (Modeling Concepts) Professor Chen School of Business Gonzaga University Spokane, WA
Lesson 1 1 LESSON 1 l Background information l Introduction to Java Introduction and a Taste of Java.
COP 4331 – OOD&P Lecture 7 Object Concepts. What is an Object Programming language definition: An instance of a class Design perspective is different.
Data Models. 2 The Importance of Data Models Data models –Relatively simple representations, usually graphical, of complex real-world data structures.
DBS201: Data Modeling. Agenda Data Modeling Types of Models Entity Relationship Model.
1 © 2013 Cengage Learning. All Rights Reserved. This edition is intended for use outside of the U.S. only, with content that may be different from the.
Object-oriented programming (OOP) is a programming paradigm using "objects" – data structures consisting of data fields and methods together with their.
The Enhanced Entity- Relationship (EER) Model
Object Oriented Programming
Sachin Malhotra Saurabh Choudhary
The Movement To Objects
CHAPTER 5 GENERAL OOP CONCEPTS.
Object-Oriented Database Management System (ODBMS)
Types of Programming Languages
File Systems and Databases
Chapter 20 Object-Oriented Analysis and Design
ITEC 3220A Using and Designing Database Systems
Basic OOP Concepts and Terms
Object Oriented Analysis and Design
Agenda Software development (SD) & Software development methodologies (SDM) Orthogonal views of the software OOSD Methodology Why an Object Orientation?
Presentation transcript:

Object-Oriented Databases v OO systems associated with – graphical user interface (GUI) – powerful modeling techniques – advanced data management capabilities v What effect will OO concepts have on DB design? v What about the Extended Relational System?

OBJECT-ORIENTATION A set of design and development principles based on the idea of conceptually autonomous structures Each autonomous structure represents a real-world entity with the ability to interact with itself and with other objects

Object Orientation v Conceptually autonomous structures v Modularity v Inconsistent OO concept definitions v Originates in OO programming v Tradition: separate procedures from data v OO: objects perform operations on themselves

OO view of the world endows data with manipulative ability v Data no longer passive v Data + procedures = OBJECT v Object can act on itself v Object contains data and code v Concept natural to those with little programming experience but confusing to many with traditional programming expertise

OO Concepts v Object is essentially a new name for entity v Difference: its ability to interact with other objects and itself v Object has a unique identifier (OID) and attributes called instance variables v Object attributes may reference other objects allowing the implementation of relationships v Messages and methods

Depiction of an Object Object X Data Method 1Method 2 Method 3 Method 4 Method 5

OO Concepts v Every operation to be performed on an object must be implemented by a method v Every method is identified by its name and has a body v Body is composed of computer instructions in some programming language v To invoke a method a message is sent to an object containing that method v Message contains object identification, method name and any required parameters v Encapsulation: hiding internal details on attributes and methods v Objects with common characteristics are grouped into classes

Instance variables Methods Class defines Messages Protocol Private AspectPublic Aspect collection of are the names of the BehaviorState OID (unique) Object has implemented by a set of belongs to a defines a set of values for its that trigger OO Summary

Superclasses, Subclasses, Inheritance v Classes are organized in a class hierarchy or class lattice v Object inherits attributes and methods of its class and all classes above it v Inheritance enables reusability v Single and multiple inheritance v Method overriding and polymorphism v Abstract data types, implemented as classes, provide support for complex objects

The Evolution of Data Models Hierarchical CODASYL (network) Relational Entity-Relationship Semantic Extended RelationalObject-Oriented Physical data dependency Difficult to represent M:N relationships No ad hoc queries Access path predefined (navigational access) Provide ad hoc queries Set-oriented access Weak semantic contents Easy to understand Incorporates more semantics More semantics in data model Support for complex objects Inheritance

Characteristics of OODM v Supports complex objects v Enables the definition of abstract data types v Supports encapsulation v Exhibits inheritance v Supports the notion of object identity (OID)

Comparing OODM and ERDM E-R Model OO Data Model Object Class Instance Variable N/A OID Method Class hierarchy Entity Entity set Attribute Primary key N/A E-R diagram

Object Diagrams SO Model from page 177

Class-Subclass Relationships