Controlling change in an agile SAP development environment
Sep 19, 2014
Controlling change in an agile SAP development
environment
Copyright © Revelation Software Concepts All Rights Reserved [2]
Introductions
Host:
• Stef Pinto
Speakers:
• Rick Porter (VP Business Development)
Copyright © Revelation Software Concepts All Rights Reserved [3]
Controlling change in an agile SAP
development environment
Overview and introductions (5 min)
Seminar (40 min)
• What is agile and where is it used?
• Agile and change control
• Controlling agile change with Rev-Trac
Q&A (10 min)
• Please feel quite free to enter questions into Q&A
area at any time during the seminar
Copyright © Revelation Software Concepts All Rights Reserved [4]
Revelation Software Concepts
We specialize in Simplifying SAP Change Control
In doing so reduce the risks and lower the costs
associated with delivering support and project
changes to SAP systems.
Developers of:
Market leading SAP change control technology
Copyright © Revelation Software Concepts All Rights Reserved [5]
Controlling change in an agile SAP
development environment
Overview and introductions
What is agile and where is it used?
Agile and change control
Controlling agile change with Rev-Trac
Q&A
Copyright © Revelation Software Concepts All Rights Reserved [6]
What is agile and where is it used?
Copyright © Revelation Software Concepts All Rights Reserved [7]
Agile development is about
working software made available
quicker
What is agile and where is it used?
Copyright © Revelation Software Concepts All Rights Reserved [8]
In May this year – SAP reported that it had
succeeded in reducing its innovation cycles
from 15 months to between six and nine
months using agile development methods
What is agile and where is it used?
Copyright © Revelation Software Concepts All Rights Reserved [9]
Waterfall method
• Classic linear approach
• One phase follows another with no
going back
• Relies on documentation and rigid
specifications
• Structured > easily measured >
easily managed
What is agile and where is it used?
Requirements
Design
Build
Test
Deploy
Maintain
Copyright © Revelation Software Concepts All Rights Reserved [10]
Advantages of the waterfall
method
• Design errors are captured before
any software is written
• Excellent technical documentation is
part of the deliverables
• Very structured and it is easier to
measure progress
• The total cost of the project can be
accurately estimated
• Testing is easier
What is agile and where is it used?
Requirements
Design
Build
Test
Deploy
Maintain
Copyright © Revelation Software Concepts All Rights Reserved [11]
What is agile and where is it used?
Copyright © Revelation Software Concepts All Rights Reserved [12]
Manifesto for agile development
Less reliance upon predefined documentation and
more reliance on iteration and collaboration
What is agile and where is it used?
Agile Waterfall
Responding to change Following a plan
Individuals and interaction Processes and tools
Working software Comprehensive documentation
Customer collaboration Contract negotiation
Copyright © Revelation Software Concepts All Rights Reserved [13]
What is agile and where is it used?
Agile model
• Smaller units of work over relative
short time periods
• Iterative and collaborative
• Requirements can change as needs
become clearer
Copyright © Revelation Software Concepts All Rights Reserved [14]
Extreme Programming (XP)
Test Driven Development (TDD)
Scrum
Lean Development
Crystal
Dynamic Systems Development Method (DSDM)
Feature Driven Development (FDD)
Agile Modelling
Adaptive Software Development (ASD)
Agile development methods
Copyright © Revelation Software Concepts All Rights Reserved [15]
Features / requirements in priority order
Delivered in short bursts or 30 day iterations called
sprints
Sprint contains features deliverable within the time
frame
Agile development methods: Scrum
Copyright © Revelation Software Concepts All Rights Reserved [16]
Agile development methods: Scrum
Scrum process
Release/Phase Sprints
Requirement 1
Requirement 2
Requirement n
Sprint 1
Sprint n
Requirement 2
DEV QAS PRD
Build / Test / Deploy Deliver
Copyright © Revelation Software Concepts All Rights Reserved [17]
Agile development methods: Scrum
Copyright © Revelation Software Concepts All Rights Reserved [18]
Controlling change in an agile SAP
development environment
Overview and introductions
What is agile and where is it used?
Agile and change control
Controlling Agile change with Rev-Trac
Q&A
Copyright © Revelation Software Concepts All Rights Reserved [19]
Agile and change control
Change control
Change request Transport deployment
Notification workflow Transport sequencing
Approval workflow Target system selection
Process selection Object collision protection
Record keeping / audit trail Retrofit processing
Help / Service Desk referencing Transport dependency management
Process enforcement (ITIL or Other) Failure alerting
Process Control Technical Control
Costs and Risks = Volume x Complexity x Control
+
Copyright © Revelation Software Concepts All Rights Reserved [20]
Status steps / approval process
• What status steps will each requirement / feature of each
Sprint go through?
• Development / testing / impact analysis
Management
• Who will sign off each step?
• Will this be the same for each requirement?
• Who will be sent what workflow messages when?
Iteration
• How will requirement changes be recorded?
• How will the iterations be handled?
Documentation
• What documentation is required?
Agile and change control
Copyright © Revelation Software Concepts All Rights Reserved [21]
Process control requirements
Agile and change control
Phase Element Status / Approval Steps
Planning Phase Requirements planning 1. Requirements approved
Sprint Phase
Development 2. Approved for development
3. Development reviewed
4. Development complete
5. Development tested
6. Development testing approved
7. Development finalised
8. Development documented
Post Sprint Phase Testing 9. Approved for integration testing
10. Integration testing completed
11. Integration testing approved
Implementation 12. Development approved for implementation
13. Development implemented
14. Development complete
Copyright © Revelation Software Concepts All Rights Reserved [22]
Standard SAP change control challenges
• Managing parallel development
• Managing overtaking and / or overwriting
• Managing dependencies within and across solutions
• Managing transport sequencing
• Managing iterations
Agile and change control
Copyright © Revelation Software Concepts All Rights Reserved [23]
Single DEV system / single SAP solution
• Parallel development risks
• Overtaking and / or overwriting risks
• Transport sequencing
Agile development and change control
DEV QAS PRD
Sprint 1
Sprint 2
Sprint 3
Maintenance
Sprint 1
Sprint 2
Sprint 1
Copyright © Revelation Software Concepts All Rights Reserved [24]
Single DEV system / multiple SAP solutions
• Parallel development risks
• Overtaking and / or overwriting risks
• Controlling dependencies across landscapes and
technologies
Agile development and change control
DEV QAS PRD Sprint 1
Sprint 2
Sprint 3
DBW QBW PBW
DEP QAP PRP
Maintenance
Copyright © Revelation Software Concepts All Rights Reserved [25]
Agile development and change control
DEV QAS PRD
Sprint 1
Sprint 2
Sprint 3
Maintenance
DV1 QA1
Parallel DEV system
• Retrofitting maintenance changes into DV1
• ‘Back-flushing’ Sprint changes into DEV and QAS
Sprint 1 Sprint 1
Sprint 2
Copyright © Revelation Software Concepts All Rights Reserved [26]
Controlling change in an agile SAP
development environment
Overview and introductions
What is agile and where is it used?
Agile and change control
Controlling agile change with Rev-Trac
Q&A
Copyright © Revelation Software Concepts All Rights Reserved [27]
Controlling agile change with Rev-Trac
Achieving full control through repeatable processes
TMS / CTS (transports, objects, tables)
Process
control
Technical
control
Copyright © Revelation Software Concepts All Rights Reserved [28]
Controlling agile change with Rev-Trac
Change control automation benefits:
• Process enforcement
• Accurate transport sequencing
• Overtake and overwrite prevention
• Transport dependency management
• Cross team communication
• Flexible process configuration (traditional plus agile process)
• Audit ready information
• Removal of manual tasks
• Reduction of human error
Copyright © Revelation Software Concepts All Rights Reserved [29]
Rev-Trac overview
Leading SAP change control technology
• Powerful, highly configurable, change control solution for
SAP change request and transport management
• Mechanizes or Industrializes SAP change control through
automation
• Manages single ABAP or dual ABAP/Java stack SAP®
solutions. (CTS, CTS+)
• Enforce any combination of change request, approval, and
migration processes
• SAP certified ABAP add-on for SAP Basis 4.6, 640 and
now NetWeaver 7.0
Rev-Trac lowers the costs and reduces the risks of
managing agile developed SAP changes
Copyright © Revelation Software Concepts All Rights Reserved [30]
Agile change and Rev-Trac
Organizing the work: Process control
• Rev-Trac request system
• Rev-Trac project and work type concept
• Rev-Trac master / child request process
• Rev-Trac enforcement
Controlling the developments: Technical control
• Transport deployment automation
• Overtake and Overwrite Protection System (OOPS)
• Multiple source transport management
• ALM integration
Copyright © Revelation Software Concepts All Rights Reserved [31]
Agile change and Rev-Trac
The process
• A ‘Project’ or release is created
• The requirements to be delivered are listed
• Requirements are collected into deliverable units of work
• Sprints are created for each unit of work
• Rev-Trac Master Requests are created for each Sprint
• OR
• A single Rev-Trac request is created for each requirement
within the Sprint
Copyright © Revelation Software Concepts All Rights Reserved [32]
Screen shot of a Rev-Trac request
Rev-Trac change request
Requirements
descriptor
‘Project’
assignment
Sprint’
assignment
‘Sprint’ delivery
date
Copyright © Revelation Software Concepts All Rights Reserved [33]
Create one request per Sprint requirement
OR
Create a master request per Sprint and child
requests for each requirement
Process control: Master / child request
system
Rev-Trac ‘Master’ Request (Sprint 1)
Rev-Trac ‘Child’ (Requirement 1)
Rev-Trac ‘Child’ (Requirement n)
TX1
TX2
TX3
TX2
TX1
Copyright © Revelation Software Concepts All Rights Reserved [34]
Every transport must be related (attached) to a
Rev-Trac Change Request
Rev-Trac change detection
Rev-Trac captures every change every time providing
total change control
DEV QAS PRD
No Rev-Trac request … ?
Then no change is
allowed.
Transport
creation
Rev-Trac
Request
Copyright © Revelation Software Concepts All Rights Reserved [35]
Once request is completed Rev-Trac enforces a
predetermined approval process and workflow...
Rev-Trac process enforcement
DEV QAS PRD
Transport
creation
Rev-Trac
Request
The correct disciplines are assured for every sprint
Transport
Directory
Not complying with the
process...?
Then the change will not
progress!
Copyright © Revelation Software Concepts All Rights Reserved [36]
Each request is assigned to a ‘Project’ and ‘Work
type’
This combination will evoke a predetermined change
control process enforcing both the approvals and
rules associated
Rev-Trac process enforcement
Status / Approval Steps
1. Requirements approved
2. Approved for development
3. Development reviewed
4. Development complete
5. Development tested
6. Development testing approved
7. Development finalised
8. Development documented
9. Approved for integration testing
10. Integration testing completed
11. Integration testing approved
12. Development approved for implementation
13. Development implemented
14. Development complete
Copyright © Revelation Software Concepts All Rights Reserved [37]
All and any change control documentation is
attached to the Rev-Trac request
Additional forms and form fields are customisable
Completion rules can apply – documents / fields
Rev-Trac documentation enforcement
DEV QAS PRD
Rev-Trac
Request
Required documentation
not in place...?
Then the change will not
progress!
Copyright © Revelation Software Concepts All Rights Reserved [38]
Keep the work flowing with highly configurable
automated workflow...
Rev-Trac automated workflow
You determine who
needs to know what and
when…
and then Rev-Trac keeps
them informed IS manager
Basis team User Team leader
Project manager
DEV QAS PRD
Rev-Trac
Request
Everyone is kept in the loop – the work continuously flows
Copyright © Revelation Software Concepts All Rights Reserved [39]
Safely auto-migrate transports from any system to
any system/client upon electronic approval...
Rev-Trac transport deployment automation
A conflict, overtake or
overwrite?
Transport is not migrated!
Massive opportunity for human error is totally eliminated
DEV QAS PRD
Transport
creation
Rev-Trac
Request
Transport
Directory
Copyright © Revelation Software Concepts All Rights Reserved [40]
Eliminate production incidents due to sequencing
errors or overtake and/or overwrite errors...
Rev-Trac safety
Preventing parallel development and overtaking and
overwriting accidents
DEV QAS
Version 1.1
Version 1.2
Version 1.1
Version 1.2
Version 1.1
Version 1.2
PRD
1.1
1.1
1.2
1.1
1.2
Level 1
Locking
Level 2
Overtaking
Level 3
Overwriting
OOPS
1.2
1.1
1.2
Copyright © Revelation Software Concepts All Rights Reserved [41]
Automatic propagation of groups of transports to
ensure synchronicity - from any group of source
systems to any group of target systems/clients
Rev-Trac automated quality assurance
QAS PRD
ECC
TX1 [ABAP]
BI
TX2 [Java]
TX3 [ABAP]
Portal (EP)
TX4 [Java]
TX1 [ABAP]
TX4 [Java]
TX2 [ABAP]
TX3 [Java]
ECC
TX1 [ABAP]
BI
TX2 [Java]
TX3 [ABAP]
Portal (EP)
TX4 [Java]
Rev-Trac
Request
Copyright © Revelation Software Concepts All Rights Reserved [42]
Automated retrofit and N and N+1 transport
management
Complex SAP Landscape Support
Significant human effort and error potential is eliminated
DEV QAS PRD
Rev-Trac
Request
Transport
Directory
DV1 QA1
Rev-Trac
Request
OOPS
Extended Locking OOPS
Request
Clone
Auto retrofit
Copyright © Revelation Software Concepts All Rights Reserved [43]
SAP Third Party ALM Integration
A single line from requirement to SAP code via Rev-Trac
QAS PRD
Change
Request Approved Reviewed Closed
Rev-Trac
Request Rev-Trac
Request
DEV
Build Test Deploy
Requirements
and/or
Testing
Impact
Analysis
Updated Updated
Copyright © Revelation Software Concepts All Rights Reserved [44]
Agile software development stresses…
• rapid iterations,
• small and frequent releases, and
• evolving requirements facilitated by direct user
involvement in the development process.
Rev-Trac provides a framework to automate and
control mundane and repetitive development tasks,
and enforce process.
Rev-Trac is methodology neutral and can be applied
equally well to agile as well as more traditional SAP
development processes
Agile development and Rev-Trac
Rev-Trac: an ideal solution for managing agile
changes
Copyright © Revelation Software Concepts All Rights Reserved [45]
Q&A
Please put questions into Q&A area – they will be
answered as fully as time allows.
www.xrsc.com
Reference: AGILE: IMPLEMENTING SAP STEP BY STEP
http://www.sap.com/netherlands/services/consulting/pdf/Whitepaper_Agile_ENG.pdf
Q&A
Reducing the risks and lowering the costs of
delivering agile SAP solution changes