Improved Lifecycle Management for BI David Brockington SAP Business Objects, Product Management June, 2009
Agenda 1. Introduction 2. SAP BusinessObjects LifeCycle Manager Overview 3. Other SAP BusinessObjects Tools 4. Partner tools 5. Best practices 6. Conclusion SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 2
Why Is Life-Cycle Management Important? Regulations such as the Sarbanes-Oxley Act and HIPPA require a new level of rigor. Internal controls are required for: How changes are made Who can access production systems Reports need to be correct and on-time with: Minimal downtime Changes to systems, data, or processes that are thoroughly tested Sensitive data must be protected. For many, business intelligence has become mission critical. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 4
Poll Who has faced the situation where you or your team had to make changes directly in production? SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 5
How Did You Feel About That? SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 6
Nervous? SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 7
Guilty? SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 8
Afraid Someone Might Find Out? SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 9
Less Than Professional? SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 10
Benefits of Life-Cycle Management Reduce costs: Avoid errors Avoid rework Avoid system downtime Increase security: Recover from errors and mistakes Recover from malicious acts Safeguard information SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 11
Basic Principle Separation Development Develop reports Test Validate reports Test security Test software (fix packs, service packs) Production Verify changes SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 12
Agenda 1. Introduction 2. SAP BusinessObjects LifeCycle Manager Overview 3. Other SAP BusinessObjects Tools 4. Partner tools 5. Best practices 6. Conclusion SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 13
Business Objects LifeCycle Manager Primary life-cycle management tool for XI 3.1 and later Current version is XI 3.1. SP2 available in July Stand-alone Web application Will eventually be another tab in the CMC No additional licensing required Available now at the SAP Service Marketplace extranet SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 14
LifeCycle Manager Overview Complete granular control over objects selected Better insight into What will happen? Dependency check and analysis Test promotion capability Auditing What did happen? Rollback Ability to schedule Full handling of delegated administration Integration with version control Database connection overrides and mapping SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 15
BusinessObjects LifeCycle Manager Home page provides status of promotion jobs. Jobs can be organized and secured by folders. An instance of the SAP BusinessObjects Enterprise is used to store promotion metadata. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 16
Creating a New Promotion Job SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 17
Promotion Job Window Add objects to a new job. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 18
Adding Objects to a Job Browse and select all object types not just documents. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 19
Manage Dependencies After selecting objects, optionally check for dependencies. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 20
Manage Dependencies Here, we see a universe that has a dependency on a connection. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 21
Dependencies Filters Objects can be filtered for better analysis. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 22
Dependencies Rules Rules allow for groups of dependents to be selected (similar to Import Wizard). SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 23
Promotion Once the promotion job is built, it is ready for promotion. A variety of options can be set. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 24
Mappings Use mappings to override: Universe connections Crystal Reports database info Query as a Web Service URLs Federation settings SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 25
Universe Connection Mappings A connection can be mapped to the appropriate connection in the next environment. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 26
Universe Connection Overrides Or, the specific properties of a universe connection can be updated. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 27
Crystal Reports Overrides Database connection information for Crystal Reports is grouped by connection and can be updated in bulk. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 28
Crystal Reports Overrides Provide new values for database connection. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 29
Query As a Web Service Overrides The WSDL URLs are grouped by server and can be updated in bulk. A post-processing action regenerates the WSDL on destination server. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 30
Federation Overrides Properties of Remote Connections can be overridden. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 31
Scheduling a Promotion Job A promotion job can be scheduled using all the standard scheduling options. This allows you to schedule deployments for after hours. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 32
External Change Management ID An external ID can be entered here and associated with changes in the audit log. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 33
Promoting Security The security associated with objects can optionally be promoted. Best practice is to promote security only when changes have been made - typically with a significant revision of the application. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 34
Test Promotion Test what will happen before committing a change. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 35
Test Promotion No errors were detected by the test. Example: A warning would have been displayed if the destination had a newer version of an object. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 36
Rollback Example: we decide to roll back version 5 of the expense reporting application. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 37
Rollback SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 38
Rollback Completed Version 5 is removed from the system and Version 4 is restored. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 39
Rollback Best Practices When a deploy issue is identified you can do one of two things: Fix issue in dev, and promote fix through lifecycle, or: Roll back some or all of the deploy to the previous state Rollback makes sense when: Scope of changes to be rolled back is large Change must be reversed quickly Issue is in production SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 40
Rollback Best Practices You can roll back more than one series of changes, however: Each successive rollback increases complexity The result is less likely to be predictable to an end user Best practice: Only roll back when it is absolutely necessary Avoid rolling back more than one version Rollback has a cost : disk space Enable rollback only for critical systems SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 41
Version Control Select resources and check into to Version Management. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 42
Version Control SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 43
Version Control Version has incremented. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 44
Get Version Browse versions and check-in notes. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 45
Lock / Unlock Lock objects to prevent them from being checked out by another user. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 46
Export Version Export a particular version locally for validation. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 47
Version Control Provided out of the box with Subversion 1.4.6 Popular open source version-control system Subversion is installed on same server as LifeCycle Manager Or, can reuse an existing instance of Subversion Use file security to lock down access to Subversion so that LifeCycle Manager is the only access point. Ensure that Subversion files are backed up. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 48
Clearcase Support Clearcase can be used as a Version Management System instead. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 49
Auditing Browse versions and check-in notes A variety of events can be audited. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 50
Audit Reporting Audit reports answer questions such as: Who promoted the change? When did the change take effect? What objects were successfully added or modified? Which objects failed? SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 51
Managing Rights to LifeCycle Manager Application rights can be used to restrict access to LifeCycle Manager SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 52
Rights Model Best Practice Consider a model with 2 (or 3) roles: Developer Access VMS Create, Edit, Delete jobs Export as LCMBIAR, Edit LCMBIAR (Segregation of duties) Promoter Edit Mapping, Promote Job Administrator Edit Mapping, Promote Job Rollback LCM Administration settings SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 53
Version 1 Limitations Supports XI 3.1 and later Currently English only. Installs on Windows, AIX, Linux, Solaris (not HP-UX) However, as a Web application it can be used to manage any XI 3.1 deployment regardless of platform Only supports objects in CMS repository. Doesn t support: Data Services Performance optimization applications, such as those used for governance, risk, and compliance Performance Manager (PM Deployment Tool (PMDT) is still required) SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 54
Example Architecture Development (all platforms) Test (all platforms) Production (all platforms) Can be installed on all platforms except HP-UX. Can manage any XI system (3.1 and later) LifeCycle Manager (Windows, AIX, Solaris, Linux) Subversion SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 55
Agenda 1. Introduction 2. SAP BusinessObjects LifeCycle Manager Overview 3. Other SAP BusinessObjects Tools 4. Partner tools 5. Best practices 6. Conclusion SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 56
LifeCycle Manager Primary tool for promotion Version Control XI 3.1 and greater Promotion: Transport content from like system to like system Typically Dev to Test to Production. Content is primarily document templates and metadata and schedules. Not document instances SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 57
Import Wizard For migration (For promotion until XI 3.1) Migration: Transport and transform content from previous version to newer version Content includes all previous object types SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 58
Federation For replication Replication: Transport content from like production system to like production system Content should go through a development life cycle and into production before it is replicated. Content includes document templates, metadata, schedules. Can include document instances. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 59
Comparison Summary LifeCycle Manager Promotion (3.1 and later) Templates and metadata Version control Import wizard Migration Promotion (until XI 3.1) Federation Replication Subset of content types SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 60
BIAR Engine Command Line Allows easy automation of import and export BIAR = Business Intelligence Archive Simple properties file contains configuration info CMS query (or multiple queries) allow for complete control of objects selected for import/export Sample call: java jar biarengine.jar <properties file> See SAP BusinessObjects XI 3.1: Enterprise Administrator s Guide, Chapter 16, BIAR Engine Command Line tool, for more usage information. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 61
Scripted Deployment 1. Create a BIAR (BI archive) file with LifeCycle Manager 2. Provide configuration information to BIAR engine command line in simple properties file 3. Automate deployment via batch file Scripted deployment: Allows for automated synchronization with other deployments (ETL, web code, etc) Guarantees repeatability Operations team does not have to learn another tool However, rollback is not enabled with this approach. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 62
Auto Archive via Batch File 1. Create CMS query that select objects for archiving. Examples: All instances created last week All instances within a certain folder All documents modified or added in the last day 2. Schedule batch file that calls the BIAR Engine command line on regular basis 3. Objects are exported to BIAR file and stored on disk (Due to performance constraints, this approach is not recommended for backing up an entire system.) SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 63
BIAR Engine API More powerful and flexible than the BI archive engine command line. But more code Allows properties of individual objects to be overridden: Universe connection information Query as a Web Service WSDL information Allows OEM partners to silently deploy SAP BusinessObjects Enterprise software and modify associated content based on user information provided at install time See online whitepaper Updating Infoobjects While Importing BIAR Files for more information. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 64
Agenda 1. Introduction 2. SAP BusinessObjects LifeCycle Manager Overview 3. Other SAP BusinessObjects Tools 4. Partner tools 5. Best practices 6. Conclusion SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 65
Universe Management Tool - Saama Visual difference comparison of universes 2 way comparison 3 way comparison Files in repository and local drives Cross-version comparison Merging Drag and drop Auto merge Flexible criteria for comparison and merging Report impact analysis Scan repository and local drives SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 66
Universe Visual Comparison Source universe Universe selected from Repository Target universe Changed objects selected for impact analysis Deleted object Reports impacted Modified object Object properties Export report list to Excel SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 67
Comparison and Merging Criteria Flexible criteria allows most important attributes to be compared. SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 68
Report Impact Analysis Universe selected from repository Changed objects selected for impact analysis Reports impacted Export report list to Microsoft Excel SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 69
Partner Tools Saama Universe Management Tool www.saama.com NOAD EQM www.noadbi.com Keyrus Version Manager www.keyrus.com Distributed in North America by InfoSol: www.infosol.com APOS Object Manager www.apos.com SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 70
Agenda 1. Introduction 2. SAP BusinessObjects LifeCycle Manager Overview 3. Other SAP BusinessObjects Tools 4. Partner tools 5. Best practices 6. Conclusion SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 71
SAP BusinessObjects Enterprise and IDs Every object has a unique identifier (CUID) CUIDs are globally unique within one system within any system CUIDs stay the same when object is promoted to a new system Strings - therefore less efficient to query for Object IDs are the other main ID used (SI_ID) 32-bit numbers Uniquely identify an InfoObject within a single CMS repository Efficient to use and query for Not globally unique Objects are assigned a new Object ID when migrated or promoted to a different system SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 72
Importance of Mirrored Environments All objects must have the same CUID in each environment CUIDs are the primary method of identifying relationships and dependencies* (*Not exclusively, but if you follow this rule you will be safe) If Dev and Test are not complete mirrors of production: Do a complete refresh from production Do not use one system for two environments Copying objects will create a new CUID and break the model SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 73
Best Practices Systems Implement a three-system deployment methodology. Ensure consistency in operating system and patch level between environments Freeze Test environment when testing patches and service packs If not possible, test patches and service packs in a distinct environment Leverage virtualization to: Keep costs down Build and maintain multiple environments efficiently SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 74
Best Practices Promotion Jobs Organize promotion jobs in a folder structure that mimics production folder structure Assign delegated admins as desired Use a consistent naming convention for promotion jobs Do not promote security if it hasn t changed Security typically changes less often than content Do not promote dependencies if they haven t changed. For example, universes change less often than reports If you need to roll back security changes, do a full rollback not partial to be safe Then, adjust job and re-promote Reuse or copy a job to ensure that all objects moved to test are then moved to production SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 75
Agenda 1. Introduction 2. SAP BusinessObjects LifeCycle Manager Overview 3. Other SAP BusinessObjects Tools 4. Partner tools 5. Best practices 6. Conclusion SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 76
Conclusion Create a robust life-cycle management process that leverages the principle of separate environments LifeCycle Manager is a new tool that allows for promotions to be reliable, automated, and repeatable LifeCycle Manager also provides a version control solution by embedding Subversion BIAR engine command line and API provide alternate solutions for automating deployments Universe Management Tool by Saama provides universe developers with visual compare and merge functionality SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 77
Questions? David Brockington Senior Product Manager, SAP Business Objects BI Platform Services David.Brockington@sap.com Submit feedback and enhancement requests for LifeCycle Manager at: http://lcm.uservoice.com SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 78
Thank you! SAP 2009 / PARTNER SUMMIT AMERICAS 2009 / Page 79