110 likes | 222 Views
Appendix A Comparison with OMG Object Model. Prof. Hyoung-Joo Kim OOPSLA Lab. Dept. of Computer Engineering Seoul National University. Contents. OMG Object Model(OMG/OM) Overview Types, instance, interface, and implementation Operations Type hierarchy OMG/OM vs. ODMG/OM.
E N D
Appendix AComparison with OMG Object Model Prof. Hyoung-Joo Kim OOPSLA Lab. Dept. of Computer Engineering Seoul National University OOPSLA Lab
Contents • OMG Object Model(OMG/OM) • Overview • Types, instance, interface, and implementation • Operations • Type hierarchy • OMG/OM vs. ODMG/OM OOPSLA Lab
OMG Object Model(1) • Broken into a set of components, with a distinguished “Core Component” • Comparisons are assembled into profile ODBMS profile ORB profile Objects Operations Core Component Persistent objects w/exceptions attributes relationships queries transactions remote operations OOPSLA Lab
OMG Object Model(2) • Types, instance,interfaces and implementation • object are instance of types • a type defines the behavior and state of its instances • behavior is specified as a set of operations • an object can be an immediate instance of only one type • the type of an object is determined statically at the time the object is created • types are organized into a subtype/supertype graph • supertype are explicitly specified: subtype/supertype relationships between types are not deduced from signature compatibility of the types OOPSLA Lab
OMG Object Model(3) • Operations • operations have signatures that specify the operation name, arguments, and return values • Operations are defined on a single type -- the type of their distinguished first argument -- rather than on two types • operations may take either literals or objects as their arguments. Semantics of argument passing is pass by reference • operations are invoked • operations may have side effects • operations are implemented by methods in the implementation portion of the type definition OOPSLA Lab
OMG Object Model(OMG/OM) (4) • ODMG/OM • a superset of the OMG/OM • Type hierarchy Denotable_Object Object_type Literal_type(Non-object in OMG/OM) Atomic_object Collection Atomic_literal Collection_literal Structured_literal OOPSLA Lab
ODMG/OM vs. OMG/OM • OMG/OM • focus on design portability • portability across technology domains • portability across products from different vendors within a technology domain • ODMG/OM • focus on source code portability • portability within the technology domain of ODBMS • pure superset of OMG/OM OOPSLA Lab
Appendix BODBMS in the OMG ORB Environment Prof. Hyoung-Joo Kim OOPSLA Lab. Dept. of Computer Engineering Seoul National University OOPSLA Lab
Contents • Roles for the ORB and ODBMS in OMG environment • Integration of ORB with ODBMS OOPSLA Lab
Roles for the ORB and ODBMS • ODBMS in OMG environment: services of • persistence • transactions • recovery • concurrent sharing for application object varying from the smallest units to the largest • ORB in OMG environment • provide a larger-scale set of services across heterogeneous vendors and products • behavior invocation or method dispatch OOPSLA Lab
Integration of ORB with ODBMS • ODBMS can use ORB services • distributed naming service • access other ODBMSs heterogeneous ODBMS access • Use ODBMS as integration glue among OMG components OOPSLA Lab