Lean AMS

Lean/Agile Myth #34
Lean/Agile Myth #34


• Lean and Agile Methodologies are only applicable for
  greenfield opportunities
   - Not applicable for brownfield
   - Not applicable for Package Integration (Thursday @ 9:00 AM)
   - Not applicable for Application Maintenance Services
Agenda


• What are Application Maintenance Services?
• Application Maintenance Services Key Components
• Why are Application Maintenance Services an Ideal test
  bed for Lean?
• Key Components of Lean AMS Services
• Questions
• What are Application Maintenance Services?
Application Maintenance Services


• Application Maintenance Services are the services that
  are used to support the evolution of a system between
  the initial development of the system and the de-
  commissioning.
• This includes:
   -   Defect Fixing
   -   Enhancements
   -   Release Planning and execution
   -   Project and Defect Management
• Application Maintenance Services Key Components
Application Maintenance Services
Components


                               Business Priorization and
    Work Ticket Queue
                                    Business Value


                         Project
                     Management and
                        Reporting



      Support Team                Release Planning
Work Ticket Queue


• At the heart of Application Maintenance Services is a
  queue or list of all the defects and enhancements that
  have been reported and requested.
• This list is usually kept in true defect systems but can
  also be kept in Sharepoint Lists or Excel Spreadsheets
Business Priorization and Business Value


• Another key component is the active involvement of the
  business stakeholders to priorize all of the work tickets
• In addition, the business is also heavily involved in
  designing and determining the composition of the
  releases
• Usually the priorization is done at the time of reporting of
  the defect, and then validated on a recurring basis
• There is also the additional focus on business value for
  each and every ticket. There is limited opportunity to
  ‘gold plate’ solutions.
Release Planning


• Release are planned in Application Maintenance
  Services in a very iterative manner
   - Items are reviewed with the business to determine the items
     which will return the most value
   - This is reviewed and a schedule is created based on the
     capacity of the support team
   - The release size is a negotiation to maximize efficiency and time
     to market
   - Plan to schedule recurring releases to provide
     recurring/predictable business value
Support Team


• Application Maintenance Services as usually supported
  by a semi-permanent team
• This team includes resources to resolve work tickets
  from start to finish. This includes:
   -   Project Management
   -   Analysis
   -   Development
   -   Testing
   -   Implementation
Project Management and Reporting


• Application Maintenance Services Project Management
  and Reporting are typically satisfied by the following
  processes:
   - Textual Status Reporting
   - Weekly team meetings
   - Work Ticket Reporting
• Why are Application Maintenance Services an Ideal test
  bed for Lean?
Lean Principles Refresher


• Before we review why Application Maintenance Services
  are an ideal test bed for Lean, let’s do a Lean Principles
  Refresher
Lean Software Development


• Lean Software development is a style of software
  development that emphasizes customer satisfaction
  through continuous delivery of functional software. In
  contrast to traditional software development methods,
  lean developers liaise continuously with business clients.
• Their objective is to deliver working software as
  frequently as every two weeks during a project, and
  welcome changes to the requirements in response to
  evolving business needs.
Lean Software Development


• The most crucial aspect of Lean is the execution of the
  project in iterations and quick feedback loops possible
  because of these iterations. It is essential to note that
  these iterations to not just apply to construction, they
  also apply to the following tasks:
   -   Project Management and Planning
   -   Analysis
   -   Technical Design
   -   Testing
   -   Deployment
Lean Software Development


• Iteration planning is ‘the’ key planning initiative
   - Iterations need to be planned in conjunction with the client to
     accomplish the following:
       •   Deliver functionality to define the cadence and tempo of the project
       •   Deliver functionality to deliver real value to the client
       •   Deliver functionality to reduce and minimize risk for the entire project
       •   Lessons learned from one iteration must feed into subsequent iterations so
           that we don’t execute the project in iterations with similar results, but that we
           execute the project in iterations with better results.
   - We execute better, smarter, and quicker
Lean Software Development Principles


• Eliminate Waste
   -   The three biggest wastes in software development are:
   -   Extra Features
   -   Churn
   -   Crossing Boundaries

• Build Quality In
   -   If you routinely find defects in your verification process, your process is defective.
   -   Mistake-Proof Code with Test-Driven Development
   -   Stop Building Legacy Code
   -   The Big Bang is Obsolete
Lean Software Development Principles


• Create Knowledge
  -   Planning is useful. Learning is essential.
  -   Use the Scientific Method
  -   Standards Exist to be Challenged and Improved
  -   Predictable Performance is Driven by Feedback

• Defer Commitment
  -   Abolish the idea that it is a good idea to start development with a complete
      specification.
  -   Break Dependencies
  -   Maintain Options
  -   Schedule Irreversible Decisions at the Last Responsible Moment
Lean Software Development Principles


• Deliver Fast
   -   Lists and queues are buffers between organizations that simply slow things
       down.
   -    Rapid Delivery, High Quality, and Low Cost are Fully Compatible
   -    Queuing Theory Applies to Development, not Just Servers
   -    Limit Work to Capacity
• Respect People
   -   Engaged, thinking people provide the most sustainable competitive advantage.
   -   Teams Thrive on Pride, Commitment, Trust, and Applause
   -   Provide Effective Leadership
   -   Respect Partners
• Optimize the Whole
   -   Brilliant products emerge from a unique combination of opportunity and
       technology.
   -   Focus on the Entire Value Stream
   -   Deliver a Complete Product
   -   Measure UP
Lean Mandatory Requirements


• Iteration length
   -   Maximum Iteration length of 1 month
        • Day 1 planning
        • No changes after Day 1
        • Day 30 – Demo and installation

• Vision must be created before iterations start
   -   Technical (proof of concepts, architecture and vision)
   -   Business (storyboard, requirements document at least 20% complete)
   -   Delay decisions as long as possible. But make architectural or other decisions
       early if they are required.

• Daily progress meetings (15 minutes maximum)
   -   3 questions
   -   What have you worked on since last meeting
   -   What are you planning to work on next?
   -   Do you have any issues you require assistance on?
Lean Mandatory Requirements


• Test driven development
   -   Function specification/test case combined if it makes sense.
   -   Developer also writes the test cases.
   -   Test driven development where it makes sense. This approach may apply more
       to client functionality than batch or nightly processes.

• Requires full access to business users or stakeholders.
  (Preferably on site)
Lean Mandatory Requirements


• Frequent Builds
   -   Build at least weekly internally
   -   Build at least monthly for customer deployment
   -   It is acceptable that the first deployment to the client may not occur until
       Iteration2.

• Sub-deliverables/task size about 1 week maximum (if
  possible)
• Visual Project Management
   -   This is done with a combination of providing the project plan and tasks on
       SharePoint or other visual means
• Why are Application Maintenance Services an Ideal test
  bed for Lean?
Lean Application Maintenance Services
Components

Work Ticket Queue           Business Priorization
• Backlog                   • Frequent Stakeholder Involvement
                            • Limited ‘Gold Plating’




                        Project
                    Management and
                       Reporting

Support Team                Release Planning
• Velocity                  • Deliver in Iterations
                            • Deliver continuous value
Project Management and Reporting


• But where does that leave us with Project Management
  and Reporting
• This is one of the large areas that sometimes is not done
  in a Lean Fashion
• There are several simple enhancements that can be
  made to manage AMS in a Lean Fashion
• One of the biggest issues in AMS Project Management is
  providing the visibility into the progress and status.
Daily Standups


• Implement daily 15 minute stand-ups
   - What did you do yesterday
   - What are you planning to do today
   - Do you have any issues?
Visual Project Management


• Visual Status Reporting
   -   Graphical Status Reporting
   -   Ticket Board – Literally
   -   Service Level Dashboard
   -   Service Level Trend Dashboard
Graphical Status Reporting


50


45


40

                                 Number of Tickets resolved last week
35

                                 Number of New Tickets since the last
30                               status report
                                 Number of Tickets scheduled to be
25                               resolved last week that were not resolved
                                 Number of Tickets scheduled to be worked
                                 on this week
20
                                 Number of Tickets scheduled to be
                                 resolved this week
15
                                 Number of Tickets not yet started

10


 5


 0
     1   2   3    4    5     6
Ticket Board

       Work Ticket Status Board

          Resource    Triaged     Backlog   Analysis   Construction   Testing   Complete   Issue



          Manager




          Business
           Analyst
             1

          Business
           Analyst
             2


            Java
          Developer


           System
            User
           Analyst


           Vendor
Service Level Dashboard



  Severity               Response       Workaround   Final Resolution
  Severity 1: Critical
                                    ●         ■               ●
  Severity 2: High
                                    ■         ■               ♦
  Severity 3:
  Moderate                          ■         ■               ■
  Severity 4: Low
                                    ♦         ♦               ●
Service Level Trend Dashboard



  1

0.9

 0.8

 0.7

 0.6                                                                                     severity 1
                                                                                         severity 2
 0.5
                                                                                         severity 3
 0.4
                                                                                         severity 4
  0.3                                                                                    SLA

  0.2
                                                                                 SLA
  0.1                                                                       severity 4
       0                                                                 severity 3
           january                                                    severity 2
                     february
                                march
                                        april                       severity 1
                                                may
                                                      june
                                                             july
Conclusion


• Application Maintenance Services are an ideal area to
  try Agile or Lean processes to see how they will work in
  your corporation
• The components of AMS lend themselves easily to
  iterative development with high stakeholder involvement
• The semi-permanent nature of the team also allows for
  the establishment of team ‘velocity’
• The work ticket queue is the product backlog we hear
  discussed frequently in Agile circles
Background


• The information for this presentation has been based on
  Application Maintenance Services that Protegra has
  delivered for:
   - Multiple Government departments
   - Multiple Financial institutions
   - Multiple Insurance companies


• Protegra currently provides AMS services for 7
  corporations.
Questions?

Sdec10 lean AMS

  • 1.
  • 2.
    Lean/Agile Myth #34 •Lean and Agile Methodologies are only applicable for greenfield opportunities - Not applicable for brownfield - Not applicable for Package Integration (Thursday @ 9:00 AM) - Not applicable for Application Maintenance Services
  • 3.
    Agenda • What areApplication Maintenance Services? • Application Maintenance Services Key Components • Why are Application Maintenance Services an Ideal test bed for Lean? • Key Components of Lean AMS Services • Questions
  • 4.
    • What areApplication Maintenance Services?
  • 5.
    Application Maintenance Services •Application Maintenance Services are the services that are used to support the evolution of a system between the initial development of the system and the de- commissioning. • This includes: - Defect Fixing - Enhancements - Release Planning and execution - Project and Defect Management
  • 6.
    • Application MaintenanceServices Key Components
  • 7.
    Application Maintenance Services Components Business Priorization and Work Ticket Queue Business Value Project Management and Reporting Support Team Release Planning
  • 8.
    Work Ticket Queue •At the heart of Application Maintenance Services is a queue or list of all the defects and enhancements that have been reported and requested. • This list is usually kept in true defect systems but can also be kept in Sharepoint Lists or Excel Spreadsheets
  • 9.
    Business Priorization andBusiness Value • Another key component is the active involvement of the business stakeholders to priorize all of the work tickets • In addition, the business is also heavily involved in designing and determining the composition of the releases • Usually the priorization is done at the time of reporting of the defect, and then validated on a recurring basis • There is also the additional focus on business value for each and every ticket. There is limited opportunity to ‘gold plate’ solutions.
  • 10.
    Release Planning • Releaseare planned in Application Maintenance Services in a very iterative manner - Items are reviewed with the business to determine the items which will return the most value - This is reviewed and a schedule is created based on the capacity of the support team - The release size is a negotiation to maximize efficiency and time to market - Plan to schedule recurring releases to provide recurring/predictable business value
  • 11.
    Support Team • ApplicationMaintenance Services as usually supported by a semi-permanent team • This team includes resources to resolve work tickets from start to finish. This includes: - Project Management - Analysis - Development - Testing - Implementation
  • 12.
    Project Management andReporting • Application Maintenance Services Project Management and Reporting are typically satisfied by the following processes: - Textual Status Reporting - Weekly team meetings - Work Ticket Reporting
  • 13.
    • Why areApplication Maintenance Services an Ideal test bed for Lean?
  • 14.
    Lean Principles Refresher •Before we review why Application Maintenance Services are an ideal test bed for Lean, let’s do a Lean Principles Refresher
  • 15.
    Lean Software Development •Lean Software development is a style of software development that emphasizes customer satisfaction through continuous delivery of functional software. In contrast to traditional software development methods, lean developers liaise continuously with business clients. • Their objective is to deliver working software as frequently as every two weeks during a project, and welcome changes to the requirements in response to evolving business needs.
  • 16.
    Lean Software Development •The most crucial aspect of Lean is the execution of the project in iterations and quick feedback loops possible because of these iterations. It is essential to note that these iterations to not just apply to construction, they also apply to the following tasks: - Project Management and Planning - Analysis - Technical Design - Testing - Deployment
  • 17.
    Lean Software Development •Iteration planning is ‘the’ key planning initiative - Iterations need to be planned in conjunction with the client to accomplish the following: • Deliver functionality to define the cadence and tempo of the project • Deliver functionality to deliver real value to the client • Deliver functionality to reduce and minimize risk for the entire project • Lessons learned from one iteration must feed into subsequent iterations so that we don’t execute the project in iterations with similar results, but that we execute the project in iterations with better results. - We execute better, smarter, and quicker
  • 18.
    Lean Software DevelopmentPrinciples • Eliminate Waste - The three biggest wastes in software development are: - Extra Features - Churn - Crossing Boundaries • Build Quality In - If you routinely find defects in your verification process, your process is defective. - Mistake-Proof Code with Test-Driven Development - Stop Building Legacy Code - The Big Bang is Obsolete
  • 19.
    Lean Software DevelopmentPrinciples • Create Knowledge - Planning is useful. Learning is essential. - Use the Scientific Method - Standards Exist to be Challenged and Improved - Predictable Performance is Driven by Feedback • Defer Commitment - Abolish the idea that it is a good idea to start development with a complete specification. - Break Dependencies - Maintain Options - Schedule Irreversible Decisions at the Last Responsible Moment
  • 20.
    Lean Software DevelopmentPrinciples • Deliver Fast - Lists and queues are buffers between organizations that simply slow things down. - Rapid Delivery, High Quality, and Low Cost are Fully Compatible - Queuing Theory Applies to Development, not Just Servers - Limit Work to Capacity • Respect People - Engaged, thinking people provide the most sustainable competitive advantage. - Teams Thrive on Pride, Commitment, Trust, and Applause - Provide Effective Leadership - Respect Partners • Optimize the Whole - Brilliant products emerge from a unique combination of opportunity and technology. - Focus on the Entire Value Stream - Deliver a Complete Product - Measure UP
  • 21.
    Lean Mandatory Requirements •Iteration length - Maximum Iteration length of 1 month • Day 1 planning • No changes after Day 1 • Day 30 – Demo and installation • Vision must be created before iterations start - Technical (proof of concepts, architecture and vision) - Business (storyboard, requirements document at least 20% complete) - Delay decisions as long as possible. But make architectural or other decisions early if they are required. • Daily progress meetings (15 minutes maximum) - 3 questions - What have you worked on since last meeting - What are you planning to work on next? - Do you have any issues you require assistance on?
  • 22.
    Lean Mandatory Requirements •Test driven development - Function specification/test case combined if it makes sense. - Developer also writes the test cases. - Test driven development where it makes sense. This approach may apply more to client functionality than batch or nightly processes. • Requires full access to business users or stakeholders. (Preferably on site)
  • 23.
    Lean Mandatory Requirements •Frequent Builds - Build at least weekly internally - Build at least monthly for customer deployment - It is acceptable that the first deployment to the client may not occur until Iteration2. • Sub-deliverables/task size about 1 week maximum (if possible) • Visual Project Management - This is done with a combination of providing the project plan and tasks on SharePoint or other visual means
  • 24.
    • Why areApplication Maintenance Services an Ideal test bed for Lean?
  • 25.
    Lean Application MaintenanceServices Components Work Ticket Queue Business Priorization • Backlog • Frequent Stakeholder Involvement • Limited ‘Gold Plating’ Project Management and Reporting Support Team Release Planning • Velocity • Deliver in Iterations • Deliver continuous value
  • 26.
    Project Management andReporting • But where does that leave us with Project Management and Reporting • This is one of the large areas that sometimes is not done in a Lean Fashion • There are several simple enhancements that can be made to manage AMS in a Lean Fashion • One of the biggest issues in AMS Project Management is providing the visibility into the progress and status.
  • 27.
    Daily Standups • Implementdaily 15 minute stand-ups - What did you do yesterday - What are you planning to do today - Do you have any issues?
  • 28.
    Visual Project Management •Visual Status Reporting - Graphical Status Reporting - Ticket Board – Literally - Service Level Dashboard - Service Level Trend Dashboard
  • 29.
    Graphical Status Reporting 50 45 40 Number of Tickets resolved last week 35 Number of New Tickets since the last 30 status report Number of Tickets scheduled to be 25 resolved last week that were not resolved Number of Tickets scheduled to be worked on this week 20 Number of Tickets scheduled to be resolved this week 15 Number of Tickets not yet started 10 5 0 1 2 3 4 5 6
  • 30.
    Ticket Board Work Ticket Status Board Resource Triaged Backlog Analysis Construction Testing Complete Issue Manager Business Analyst 1 Business Analyst 2 Java Developer System User Analyst Vendor
  • 31.
    Service Level Dashboard Severity Response Workaround Final Resolution Severity 1: Critical ● ■ ● Severity 2: High ■ ■ ♦ Severity 3: Moderate ■ ■ ■ Severity 4: Low ♦ ♦ ●
  • 32.
    Service Level TrendDashboard 1 0.9 0.8 0.7 0.6 severity 1 severity 2 0.5 severity 3 0.4 severity 4 0.3 SLA 0.2 SLA 0.1 severity 4 0 severity 3 january severity 2 february march april severity 1 may june july
  • 33.
    Conclusion • Application MaintenanceServices are an ideal area to try Agile or Lean processes to see how they will work in your corporation • The components of AMS lend themselves easily to iterative development with high stakeholder involvement • The semi-permanent nature of the team also allows for the establishment of team ‘velocity’ • The work ticket queue is the product backlog we hear discussed frequently in Agile circles
  • 34.
    Background • The informationfor this presentation has been based on Application Maintenance Services that Protegra has delivered for: - Multiple Government departments - Multiple Financial institutions - Multiple Insurance companies • Protegra currently provides AMS services for 7 corporations.
  • 35.