IBM Migration Manager and MIF IBM

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 52

Migration Manager / Integration Framework

9/23/2014

Tom Sarasin, Maximo Product Design

IBM Confidential © 2013 IBM Corporation


Agenda

 Migration Manager
 Maximo Integration Framework (MIF/MEA)
 Resources

2 IBM Confidential © 2013 IBM Corporation


2
What is Migration Manager?
 Vision and scope: Configuration migration between Tpae
environments
– Pre-production to production

 Support standard rollout environments


– DEV->TEST->PRODUCTION

 Purpose:
– Seed a new product environment with all the configurations created for a
particular client production rollout
– Periodically promote configurations implemented after initial rollout

 First released with Tpae 7.1.0

3 IBM Confidential © 2013 IBM Corporation


3
Configuration Applications

 Maximo rollout involves more configuration than ever


before
 Fewer customizations (coding) • Enterprise Services
• Channels
 More user acceptance testing • Logging
• System Properties
• Condition Expressions
• Application Designer • Application Designer
• Domains • Domains
• Sets • Sets
• Cron Tasks • Cron Tasks
• Communication Templates • Communication Templates
• Escalations • Escalations
• Security • Enhanced Security
• Enhanced Security
• Workflow • Enhanced Workflow
• Enhanced Workflow
• Screen Designer • Enhanced Integration
• Database Configuration
• Database Configuration • Database Configuration
• Enhanced Reports
• Reports • Enhanced Reports

Maximo 5.2 Maximo 6.2.1 Maximo 7.1

Configuration applications in Maximo


4 IBM Confidential © 2013 IBM Corporation
4
Supported Base Services configurations
 Migration focus is on:
– System Configuration – Security
– Integration – Reporting

Supported base services applications


External Systems
System Properties Cron Task Setup Sets
Logging E-mail Listeners Organizations
Domains Object Structures Calendars
Database Configuration Launch in Context People
Application Designer Security Groups Person Groups
Communication Templates Users KPI Manager
Actions Publish Channels Report Administration
Roles Invocation Channels Conditional Expression
Escalations Enterprise Services Manager

Workflow Designer End Points Classifications


Ticket Templates

5 IBM Confidential © 2013 IBM Corporation


5
Migrating product configurations

 Product configurations are treated as content


 Two types of content:
 Content in database
 Content outside database
 Content in database
 Typically tables and records in the Maximo schema
 Maximo encapsulation of a table: Maximo Business Object (MBO)
 Content outside database
 Typically files on file system
 Must be built into an Enterprise Archive (EAR) and deployed into
application server

6 IBM Confidential © 2013 IBM Corporation


6
Organizing Content outside the database

 Files that must be part of Maximo EAR


 Deployed into the application server
 .class, .jar, .properties, .xml

 Called ‘compiled sources’


 Multiple ‘compiled source’ files can be consolidated into
ZIP file for migration

7 IBM Confidential © 2013 IBM Corporation


7
Types of packages
 Snapshot
 “As is” configuration information collected for a package on demand
 Package defined after the fact
 Change
 Configuration information collected over a period of time
 Inserts, updates and deletes occurring since package was activated
 Configuration records created, modified, or deleted by designated users
 Package defined before changes occur

 Collection (new in 7.5)


 Pick and Choose approach for configurations over a period of time
 Collect configuration changes for a functionality deliverable
 Package generated from a collection

8 IBM Confidential © 2013 IBM Corporation


8
Content is migrated in packages

• Package
• Package is a container for product configuration content
• Package has a life-cycle; package is:
• Defined
• Created
• Distributed
• Deployed

Define Create Distribute Deploy


Source Maximo instance Target Maximo instance

9 IBM Confidential © 2013 IBM Corporation


9
Package definition and physical packages

Package definition is Physical packages are created based Distribute one physical Deploy physical
a reusable template on definition; enable you to collect package to multiple targets in package into target;
for your content different data sets of the same type different ways data is imported
of data over time

Mypackage XML
XMLXML
Snapshot XML
XMLXML
XML
XMLXML
XML XML XML ZIPZIP
File Distribution
XML XML XML

XML XML XML

Create ZIP ZIP

Mypackage
Snapshot Database
Distribution XML
XMLXML
XML XML XML XML
XMLXML
XML
XMLXML
XML XML XML
ZIPZIP
XML XML XML

ZIP ZIP

Define Create Distribute Deploy


Source Maximo instance Target Maximo instance

10 IBM Confidential © 2013 IBM Corporation


10
Package Definition

Package Creation

Package Distribution

Package Deployment

11 IBM Confidential © 2013 IBM Corporation


11
Defining a package

• User-driven task to identify the contents of a package in source environment


• Specify the type of package
• Snapshot or change
• Specify migration groups
• Specify compiled sources

12 IBM Confidential © 2013 IBM Corporation


12
Architecture
 Migration Manager leverages Tpae frameworks
Export Import
Packages

Migration Manager framework


XML
documents
Application Server

Integration framework
Java business
objects

MBO framework
Field and application validations

Application Application
Content/Tables Content/Tables
13 IBM Confidential © 2013 IBM Corporation
13
Organizing Database Content – Migration Groups
Maximo tables/MBOs Migration object Migration group

WFPROCESS
WFNODE
WFTASK
WFASSIGNMENT
WFSTART
WFSTOP
WFINPUT
WFACTION
Process
WFINTERACTION
WFWAITLIST Workflow
WFCONDITION
WFNOTIFICATION
WFSUBPROCESS
Comm Templates
COMMTEMPLATE
COMMTMPLTSENDTO
COMMTEMPLTDOCS Roles System

MAXROLE
Application
Actions
Data Dictionary
ACTION
ACTIONGROUP

Dependent Groups

14 IBM Confidential © 2013 IBM Corporation


14
Defining a Package – Out of box Migration Groups
Migration Group Description Migration Group Order

DATADICTIONARY Data Dictionary 1

DOCUMENTLIBRARY Document Library 2

APPLICATION Application 3

RESOURCES Resources 5

FUNCTIONAL Functional 4

APPSECURITY Application Security 6

REPORTING Reporting 7

SYSTEM System 8

INTEGRATION Integration 9

BPM Business Process Management 10

MIGRATION Migration 11

TICKETTEMPLATEDATA Ticket Template Data 12

CLASSIFICATIONDATA Classification Data 13

INTERACTION_OBJ Interaction System Objects 14

INTERACTION_INT Interation Artifacts 15

SCRIPTCFG Scripting System Objects 16

OSLCPROVIDER OSLC Provider Migration Group 17

15 IBM Confidential © 2013 IBM Corporation


15
Defining a Package – Data Dictionary Migration Group
Migration Object Description Migration Object Order

DMMAXSERVICE System service migration object for Migration Manager 1

DMLANGUAGE Language migration object for Migration Manager 2

DMMAXMESSAGES System message migration object for Migration Manager 3

DMCURRENCY Currency migration object for Migration Manager 4

DMSETS Set migration object for Migration Manager 5

DMORGANIZATION Organization and site migration object for Migration Manager 6

DMMAXVARS MAXVARS migration object for Migration Manager 7

DMCONDITION Condition expression migration object for Migration Manager 8

DMMAXDOMAIN Domain migration object for Migration Manager 9

DMMAXOBJECTCFG Data dictionary object migration object for Migration Manager 10

DMMAXSEQUENCE Data dictionary sequence migration object for Migration Manager 11

DMMAXLOOKUPMAP Lookup map migration object for Migration Manager 12

DMMAXRELATIONSHIP Data dictionary relationship migration object for Migration Manager 13

DMMAXINTOBJECT Object structure migration object for Migration Manager 14

DMDEFGLCONFIGURE Default GL configuration and component migration object for Migration Manager 15

DMGLCONFIGURE GL configuration and component migration object for Migration Manager 16

16 IBM Confidential © 2013 IBM Corporation


16
Defining a Package – Data Dictionary Migration Object (dmmaxobjectcfg)
Object Parent Object

MAXOBJECTCFG

L_MAXOBJECTCFG MAXOBJECTCFG

MAXTABLECFG MAXOBJECTCFG

MAXVIEWCFG MAXOBJECTCFG

MAXVIEWCOLUMNCFG MAXOBJECTCFG

MAXATTRIBUTECFG MAXOBJECTCFG

L_MAXATTRCFG MAXATTRIBUTECFG

AUTOKEY MAXATTRIBUTECFG

MAXSYSINDEXES MAXOBJECTCFG

MAXSYSKEYS MAXSYSINDEXES

MAXATTRIBUTESKIPCOPY MAXATTRIBUTECFG

17 IBM Confidential © 2013 IBM Corporation


17
Out of Box Migration Content

• 17 Migration Groups
• 70 Migration Objects (Object Structures)

18 IBM Confidential © 2013 IBM Corporation


18
Package Definition

Package Creation

Package Distribution

Package Deployment

19 IBM Confidential © 2013 IBM Corporation


19
Creating a package

 Package definition only defines the content


 Actual configuration data collection done during package
creation
 Package creation initiated from Migration Manager application
 User-driven task to collect configuration information and compiled
sources based on definition
Mypackage

– Long-running task depending upon Snapshot


Business Process
amount of information to be XML XML XML
collected Applications

XML XML XML


– Package is created in the form of System
records in a staging table XML XML XML

Compiled Sources

ZIP ZIP

20 IBM Confidential © 2013 IBM Corporation


20
Creating a package - Manifest

 Manifest is used to determine if package can be deployed


in target
 Manifest contains:
 Package information
 Source environment version information
 RDBMS
 Maximo and Industry Solution versions
 Migration objects in package and record count for each
 Readme information entered in source environment by package creator
that assists in planning deployment into target

21 IBM Confidential © 2013 IBM Corporation


21
What does the package contain?

PKGMETADATA
 XML-formatted records
XML XML XML

DDMETADATA Meta-data for the package including


manifest
XML XML XML

XML XML XML Structural data for the package, if any (also
called Data Dictionary data)
CFGDATA
XML XML XML Non-Structural data for the package, if any
(Workflow, Escalations, etc)
XML XML XML

CMPSRC
Compiled source files, if any
ZIP

22 IBM Confidential © 2013 IBM Corporation


22
Package Definition

Package Creation

Package Distribution

Package Deployment

23 IBM Confidential © 2013 IBM Corporation


23
Distributing a package

 User-driven task to distribute a package to target


environments
 Distribute to:
 Database
 Remote database in the target environment
 File
 Migration Manager-generated file copied to designated folder
 Distribution through Migration Manager application

24 IBM Confidential © 2013 IBM Corporation


24
Distributing a package

 Benefits:
 Single package can be distributed different ways to multiple targets
 Distribution not tied to package definition
 Can be set up at later time
 Package contents always available in staging table
 Distribute to database useful in moving from DEV to TEST
 Distribute to file useful in moving from TEST to PROD
 Distribute to file also useful when source and target have different RDBMS

25 IBM Confidential © 2013 IBM Corporation


25
Restrictions on distribution and deployment

 Target can restrict sources from where packages are received


 Protect production environments from receiving unauthorized packages
 Restrictions applied in two contexts:
 Database distribution
 Package is not distributed to target if target restricts particular source
 File distribution
 Package cannot be deployed into target if target restricts particular source
 Restrictions are completely optional – implementation dependent

26 IBM Confidential © 2013 IBM Corporation


26
Package Definition

Package Creation

Package Distribution

Package Deployment

27 IBM Confidential © 2013 IBM Corporation


27
Deploying a package

 User-driven task to process the contents of a package in a


target environment
 Process metadata associated with package
 Process compiled sources
 Apply structural changes to Maximo tables based on data dictionary metadata
 Process other configuration data
 Package deployed through Migration Manager application

28 IBM Confidential © 2013 IBM Corporation


28
Deploying a package – Pre-requisites

 Backup the database before initiating the deployment of a


package
 Migration Manager application will warn
 If administrator chooses to continue, a log statement will record the fact
 Only one package can be deployed at a time
 To preserve integrity of structural changes

29 IBM Confidential © 2013 IBM Corporation


29
Resources
 Maximo 7.5 Information Center for Migration Manager
 http://www-
01.ibm.com/support/knowledgecenter/SSLKT6_7.5.0.5/com.ibm.mbs.doc/gp_m
igmgr/c_ctr_mig_mgr_over.html

 Migration Manager Redbook for Tpae 7.1.x


 http://www.redbooks.ibm.com/abstracts/sg247906.html?Open

 Migration Manager Redbook for Tpae 7.5.x


 http://www.redbooks.ibm.com/abstracts/sg248132.html?Open

 Migration Manager section of the Maximo WiKi


 https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/IB
M%20Maximo%20Asset%20Management/page/Migration%20ManagerContent
will be added over time

30 IBM Confidential © 2013 IBM Corporation


3
1

MIF Overview

31 IBM Confidential © 2013 IBM Corporation


3
2
TPAE Products

Custom Applications

Product-specific applications/extensions (Nuclear, Oil & Gas etc)

Consuming Products
Maximo, SCCD

Common Applications | Security | Reporting | UI FW | Integration FW (MIF)

Database | Business object (MBOs) framework

TPAE (Base Services)

32 IBM Confidential © 2013 IBM Corporation


3
3
Integration Implementation
ERP Integration
Use Case Data Replication
Data Loading
Purchasing, Inventory,
Financials
Delimited Files (.csv)
Asynchronous
XML/HTTP

GBS
Asynchronous

UI /
MAXIMO/SCCD

CRON

SAP
Integration
Framework

SAP
Adapter
Asynchronous / Data Replication

Synchronous / Interactive

Legacy Applications
Web
Service

REST
Api

Query
RESTful Interactions
Displaying External Data to

SCCD
WEB 2.0 applications
Application Users
Query/Update REST
Resources (Service Requests,
Service Catalog )
Web Services
Synchronous
HTTP
Synchronous

33 IBM Confidential © 2013 IBM Corporation


3
4
Applications, Integration framework provides XML/JSON
Business Objects, Integration artifacts data for all Business Objects

Integration messages can


be initiated via business

ERP system
object events, an
Message Initiation application user and a
programmatic invocation
(WO, PO, Item etc)
Business Objects

Queue
Maximo/SCCD

JMS
Supports sending
and receiving any
message using
standard protocols:
Provides support for

ESB
bi-directional
integration with
HTTP/HTTPS

XML/JSON
external applications
and middleware Web Services
products JMS
Flat/XML Files
DB tables

Queue
JMS

applications
Customer
Support message Synchronous
exchange in interactions using
synchronous and Web Service, REST,
asynchronous model OSLC

34 IBM Confidential © 2013 IBM Corporation


3
5
Common Integration points

35 IBM Confidential © 2013 IBM Corporation


3
6

Integration Components

36 IBM Confidential © 2013 IBM Corporation


3
7
Integration Components

Message Content Definition


Object Structure (XML Schema/ REST Resource/ RDF Shape*
for OSLC Resource)

Channel/Service Message Processing (bus rules / data


mapping)

External System
Message Delivery via End Points (Protocols
&
such as XML/HTTP, SOAP, JMS)
End Point

Integration Components provided out of box but can be extended and/or new components
created using integration applications

*Support of RDF Shapes is not in current release – targeted for a future release

37 IBM Confidential © 2013 IBM Corporation


3
8
Processing Layers on top of an Object Structure

ERP system
End Points

Ob HTTP/
J Channel (XML)
T HTTPS
(WO, PO, Item etc)

e
Business Objects

Queue
JMS
PA
c
E Web
t

ESB
Service
P
S
r
t JMS
o
r
d

Queue
u

JMS
u XML / Flat
c
c Files
t

Message Broker
t Service (XML)
u
s DB tables
r
e

External
Systems
38 IBM Confidential © 2013 IBM Corporation
3
9
Object Structure - Message (schema) Definition

Object Structure: MXITEM

ITEM • Graph of related Business


Objects that define the content
of integration messages for
channels and services
Object Structure: MXPO • Columns of each business
object are configurable to be
PO included/excluded

• Over 70 provided out of box


POLINE (TPAE/Consuming Products)

• Support for creation of


POCOST custom object structures

POTERM

Object Structures are also used for Query based Reporting and by Migration Manager
39 IBM Confidential © 2013 IBM Corporation
4
0
Object Structure Use

XML File
Application Export
Ob .csv File
J
T
(WO, PO, Item etc)

e
Business Objects

PA
c
E XML File
t
Application Import
P .csv File
S
r
t
o
r
d
u
u Web 2.0 UI
c REST Api
c (XML/JSON)
t
t
u
s
r
e Web Service
Service
XML/HTTP

40 IBM Confidential © 2013 IBM Corporation


4
1
Object Structure Application

41 IBM Confidential © 2013 IBM Corporation


4
2
Application-based Export/Import (7.5)

Flat File (.csv)


O Export
Work Order
b MXWO Application
J (WO, Plan Mat’l)
User
e
(WO, Asset, SR etc)

Import
T
Business Objects

Excel
PA t
E

Flat File (.csv)


S Export Asset
P t
r Application
r MXASSET
o (Asset, Spec Attr)
User
u Import
d c
u

XML Editor
t
c u
t r
s Export SR

XML File
e
MXSR Application
(SR) User
Import

42 IBM Confidential © 2013 IBM Corporation


4
3
Object Structure Processing/Configuration

• Minimum Configuration
• No Channel/Service/External System/End Point
• Synchronous Processing (no use of JMS queues)
• Outbound processing only supports export to a file
• Message format according to schema
• RESTful access - support for XML & JSON
• No Customization

43 IBM Confidential © 2013 IBM Corporation


4
4
Channel Processing (OUTBOUND)

ERP system
End Points

Ob HTTP/
J
T HTTPS
(WO, PO, Item etc)

e
Business Objects

PA
c Invocation Channel
E Web
t

ESB
Channel (XML) Service
P
S

Queue
r Publish Channel

JMS
t JMS
o
r
d
u XML / Flat
u
c
c Files
t

Message Broker
t
u
s DB tables
r
e

External
Systems
44 IBM Confidential © 2013 IBM Corporation
4
5
Publish Channel (Asynchronous)

Publish Channel
XML

External Application / Service


Customization - Optional
Event / Data Export

Flat/XML File
Business Objects

Object Structure

Processing Rules

Processing Class
HTTP Post (XML)

JMS Queue
User Exit

User Exit
MAXIMO

End Point
XSL Map
Write to JMS Queue

Invoke Web Service


Invoke EJB
DB Table
Java
CRON
Task

45 IBM Confidential © 2013 IBM Corporation


4
6
Publish Channel Application

46 IBM Confidential © 2013 IBM Corporation


4
7
Invocation Channel (Synchronous)

Source MBO Invocation Channel*


Request

External Application / Service


Customization - Optional

Object Structure
Business Objects

XSL Map
Write to XML File

EndPoint/Handler
Classes
Java
Action Class
Application,
Work Flow,

HTTP Post
Escalation
MAXIMO

Write to JMS Queue


XSL Map Invoke Web Service

Classes
Invoke EJB

Java
Command Line

Target MBO Response

* Interactions – UI Wizard to auto-create a Web Service-based


interaction – added in 7.1.1.6
47 IBM Confidential © 2013 IBM Corporation
4
8
Channel Processing Capabilities

Publish Channel Invocation Channel

Processing Async (Queue-ing) Sync (no Queue-ing,


response processing)
End Points Required Required

External System Required N/A

Customization Yes Yes (No Processing


Rules)
Message Event-based, Data Export Action class (Java)
Initiation

48 IBM Confidential © 2013 IBM Corporation


4
9
Service Processing (INBOUND)

ERP system
HTTP/
Ob HTTPS
J
T
(WO, PO, Item etc)

e
Business Objects

PA Web
c Enterprise/Standard Service Service
E
t

ESB
Service (XML)
P JMS
S

Queue
r Enterprise Service

JMS
t
o
r XML / Flat
d
u Files
u
c
c
t

Message Broker
t DB tables
u
s
r
e

External
Systems
49 IBM Confidential © 2013 IBM Corporation
5
0
Enterprise Service

Enterprise Service*
MBO(s)
Customization - Optional
HTTP Invoke w/ Response

EJB Invoke w/ Response


Business Objects

External System
Object Structure

WS Invoke w/ Response
Processing Rules

Processing Class
User Exit
XSL Map

User Exit
MAXIMO

File Load / Interface Table

JMS Queue
HTTP Invoke
EJB Invoke
WS Invoke

* Enterprise Service Operations: Create, Update, Delete, CRON Task or Message Driven Beans
Sync, Query (MDBs)

50 IBM Confidential © 2013 IBM Corporation


5
1
Enterprise Service Application

51 IBM Confidential © 2013 IBM Corporation


5
2
Service Processing Capabilities
Object Structure Enterprise Standard
Service Service Service
Processing Sync Async and Sync Sync

Access EJB/HTTP/Web EJB/HTTP/Web EJB/HTTP/Web


Service Service Service
External N/A Required N/A
System
Customization No Yes No

Workflow Servlet – added in 7.1.1.6 – supports the


initiation/wake-up of a Workflow. Available only via XML/HTTP

52 IBM Confidential © 2013 IBM Corporation

You might also like