![Page 1: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/1.jpg)
Agile on huge banking mainframe legacy
systems. Is it possible?
Christian Bendix Kjær Hansen Test Manager
November 22, 2011
EuroSTAR 2011
![Page 2: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/2.jpg)
What is this presentation about?
Goal
• Inspire others working with mainframe to go agile
Provide insight on
• Our challenges when going Agile
• How we face these challenges
• Our key experiences
• How far are we on our Agile journey?
![Page 3: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/3.jpg)
Agenda
• Introduction
• Getting started with Agile
• Challenge 1 – Huge batch programs
• Challenge 2 – Legacy system
• Challenge 3 – Test automation
– Automated unit test
– System test in India
• Conclusion
![Page 4: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/4.jpg)
Christian B.K. Hansen
• Working experience
– Test practitioner for 7 years
– Test Manager in Danske Bank
– Test analyst/designer in IBM
• Test Certifications
– ISEB foundation and ISEB Practitioner (with distinction)
• Education
– MSc in Mathematics from Aarhus University
– Computer Science as Minor subject
![Page 5: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/5.jpg)
“One group, One core system, Multiple channels”
Channel Branches
Contact Centre
Internet Homepages
Finance Centres
ATMs
Product
Forex
Securities
Treasury
Cash Management
Cards
Currency
Fees
Payments
Customer output
Interests
Group Finance
Core
Organisation Accounts
Customer
Data Warehouse
Brand
Teller Cheque
CRM
Bookkeeping
Corporate e-Banking
Retail e-Banking
Loan
Markets Online
Telephone Banking
Trade Finance
Workflow
Asset Management
Customer Packages
Business procedures
IT Group Security
Customer Advisory Tools
Customer Portal
Asset Finance
Intranet Portal
Custody
Business Controlling e.g. Credit, Risk, GMI
& ERP/Axapta
Insurance & Pension
![Page 6: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/6.jpg)
About the project
• Card Group Invoice Stabilize and Consolidate
– Credit card invoices
– Mainframe, legacy and batch
– Costly to maintain and extend
• Stabilize and Consolidate
– Solving known issues
– Consolidate functionality
![Page 7: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/7.jpg)
Agenda
• Introduction
• Getting started with Agile
• Challenge 1 – Huge batch programs
• Challenge 2 – Legacy system
• Challenge 3 – Test automation
– Automated unit test
– System test in India
• Conclusion
![Page 8: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/8.jpg)
Getting started with Agile
• Scrum
– One month sprints – root causes and consolidation tasks
• Iterative
– Small corrections released
• Challenges
– Testing too time consuming
– Code corrections too time consuming
– No test automation tool support
• Team
– Dedicated and committed team
![Page 9: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/9.jpg)
Agile practices (from agilemanifesto.org)
• Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale
• Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done
• The best architectures, requirements, and designs emerge from self-organizing teams
• The most efficient and effective method of conveying information to and within a development team is face-to-face conversation
• At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly
![Page 10: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/10.jpg)
Agenda
• Introduction
• Getting started with Agile
• Challenge 1 – Huge batch programs
• Challenge 2 – Legacy system
• Challenge 3 – Test automation
– Automated unit test
– System test in India
• Conclusion
![Page 11: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/11.jpg)
Challenge 1 – Huge batch programs
• Challenge
– Testing is extremely time consuming
• Causes
– All functionality in one program
– Complex test data needed
– Shared test environment across projects
![Page 12: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/12.jpg)
Challenge 1 – Huge batch programs
• Solution
– Requirement to new system design with high testability
![Page 13: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/13.jpg)
Challenge 1 – Huge batch programs
• Agile principle
– Continuous attention to technical excellence and good design enhances agility
• Status
– Now: Any change tested in 1-2 days
– Future: Any change tested the same day
![Page 14: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/14.jpg)
Agenda
• Introduction
• Getting started with Agile
• Challenge 1 – Huge batch programs
• Challenge 2 – Legacy system
• Challenge 3 – Test automation
– Automated unit test
– System test in India
• Conclusion
![Page 15: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/15.jpg)
Challenge 2 – Legacy system
• Challenge:
– Code corrections difficult and time consuming
• Causes
– Lacking maintainability and extendibility
– Undocumented functionality
• Solution
– Requirement to system maintainability
– Refactoring
– System documentation
![Page 16: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/16.jpg)
Challenge 2 – Legacy system
• Agile principle
– Simplicity--the art of maximizing the amount of work not done--is essential
• Status
– Now: Main batch program completed
– Future: All functionality in the invoice flow
![Page 17: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/17.jpg)
Agenda
• Introduction
• Getting started with Agile
• Challenge 1 – Huge batch programs
• Challenge 2 – Legacy system
• Challenge 3 – Test automation
– Automated unit test
– System test in India
• Conclusion
![Page 18: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/18.jpg)
Challenge 3 – Test automation
• Challenge
– Status of the system not visible
• Causes
– Automated test not possible
• Solution
– Build our own unit test tool
![Page 19: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/19.jpg)
Automated unit test
• Unit test process - demo
Unit Test
Demo
![Page 20: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/20.jpg)
Service tester (in Eclipse™)
![Page 21: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/21.jpg)
Create test cases (in Microsoft Excel)
![Page 22: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/22.jpg)
Create unit test script
![Page 23: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/23.jpg)
Create unit test script
![Page 24: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/24.jpg)
Create unit test script
![Page 25: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/25.jpg)
Create unit test script
![Page 26: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/26.jpg)
Create unit test script
![Page 27: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/27.jpg)
Create unit test suite
![Page 28: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/28.jpg)
Execute unit test suite
![Page 29: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/29.jpg)
View unit test execution report
![Page 30: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/30.jpg)
Automated unit test
• Unit test process - demo
• Experiences
– Pilot, dedicated resource, resistance
– Improved test process, status on modules, beneficial
Unit Test
Demo
![Page 31: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/31.jpg)
Challenge 3 – Test automation
• Challenge
– Status of the system not visible
• Causes
– Automated test not possible
• Solution
– Build our own unit test tool
– Utilize internal offshore test center for system test
![Page 32: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/32.jpg)
System test in India
• Test Centre of Excellence
– Dedicated test specialist
– Follow sprints (not in team)
• System test process
– Automation in QTP of manual test cases
– Existing version = Test Oracle for expected results
• Experiences
– Daily status on the system can be obtained
– Frequent regression test on system level is possible
![Page 33: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/33.jpg)
Challenge 3 – Test automation
• Challenge
– Status of the system not visible
• Causes
– Automated test not possible
• Solution
– Build our own unit test tool
– Utilize internal offshore test center for system test
![Page 34: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/34.jpg)
Challenge 3 – Test automation
• Agile principle
– Working software is the primary measure of progress
• Status
– Now: Status on modules on request
– Now: Status on main batch program on request (daily)
– Future: Daily status on the entire invoice flow
![Page 35: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/35.jpg)
Agenda
• Introduction
• Getting started with Agile
• Challenge 1 – Huge batch programs
• Challenge 2 – Legacy system
• Challenge 3 – Test automation
– Automated unit test
– System test in India
• Discussion and conclusion
![Page 36: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/36.jpg)
Lessons learned
• Scrum supports a good start on agile
• Key learning
– Requirement to Testability
– Requirement to Maintainability
– Build own tool
– Benefits from design before implementing it
• It can be difficult – but it is not impossible!
![Page 37: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/37.jpg)
Agile or not?
• What does it take to be agile?
– Compliance with the Agile principles supporting the Agile manifesto
![Page 38: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/38.jpg)
Principles behind the Agile Manifesto • Our highest priority is to satisfy the customer through early and continuous delivery of
valuable software
• Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage
• Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale
• Business people and developers must work together daily throughout the project
• Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done
• The most efficient and effective method of conveying information to and within a development team is face-to-face conversation
• Working software is the primary measure of progress
• Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely
• Continuous attention to technical excellence and good design enhances agility
• Simplicity--the art of maximizing the amount of work not done--is essential
• The best architectures, requirements, and designs emerge from self-organizing teams
• At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly
![Page 39: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/39.jpg)
Agile or not?
• What does it take to be agile?
– Compliance with the Agile principles supporting the Agile manifesto
We are agile!
![Page 40: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/40.jpg)
Questions
![Page 41: Christian Bk Hansen - Agile on Huge Banking Mainframe Legacy Systems - EuroSTAR 2011](https://reader035.vdocument.in/reader035/viewer/2022081401/55a240ad1a28ab672d8b45b9/html5/thumbnails/41.jpg)
Conclusion
• “Did we managed to become agile or did we just made a huge improvement in our development process and in our test process in particular?”
• I think, we did both!
– Huge process improvements
– Started the agile journey