36
SAP Change & Release Management Wayne Kline / Release Manager TJ Wilkinson / Manager SAP Basis Team Perrigo Company April 2015

Change and Release Management_ASUG Chicago

  • Upload
    ndoro

  • View
    80

  • Download
    11

Embed Size (px)

DESCRIPTION

Change and Release Management. Perrigo’sapproach to change/release/transport management

Citation preview

Page 1: Change and Release Management_ASUG Chicago

SAP Change & Release ManagementWayne Kline / Release ManagerTJ Wilkinson / Manager SAP Basis TeamPerrigo Company

April 2015

Page 2: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

Global Headquarters Dublin, Ireland

US HeadquartersAllegan, Michigan

Sales > 4 Billion FY 2014

Low cost provider of quality consumer and pet products

www.perrigo.com

Page 3: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

Global IT and Development Staff (~70 FTE)Global Basis Staff (~7 FTE)115 SAP environments (ERP, BI, HCM, SCM, SRM, APO…)Three and four tier landscapes (D-{T}-Q-P) + SbxUtilize contractors for staff augmentation as needed200+ active changes in process + Integrations & upgradesTest, Quality and Sandbox Refreshed every 6 months

Perrigo Statistics

Page 4: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

1. Perrigo’s approach to change/release/transport management

2. Using standard SAP functionality (and a little custom ABAP) that you can begin deploying as soon as you get back to the office to manage SAP change.

3. All SAP Developers and Change Managers benefit from this presentation (Basis resources will be required to deploy some functions)

Presentation Overview

Page 5: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

1. Control Developmenta. Every Dev transport must be assigned to an approved changeb. Limit transport management authority in Developmentc. Every released transport moves to production

2. Minimize transports to productiona. Transport of Copiesb. Merge Transports

(if you don’t control development, you will need a tools to organize and manage transports and spend time and resources resolving confilcts)

Philosophy and Goals

Page 6: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

3. Enable Developersa. Four tier landscape (Dev-Test-QA-PRD)b. Automatic Import

- w/STMS Transport Parameter controls

4. Release Managementa. Allow adequate time for review and remediationb. Move together and test togetherc. Use Standard SAP Functionality

- SAP QA Approvals and Import All

Philosophy and Goals

Page 7: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

Every Transport Assigned a Change:All Changes approved in Change Management (non-SAP).All Transports list change control number in description.Option: http://scn.sap.com/community/abap/blog/2013/09/07/transport-tracking-made-easier-in-sap

Benefits:Easy to identify if transport is missing from change request.Monitor with SE03 Transport Organizer Tools (Find Requests)

Risks:Closed or incorrect number assigned. Use SAP program RDDIT076 to update description (after release) not reflected in buffer.

Where Used:In Development for all changes.

Control Development

Page 8: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

Transport Control:Development is not a Sandbox… Via SAP Security, limit the ability to Create and Release Workbench and CustomizingPre-assign tasks and resources to transports

Benefits:Easy for change owner to monitor activityReduces the number of transports per change

Risks:Requires PlanningObject could be “locked” until all other tasks are complete

Where Used:In Development for all changes

Control Development

Page 9: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

Transport Security Objects: (S_TRANSPRT)Sr. Perrigo Employee / Manager – create and assign allEveryone else – create Transport of Copy and release task only

What it looks like:

Transport Control

Page 10: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

How?SE09, Create, Tasks – Assign users (or add users from Transport Organizer)

Transport Control

Page 11: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

More Authority and Process Controls:Don’t allow transports to be deleted via SAP SecurityAll Released Transports must be moved to productionCancelled changes must be backed out (documented)

Benefits:Keep Development in sync with ProductionAvoid abandoned changes from moving to production with next change

Risks:Development is likely already out of sync with productionUse Version Management to restore previous

Where Used:In Development

Control Development

Page 12: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

Transport of Copies (TOC):Special Transport type to copy workbench and customizing transports to a target system without releasing the original transport.

Benefits:Do not populate the buffer of the follow on system = fewer transports to manage.Leaves original transport locks in place = reduces chance of overtakes.Works well in a four tier environment (Dev-Test-QA-PRD)Imports can be automated (see follow on slides).

Risks: Users in control of their test environment – can typically be fixed with another TOC.Dependent objects may be missed if not well organized.

Where used: Between Development and Test (quality) environment.

Statistic: Individual change controls used to contain 10’s of transports now contain 1 or 2.

Minimize Transports to Production

Page 13: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

How?SE09, Identify Task(s) you want to copy (modifiable transports)SE09, Create a Request (F6), TOC type

Transport of Copies

Page 14: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

How?Add Description and Target Client

Transport of Copies

Page 15: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

How? Select transport and Include objects (CTL + F11) and repeat for multiple transports.Then Release the TOC.

Transport of Copies

Page 16: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

Merge Transports:Combine multiple unreleased like (workbench or customizing) transports into one

Benefits:Fewer transports to promoteFaster for SAP to process (also sort and compress ahead of time)Permits flexibility for individual development and grouping/organization later

Risks:Less flexibility (once merged). (Don’t merge until ready for release)

Where Used:In Development for large projects

Statistic:Projects used to have 100’s of transports to Production now have 1’s and 10’s.

Minimize Transports to Production

Page 17: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

How?SE09, Identify like Transports, Position Cursor, Utilities/Reorganize/Merge Requests

Merge Transports

Page 18: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

How?

Merge Transports

Page 19: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

What does it look like?

Merge Transports

Page 20: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

Technical Object ReviewCompare Change control vs. transports – change properly defined?Review each transport and review objects and keys – match change description? (E070K)Table (structure) change requiring exclusive lock in production?Collision, overtake, orphan detection

– Custom ABAP solution (Google Search: SAP ZTCT for downloadable example)- Show all transports not moved to production that contain same objects

Benefits:Stable production release

Risks: Requires some technical understanding of SAP objects (structures, key values)Discipline and Lead time required

Where used: Before Import to Quality and Production

Release Management

Page 21: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

Orphans, Overtakes and Inadvertent changes:

From custom report below, we can see a transport for the same object (Z_BW_GET_ORDER_OVERRIDE) that never moved to production.

Must decide if transport was orphaned (left behind) and changed subsequently, valid and at risk of being overtaken, or started and cancelled, thus this change incorrectly will move to production with this transport if not reversed.

Release Management

Page 22: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

Orphans, Overtakes and Inadvertent changes.Active change? Coordinate promotion, retest.Cancelled Change? Version Compare with production.Left behind? Last change promoted to production? Verify removed from the buffer.Configuration? Compare “keys” to determine if same config updated.

If truly orphaned, update transport description (RDDIT076) so I don’t investigate again- DNT = Do not Transport

Release Management

Page 23: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

SCMP and SCUOStandard transactions for comparing tables and configuration between systemsEnglish descriptions of configuration objects

Benefits:Configuration compare by area, table or transportRestore development from other system (if SM30 view available)

Risks: Simple transaction to identify change impactCaution if restoring to development (SM30 view not available for all config by default)

Where used: Change review and approval to Quality

Release Management

Page 24: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

SCU0 Release Management

Page 25: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

Automatic ImportAutomatically import changes to an Test or Quality environment on a predetermined schedule – every hour, every 10 minutes…Note: In theory restricted to just TOCs via TP Parameters (k_import, t_import, w_import)

Benefits:Allows Basis resources to work on more valuable tasksTakes human intervention delay out of import process

Risks: Users in control of their destiny.

Where used: Between Development and Test (Quality) environment.

Note: Basis needs to configure Extended Transport Control and schedule jobs

Automation

Page 26: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

Import AllSAP’s intended transport import mechanismAll transports are imported in the buffer up to the “end mark”Requires Transport Strategy setting

Benefits:More efficient for SAP to importResolves Transport Release sequence issuesAutomatic import buffer clean up

Risks: May require some coordination with systems that require manual intervention between transports (like BI).

Where used: Import to Quality and Production

Automation

Page 27: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

QA ApprovalsSimple STMS configuration to allow single or multi-level transport approvals.TP Parameter handling_of_inactive_transports = SKIP required to allow unapproved transports to be skipped for Import All (see above).

Benefits:Non-Basis Transport Management.

Risks: Added to buffer in release sequence… but could be imported out of sequence if TP Parameter used. Otherwise, all transports need to be approved before end mark.

Where used: Between Test and Quality in four system landscapeBetween Quality and Production

Release Management

Page 28: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

http://help.sap.com/erp2005_ehp_04/helpdata/en/9c/a544c9c57111d2b438006094b9ea64/content.htm?frameset=/en/40/e42396853d11d3b48100609419f767/frameset.htm&current_toc=/en/b4/d0340a2d0f433cbeb69660e750d74b/plain.htm&node_id=243&show_children=false

Quality Approvals

How: Determine approval levels (1 or 2)Configure STMS – basically flip a switchAssign appropriate security to approversRelease Transport – cannot be imported until approvedTo approve: STMS_QA, F9 to select, Approve/RejectRelease recorded in the transport logRejected transports must be manually deleted(Note: Icons change slightly between SAP releases)

Page 29: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

Transport Management Tools:Set of tools for searching and displaying transportsTcode SE03

Benefits:Find transports with same objectDisplay all transports Global and user settings (SE10) –

display transport errors at logon; require documentation before transport release

Risks: Some configuration objects can appear in different objects (views)

Where used: Transport Verification to Quality

Release Management

Page 30: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

RDDIT076:SAP program for modifying released transports or tasks.

Benefits:Update short description after transport release to associate with a change

Risks: Does not update buffer description.

Where used: Change review and approval to Quality.

Note: Updates the last Changed Date and Action Log.

Release Management

Page 31: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

Good customer service: Delivering the right solution when promised vs. the wrong solution quicklyMonthly Release provides incentive and opportunity for business to testLess effort and impact to fix in Test than in Production

Change is simple… Deployment takes timeWho else is doing this?An uncontrolled development system will take months to “clean up”Example: Three changes (six transports) had 50 obsolete orphaned transports

Sell the benefits… Our developers like multiple tasks, TOC’s and Merge Transports - better visibility, fewer transports, ABAP Locks- Once cleaned up, process runs smoothly

Lessons Learned

Page 32: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

Configuration values are not copied to the transport until the transport is released.

User A – adds entry XUser B – changes entry XUser A – releases transport

Transport = User B changes

Did you know?

Page 33: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

There are user exits for Transport Management?

· Before you create a request· Before you export a request· After you export a request· After you import a request· After you change a request owner· When you set the template for the task documentation· When you choose the current CTS project

Did you know?

Page 34: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

Each Import goes through nine phases to import and activate?Once for each Preliminary Import or Once for Import All collectively.

1. Import Dictionary Objects2. Activate Dictionary Objects3. Distribution of Dictionary Objects4. Structure Conversion5. Import ABAP6. Main Import7. Import Application Defined objects8. Version Management9. Generation of ABAP programs and screens

10 single imports = 90 phases (once for each transport)One IMPORT ALL of 10 transports = 9 phases and reduces changes of import sequence issues

Did you know?

Page 35: Change and Release Management_ASUG Chicago

MEMBERSHIP [email protected]

Project Change Board Review via SCU0 – review of impacted objects by cross functional team

TP Parameter setting to Allow Automatic Import All of TOC only for three tier environments between Development and Quality

Solution Manager – CHARM? Issues - who owns Solution Manager, redundancy, document management?

Automatic Release Management error detection before transport release

Future