SlideShare a Scribd company logo
1 of 26
Road to Agile:
A Federal Government Case Study
Steven Kennedy, US Dept of the Treasury and David Marsh, Bodega Consulting
March 21st
, 2014
2
• Welcome PMI Members from the:
 Agile Community of Practice
• Use Chat Pod for all your QUESTIONS
• Earning PDUs
• Automatic PDUs for attending live webinar
• Slides and Recordings available after 24 hours
• Join the Discussion
• GovCOP Discussion Board
• Twitter @govcop
• LinkedIn Group (“PMI Government Community of Practice”)
• Volunteer with us (winnie.liem@vcleader.pmi.org)
Welcome to the Government Community of Practice!
2
3
Our Presenters: David and Steven
Steven Kennedy is the Program Manager at the U.S. Dept of
the Treasury where he leads the project management staff
office for Debt Management Services of the Treasury's
Bureau of the Fiscal Service. Steven introduced the use of
agile development and cloud computing deliver better code
faster at a lower cost.
Presentation Title
David Marsh has been coaching Agile teams for years (even
before Agile became a buzz word), enabling many
organizations (govt and non govt) to realize the benefits of
agile software delivery by guiding teams on the journey from
waterfall development to agility.
David’s approach is very hands on where he applies the
techniques he coaches first-hand to deliver quality software
solutions.
4
Waypoints
• Brief Introduction to the Business: the Treasury Offset Program
• Why Agile?
• Typical Barriers to Adopting Agile Delivery Methods
– And How We Engineered an Environment to Overcome
Them
• How the Project Evolved
– Acceptance Test Driven Development
– Continuous Integration / Automated Deployments
• The Results
5
The Treasury Offset Program (TOP)
• TOP is a centralized offset process that intercepts Federal (and
some State) payments of payees who owe delinquent debts to
other Federal (and some State) agencies
• Debt Collection Improvement Act (1996)
• Collects > $7B annually
• Fees pay for the system (no appropriated funds)
6
Why Agile?
The “Before” Situation
Disparate and geo-distributed orgs maintaining a legacy system
patched together from a proof of concept (COBOL, RISC, DB2).
System
•Offsets payments to collect debt
Problems
•Lack of capacity during peak times
•Incapable of timely change
1
4
2
3
Organization(s)
1. Business/Prod Support
2. PMO/BAs/Prod Support
3. Development
4. QA
7
Why Agile?
The Attempts to Evolve the TOP System
• Prototype evolved over 15 years through patches and copying
of COBOL programs
• Web client developed in Java
• Several attempts made over the years to redesign: all failed
• 2010: Goal of increasing TOP collections by:
– Increases in payment streams
– Increasing in debt volume
– Matching effectiveness
– Considered:
• Move from Unix to Mainframe
• Re-write as-is functionality in Java
8
Agile Software Development
• Highest priority is to satisfy the customer through early and
frequent delivery of valuable software
• What it means:
– Started with 3 week iterations; now using continuous flow
– Stakeholder review and feedback welcomed/acted upon
– Focus on one thing at a time, until it is done
– Defer requirements definition (learn from the past)
– Cross-functional teams composed of both business and
technical people
– Adaptive planning and a people-centric approach
9
Typical Barriers to Agile
• Organizational Silos
• Siloed Job Titles
• Geographic Distribution
• Lack of Executive Support
• Culture
– need for certainty
– command and control
hierarchy
• Traditional Governance Model
• Lack of Business-IT
Collaboration and Trust
• Traditional IT Practices &
Infrastructure Timeliness
10
Enabling Collaboration
Team rooms, video-conference and
smart boards
Flattened the organization and
remove barriers
11
A Collaborative, Cross-Functional Team
• Team is organized without silos: product owners, developers and quality
assurance all sitting side by side during the project’s development.
• Turning to a teammate and asking a question that gets immediately answered
and validated by working on something together results quickly and accurately in
a value-added feature.
• Benefits
– High-quality software delivered as advertised and faster
– Greater transparency for stakeholders
– No backlog of defects or bugs
– Simplicity due to evidence-based decisions
– Evolving cross-functional team
– Better environment for innovation and learning
12
Using the Cloud
• Amazon Web Services GovCloud:
– New servers/environments in
minutes
• Instead of months
– Rapid prototyping of new
architectures
• Experimentation
– Pay only for used capacity
• Spun up servers on demand
for testing
– Quickly scale capacity up and
down
• Don’t have to be right the first
time
• SaaS
– Google Docs, Rally
• PaaS
– Amazon Web Services (AWS)
RDS
• IaaS
– AWS EC2 and EBS
13
The Cloud
14
Risk-Driven Backlog Prioritization
Early focus on solving the tough problems.
15
The Backlog and Kanban Board
16
Evolution: Acceptance Test Driven
Development (ATDD)
The Traditional Approach:
– BAs specify requirements in
use cases/user stories
– Developers interpret and
code
• Hard to tell when they
are “done”
• Usually lots of
goldplating
– Testers interpret and write
test cases
– Everyone deals with the
aftermath of test execution!
ATDD
• Requirements are written as executable test
scenarios:
– Created during requirements elaboration and
before any code is written
– Written collaboratively with developers, product
owners and tester
– Documented as readable files, in business
language, and can be shared with stakeholders
– Examples of how the system should behave
under specific conditions
– When executed successfully, we know the
desired feature has been correctly built
• Application code is written to execute the tests:
– Scenarios become part of the code base, so the
requirements are always up to date
– Code is written to execute the tests and assert &
verify expected results
– These tests drive code development (keeping it
simple)
17
Acceptance Test Example (Cucumber)
18
Acceptance Test Example (Cucumber)
19
Evolution: Continuous Integration and
Automated Deployment
• Every time code is checked in:
– All the deployable artifacts are built to
ensure no breaks
– Approx. 7,000 unit, integration are customer
automated tests are executed
• Nightly
– Generate quality metrics via tools like
Sonar & CAST
– Execute and validate conversion process
– Execute performance test and ensure it is
within threshold
• On-Demand via a button click
– Deploy to the cloud acceptance servers (6
minutes)
– Deploy to Treasury data center (10
minutes)
• Server configuration is managed side-by-side
with code and can follow the same configuration
management process.
20
Continuous Integration – Jenkins
21
Code Quality – Sonar
22
Code Quality - CAST
23
Results: No Known Defects
• Quality is built into the feature, not added later.
• Product Owners / Devs / QA work closely together to define
acceptance criteria before development begins, and
communicate at least daily as feature is built.
• If a problem is discovered, it is immediately fixed by the
developers and tested before the story is accepted.
• There is no need to log or prioritize a defect.
24
Results: Value
Collaboration, High Code Quality, Continuous
Integration, Automated Test Suites and Automated
Deployment enable rapid releases to production.
25
Results: Business Goals Achieved
New system has been running in parallel with
old during tax season (peak). The process is
working!!!
• Achieved business objectives.
– Can now offset:
• $3T in FedWire payments
• Grants
• Purchase cards ($30B in 100M
transactions) to come
– Flexibility to change business
rules
• Able to make policy and
legislative changes quickly
• Allows for What If scenarios
– More Data
• Identify why payments that
matched debts were not offset
26
QUESTIONS?
Email: Contact Us, Questions about Webinar or GovCOP:
Steven Kennedy skennedy@nobleseat.com
David Marsh dmarsh@bodegaconsulting.com
Winnie Liem: winnie.liem@vcleader.pmi.org
WEBSITE: http://government.vc.pmi.org/Public/Home.aspx
TWITTER: Twitter @govcop and Tweet #govcop
LINKEDIN GROUP: PMI Government Community of Practice
Note: 1 PDU will be automatically entered for those attending the
live presentation
26

More Related Content

What's hot

Software Project management
Software Project managementSoftware Project management
Software Project managementsameer farooq
 
Agile Project Management for IT Projects
Agile Project Management for IT ProjectsAgile Project Management for IT Projects
Agile Project Management for IT Projectsrachna_nainani
 
How a Top Retailer Brought Together UX Design and Agile Development (and got ...
How a Top Retailer Brought Together UX Design and Agile Development (and got ...How a Top Retailer Brought Together UX Design and Agile Development (and got ...
How a Top Retailer Brought Together UX Design and Agile Development (and got ...Tasktop
 
High Quality Software Development with Agile and Scrum
High Quality Software Development with Agile and ScrumHigh Quality Software Development with Agile and Scrum
High Quality Software Development with Agile and ScrumLemi Orhan Ergin
 
Agile architecture made real
Agile architecture made realAgile architecture made real
Agile architecture made realAlexis Hui
 
A Gentle Introduction To Agile
A Gentle Introduction To AgileA Gentle Introduction To Agile
A Gentle Introduction To AgileMichael Sahota
 
Agile Methodologies in SAP
Agile Methodologies in SAPAgile Methodologies in SAP
Agile Methodologies in SAPGaurav Ahluwalia
 
cPrime FBI Agile Success
 cPrime FBI Agile Success cPrime FBI Agile Success
cPrime FBI Agile SuccessCprime
 
Customer Collaboration & Product Innovation Using Social Networks
Customer Collaboration & Product Innovation Using Social NetworksCustomer Collaboration & Product Innovation Using Social Networks
Customer Collaboration & Product Innovation Using Social NetworksJohn Carter
 
Pulse 2013: DevOps Review and Roadmap
Pulse 2013: DevOps Review and RoadmapPulse 2013: DevOps Review and Roadmap
Pulse 2013: DevOps Review and RoadmapDaniel Berg
 
Optimize DevOps and Agile Strategies with Deployment Automation
Optimize DevOps and Agile Strategies with Deployment AutomationOptimize DevOps and Agile Strategies with Deployment Automation
Optimize DevOps and Agile Strategies with Deployment AutomationXebiaLabs
 
Introduction to Agile and Lean Software Development
Introduction to Agile and Lean Software DevelopmentIntroduction to Agile and Lean Software Development
Introduction to Agile and Lean Software DevelopmentThanh Nguyen
 
Value Driven Development by Dave Thomas
Value Driven Development by Dave Thomas Value Driven Development by Dave Thomas
Value Driven Development by Dave Thomas Naresh Jain
 
Adm Initial Proposal
Adm Initial ProposalAdm Initial Proposal
Adm Initial Proposalcfry
 

What's hot (20)

Software Project management
Software Project managementSoftware Project management
Software Project management
 
Agile Project Management for IT Projects
Agile Project Management for IT ProjectsAgile Project Management for IT Projects
Agile Project Management for IT Projects
 
How a Top Retailer Brought Together UX Design and Agile Development (and got ...
How a Top Retailer Brought Together UX Design and Agile Development (and got ...How a Top Retailer Brought Together UX Design and Agile Development (and got ...
How a Top Retailer Brought Together UX Design and Agile Development (and got ...
 
Journey of Agile
Journey of AgileJourney of Agile
Journey of Agile
 
Agile webinar pack (2)
Agile webinar pack (2)Agile webinar pack (2)
Agile webinar pack (2)
 
PMBOK and Scrum: Best of both worlds
PMBOK and Scrum: Best of both worldsPMBOK and Scrum: Best of both worlds
PMBOK and Scrum: Best of both worlds
 
High Quality Software Development with Agile and Scrum
High Quality Software Development with Agile and ScrumHigh Quality Software Development with Agile and Scrum
High Quality Software Development with Agile and Scrum
 
Agile architecture made real
Agile architecture made realAgile architecture made real
Agile architecture made real
 
A Gentle Introduction To Agile
A Gentle Introduction To AgileA Gentle Introduction To Agile
A Gentle Introduction To Agile
 
Agile Methodologies in SAP
Agile Methodologies in SAPAgile Methodologies in SAP
Agile Methodologies in SAP
 
cPrime FBI Agile Success
 cPrime FBI Agile Success cPrime FBI Agile Success
cPrime FBI Agile Success
 
Customer Collaboration & Product Innovation Using Social Networks
Customer Collaboration & Product Innovation Using Social NetworksCustomer Collaboration & Product Innovation Using Social Networks
Customer Collaboration & Product Innovation Using Social Networks
 
Agile project management PMI-ACP
Agile project management PMI-ACPAgile project management PMI-ACP
Agile project management PMI-ACP
 
Pulse 2013: DevOps Review and Roadmap
Pulse 2013: DevOps Review and RoadmapPulse 2013: DevOps Review and Roadmap
Pulse 2013: DevOps Review and Roadmap
 
Optimize DevOps and Agile Strategies with Deployment Automation
Optimize DevOps and Agile Strategies with Deployment AutomationOptimize DevOps and Agile Strategies with Deployment Automation
Optimize DevOps and Agile Strategies with Deployment Automation
 
Introduction to Agile and Lean Software Development
Introduction to Agile and Lean Software DevelopmentIntroduction to Agile and Lean Software Development
Introduction to Agile and Lean Software Development
 
Michigan Agile Presentation
Michigan Agile PresentationMichigan Agile Presentation
Michigan Agile Presentation
 
Value Driven Development by Dave Thomas
Value Driven Development by Dave Thomas Value Driven Development by Dave Thomas
Value Driven Development by Dave Thomas
 
Agile project management
Agile project managementAgile project management
Agile project management
 
Adm Initial Proposal
Adm Initial ProposalAdm Initial Proposal
Adm Initial Proposal
 

Viewers also liked

Case study for agile software development:
Case study for agile software development: Case study for agile software development:
Case study for agile software development: Joe Crespo
 
AGILE@DELOITTE AGILE LANDSCAPE v02
AGILE@DELOITTE AGILE LANDSCAPE v02AGILE@DELOITTE AGILE LANDSCAPE v02
AGILE@DELOITTE AGILE LANDSCAPE v02Chris Webb
 
Beyond the Scrum Master - Becoming an Agile Coach
Beyond the Scrum Master - Becoming an Agile CoachBeyond the Scrum Master - Becoming an Agile Coach
Beyond the Scrum Master - Becoming an Agile CoachCprime
 
Deloitte lean agile state of the nation
Deloitte lean   agile state of the nationDeloitte lean   agile state of the nation
Deloitte lean agile state of the nationAlexis Hui
 
Scrum Master: Role or Responsibility?
Scrum Master: Role or Responsibility?Scrum Master: Role or Responsibility?
Scrum Master: Role or Responsibility?Mariya Breyter
 
Case Study on agile scrum methodology on shopping cart
Case Study on agile scrum methodology on shopping cartCase Study on agile scrum methodology on shopping cart
Case Study on agile scrum methodology on shopping cartAbdullah Raza
 
Making Security Agile - Oleg Gryb
Making Security Agile - Oleg GrybMaking Security Agile - Oleg Gryb
Making Security Agile - Oleg GrybSeniorStoryteller
 
Building Security In - A Tale of Two Stories - Laksh Raghavan
Building Security In - A Tale of Two Stories - Laksh RaghavanBuilding Security In - A Tale of Two Stories - Laksh Raghavan
Building Security In - A Tale of Two Stories - Laksh RaghavanSeniorStoryteller
 
Design process and concepts
Design process and conceptsDesign process and concepts
Design process and conceptsSlideshare
 
Becoming an Agile Coach
Becoming an Agile CoachBecoming an Agile Coach
Becoming an Agile CoachGrowing Agile
 
Lean & Agile Project Management: For Large Distributed Virtual Teams
Lean & Agile Project Management: For Large Distributed Virtual TeamsLean & Agile Project Management: For Large Distributed Virtual Teams
Lean & Agile Project Management: For Large Distributed Virtual TeamsDavid Rico
 
Scaling Agile: A Guide for the Perplexed
Scaling Agile: A Guide for the PerplexedScaling Agile: A Guide for the Perplexed
Scaling Agile: A Guide for the PerplexedLitheSpeed
 
Booz Allen Secure Agile Development
Booz Allen Secure Agile DevelopmentBooz Allen Secure Agile Development
Booz Allen Secure Agile DevelopmentBooz Allen Hamilton
 

Viewers also liked (14)

Case study for agile software development:
Case study for agile software development: Case study for agile software development:
Case study for agile software development:
 
Transforming your sw development to agile
Transforming your sw development to agileTransforming your sw development to agile
Transforming your sw development to agile
 
AGILE@DELOITTE AGILE LANDSCAPE v02
AGILE@DELOITTE AGILE LANDSCAPE v02AGILE@DELOITTE AGILE LANDSCAPE v02
AGILE@DELOITTE AGILE LANDSCAPE v02
 
Beyond the Scrum Master - Becoming an Agile Coach
Beyond the Scrum Master - Becoming an Agile CoachBeyond the Scrum Master - Becoming an Agile Coach
Beyond the Scrum Master - Becoming an Agile Coach
 
Deloitte lean agile state of the nation
Deloitte lean   agile state of the nationDeloitte lean   agile state of the nation
Deloitte lean agile state of the nation
 
Scrum Master: Role or Responsibility?
Scrum Master: Role or Responsibility?Scrum Master: Role or Responsibility?
Scrum Master: Role or Responsibility?
 
Case Study on agile scrum methodology on shopping cart
Case Study on agile scrum methodology on shopping cartCase Study on agile scrum methodology on shopping cart
Case Study on agile scrum methodology on shopping cart
 
Making Security Agile - Oleg Gryb
Making Security Agile - Oleg GrybMaking Security Agile - Oleg Gryb
Making Security Agile - Oleg Gryb
 
Building Security In - A Tale of Two Stories - Laksh Raghavan
Building Security In - A Tale of Two Stories - Laksh RaghavanBuilding Security In - A Tale of Two Stories - Laksh Raghavan
Building Security In - A Tale of Two Stories - Laksh Raghavan
 
Design process and concepts
Design process and conceptsDesign process and concepts
Design process and concepts
 
Becoming an Agile Coach
Becoming an Agile CoachBecoming an Agile Coach
Becoming an Agile Coach
 
Lean & Agile Project Management: For Large Distributed Virtual Teams
Lean & Agile Project Management: For Large Distributed Virtual TeamsLean & Agile Project Management: For Large Distributed Virtual Teams
Lean & Agile Project Management: For Large Distributed Virtual Teams
 
Scaling Agile: A Guide for the Perplexed
Scaling Agile: A Guide for the PerplexedScaling Agile: A Guide for the Perplexed
Scaling Agile: A Guide for the Perplexed
 
Booz Allen Secure Agile Development
Booz Allen Secure Agile DevelopmentBooz Allen Secure Agile Development
Booz Allen Secure Agile Development
 

Similar to Road to agile: federal government case study

Case Study: How The Home Depot Built Quality Into Software Development
Case Study: How The Home Depot Built Quality Into Software DevelopmentCase Study: How The Home Depot Built Quality Into Software Development
Case Study: How The Home Depot Built Quality Into Software DevelopmentCA Technologies
 
Case Study: How The Home Depot Built Quality Into Software Development
Case Study: How The Home Depot Built Quality Into Software DevelopmentCase Study: How The Home Depot Built Quality Into Software Development
Case Study: How The Home Depot Built Quality Into Software DevelopmentCA Technologies
 
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems SoftwareLessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems SoftwareDevOps for Enterprise Systems
 
Reflections on18monthfederaldevopstransformation2015
Reflections on18monthfederaldevopstransformation2015Reflections on18monthfederaldevopstransformation2015
Reflections on18monthfederaldevopstransformation2015steelthread
 
Training Bootcamp - MainframeDevOps.pptx
Training Bootcamp - MainframeDevOps.pptxTraining Bootcamp - MainframeDevOps.pptx
Training Bootcamp - MainframeDevOps.pptxNashet Ali
 
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0minseok kim
 
Agile and Continuous Delivery for Audits and Exams - DC Continuous Delivery M...
Agile and Continuous Delivery for Audits and Exams - DC Continuous Delivery M...Agile and Continuous Delivery for Audits and Exams - DC Continuous Delivery M...
Agile and Continuous Delivery for Audits and Exams - DC Continuous Delivery M...Simon Storm
 
Introduction to Agile Software Development Process
Introduction to Agile Software Development ProcessIntroduction to Agile Software Development Process
Introduction to Agile Software Development ProcessSoftware Park Thailand
 
[WSO2Con EU 2017] Continuous Integration, Delivery and Deployment: Accelerate...
[WSO2Con EU 2017] Continuous Integration, Delivery and Deployment: Accelerate...[WSO2Con EU 2017] Continuous Integration, Delivery and Deployment: Accelerate...
[WSO2Con EU 2017] Continuous Integration, Delivery and Deployment: Accelerate...WSO2
 
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_custdennisn129
 
DevOps Operations Challenges
DevOps Operations ChallengesDevOps Operations Challenges
DevOps Operations ChallengesVijaya K
 
Enterprise DevOps and the Modern Mainframe Webcast Presentation
Enterprise DevOps and the Modern Mainframe Webcast PresentationEnterprise DevOps and the Modern Mainframe Webcast Presentation
Enterprise DevOps and the Modern Mainframe Webcast PresentationCompuware
 
From Iterative to Continuous Delivery, PNSQC 2014
From Iterative to Continuous Delivery, PNSQC 2014From Iterative to Continuous Delivery, PNSQC 2014
From Iterative to Continuous Delivery, PNSQC 2014John Ruberto
 
Dev ops != Dev+Ops
Dev ops != Dev+OpsDev ops != Dev+Ops
Dev ops != Dev+OpsShalu Ahuja
 
Modernize Development with Agile Engineering Practices
Modernize Development with Agile Engineering PracticesModernize Development with Agile Engineering Practices
Modernize Development with Agile Engineering PracticesCollabNet
 
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...SmartBear
 
Application Migration: How to Start, Scale and Succeed
Application Migration: How to Start, Scale and SucceedApplication Migration: How to Start, Scale and Succeed
Application Migration: How to Start, Scale and SucceedVMware Tanzu
 

Similar to Road to agile: federal government case study (20)

Case Study: How The Home Depot Built Quality Into Software Development
Case Study: How The Home Depot Built Quality Into Software DevelopmentCase Study: How The Home Depot Built Quality Into Software Development
Case Study: How The Home Depot Built Quality Into Software Development
 
Case Study: How The Home Depot Built Quality Into Software Development
Case Study: How The Home Depot Built Quality Into Software DevelopmentCase Study: How The Home Depot Built Quality Into Software Development
Case Study: How The Home Depot Built Quality Into Software Development
 
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems SoftwareLessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
Lessons Learned from Large Scale Adoption of DevOps for IBM z Systems Software
 
Reflections on18monthfederaldevopstransformation2015
Reflections on18monthfederaldevopstransformation2015Reflections on18monthfederaldevopstransformation2015
Reflections on18monthfederaldevopstransformation2015
 
Technical Without Code
Technical Without CodeTechnical Without Code
Technical Without Code
 
Training Bootcamp - MainframeDevOps.pptx
Training Bootcamp - MainframeDevOps.pptxTraining Bootcamp - MainframeDevOps.pptx
Training Bootcamp - MainframeDevOps.pptx
 
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
 
Agile and Continuous Delivery for Audits and Exams - DC Continuous Delivery M...
Agile and Continuous Delivery for Audits and Exams - DC Continuous Delivery M...Agile and Continuous Delivery for Audits and Exams - DC Continuous Delivery M...
Agile and Continuous Delivery for Audits and Exams - DC Continuous Delivery M...
 
Introduction to Agile Software Development Process
Introduction to Agile Software Development ProcessIntroduction to Agile Software Development Process
Introduction to Agile Software Development Process
 
[WSO2Con EU 2017] Continuous Integration, Delivery and Deployment: Accelerate...
[WSO2Con EU 2017] Continuous Integration, Delivery and Deployment: Accelerate...[WSO2Con EU 2017] Continuous Integration, Delivery and Deployment: Accelerate...
[WSO2Con EU 2017] Continuous Integration, Delivery and Deployment: Accelerate...
 
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
10.15.2014 dallas ws_brian_d_dn_live workshop enterpise agility_cust
 
DevOps Operations Challenges
DevOps Operations ChallengesDevOps Operations Challenges
DevOps Operations Challenges
 
Enterprise DevOps and the Modern Mainframe Webcast Presentation
Enterprise DevOps and the Modern Mainframe Webcast PresentationEnterprise DevOps and the Modern Mainframe Webcast Presentation
Enterprise DevOps and the Modern Mainframe Webcast Presentation
 
From Iterative to Continuous Delivery, PNSQC 2014
From Iterative to Continuous Delivery, PNSQC 2014From Iterative to Continuous Delivery, PNSQC 2014
From Iterative to Continuous Delivery, PNSQC 2014
 
What is DevOps?
What is DevOps?What is DevOps?
What is DevOps?
 
Dev ops != Dev+Ops
Dev ops != Dev+OpsDev ops != Dev+Ops
Dev ops != Dev+Ops
 
Modernize Development with Agile Engineering Practices
Modernize Development with Agile Engineering PracticesModernize Development with Agile Engineering Practices
Modernize Development with Agile Engineering Practices
 
Deploying at will - SEI
 Deploying at will - SEI Deploying at will - SEI
Deploying at will - SEI
 
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
 
Application Migration: How to Start, Scale and Succeed
Application Migration: How to Start, Scale and SucceedApplication Migration: How to Start, Scale and Succeed
Application Migration: How to Start, Scale and Succeed
 

Recently uploaded

Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piececharlottematthew16
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Mark Simos
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 

Recently uploaded (20)

Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Story boards and shot lists for my a level piece
Story boards and shot lists for my a level pieceStory boards and shot lists for my a level piece
Story boards and shot lists for my a level piece
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
Tampa BSides - Chef's Tour of Microsoft Security Adoption Framework (SAF)
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 

Road to agile: federal government case study

  • 1. Road to Agile: A Federal Government Case Study Steven Kennedy, US Dept of the Treasury and David Marsh, Bodega Consulting March 21st , 2014
  • 2. 2 • Welcome PMI Members from the:  Agile Community of Practice • Use Chat Pod for all your QUESTIONS • Earning PDUs • Automatic PDUs for attending live webinar • Slides and Recordings available after 24 hours • Join the Discussion • GovCOP Discussion Board • Twitter @govcop • LinkedIn Group (“PMI Government Community of Practice”) • Volunteer with us (winnie.liem@vcleader.pmi.org) Welcome to the Government Community of Practice! 2
  • 3. 3 Our Presenters: David and Steven Steven Kennedy is the Program Manager at the U.S. Dept of the Treasury where he leads the project management staff office for Debt Management Services of the Treasury's Bureau of the Fiscal Service. Steven introduced the use of agile development and cloud computing deliver better code faster at a lower cost. Presentation Title David Marsh has been coaching Agile teams for years (even before Agile became a buzz word), enabling many organizations (govt and non govt) to realize the benefits of agile software delivery by guiding teams on the journey from waterfall development to agility. David’s approach is very hands on where he applies the techniques he coaches first-hand to deliver quality software solutions.
  • 4. 4 Waypoints • Brief Introduction to the Business: the Treasury Offset Program • Why Agile? • Typical Barriers to Adopting Agile Delivery Methods – And How We Engineered an Environment to Overcome Them • How the Project Evolved – Acceptance Test Driven Development – Continuous Integration / Automated Deployments • The Results
  • 5. 5 The Treasury Offset Program (TOP) • TOP is a centralized offset process that intercepts Federal (and some State) payments of payees who owe delinquent debts to other Federal (and some State) agencies • Debt Collection Improvement Act (1996) • Collects > $7B annually • Fees pay for the system (no appropriated funds)
  • 6. 6 Why Agile? The “Before” Situation Disparate and geo-distributed orgs maintaining a legacy system patched together from a proof of concept (COBOL, RISC, DB2). System •Offsets payments to collect debt Problems •Lack of capacity during peak times •Incapable of timely change 1 4 2 3 Organization(s) 1. Business/Prod Support 2. PMO/BAs/Prod Support 3. Development 4. QA
  • 7. 7 Why Agile? The Attempts to Evolve the TOP System • Prototype evolved over 15 years through patches and copying of COBOL programs • Web client developed in Java • Several attempts made over the years to redesign: all failed • 2010: Goal of increasing TOP collections by: – Increases in payment streams – Increasing in debt volume – Matching effectiveness – Considered: • Move from Unix to Mainframe • Re-write as-is functionality in Java
  • 8. 8 Agile Software Development • Highest priority is to satisfy the customer through early and frequent delivery of valuable software • What it means: – Started with 3 week iterations; now using continuous flow – Stakeholder review and feedback welcomed/acted upon – Focus on one thing at a time, until it is done – Defer requirements definition (learn from the past) – Cross-functional teams composed of both business and technical people – Adaptive planning and a people-centric approach
  • 9. 9 Typical Barriers to Agile • Organizational Silos • Siloed Job Titles • Geographic Distribution • Lack of Executive Support • Culture – need for certainty – command and control hierarchy • Traditional Governance Model • Lack of Business-IT Collaboration and Trust • Traditional IT Practices & Infrastructure Timeliness
  • 10. 10 Enabling Collaboration Team rooms, video-conference and smart boards Flattened the organization and remove barriers
  • 11. 11 A Collaborative, Cross-Functional Team • Team is organized without silos: product owners, developers and quality assurance all sitting side by side during the project’s development. • Turning to a teammate and asking a question that gets immediately answered and validated by working on something together results quickly and accurately in a value-added feature. • Benefits – High-quality software delivered as advertised and faster – Greater transparency for stakeholders – No backlog of defects or bugs – Simplicity due to evidence-based decisions – Evolving cross-functional team – Better environment for innovation and learning
  • 12. 12 Using the Cloud • Amazon Web Services GovCloud: – New servers/environments in minutes • Instead of months – Rapid prototyping of new architectures • Experimentation – Pay only for used capacity • Spun up servers on demand for testing – Quickly scale capacity up and down • Don’t have to be right the first time • SaaS – Google Docs, Rally • PaaS – Amazon Web Services (AWS) RDS • IaaS – AWS EC2 and EBS
  • 14. 14 Risk-Driven Backlog Prioritization Early focus on solving the tough problems.
  • 15. 15 The Backlog and Kanban Board
  • 16. 16 Evolution: Acceptance Test Driven Development (ATDD) The Traditional Approach: – BAs specify requirements in use cases/user stories – Developers interpret and code • Hard to tell when they are “done” • Usually lots of goldplating – Testers interpret and write test cases – Everyone deals with the aftermath of test execution! ATDD • Requirements are written as executable test scenarios: – Created during requirements elaboration and before any code is written – Written collaboratively with developers, product owners and tester – Documented as readable files, in business language, and can be shared with stakeholders – Examples of how the system should behave under specific conditions – When executed successfully, we know the desired feature has been correctly built • Application code is written to execute the tests: – Scenarios become part of the code base, so the requirements are always up to date – Code is written to execute the tests and assert & verify expected results – These tests drive code development (keeping it simple)
  • 19. 19 Evolution: Continuous Integration and Automated Deployment • Every time code is checked in: – All the deployable artifacts are built to ensure no breaks – Approx. 7,000 unit, integration are customer automated tests are executed • Nightly – Generate quality metrics via tools like Sonar & CAST – Execute and validate conversion process – Execute performance test and ensure it is within threshold • On-Demand via a button click – Deploy to the cloud acceptance servers (6 minutes) – Deploy to Treasury data center (10 minutes) • Server configuration is managed side-by-side with code and can follow the same configuration management process.
  • 23. 23 Results: No Known Defects • Quality is built into the feature, not added later. • Product Owners / Devs / QA work closely together to define acceptance criteria before development begins, and communicate at least daily as feature is built. • If a problem is discovered, it is immediately fixed by the developers and tested before the story is accepted. • There is no need to log or prioritize a defect.
  • 24. 24 Results: Value Collaboration, High Code Quality, Continuous Integration, Automated Test Suites and Automated Deployment enable rapid releases to production.
  • 25. 25 Results: Business Goals Achieved New system has been running in parallel with old during tax season (peak). The process is working!!! • Achieved business objectives. – Can now offset: • $3T in FedWire payments • Grants • Purchase cards ($30B in 100M transactions) to come – Flexibility to change business rules • Able to make policy and legislative changes quickly • Allows for What If scenarios – More Data • Identify why payments that matched debts were not offset
  • 26. 26 QUESTIONS? Email: Contact Us, Questions about Webinar or GovCOP: Steven Kennedy skennedy@nobleseat.com David Marsh dmarsh@bodegaconsulting.com Winnie Liem: winnie.liem@vcleader.pmi.org WEBSITE: http://government.vc.pmi.org/Public/Home.aspx TWITTER: Twitter @govcop and Tweet #govcop LINKEDIN GROUP: PMI Government Community of Practice Note: 1 PDU will be automatically entered for those attending the live presentation 26

Editor's Notes

  1. Steven continued: One of his teams is developing a financial application that collects $6 billion a year for the U.S. Treasury. Primary areas of focus include Agile development, automated test driven development, measureable software code quality, and collaboration. Prior to joining Treasury, Kennedy was an engineer and PM for the installation of DOD’s first telephony firewall system for the U.S. Air Force. Steven holds a master’s of business administration from Samford University and a bachelor’s in management and finance from Christian Brothers University. He is also a Stanford Certified Project Manager. David cont’d: He has experienced both successful and failed agile transformations, and applies the lessons from both to each new engagement (which, as you might guess, have their own unique lessons to learn). He is currently employed on a public-private partnership initiative at home in Toronto in a senior business analyst role, using agile modeling practices to elicit requirements more effectively.
  2. Dave Steven – Adopt Agile Principles; the changes in processes and IT support those principles. Principles are foundational will guide selection to processes and IT infrastructure. Practices do not make you Agile. We will use the Agile Principles to drive our decisions. Obtain agreement up front with all stakeholders. List 12 Principles: 1. 2. 3.
  3. Steven
  4. Dave Steven – Less than optimal collaboration. Old way throw it over the wall months and months later – rinse and repeat. Today it is as if the work is created in the same room. Collaborative even though we are distributed. No walls your job my job.
  5. Steven Probably worth pointing out that the goal is to have a system that can be updated quickly. As the system has evolved it appears that folks do not know what the requirements were. In Cucumber you can trace the code to the business rule and reason the system is doing what it is doing.
  6. Dave Steven – We have a system that works: Why do we want to replace it? Changes happen weekly instead of monthly or every 6 months. Respond more rapidly to fixes, legislation changes Is a 3 week iteration; have software touch and feel and use; may not be in production. Production ready software in order to show value. Not just a piece but a working piece. Demonstrate that something gets done. In contrast continuous flow is delivering each feature instead of a group of features to production. The focus is on velocity (how fast) of moving features into production. We use Kanban to manage our work in process limits for the various work states in software development. We are approaching software like an assembly line. If certain areas are slow we can fix it and move on.
  7. Dave
  8. Dave
  9. Steven – The video conference is on 100% percent of the time it is not a scheduled meeting. It is like you are in the same room. If you don’t have folks from San Fran talking about the weather in Philly there is a problem. That is the intimacy of the interactions.
  10. Dave then Steven Cloud helps with developers testing a small concept; no pre-approval or lengthy wait times. Minutes. Continuous Integration system to test Siteminder. ISS pulls software from Nexus. HTTPS connection. Whitelisted IP. User name and password.
  11. Steven – These are testing servers. List of all servers AWS. Most of them test environments. Chef and Cast are seen below. Jenkins slaves are the check-in code auto run all the tests. Switching to Bamboo
  12. Dave Waterfall line looks very optimistic. It should look a lot worse. A lot higher. By running in parallel and releasing frequently we reduce the risk over time rather than waiting.
  13. Steven – columns represent different states. Kanban limit work in process. If it gets out of control everything slows down. The red columns indicate overload in WIP limits. What has been finished and what has not been finished.
  14. Dave, then Steven ATDD what is the big deal? It lets business owners and developers talk about what it means for a feature to be done. Lets business owners and developers collaborate on the acceptance criteria for a feature. This encourages simplest solution. No unecessary features or gold plating. Cucumber is a tool that allows the features to be described as business language with a direct connection to the code. It lets you execute the specifications. Specifications are in plain english. English specifications are executable. You have a way of stating them. This avoids ambiguity. Library of english statements to code statements. Run the program to run the specifications. All specifications are regression tested. The alternative is to make a change give it to testing and let them test it and provide feedback. Breakdown comes with Requirements to Design to Develop to Test and that cycles in pre prod until it works. With cucumber and continuous integration this all happens in one cycle without breaking anything else. You cannot release a small piece of functionality. Too expensive create massive risk for a 6 month release.
  15. Steven: This is what a cucumber scenario looks like. It is really easy for a business owner and developer to collaborate on the features or requirements. This is better than Java code. Startup culture maybe the role is the same.
  16. Steven – run the scenario for each line in the table results are shown. You don’t have to write a new scenario for each entry. Reusable. Extensible – I just thought of another scenario lets just add a line rather than start from scratch.
  17. Steven – We are using the cloud but working with a traditional data center. They do not have to be completely separate. We are able to do our initial testing in cloud not expensive to make a mistake. We deploy business owner does not like it we have not deployed into production. Rapid turn around in cloud. To change and redeploy in ISS. When we are actually deploying something we deploy in pre-production allows us to fix issues and pull it back to the beginning. This ensures the change works as we expect.
  18. Steven – Automatically run tests that we want. Whenever a developer checks in a changes these tests run. So what? This decreases the time from the time error goes into source code until the time we find out. 2 hours vs 2 months. Has this been failing a lot or passing a lot. That is cool.
  19. Steven Not only do we use this information to look for things that can be improved, we are also going to use it as part of the CM process. If a build doesn’t meet certain thresholds, it fails and isn’t allowed to continue through the build pipeline. Educational tools, Provides individual feedback as well.
  20. Steven – 5 Star – Along with Sonar we measure our code quality overall trends. Not a hockey stick. The goal is to keep scores above average as the code base increases. Trending tool. Code quality matters. Code quality is the biggest driver of sustainment cost. 80-90% of the total cost of a system is the changes over the lifecycle not the initial cost. Accruing technical debt is the cost of fixing application quality problems. Complexity = slower system breaks more things with enhancements.
  21. Dave Steven – When the tests are written first it cuts down on defects. The tester gets the developed code and it works or it does not. Rapid feedback loop. Get it right move on. Developer by pure chance get it right, tester logs in bug report, some things get fixed some do not. We don’t knowlingly have technical debt or bugs. Most bugs we have is from not understanding the legacy system.
  22. Steven – Ability to release code daily with enhancements if needed. If a mistake is made you can rollback easily. Dramatically lower sustainment costs from platform as well as people. Value comes from deploying code into production, automate all the things that are expensive in the legacy process. If automated can release small bits. More secure, more auditable, lower risk. 100 lines vs 10,000 lines easily see problem and fix and get feedback.
  23. Steven There have been a few cases where the new system running in parallel was able to process files correctly while legacy had problems with them.
  24. TJ