Agile on huge banking mainframe legacy systems. Is it possible?

Similar documents
Software Processes. Agile Methods

Agile Project Management with Scrum

Manifesto for Agile Software Development

Agile Overview. 30,000 perspective. Juha Salenius CSPO CSM PMI-ACP PMP SCGMIS Workshop January 23 rd, 2013

werteorientierte Unternehmenskultur

Agile Project Management By Mark C. Layton

26 May 2010 CQAA Lunch & Learn Paul I. Pazderski (CSM/CSP, OD-CM, CSQA) spcinc13@yahoo.com Cell: AGILE THROUGH SCRUM

Scaling Scrum. Colin Bird & Rachel Davies Scrum Gathering London conchango

Agile Beyond The Team 1

Agile Development with C#

Introduction to Agile Software Development. EECS 690 Agile Software Development

Processes in Software Development. Presented by Lars Yde, M.Sc., at Selected Topics in Software Development, DIKU spring semester 2008

USCIS/SPAS: Product Backlog Items and User Stories 4/16/2015. Dr. Patrick McConnell

What does it mean to be Agile. Marek Majchrzak, Andrzej Bednarz Wrocław,


Introduction to Agile Software Development

Agile Software Development in the Large

Comparing Scrum And CMMI

Agile QA s Revolutionary Impact on Project Management

ITSM Agile Intro Feb 5, 2015

Agile Software Development

Agile and ITIL And how they integrate. enterprise.bcs.org

History of Agile Methods

Ingegneria del Software Corso di Laurea in Informatica per il Management. Agile software development

Agile Development Overview

Gothenburg 2015 Jan Marek com CA Technologies Introducing Agile development methodologies to Session S601 mainframe development teams

Role of Agile Methodology in Software Development

AGILE BUSINESS INTELLIGENCE

This handbook is meant to be a quick-starter guide to Agile Project Management. It is meant for the following people:

Case Study on Critical Success Factors of Running Scrum *

Jukka Mannila KEY PERFORFORMANCE INDICATORS IN AGILE SOFTWARE DEVELOPMENT

What Does Large Mean? Copyright 2003 by N. Josuttis and J. Eckstein 3. Why is Large an Issue?

Governments information technology

Software Development with Agile Methods

Aristotle in an Agile World. By Ben Allen

Information Management for National Guard Agribusiness Development Teams: An Agile Development Case Study

How To Understand The Limitations Of An Agile Software Development

Development. Lecture 3

CS435: Introduction to Software Engineering! " Software Engineering: A Practitioner s Approach, 7/e " by Roger S. Pressman

LEAN AGILE POCKET GUIDE

Agile Processes and Distributed Projects: Dream or Nightmare?

Agile-Waterfall Hybrid Jessica LaGoy, MS, PMP

Creating a High Maturity Agile Implementation

Neglecting Agile Principles and Practices: A Case Study

Developing the Agile Mindset for Organiza7onal Agility. Shannon Ewan Managing

Agile Project Management

Agile Project Management Jim Highsmith. Chapter 1. The Agile Revolution

Agile Fundamentals, ROI and Engineering Best Practices. Rich Mironov Principal, Mironov Consulting

Waterfall to Agile. DFI Case Study By Nick Van, PMP

Digital Transformation of the Enterprise for SMAC: Can Scrum help?

Agile Execution for and Beyond IT

Continuous Integration: Improving Software Quality and Reducing Risk. Preetam Palwe Aftek Limited

The Business Case for Scrum

Whitepaper. Agile Methodology: An Airline Business Case YOUR SUCCESS IS OUR FOCUS. Published on: Jun-09 Author: Ramesh & Lakshmi Narasimhan

The Agility of Agile Methodology for Teaching and Learning Activities

SCEA 2010 EST06. Estimating Issues Associated with Agile. Bob Hunt. Galorath Incorporated

AGILE - QUICK GUIDE AGILE - PRIMER

Distributed Agile Development. Bapiraju Nandury Product Development Manager Bangalore Development Centre

Comparative Study of Agile Methods and Their Comparison with Heavyweight Methods in Indian Organizations

Bottlenecks in Agile Software Development Identified Using Theory of Constraints (TOC) Principles

Mitigating Risk with Agile Development. Rich Mironov CMO, Enthiosys

PMBOK? You Can Have Both! June 10, Presented by:

Who Doesn t Want to be Agile? By: Steve Dine President, Datasource Consulting, LLC 7/10/2008

Introduction to Agile Software Development Process. Software Development Life Cycles

Agile Software Development. Mohsen Afsharchi

Introduction to Agile and Scrum

Agile and PRINCE2 And how they integrate. enterprise.bcs.org

Agile Project Management: Adapting project behaviors to the software development environment

Water-Scrum-Fall Agile Reality for Large Organisations. By Manav Mehan Principal Agile consultant

Risikominimering I IKT-prosjekter - experiences from the Danish Government

Agile Projects 7. Agile Project Management 21

Testhouse Training Portfolio

COMP 354 Introduction to Software Engineering

MISYS BANKFUSION UNIVERSAL BANKING WELCOME TO THE FUTURE OF BANKING

Scrum: A disciplined approach to product quality and project success.

AGILE SOFTWARE DEVELOPMENT: INTRODUCTION, CURRENT STATUS & FUTURE Pekka Abrahamsson Jyväskylä

Agile Scrum Workshop

Adopting Agile Project Management - Corporate Culture Must Match (Apr 15)

A Practical Guide to implementing Agile QA process on Scrum Projects

Role of the Business Analyst in an Agile Project

Agile Project Management. What it is and what it isn t

Testing in Agile methodologies easier or more difficult?

Agile Requirements Generation Model: A Soft-structured Approach to Agile Requirements Engineering. Shvetha Soundararajan

Agile & Scrum: What are these methodologies and how will they impact QA/testing roles? Marina Gil Santamaria Summer 2007

Advanced Software Engineering Agile Software Engineering. Version 1.0

Agile Software Development in the Large

Challenges of Software Security in Agile Software Development

Improving Software Productivity with Agile Methodologies

Continuous delivery Release software on-demand, not on Red Alert

Waterfall vs. Agile Project Management

Quality Assurance in an Agile Environment

White Paper Security in Software Development Life Cycle

Transcription:

EuroSTAR 2011 Agile on huge banking mainframe legacy systems. Is it possible? Christian Bendix Kjær Hansen Test Manager November 22, 2011

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?

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

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

One group, One core system, Multiple channels Teller ATMs Markets Online CRM Customer Advisory Tools Corporate e-banking Branches Cash Management Retail e-banking Brand Channel Product Loan Finance Centres Treasury Contact Centre Asset Customer Management Packages Cheque Core Interests Securities Currency Payments IT Group Custody Customer Security Fees Group Forex Cards Customer Accounts Finance output Organisation Workflow Bookkeeping Data Trade Warehouse Finance Asset Finance Business procedures Business Controlling e.g. Credit, Risk, GMI & ERP/Axapta Insurance & Pension Customer Portal Intranet Portal Internet Homepages Telephone Banking

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

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

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

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

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

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

Challenge 1 Huge batch programs Solution Requirement to new system design with high testability

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

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

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

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

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

Challenge 3 Test automation Challenge Status of the system not visible Causes Automated test not possible Solution Build our own unit test tool

Automated unit test Unit test process - demo Unit Test Demo

Service tester (in Eclipse )

Create test cases (in Microsoft Excel)

Create unit test script

Create unit test script

Create unit test script

Create unit test script

Create unit test script

Create unit test suite

Execute unit test suite

View unit test execution report

Automated unit test Unit test process - demo Experiences Unit Test Demo Pilot, dedicated resource, resistance Improved test process, status on modules, beneficial

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

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

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

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

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

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!

Agile or not? What does it take to be agile? Compliance with the Agile principles supporting the Agile manifesto

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

Agile or not? What does it take to be agile? Compliance with the Agile principles supporting the Agile manifesto We are agile!

Questions

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