Modellrepository @ T-Mobile Konzeption und...

23
Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile Modellrepository @ T-Mobile Konzeption und Umsetzung SET 2009, Zürich Carsten Sensler, T-Mobile Deutschland GmbH Andre Karalus, Freelancer 4/26/09 1

Transcript of Modellrepository @ T-Mobile Konzeption und...

Page 1: Modellrepository @ T-Mobile Konzeption und Umsetzungsensler.de/wp-content/uploads/2013/06/SET09_Model...Analysis of model dumps (offline snapshot of partial or full model) !! Analysis

Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile

Modellrepository @ T-Mobile

Konzeption und Umsetzung

SET 2009, Zürich

Carsten Sensler, T-Mobile Deutschland GmbH

Andre Karalus, Freelancer

4/26/09 1

Page 2: Modellrepository @ T-Mobile Konzeption und Umsetzungsensler.de/wp-content/uploads/2013/06/SET09_Model...Analysis of model dumps (offline snapshot of partial or full model) !! Analysis

Table of Contents

!! SOA Backplane overview

!! Model repository @ T-Mobile

!! Domain specific example: SOA

!! Common Enterprise Integration Service Repository

!! Experiences

!! Summary

4/26/09 Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile 2

Page 3: Modellrepository @ T-Mobile Konzeption und Umsetzungsensler.de/wp-content/uploads/2013/06/SET09_Model...Analysis of model dumps (offline snapshot of partial or full model) !! Analysis

Table of Contents

!! SOA Backplane overview

!! Model repository @ T-Mobile

!! Domain specific example: SOA

!! Common Enterprise Integration Service Repository

!! Experiences

!! Summary

4/26/09 Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile 3

Page 4: Modellrepository @ T-Mobile Konzeption und Umsetzungsensler.de/wp-content/uploads/2013/06/SET09_Model...Analysis of model dumps (offline snapshot of partial or full model) !! Analysis

SOA Backplane – overview (simplified).

Business System(s)

Msgs.

SOAP

JMS

Logs/

Status

WS/

others

Design time

Runtime

EMS

(Messaging)

Adapter(s) Common Access

Layer (CAL)

Logs

Service

Repository

(CEISeR)

e.g. Corba, Tuxedo,

JMS, …

Message-

/ Log-Store

(LMS)

Xplor

Provisioning time

Routing

Config

4/26/09 4 Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile

Static routing: Who speaks with

whom is configured statically in

the runtime

Page 5: Modellrepository @ T-Mobile Konzeption und Umsetzungsensler.de/wp-content/uploads/2013/06/SET09_Model...Analysis of model dumps (offline snapshot of partial or full model) !! Analysis

SOA Backplane – overview (international view).

. . . . . .

TMCZ TMUK

Adapter Adapter

. .

TMD

.

International System

Adapter Service

Repository

(CEISeR)

Central view

on

BAM, Logs &

Monitoring

4/26/09 5 Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile

Page 6: Modellrepository @ T-Mobile Konzeption und Umsetzungsensler.de/wp-content/uploads/2013/06/SET09_Model...Analysis of model dumps (offline snapshot of partial or full model) !! Analysis

Table of Contents

!! SOA Backplane overview

!! Model repository @ T-Mobile

!! Domain specific example: SOA

!! Common Enterprise Integration Service Repository

!! Experiences

!! Summary

4/26/09 Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile 6

Page 7: Modellrepository @ T-Mobile Konzeption und Umsetzungsensler.de/wp-content/uploads/2013/06/SET09_Model...Analysis of model dumps (offline snapshot of partial or full model) !! Analysis

Model repository in general.

!! Model repository stores Metadata where the context (domain) is defined in a formal model.

!! The concepts of the model repository are defined in a meta meta model

4/26/09 Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile 7

Versioning/ revisioning of content

and branching/ static view defintions

Change history and audit

Distributed modelling

Concurrent modifications

Access control

Bulk interface

Lightweight and agile development,

thus adaptions will not consume much effort

Model repository

Page 8: Modellrepository @ T-Mobile Konzeption und Umsetzungsensler.de/wp-content/uploads/2013/06/SET09_Model...Analysis of model dumps (offline snapshot of partial or full model) !! Analysis

UML 2

eiCommon.uml2 eiCommon.mmgen

ecore.mmgen

eiCommon.jar (Core)

Verschiedene Artefakte

(xml Dokumente)

Instanz Instanz M2M

M2C

M2T

M2M: Model - to - Model Transformation

M2C: Model - to - Code Transformation

M2T: Model - to - Text Transformation

EMF (ecore)

Instanz

Transformation view for generating the sources for the model

repository and the export interface.

4/26/09 8 Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile

Page 9: Modellrepository @ T-Mobile Konzeption und Umsetzungsensler.de/wp-content/uploads/2013/06/SET09_Model...Analysis of model dumps (offline snapshot of partial or full model) !! Analysis

oAW-based MDSD generator chain for generating the sources/

artefacts for the model repository.

generate ecore

metamodel eiCommon.mmgen

Generate

CEISeR.xmetamodel

CEISeR.xmetamodel Import data into CEISeR

Generate

eiCommon eiCommon.jar

generate artefacts

Importer Modul Exporter Modul gmf generator

mdumltrafo mmgen.generator

M2M M2C

M2M

M2M: Model - to - Model Transformation

M2C: Model - to - Code Transformation

M2T: Model - to - Text Transformation

Artefacts Artefacts

Artefacts

M2T

Dateien

4/26/09 9 Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile

Page 10: Modellrepository @ T-Mobile Konzeption und Umsetzungsensler.de/wp-content/uploads/2013/06/SET09_Model...Analysis of model dumps (offline snapshot of partial or full model) !! Analysis

What is generated from the meta model ?

4/26/09 10 Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile

Page 11: Modellrepository @ T-Mobile Konzeption und Umsetzungsensler.de/wp-content/uploads/2013/06/SET09_Model...Analysis of model dumps (offline snapshot of partial or full model) !! Analysis

What is generated from the meta model ?

Metaclasses (Java beans)

Hibernate persistence mapping (XML)

Oracle

DB schema

Simple constraint checks

Generated by

openArchitectureWare

Generated by Hibernate

Schema Builder

4/26/09 11 Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile

Page 12: Modellrepository @ T-Mobile Konzeption und Umsetzungsensler.de/wp-content/uploads/2013/06/SET09_Model...Analysis of model dumps (offline snapshot of partial or full model) !! Analysis

What is generated from the meta model (independent from the

specific domain)?

Metaclasses (Java beans)

Hibernate persistence mapping (XML)

Oracle

DB schema

Simple constraint checks

Generated by

openArchitectureWare

Generated by Hibernate

Schema Builder

Generated model management code

Data storage in Oracle DB

Java beans (instances of generated

meta classes) represent the

modelled entities

Persistence and instantiation of Java

beans is done by Hibernate

4/26/09 12 Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile

Page 13: Modellrepository @ T-Mobile Konzeption und Umsetzungsensler.de/wp-content/uploads/2013/06/SET09_Model...Analysis of model dumps (offline snapshot of partial or full model) !! Analysis

Table of Contents

!! SOA Backplane overview

!! Model repository @ T-Mobile

!! Domain specific example: SOA

!! Common Enterprise Integration Service Repository

!! Experiences

4/26/09 Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile 13

Page 14: Modellrepository @ T-Mobile Konzeption und Umsetzungsensler.de/wp-content/uploads/2013/06/SET09_Model...Analysis of model dumps (offline snapshot of partial or full model) !! Analysis

SOA Backplane – Service Repository Interfaces.

Imports

Authorisation &

contact information

Technical

environment

definitions

Provider / consumer

relations & SLA

Exports

Reports

SOA BP

Service-Repository

Tibco EMS

(JMS) configuration

Common Access

Layer artefacts

Deployment &

security

configuration

WSDLs *,

XSDs

Round trip is supported

* T-Mobile specific subset of WSI basic

profile 1.1

WSDLs *,

XSDs & metadata

Xplor

(DSL editor)

internal external

4/26/09 14 Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile

Page 15: Modellrepository @ T-Mobile Konzeption und Umsetzungsensler.de/wp-content/uploads/2013/06/SET09_Model...Analysis of model dumps (offline snapshot of partial or full model) !! Analysis

The Service Repository in a nutshell.

!! Provide all information needed by service participants for consistent service implementation and

utilisation (architecture)

!! Store definition of different SOA backplane environments and binding of service participants to

these environments (binding)

!! Support fully automated configuration of SOA backplane environments (dev, test, prod, …) (service

provisioning)

!! Support SOA governance (service discovery, reuse) and impact analysis (change / incident contact

information) (management)

!! Support change and configuration management by the revisioning concept and the auditing facility

of CEISeR

4/26/09 15 Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile

Page 16: Modellrepository @ T-Mobile Konzeption und Umsetzungsensler.de/wp-content/uploads/2013/06/SET09_Model...Analysis of model dumps (offline snapshot of partial or full model) !! Analysis

The Underlying Meta-Model.

4/26/09 16 Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile

Page 17: Modellrepository @ T-Mobile Konzeption und Umsetzungsensler.de/wp-content/uploads/2013/06/SET09_Model...Analysis of model dumps (offline snapshot of partial or full model) !! Analysis

eXploring Modells – CEISeRs frontend.

4/26/09 Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile 17

Page 18: Modellrepository @ T-Mobile Konzeption und Umsetzungsensler.de/wp-content/uploads/2013/06/SET09_Model...Analysis of model dumps (offline snapshot of partial or full model) !! Analysis

Xplor Eclipse based client.

!! Eclipse plug-in or Eclipse-based RCP

!! DSL editor for CEISeR

!! Generic GUI based on CEISeR meta model, Import DSL meta model and local configuration

!! Partially generated from the CEISeR met model

!! Supports

!! Editing of job definition files (manifest, architecture, binding, infrastructure;

search, edit, delete, insert, change, …)

!! Analysis of job results (model diff, constraint violations)

!! Analysis of model dumps (offline snapshot of partial or full model)

!! Analysis of a diff between two model revisions (diff of two snapshots)

!! Check-in and Check-out of model fragments

!! Various wizards for making the work with CEISeR more efficiently

4/26/09 18 Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile

Page 19: Modellrepository @ T-Mobile Konzeption und Umsetzungsensler.de/wp-content/uploads/2013/06/SET09_Model...Analysis of model dumps (offline snapshot of partial or full model) !! Analysis

Table of Contents

!! SOA Backplane overview

!! Model repository @ T-Mobile

!! Domain specific example: SOA

!! Common Enterprise Integration Service Repository

!! Experiences

4/26/09 Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile 19

Page 20: Modellrepository @ T-Mobile Konzeption und Umsetzungsensler.de/wp-content/uploads/2013/06/SET09_Model...Analysis of model dumps (offline snapshot of partial or full model) !! Analysis

Benefits of MDSD based Approach.

!! MDSD allows changes and enhancements of logical model and general enhancements of

functionality to be executed without the need to rewrite mayor parts of code or recurring implementation efforts

!! Model to model transformations allow efficient implementation of complex transformations needed

for

!! Import of definitions form various sources and formats

!! Export of definitions to various formats

!! Data migration due to model changes / enhancements and harmonisation activities

!! oAWs generator framework and powerful template language allow easy generation of all kinds of

artefacts

!! Application architecture supports clear separation of generated and hand coded parts

!! Easy adaptation of hand coded parts to when even necessary

4/26/09 20 Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile

Page 21: Modellrepository @ T-Mobile Konzeption und Umsetzungsensler.de/wp-content/uploads/2013/06/SET09_Model...Analysis of model dumps (offline snapshot of partial or full model) !! Analysis

Flexibility/ Extendibility without manual code changes.

!! Many changes of the domain model will be propagated directly into the Xplor

!! Example: Adding of attributes/references to already existing entities

!! A full rebuild/regeneration ends in

!!New DB schema

!!New access methods

!!DB migration script

!!Xplor UI enhancements

!! Note: Of course, the export has to be adapted manually by utilising the generated export- API

4/26/09 Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile 21

In a very agile domain (like SOA) I recommend to use MDSD to be very flexible

without extra effort

Page 22: Modellrepository @ T-Mobile Konzeption und Umsetzungsensler.de/wp-content/uploads/2013/06/SET09_Model...Analysis of model dumps (offline snapshot of partial or full model) !! Analysis

Future Prospects – CEISeR Evolution.

!! With our strategic partner we will shift CEISeR to a standard product to decrease/ avoid

internal development effort and therefore to safe budget (in the long run). But we will try to place our concepts into the product.

!! We will realize human-oriented workflows with the use of bpm technologie regarding the

processes working with CEISeR to formalize the processes

!! Defining a contract (service interface definition)

!! Defining an architecture, binding, …

!! Service Lifecycle management

4/26/09 Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile 22

Page 23: Modellrepository @ T-Mobile Konzeption und Umsetzungsensler.de/wp-content/uploads/2013/06/SET09_Model...Analysis of model dumps (offline snapshot of partial or full model) !! Analysis

Additional Informations

!! oAW – openArchitectureWare : http://www.openarchitectureware.org

!! C. Sensler, A. Karalus, SOA@T-Mobile – Vollautomatische Service Provisionierung auf dem ESB – Teil 1-3 in:

JavaMagazin, 10.2008 – 12.2008, http://www.sensler.de/public.html

!! C. Sensler, A. Karalus, M. Märtens, Ein Blick hinter die Kulissen - Modellrepository@T-Mobile, in

JavaSPEKTRUM 1/2009

4/26/09 Carsten Sensler & Andre Karalus, SET 2009, Modelrepository @ T-Mobile 23

!! Dipl.-Ing. Carsten Sensler

!! Employee of T-Mobile Deutschland GmbH since April 2007

(but since December 2005 working in the SOA Backplane program )

!! Department of Enterprise Integration

!! System & Solution Designer

!! Functional leader of the international Service Provisioning

Team

!! Contact: [email protected]