Object-Oriented Standards OMG OMDG. Overview Object Management Group (OMG) International non profit-making consortium founded in 1989 to address object.

Slides:



Advertisements
Similar presentations
Object-Oriented DBMSs - Standards and Systems Transparencies
Advertisements

Object Databases Baochuan Lu. outline Concepts for Object Databases Object Database Standards, Languages, and Design Object-Relational and Extended-Relational.
ODMG Standard: Object Model1 OBJECT-ORIENTED DATABASE SYSTEMS ODMG Standard: Object Model Susan D. Urban and Suzanne W. Dietrich Department of Computer.
Common Object Request Broker Architecture (CORBA) By: Sunil Gopinath David Watkins.
CORBA - Common Object Request Broker Architecture.
Seminarium on Component-based Software Engineering Jan Willem Klinkenberg CORBA.
Chapter Object-Oriented Practices. Agenda Object-Oriented Concepts Terminology Object-Oriented Modeling Tips Object-Oriented Data Models and DBMSs.
Distributed Systems Architectures
A brief look at CORBA. What is CORBA Common Object Request Broker Architecture developed by OMG Combine benefits of OO and distributed computing Distributed.
OCT 1 Master of Information System Management Organizational Communications and Distributed Object Technologies Lecture 11: CORBA.
CORBA Case Study By Jeffrey Oliver March March 17, 2003CORBA Case Study by J. T. Oliver2 History The CORBA (Common Object Request Broker Architecture)
CS 501: Software Engineering Fall 2000 Lecture 16 System Architecture III Distributed Objects.
Chapter 15 (Web): Object-Oriented Database Development
Principles of Object-Oriented Software Development Interface Definition Language.
II. Middleware for Distributed Systems
© 2007 by Prentice Hall 1 Chapter 15 (Web): Object-Oriented Database Development Modern Database Management 8 th Edition Jeffrey A. Hoffer, Mary B. Prescott,
Programs with SQL Host language + Embedded SQL Preprocessor Host Language + function calls Host language compiler Host language program Preprocessor Host.
Object-oriented DBMSs
Object Oriented Databases - Overview
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 11 Object and Object- Relational Databases.
CORBA Chapter 17 Coulouris text. Today’s Topics CORBA History and goals CORBA RMI CORBA services The Distributed Whiteboard Revisited.
1 Announcements Research Paper due Monday November 22.
Databases Illuminated Chapter 7 The Object-Oriented Model.
Chapter 4 Object and Object-Relational Databases (Part ½: Object-Oriented Concepts) Lecturer: H.Ben Othmen Department of Computer Science, Umm Al-Qura.
Object-Oriented Database Design using UML and ODMG
Object and object-relational databases 1. Object databases vs. Object-relational databases Object databases Stores complex objects – Data + functions.
Advanced Database CS-426 Week 2 – Logic Query Languages, Object Model.
Agenda  TMA03  M877 Block 3 Databases with Objects.
DBMS Lecture 9  Object Database Management Group –12 Rules for an OODBMS –Components of the ODMG standard  OODBMS Object Model Schema  OO Data Model.
Understanding the CORBA Model. What is CORBA?  The Common Object Request Broker Architecture (CORBA) allows distributed applications to interoperate.
Chapter 21 A Object Data Model - Intro Copyright © 2004 Pearson Education, Inc.
Chapter 2: Object Model Prof. Hyoung-Joo Kim OOPSLA Lab. Dept. of Computer Engineering Seoul National Univ.
Information Management NTU Interprocess Communication and Middleware.
Object_Oriented Databases, by Dr. Khalil 1 Object-Oriented DBMSs Dr. Awad Khalil Computer Science Department AUC.
Chapter 1 Object-oriented DBMSs Chapters in Textbook.
Object oriented databases
Database Management COP4540, SCS, FIU Database Modeling A Introduction to object definition language (ODL)
Chapter 11 Object-Oriented DBMSs Chapter 27, 28 & Appendix K in Textbook.
Object-Oriented Database Processing
Chapter 21 Object Database Standards, Languages, and Design Copyright © 2004 Pearson Education, Inc.
The ODMG Standard 2.0 Focusing On The ODMG Object Model Group Members: Christopher Parrott, Christopher Sinclair, David Tucker & Andrew Wan Presentation.
Object Definition Language
CSC 480 Software Engineering Lecture 18 Nov 6, 2002.
Object Definition Language
Database Design Why do we need it? – Agree on structure of the database before deciding on a particular implementation. Consider issues such as: –What.
DEVS Based Modeling and Simulation of the CORBA POA F. Bernardi, E. de Gentili, Pr. J.F. Santucci {bernardi, gentili, University.
Electronic Payment Systems (1)
CS 501: Software Engineering Fall 1999 Lecture 12 System Architecture III Distributed Objects.
Chapter 2 Object-Relational DBMSs Chapter 28 in Textbook.
11-1 CHAPTER 11 Concepts for Object-Oriented Databases.
CORBA (Common Object Request Broker Architechture) Aniket Prabhune Varun Saini Balaprasuna Chennupati Lally Singh.
© D. Wong Security and User Authorization in SQL 8.7 pp. 410  Authorization ID = user name  Special authorization ID: PUBLIC  Privileges for:
AND OBJECT-ORIENTED DATABASES OBJECT-RELATIONAL DATABASES.
The ODMG Standard for Object Databases
January 25, 2016 First experiences with CORBA Niko Neufeld.
OOPSLA Lab.1 Chapter 6 Smalltalk Binding Prof. Hyoung-Joo Kim OOPSLA Lab. Dept. of Computer Engineering Seoul National University.
(C) 2003 University of ManchesterCS31010 Lecture 14: CORBA.
Object oriented DataBase Prof. Sin-Min Lee Department of Computer Science.
1 Advanced Databases – Lecture # 12: The ODMG Standard for Object Databases Advanced Databases The ODMG Standard for Object Databases.
Copyright © 2016 Ramez Elmasri and Shamkant B. Navathe Chapter 12 Outline Overview of Object Database Concepts Object-Relational Features Object Database.
1 ODMG. 2 Object Database Management Group (ODMG) ODMG has been formed in late 1991 by: ObjectDesign, Ontos, O2 Technology, Versant, Objectivity, Digital.
OOPSLA Lab1 Chapter 7 Java Binding Prof. Hyoung-Joo Kim OOPSLA Lab. Dept. of Computer Engineering Seoul National University.
Object-Oriented Databases (chapter 2/3) Object Persistence - Introduction Persistent Programming Languages Specifying Object Persistence via Naming and.
1 Distributed Systems Architectures Distributed object architectures Reference: ©Ian Sommerville 2000 Software Engineering, 6th edition.
Java Distributed Object System
Common Object Request Broker Architecture (CORBA)
Chapter 12 Outline Overview of Object Database Concepts
Compiled from Connelly et al. DBMS Text
Chapter 15: Object-Oriented Database Development
Copyright 1999 B.Ramamurthy
Presentation transcript:

Object-Oriented Standards OMG OMDG

Overview

Object Management Group (OMG) International non profit-making consortium founded in 1989 to address object standards. Primary aims of OMG are: Promotion of object-oriented approach. Development of standards in which location, environment, language, and other characteristics of objects are transparent. Not recognized standards group but aims to develop de facto standards.

Object Management Architecture Object Model (OM) - Design-portable abstract model for communicating with OMG-compliant object-oriented systems. Object Request Broker (ORB) - Handle distribution of messages between application objects in a highly interoperable manner. Object Services - Provide main functions for realizing basic object functionality.. Common Facilities - Comprise a set of tasks that many applications must perform but are traditionally duplicated within each one.

Object Model

Common Object Request Broker Architecture (CORBA) Defines architecture of ORB-based environments. Some elements of CORBA are: Interface Definition Language (IDL). Type model. Interface Repository. Methods for getting interfaces/specifications of objects. Provides static and dynamic mechanism for clients to issue request to objects.

CORBA ORB Architecture

Object Data Management Group Established by vendors of OODBMSs to define standards. Have produced an Object Model that specifies a standard model for the semantics of database objects. Design of class libraries and applications using these semantics should be portable across various OODBMSs.

Object Data Management Group Major components of ODMG architecture for an OODBMS are: Object Model (OM) Object Definition Language (ODL) Object Query Language (OQL) C++, Smalltalk, and Java Language Binding.

ODMG OM – Basic Modeling Primitives Basic modeling primitives are object/literal. Objects/literals can be categorized into types. All objects of given type exhibit common behavior and state. A type is itself an object. Behavior defined by set of operations that can be performed on or by object. State defined byvalues objects carry for a set of properties.

ODMG Object Model - Objects Object types decomposed as atomic, collections, or structured types. Objects created using new() of corresponding factory interface provided by language binding. Each object has a unique identity, the object identifier, which does not change and is not reused when the object is deleted. May be given one or more names by user.

ODL Interface for Objects

ODMG Object Model – Built-in Collections Contains arbitrary number of unnamed homogeneous elements; each can be instance of atomic type, another collection, or a literal type. Only collection objects have identity. Use iterator to iterate over collection. There are ordered and unordered collections: ordered collections traversed first to last, or vice versa; unordered collections have no fixed order of iteration.

ODMG Object Model – Built-in Collections Set: unordered collections without duplicates. Bag:unordered collections that do allow duplicates. List:ordered collections that allow duplicates. Array: 1D array of dynamically varying length. Dictionary: unordered sequence of key-value pairs with no duplicate keys.

ODMG Object Model - Relationships Only binary relationships supported. Traversal paths are defined for each direction of traversal. class Branch { relationship set Has inverse Staff::WorksAt } class Staff { relationship Branch WorksAt inverse Branch::Has }

Object Definition Language (ODL) module DreamHome Class Branch (extent branchOffices key branchNo) { attribute string branchNo; …. relationship Manager ManagedBy inverse Manager::Manages; void takeOnPropertyForRent(in string propertyNo) raises(propertyAlreadyForRent);}

Object Query Language (OQL) An OQL query is a function that delivers an object whose type may be inferred from operator contributing to query expression. Query definition expressions is of form: DEFINE Q as e Defines query with name Q given query expression e.

Example 26.2 OQL: Extents & Traversal Paths (1) Get set of all staff (with identity): staff (2) Get set of all branch managers (with identity): branchOffices.ManagedBy

Example 26.2 OQL: Extents & Traversal Paths (3) Find all branches in London: SELECT b.branchNo FROM b IN branchOffices WHERE b.address.city = "London“; This returns a literal of type bag.

Example 26.3 – OQL: Use of DEFINE Get set of all staff who work in London (without identity): DEFINE Londoners AS SELECT s FROM s IN salesStaff WHERE s.WorksAt.address.city = "London“; SELECT s.name.lName FROM s IN Londoners; This returns a literal of type set.

Example 26.4 OQL: Use of structures (1) Get structured set (without identity) containing name, sex, and age for all staff who live in London: SELECT struct (lName:s.name.lName, sex:s.sex, age:s.age) FROM s IN Staff WHERE s.WorksAt.address.city = "London” This returns a literal of type set.

Example 26.4 OQL: Use of structures (2) Get structured set (with identity) with name, sex, and age of all deputy managers over 60: class Deputy {attribute string lName; attribute sexType sex; attribute integer age;}; Typedef bag Deputies; Deputies(SELECT Deputy (lName:s.name.lName, sex:s.sex, age:x.age) FROM s IN salesStaff WHERE position = "Deputy“ AND s.getAge > 60) This returns an object of type deputies.