SlideShare uma empresa Scribd logo
Agile with Legacy Product
Copyright 2013
Suradet Jitprapaikulsarn
www.ajarnsuradet.com
Revision 1.0 Agile with Legacy Product 2
Creative Commons License 3.0
This work is licensed under the Creative
Commons Attribution-NonCommercial-
ShareAlike 3.0 Unported License.
To view a copy of this license, visit
http://creativecommons.org/licenses/by-nc-sa/3.0/
or
send a letter to Creative Commons, 171 Second
Street, Suite 300, San Francisco, California,
94105, USA.
Revision 1.0 Agile with Legacy Product 3
You are free:
to Share — to copy, distribute and transmit the work
to Remix — to adapt the work
Under the following conditions:
Attribution — You must attribute the work in the
manner specified by the author or licensor (but not in
any way that suggests that they endorse you or your
use of the work).
Noncommercial — You may not use this work for
commercial purposes.
Share Alike — If you alter, transform, or build upon
this work, you may distribute the resulting work only
under the same or similar license to this one.
Revision 1.0 Agile with Legacy Product 4
With the understanding that:
• Waiver — Any of the above conditions can be waived if
you get permission from the copyright holder.
• Public Domain — Where the work or any of its
elements is in the public domain under applicable law,
that status is in no way affected by the license.
• Other Rights — In no way are any of the following rights
affected by the license:
– Your fair dealing or fair use rights, or other applicable copyright
exceptions and limitations;
– The author's moral rights;
– Rights other persons may have either in the work itself or in how
the work is used, such as publicity or privacy rights.
Notice — For any reuse or distribution, you must make
clear to others the license terms of this work. The best
way to do this is with a link to this web page.
Revision 1.0 Agile with Legacy Product 5
About Presenter
• Suradet Jitprapaikulsarn, Ph.D.
• Lecturer
• Department of Electrical and Computer
Engineering, Naresuan University,
Phitsanulok
• Email: suradet.j@gmail.com
• Facebook: Suradet Jitprapaikulsarn
Revision 1.0 Agile with Legacy Product 6
About Me (Cont.)
• Apply PSP since 1997
• Apply TDD since 1999
• 1st
Thai ScrumMaster, since 2009
• Was the only authorized PSP instructor in
Southeast Asia
• 1st
Thai Certified PSP developer
• 5 times CMMI appraisal team member
• Only Asian instructor invited for Software
Architecture workshop at SEI, 7 year in a row
(2006 – 2012)
Revision 1.0 Agile with Legacy Product 7
Topics
• What is a Legacy Product?
• Typical Problems
• Why change?
• Issues
• An Approach
• Tools & Techniques
Revision 1.0 Agile with Legacy Product 8
What is a Legacy Product?
• Any system currently in production upon
which a business process depends
– Kent J. McDonald, Legacy System Migration
in an Agile Manner, 2008
• Product without tests
– Michael Feathers, Working Effectively with
Legacy Code, 2005
An existing product that needs changes
Suradet, 2013
Revision 1.0 Agile with Legacy Product 9
Typical Problems
• Production system
• No documents
• Developers gone
• Third party products
Revision 1.0 Agile with Legacy Product 10
Why change
• Fix
• Optimize
• Sustain
• Re-platform
• Decommission
• Refactor
• Consolidate
• Extend/Enhance
• Migrate
• Replace
Adapted from Capgemini,
Agile Legacy Lifecycle, 2011
and
Michael Feathers, Working
Effectively with Legacy Code, 2005
Revision 1.0 Agile with Legacy Product 11
Impacts of changes
• Functionality
• Quality Attributes
• Structure
• Resource Usage
Revision 1.0 Agile with Legacy Product 12
Issues
• Technical
• Management
• Organizational
Revision 1.0 Agile with Legacy Product 13
An Approach
• Identify the change types
• Identify the interactions of the changes
• Identify the legacy assets
• Analyze the interaction
• Keep it agile
Revision 1.0 Agile with Legacy Product 14
A Legacy Code Change Algorithm
• Identify change points
• Find test points
• Break dependencies
• Write tests
• Make changes and refactor
Michael Feathers, Working
Effectively with Legacy Code, 2005
Revision 1.0 Agile with Legacy Product 15
Tools
• Documentation tools
• Refactoring tools
• Unit testing tools
• General testing tools
Revision 1.0 Agile with Legacy Product 16
Techniques
• Breaking Dependencies
• Seam model
– A place where behavior can be altered without
editing the code at the point of change
• Sprout Method
• Wrapper

Mais conteúdo relacionado

Semelhante a Agile with legacy product

Introduction to Agile Values & Principles
Introduction to Agile Values & PrinciplesIntroduction to Agile Values & Principles
Introduction to Agile Values & PrinciplesAndreea Visanoiu
 
Dev ops is more than CI+CD tools
Dev ops is more than CI+CD toolsDev ops is more than CI+CD tools
Dev ops is more than CI+CD toolsSudipta Lahiri
 
Agile Gurugram 2017 | DevOps > CI + CD | Sudipta Lahiri
Agile Gurugram 2017 | DevOps > CI + CD | Sudipta LahiriAgile Gurugram 2017 | DevOps > CI + CD | Sudipta Lahiri
Agile Gurugram 2017 | DevOps > CI + CD | Sudipta LahiriAgileNetwork
 
Addressing Performance Testing Challenges in Agile: Process and Tools: Impetu...
Addressing Performance Testing Challenges in Agile: Process and Tools: Impetu...Addressing Performance Testing Challenges in Agile: Process and Tools: Impetu...
Addressing Performance Testing Challenges in Agile: Process and Tools: Impetu...Impetus Technologies
 
Prototypemodel in SDLC ppt
Prototypemodel  in SDLC pptPrototypemodel  in SDLC ppt
Prototypemodel in SDLC pptsoni singh
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Developmentnikhil sreeni
 
0121_RESOURCE_SoftwareDevelopmentLifecycles.pdf
0121_RESOURCE_SoftwareDevelopmentLifecycles.pdf0121_RESOURCE_SoftwareDevelopmentLifecycles.pdf
0121_RESOURCE_SoftwareDevelopmentLifecycles.pdfBinNguynVn3
 
Software prototyping
Software prototyping  Software prototyping
Software prototyping Huda Seyam
 
1 rapid prototyping model
1 rapid prototyping model1 rapid prototyping model
1 rapid prototyping modeldelaco
 
ITFT - Software prototyping
ITFT -  Software prototypingITFT -  Software prototyping
ITFT - Software prototypingShruti Kunwar
 
Scrum workshop for Project Managers
Scrum workshop for Project ManagersScrum workshop for Project Managers
Scrum workshop for Project ManagersJesse Houwing
 

Semelhante a Agile with legacy product (20)

Necessary but not sufficient
Necessary but not sufficientNecessary but not sufficient
Necessary but not sufficient
 
Thesis proposal checklist
Thesis proposal checklistThesis proposal checklist
Thesis proposal checklist
 
Using tdd to understand legacy codes
Using tdd to understand legacy codesUsing tdd to understand legacy codes
Using tdd to understand legacy codes
 
Magic of agile
Magic of agileMagic of agile
Magic of agile
 
Introduction to Agile Values & Principles
Introduction to Agile Values & PrinciplesIntroduction to Agile Values & Principles
Introduction to Agile Values & Principles
 
Prototype Model
Prototype ModelPrototype Model
Prototype Model
 
Agile Methodology - Agile Project Management Training
Agile Methodology - Agile Project Management TrainingAgile Methodology - Agile Project Management Training
Agile Methodology - Agile Project Management Training
 
Prototype Model
Prototype ModelPrototype Model
Prototype Model
 
PROTOTYPE MODEL
PROTOTYPE MODELPROTOTYPE MODEL
PROTOTYPE MODEL
 
Dev ops is more than CI+CD tools
Dev ops is more than CI+CD toolsDev ops is more than CI+CD tools
Dev ops is more than CI+CD tools
 
Agile Gurugram 2017 | DevOps > CI + CD | Sudipta Lahiri
Agile Gurugram 2017 | DevOps > CI + CD | Sudipta LahiriAgile Gurugram 2017 | DevOps > CI + CD | Sudipta Lahiri
Agile Gurugram 2017 | DevOps > CI + CD | Sudipta Lahiri
 
Addressing Performance Testing Challenges in Agile: Process and Tools: Impetu...
Addressing Performance Testing Challenges in Agile: Process and Tools: Impetu...Addressing Performance Testing Challenges in Agile: Process and Tools: Impetu...
Addressing Performance Testing Challenges in Agile: Process and Tools: Impetu...
 
Prototypemodel in SDLC ppt
Prototypemodel  in SDLC pptPrototypemodel  in SDLC ppt
Prototypemodel in SDLC ppt
 
Test Driven Development
Test Driven DevelopmentTest Driven Development
Test Driven Development
 
0121_RESOURCE_SoftwareDevelopmentLifecycles.pdf
0121_RESOURCE_SoftwareDevelopmentLifecycles.pdf0121_RESOURCE_SoftwareDevelopmentLifecycles.pdf
0121_RESOURCE_SoftwareDevelopmentLifecycles.pdf
 
Types of models
Types of modelsTypes of models
Types of models
 
Software prototyping
Software prototyping  Software prototyping
Software prototyping
 
1 rapid prototyping model
1 rapid prototyping model1 rapid prototyping model
1 rapid prototyping model
 
ITFT - Software prototyping
ITFT -  Software prototypingITFT -  Software prototyping
ITFT - Software prototyping
 
Scrum workshop for Project Managers
Scrum workshop for Project ManagersScrum workshop for Project Managers
Scrum workshop for Project Managers
 

Último

ECS 2024 Teams Premium - Pretty Secure
ECS 2024   Teams Premium - Pretty SecureECS 2024   Teams Premium - Pretty Secure
ECS 2024 Teams Premium - Pretty SecureFemke de Vroome
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfFIDO Alliance
 
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...FIDO Alliance
 
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...FIDO Alliance
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Patrick Viafore
 
A Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System StrategyA Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System StrategyUXDXConf
 
What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024Stephanie Beckett
 
Agentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdfAgentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdfChristopherTHyatt
 
Syngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdfSyngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdfSyngulon
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIES VE
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaCzechDreamin
 
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeFree and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeCzechDreamin
 
UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2DianaGray10
 
Buy Epson EcoTank L3210 Colour Printer Online.pptx
Buy Epson EcoTank L3210 Colour Printer Online.pptxBuy Epson EcoTank L3210 Colour Printer Online.pptx
Buy Epson EcoTank L3210 Colour Printer Online.pptxEasyPrinterHelp
 
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...FIDO Alliance
 
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfFIDO Alliance
 
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FIDO Alliance
 
Introduction to Open Source RAG and RAG Evaluation
Introduction to Open Source RAG and RAG EvaluationIntroduction to Open Source RAG and RAG Evaluation
Introduction to Open Source RAG and RAG EvaluationZilliz
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlPeter Udo Diehl
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfFIDO Alliance
 

Último (20)

ECS 2024 Teams Premium - Pretty Secure
ECS 2024   Teams Premium - Pretty SecureECS 2024   Teams Premium - Pretty Secure
ECS 2024 Teams Premium - Pretty Secure
 
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdfWhere to Learn More About FDO _ Richard at FIDO Alliance.pdf
Where to Learn More About FDO _ Richard at FIDO Alliance.pdf
 
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
Choosing the Right FDO Deployment Model for Your Application _ Geoffrey at In...
 
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
ASRock Industrial FDO Solutions in Action for Industrial Edge AI _ Kenny at A...
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024
 
A Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System StrategyA Business-Centric Approach to Design System Strategy
A Business-Centric Approach to Design System Strategy
 
What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024What's New in Teams Calling, Meetings and Devices April 2024
What's New in Teams Calling, Meetings and Devices April 2024
 
Agentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdfAgentic RAG What it is its types applications and implementation.pdf
Agentic RAG What it is its types applications and implementation.pdf
 
Syngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdfSyngulon - Selection technology May 2024.pdf
Syngulon - Selection technology May 2024.pdf
 
IESVE for Early Stage Design and Planning
IESVE for Early Stage Design and PlanningIESVE for Early Stage Design and Planning
IESVE for Early Stage Design and Planning
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara Laskowska
 
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi IbrahimzadeFree and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
Free and Effective: Making Flows Publicly Accessible, Yumi Ibrahimzade
 
UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2
 
Buy Epson EcoTank L3210 Colour Printer Online.pptx
Buy Epson EcoTank L3210 Colour Printer Online.pptxBuy Epson EcoTank L3210 Colour Printer Online.pptx
Buy Epson EcoTank L3210 Colour Printer Online.pptx
 
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
 
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdfLinux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
Linux Foundation Edge _ Overview of FDO Software Components _ Randy at Intel.pdf
 
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
FDO for Camera, Sensor and Networking Device – Commercial Solutions from VinC...
 
Introduction to Open Source RAG and RAG Evaluation
Introduction to Open Source RAG and RAG EvaluationIntroduction to Open Source RAG and RAG Evaluation
Introduction to Open Source RAG and RAG Evaluation
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
 

Agile with legacy product

  • 1. Agile with Legacy Product Copyright 2013 Suradet Jitprapaikulsarn www.ajarnsuradet.com
  • 2. Revision 1.0 Agile with Legacy Product 2 Creative Commons License 3.0 This work is licensed under the Creative Commons Attribution-NonCommercial- ShareAlike 3.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by-nc-sa/3.0/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA.
  • 3. Revision 1.0 Agile with Legacy Product 3 You are free: to Share — to copy, distribute and transmit the work to Remix — to adapt the work Under the following conditions: Attribution — You must attribute the work in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the work). Noncommercial — You may not use this work for commercial purposes. Share Alike — If you alter, transform, or build upon this work, you may distribute the resulting work only under the same or similar license to this one.
  • 4. Revision 1.0 Agile with Legacy Product 4 With the understanding that: • Waiver — Any of the above conditions can be waived if you get permission from the copyright holder. • Public Domain — Where the work or any of its elements is in the public domain under applicable law, that status is in no way affected by the license. • Other Rights — In no way are any of the following rights affected by the license: – Your fair dealing or fair use rights, or other applicable copyright exceptions and limitations; – The author's moral rights; – Rights other persons may have either in the work itself or in how the work is used, such as publicity or privacy rights. Notice — For any reuse or distribution, you must make clear to others the license terms of this work. The best way to do this is with a link to this web page.
  • 5. Revision 1.0 Agile with Legacy Product 5 About Presenter • Suradet Jitprapaikulsarn, Ph.D. • Lecturer • Department of Electrical and Computer Engineering, Naresuan University, Phitsanulok • Email: suradet.j@gmail.com • Facebook: Suradet Jitprapaikulsarn
  • 6. Revision 1.0 Agile with Legacy Product 6 About Me (Cont.) • Apply PSP since 1997 • Apply TDD since 1999 • 1st Thai ScrumMaster, since 2009 • Was the only authorized PSP instructor in Southeast Asia • 1st Thai Certified PSP developer • 5 times CMMI appraisal team member • Only Asian instructor invited for Software Architecture workshop at SEI, 7 year in a row (2006 – 2012)
  • 7. Revision 1.0 Agile with Legacy Product 7 Topics • What is a Legacy Product? • Typical Problems • Why change? • Issues • An Approach • Tools & Techniques
  • 8. Revision 1.0 Agile with Legacy Product 8 What is a Legacy Product? • Any system currently in production upon which a business process depends – Kent J. McDonald, Legacy System Migration in an Agile Manner, 2008 • Product without tests – Michael Feathers, Working Effectively with Legacy Code, 2005 An existing product that needs changes Suradet, 2013
  • 9. Revision 1.0 Agile with Legacy Product 9 Typical Problems • Production system • No documents • Developers gone • Third party products
  • 10. Revision 1.0 Agile with Legacy Product 10 Why change • Fix • Optimize • Sustain • Re-platform • Decommission • Refactor • Consolidate • Extend/Enhance • Migrate • Replace Adapted from Capgemini, Agile Legacy Lifecycle, 2011 and Michael Feathers, Working Effectively with Legacy Code, 2005
  • 11. Revision 1.0 Agile with Legacy Product 11 Impacts of changes • Functionality • Quality Attributes • Structure • Resource Usage
  • 12. Revision 1.0 Agile with Legacy Product 12 Issues • Technical • Management • Organizational
  • 13. Revision 1.0 Agile with Legacy Product 13 An Approach • Identify the change types • Identify the interactions of the changes • Identify the legacy assets • Analyze the interaction • Keep it agile
  • 14. Revision 1.0 Agile with Legacy Product 14 A Legacy Code Change Algorithm • Identify change points • Find test points • Break dependencies • Write tests • Make changes and refactor Michael Feathers, Working Effectively with Legacy Code, 2005
  • 15. Revision 1.0 Agile with Legacy Product 15 Tools • Documentation tools • Refactoring tools • Unit testing tools • General testing tools
  • 16. Revision 1.0 Agile with Legacy Product 16 Techniques • Breaking Dependencies • Seam model – A place where behavior can be altered without editing the code at the point of change • Sprout Method • Wrapper