Eike Stepper Berlin, Germany CDO Model Repository Where Models Live SAP Modeling.

Slides:



Advertisements
Similar presentations
Model-Based Testing with Smartesting Jean-Pierre Schoch Sogetis Second Testing Academy 29 April 2009.
Advertisements

DynaTrace Platform.
CACORE TOOLS FEATURES. caCORE SDK Features caCORE Workbench Plugin EA/ArgoUML Plug-in development Integrated support of semantic integration in the plugin.
LAMS 2.0 Architecture Agenda LAMS 2.0: Technical Aims Architecture Technologies LAMS Core LAMS Tool Contract External Tools.
Eike Stepper Berlin, Germany CDO Model Repository 4.1 Release Review.
Scale, Share and Store your Models with CDO 2.0 Eclipse Live Webinar, January 29, 2009 Eike Stepper
Multi-Mode Survey Management An Approach to Addressing its Challenges
For Eclipse users Integrates task management Automates context management For developers and integrators Provides framework for tasks and contexts Mik.
Eike Stepper Berlin, Germany Now that I've Got a Model EclipseCon Europe ,
1 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Eike Stepper Berlin, Germany Scale, Share and Store your Models with CDO 2.0 EclipseCon.
Revision Control Systems Amin Tootoonchian Kian Mirjalali.
Building Enterprise Applications Using Visual Studio ®.NET Enterprise Architect.
Martin Flügge Berlin, Germany Let the sunshine in! News from the Dawn side of.
Overview SAP Basis Functions. SAP Technical Overview Learning Objectives What the Basis system is How does SAP handle a transaction request Differentiating.
Professional Informatics & Quality Assurance Software Lifecycle Manager „Tools that are more a help than a hindrance”
SubVersioN – the new Central Service at DESY by Marian Gawron.
This chapter is extracted from Sommerville’s slides. Text book chapter
Version control Using Git 1Version control, using Git.
Version Control with Subversion. What is Version Control Good For? Maintaining project/file history - so you don’t have to worry about it Managing collaboration.
January, 23, 2006 Ilkay Altintas
Copyright 2003 Accenture. All rights reserved. Accenture, its logo, and Accenture Innovation Delivered are trademarks of Accenture. Data Migration in Oracle.
What is Architecture  Architecture is a subjective thing, a shared understanding of a system’s design by the expert developers on a project  In the.
© 2008 by Eike Stepper; made available under the EPL v1.0 | Connected Data Objects (CDO) The EMF Model Repository.
Eike Stepper Berlin, Germany The CDO Model Repository Perfect for the Enterprise.
Active Monitoring in GRID environments using Mobile Agent technology Orazio Tomarchio Andrea Calvagna Dipartimento di Ingegneria Informatica e delle Telecomunicazioni.
 To explain the importance of software configuration management (CM)  To describe key CM activities namely CM planning, change management, version management.
Informix IDS Administration with the New Server Studio 4.0 By Lester Knutsen My experience with the beta of Server Studio and the new Informix database.
Version control Using Git Version control, using Git1.
© 2009 by Eike Stepper; made available under the EPL v1.0 | The Net4j Signalling Platform Developing Pluggable Client/Server Applications Eike.
Information Systems and Network Engineering Laboratory II DR. KEN COSH WEEK 1.
Eike Stepper Berlin, Germany Scale, Share and Store your Models with CDO EclipseCon.
Object Oriented Analysis and Design 1 Chapter 7 Database Design  UML Specification for Data Modeling  The Relational Data Model and Object Model  Persistence.
Introduction to the Adapter Server Rob Mace June, 2008.
Hibernate Persistence. What is Persistence Persist data to database or other storage.  In OO world, persistence means persist object to external storage.
Eike Stepper ES-Computersysteme Berlin, Germany Net4j Signalling Platform Developing Pluggable Client/Server Applications.
Eike Stepper ES-Computersysteme Berlin, Germany CDO Model Repository An Update.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
Personal Distributed Information Store Ken Rimey PDIS repository stores replicated collections of objects. Test applications: –Calendars (collections.
1 Chapter 12 Configuration management This chapter is extracted from Sommerville’s slides. Text book chapter 29 1.
Eike Stepper Berlin, Germany CDO Orthogonal Aspects of Models EclipseCon Europe,
Eike Stepper Berlin, Germany Scale, Share and Store your Models with CDO Eclipse.
Eike Stepper ES-Computersysteme Berlin, Germany CDO 2.0 Preview Power to the People Appealing to a Broader Community.
Eike Stepper ES-Computersysteme Berlin, Germany CDO Model Repository A Model Repository for EMF A Framework for.
OASIS ebXML Registry Standard Open Forum 2003 on Metadata Registries 10:30 – 11:15 January 20, 2003 Kathryn Breininger The Boeing Company Chair, OASIS.
Copyright 2007, Information Builders. Slide 1 iWay Web Services and WebFOCUS Consumption Michael Florkowski Information Builders.
EJB Enterprise Java Beans JAVA Enterprise Edition
Forum Topics OMG Roundtable Dec. 11, Background Forum is part of the ODBMS.ORG Moderated by Dr. Roberto Zicari Started on 10/16/07 (last post 12/8/07)
Interstage BPM v11.2 1Copyright © 2010 FUJITSU LIMITED INTERSTAGE BPM ARCHITECTURE BPMS.
Orion Contextbroker PROF. DR. SERGIO TAKEO KOFUJI PROF. MS. FÁBIO H. CABRINI PSI – 5120 – TÓPICOS EM COMPUTAÇÃO EM NUVEM
Best Practices for Alfresco Replication, Backup and Disaster Recovery Richard McKnight Principal Consultant Brian Long Principal Consultant.
VIEWS b.ppt-1 Managing Intelligent Decision Support Networks in Biosurveillance PHIN 2008, Session G1, August 27, 2008 Mohammad Hashemian, MS, Zaruhi.
Martin Flügge Berlin, Germany Dawn Rise of the Collaborative UI EclipseCon Santa.
Introduction  Model contains different kinds of elements (such as hosts, databases, web servers, applications, etc)  Relations between these elements.
Building Enterprise Applications Using Visual Studio®
LAMS 2.0 Architecture. LAMS 2.0 Architecture Agenda LAMS 2.0: Technical Aims Architecture Technologies LAMS Core LAMS Tool Contract External Tools.
CDO Orthogonal Aspects of Models
Overall Architecture and Component Model
Let the sunshine in! News from the Dawn side of life
.NET Performance Solutions
Michael Mast Senior Architect
Scale, Share and Store your Models with CDO
Connected Data Objects (CDO)
Data, Databases, and DBMSs
CDO Model Repository Where Models Live
A Model Repository for EMF A Framework for Distributed Shared Models
Course: Module: Lesson # & Name Instructional Material 1 of 32 Lesson Delivery Mode: Lesson Duration: Document Name: 1. Professional Diploma in ERP Systems.
Dawn Rise of the Collaborative UI
A Model Repository for EMF A Framework for Distributed Shared Models
Now that I've Got a Model Where's My Application?
Presentation transcript:

Eike Stepper Berlin, Germany CDO Model Repository Where Models Live SAP Modeling Meeting Wednesday, January 27, 2010

Agenda  Overview  Distribution  Persistence  Resources  Versioning  Scalability CDO Model Repository – Where Models Live © 2010 by Eike Stepper, Berlin, Germany. Made available under the EPL v1.0 2  Queries  Transactionality  Collaboration  Integration  Usage Example  Related TODOs

CDO Model Repository – Where Models Live © 2010 by Eike Stepper, Berlin, Germany. Made available under the EPL v1.0 3 Repository relational, OO, … Client 1Client 2Client 3 Client 4Client 5Client 6 Overview

CDO Model Repository – Where Models Live © 2010 by Eike Stepper, Berlin, Germany. Made available under the EPL v1.0 4 Repository relational, OO, … Client 1Client 2Client 3 Client 4Client 5Client 6 Overview

CDO Model Repository – Where Models Live © 2010 by Eike Stepper, Berlin, Germany. Made available under the EPL v1.0 5 Repository relational, OO, … Client 1Client 2Client 3 Client 4Client 5Client 6 Overview

Distribution  Various ways to set up an IRepository  XML config file, programmatically, Spring, …  OSGi, stand-alone, …  All components customizeable  Various ways to open a CDOSession  Net4j: TCP, HTTP, embedded, …  CDO: embedded  Other transports possible  Offline mode coming soons  Cloned and sync’ed repository, normal sessions CDO Model Repository – Where Models Live © 2010 by Eike Stepper, Berlin, Germany. Made available under the EPL v1.0 6

Persistence  Pluggable storage backend adapters (IStores)  DBStore (CDO’s own O/R mapper)  HibernateStore / Teneo  ObjectivityStore  DB4OStore  MEMStore  Changing the store type does not affect client applications! CDO Model Repository – Where Models Live © 2010 by Eike Stepper, Berlin, Germany. Made available under the EPL v1.0 7

Resources  A CDOResource is an EObject  A repository contains CDOResourceNodes  CDOResourceFolders  CDOResources  The resource tree is  Navigable through EMF  Queryable through CDO CDO Model Repository – Where Models Live © 2010 by Eike Stepper, Berlin, Germany. Made available under the EPL v1.0 8

Versioning  CDO supports record temporality  Must be supported by IStore  Can be configured per IRepository  CDO supports branching (coming soon)  Must be supported by IStore  Can be configured per IRepository  A CDOView provides consistent graphs  From a particular branch  From a particular point in time CDO Model Repository – Where Models Live © 2010 by Eike Stepper, Berlin, Germany. Made available under the EPL v1.0 9

Scalability  Lazy loading at object granule  Lazy loading without container object  Partial collection loading, chunking  Adaptive prefetching  Manual prefetching  Automatic unloading at object granule CDO Model Repository – Where Models Live © 2010 by Eike Stepper, Berlin, Germany. Made available under the EPL v1.0 10

Queries  CDO includes a generic query framework  Supports any query language  Supports named parameters  Supports synchronous execution  Supports asynchronous execution  Query language handlers can be  plugged into an IRepository (OCL?, EMF-Q?, …)  implemented by an IStore (SQL, HQL, custom, …) CDO Model Repository – Where Models Live © 2010 by Eike Stepper, Berlin, Germany. Made available under the EPL v1.0 11

Transactionality  Strong transactional safety at model-level  Multiple transactions per session  Multiple save points per transaction  Rollback to any save point  Commit with progress monitoring  Hooks for custom transaction handlers  Conflict detection and fail-early-transactions  Pluggable conflict resolvers  Explicit read/write locking on object granule  XA transactions to multiple repositories CDO Model Repository – Where Models Live © 2010 by Eike Stepper, Berlin, Germany. Made available under the EPL v1.0 12

Collaboration  Passive Updates  Asynchronous commit notifications  Invalidation of objects, lazy reload if needed  Can be switched off per session  Change subscriptions  Asynchronous change delta delivery  Registration with repository per object  Automated through pluggable adapter policies  Remote session manager  Notifies about state of other sessions  Supports sending/receiving of arbitrary messages CDO Model Repository – Where Models Live © 2010 by Eike Stepper, Berlin, Germany. Made available under the EPL v1.0 13

Integration  Integrates with EMF at the model level, not at the edit- or UI-level.  Uninvasive to the.ecore file.  Best results with regenerated models (native)  Regeneration not needed (legacy)  Dynamic models supported  Multiple repositories per ResourceSet  External references CDO Model Repository – Where Models Live © 2010 by Eike Stepper, Berlin, Germany. Made available under the EPL v1.0 14

CDOSession session = config.openSession(); CDOBranch teamBranch = session.getBranchManager().getBranch(“MAIN/team1”); CDOBranch branch = teamBranch.createBranch(“stepper”); CDOTranaction transaction = session.openTransaction(branch); CDOResource resource = transaction.getResource(“/client1/facility3”); resource.getContents().add(facility); CDOCommit info = transaction.commit(progressMonitor); System.out.println(info.getUserID(), info.getComment()); CDOView view = session.openView(info.getBranch(), info.getTimeStamp()); CDOResource readOnlyResource = view.getResource(“/client1/facility3”); Facility object = readOnlyResource.getContents().get(0); System.out.println(object.cdoID(), object.cdoState(), object.cdoView()); CDORevision revision = f.cdoRevision(); System.out.println(revision.getTimeStamp(), revision.getRevised(), revision.getVersion()); CDO Model Repository – Where Models Live © 2010 by Eike Stepper, Berlin, Germany. Made available under the EPL v1.0 15

Relevant TODOs  Model evolution  I.e. instance migration  Conceptually and technically complex  Access control  I.e. authorization  Comparingly easy  Composite views  I.e. objects from different branch points (tags)  Probably medium complexity  Native design time models (non-DSLs)  I.e. Ecore, UML2, GMF Notation  Medium complexity, maintenance challenge  Common query language CDO Model Repository – Where Models Live © 2010 by Eike Stepper, Berlin, Germany. Made available under the EPL v1.0 16

THE END