SlideShare una empresa de Scribd logo
1 de 125
Descargar para leer sin conexión
Refactoring Fest
          Naresh Jain
     naresh@agilefaqs.com



  Licensed Under Creative Commons by Naresh Jain
                                                   1
Tutorial Schedule


What, Why, When and How... Refactor?
How to Refactor to Patterns
How to deal with Legacy Code?
Refactoring Hands-on session




             Licensed Under Creative Commons by Naresh Jain
                                                              2
Three Golden Rules


Once and only once [DRY]
Express intent
Tell, don’t ask




                  Licensed Under Creative Commons by Naresh Jain
                                                                   3
Definitions




Licensed Under Creative Commons by Naresh Jain
                                                 4
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest
Refactoring Fest

Más contenido relacionado

Destacado

Agile Requirements Management
Agile Requirements ManagementAgile Requirements Management
Agile Requirements ManagementAlexey Krivitsky
 
Project estimates. And fallacies
Project estimates. And fallaciesProject estimates. And fallacies
Project estimates. And fallaciesAlexey Krivitsky
 
Пример внедрения Agile в крупном проекте. Как не следует внедрять Agile
Пример внедрения Agile в крупном проекте. Как не следует внедрять AgileПример внедрения Agile в крупном проекте. Как не следует внедрять Agile
Пример внедрения Agile в крупном проекте. Как не следует внедрять AgileAlexey Krivitsky
 
Обогащение командного взаимодействия. Общение в стиле коучинг
Обогащение командного взаимодействия. Общение в стиле коучингОбогащение командного взаимодействия. Общение в стиле коучинг
Обогащение командного взаимодействия. Общение в стиле коучингAlexey Krivitsky
 
Redistributable intro To Scrum, Russian
Redistributable intro To Scrum, RussianRedistributable intro To Scrum, Russian
Redistributable intro To Scrum, RussianAlexey Krivitsky
 
Agile and Scrum for ORSCers
Agile and Scrum for ORSCersAgile and Scrum for ORSCers
Agile and Scrum for ORSCersAlexey Krivitsky
 

Destacado (10)

Agile Requirements Management
Agile Requirements ManagementAgile Requirements Management
Agile Requirements Management
 
Project estimates. And fallacies
Project estimates. And fallaciesProject estimates. And fallacies
Project estimates. And fallacies
 
Stop asking when
Stop asking whenStop asking when
Stop asking when
 
Пример внедрения Agile в крупном проекте. Как не следует внедрять Agile
Пример внедрения Agile в крупном проекте. Как не следует внедрять AgileПример внедрения Agile в крупном проекте. Как не следует внедрять Agile
Пример внедрения Agile в крупном проекте. Как не следует внедрять Agile
 
Agile Metrics
Agile MetricsAgile Metrics
Agile Metrics
 
Retrospectives Advices
Retrospectives AdvicesRetrospectives Advices
Retrospectives Advices
 
Обогащение командного взаимодействия. Общение в стиле коучинг
Обогащение командного взаимодействия. Общение в стиле коучингОбогащение командного взаимодействия. Общение в стиле коучинг
Обогащение командного взаимодействия. Общение в стиле коучинг
 
Redistributable intro To Scrum, Russian
Redistributable intro To Scrum, RussianRedistributable intro To Scrum, Russian
Redistributable intro To Scrum, Russian
 
Scrum And Business
Scrum And BusinessScrum And Business
Scrum And Business
 
Agile and Scrum for ORSCers
Agile and Scrum for ORSCersAgile and Scrum for ORSCers
Agile and Scrum for ORSCers
 

Más de Alexey Krivitsky

Driving the second wave of Agile revolution with #OrgTopologies
Driving the second wave of Agile revolution with #OrgTopologiesDriving the second wave of Agile revolution with #OrgTopologies
Driving the second wave of Agile revolution with #OrgTopologiesAlexey Krivitsky
 
Org Topologies at Scrum Day Europe 2022, Amsterdam
Org Topologies at Scrum Day Europe 2022, AmsterdamOrg Topologies at Scrum Day Europe 2022, Amsterdam
Org Topologies at Scrum Day Europe 2022, AmsterdamAlexey Krivitsky
 
Organizational Topologies: a roadmap towards a resilient and adaptive product...
Organizational Topologies: a roadmap towards a resilient and adaptive product...Organizational Topologies: a roadmap towards a resilient and adaptive product...
Organizational Topologies: a roadmap towards a resilient and adaptive product...Alexey Krivitsky
 
Improve your Product Backlog Refinement (PBR) Process
Improve your Product Backlog Refinement (PBR) ProcessImprove your Product Backlog Refinement (PBR) Process
Improve your Product Backlog Refinement (PBR) ProcessAlexey Krivitsky
 
#lego4scrum with Large-Scale Scrum (LeSS)
#lego4scrum with Large-Scale Scrum (LeSS)#lego4scrum with Large-Scale Scrum (LeSS)
#lego4scrum with Large-Scale Scrum (LeSS)Alexey Krivitsky
 
Powerful interventions for agile coaching
Powerful interventions for agile coachingPowerful interventions for agile coaching
Powerful interventions for agile coachingAlexey Krivitsky
 
LeSS simulation with LEGO at #agileee 2017. (lego for scrum)
LeSS simulation with LEGO at #agileee 2017. (lego for scrum)LeSS simulation with LEGO at #agileee 2017. (lego for scrum)
LeSS simulation with LEGO at #agileee 2017. (lego for scrum)Alexey Krivitsky
 
Studying organizational complexity and its effects on scaling agility
Studying organizational complexity and its effects on scaling agilityStudying organizational complexity and its effects on scaling agility
Studying organizational complexity and its effects on scaling agilityAlexey Krivitsky
 
Understanding Complexity of Organizational and System Dynamics
Understanding Complexity of Organizational and System DynamicsUnderstanding Complexity of Organizational and System Dynamics
Understanding Complexity of Organizational and System DynamicsAlexey Krivitsky
 
Complexity of organizational design and its effect scaling agility
Complexity of organizational design and its effect scaling agilityComplexity of organizational design and its effect scaling agility
Complexity of organizational design and its effect scaling agilityAlexey Krivitsky
 
Agile Coaching Canvas: dream up, co-create and share your agile coaching visi...
Agile Coaching Canvas: dream up, co-create and share your agile coaching visi...Agile Coaching Canvas: dream up, co-create and share your agile coaching visi...
Agile Coaching Canvas: dream up, co-create and share your agile coaching visi...Alexey Krivitsky
 
Dejirafication: free your process from tools
Dejirafication: free your process from toolsDejirafication: free your process from tools
Dejirafication: free your process from toolsAlexey Krivitsky
 
Agile Coaching Canvas at #agile2016
Agile Coaching Canvas at #agile2016Agile Coaching Canvas at #agile2016
Agile Coaching Canvas at #agile2016Alexey Krivitsky
 
Dejirafication - clean your process
Dejirafication - clean your processDejirafication - clean your process
Dejirafication - clean your processAlexey Krivitsky
 
Agile Retrospective Kickstarter @Riga
Agile Retrospective Kickstarter @RigaAgile Retrospective Kickstarter @Riga
Agile Retrospective Kickstarter @RigaAlexey Krivitsky
 
Kickstart Your Retrospectives with a Cheat Sheet
Kickstart Your Retrospectives with a Cheat SheetKickstart Your Retrospectives with a Cheat Sheet
Kickstart Your Retrospectives with a Cheat SheetAlexey Krivitsky
 
How to grow learning multi-site agile organizations
How to grow learning multi-site agile organizationsHow to grow learning multi-site agile organizations
How to grow learning multi-site agile organizationsAlexey Krivitsky
 
Certified Scrum Product Owner: class desk, posters and photos
Certified Scrum Product Owner: class desk, posters and photosCertified Scrum Product Owner: class desk, posters and photos
Certified Scrum Product Owner: class desk, posters and photosAlexey Krivitsky
 

Más de Alexey Krivitsky (20)

Driving the second wave of Agile revolution with #OrgTopologies
Driving the second wave of Agile revolution with #OrgTopologiesDriving the second wave of Agile revolution with #OrgTopologies
Driving the second wave of Agile revolution with #OrgTopologies
 
Org Topologies at Scrum Day Europe 2022, Amsterdam
Org Topologies at Scrum Day Europe 2022, AmsterdamOrg Topologies at Scrum Day Europe 2022, Amsterdam
Org Topologies at Scrum Day Europe 2022, Amsterdam
 
Organizational Topologies: a roadmap towards a resilient and adaptive product...
Organizational Topologies: a roadmap towards a resilient and adaptive product...Organizational Topologies: a roadmap towards a resilient and adaptive product...
Organizational Topologies: a roadmap towards a resilient and adaptive product...
 
Improve your Product Backlog Refinement (PBR) Process
Improve your Product Backlog Refinement (PBR) ProcessImprove your Product Backlog Refinement (PBR) Process
Improve your Product Backlog Refinement (PBR) Process
 
#lego4scrum with Large-Scale Scrum (LeSS)
#lego4scrum with Large-Scale Scrum (LeSS)#lego4scrum with Large-Scale Scrum (LeSS)
#lego4scrum with Large-Scale Scrum (LeSS)
 
Culture follows structure
Culture follows structureCulture follows structure
Culture follows structure
 
Powerful interventions for agile coaching
Powerful interventions for agile coachingPowerful interventions for agile coaching
Powerful interventions for agile coaching
 
LeSS simulation with LEGO at #agileee 2017. (lego for scrum)
LeSS simulation with LEGO at #agileee 2017. (lego for scrum)LeSS simulation with LEGO at #agileee 2017. (lego for scrum)
LeSS simulation with LEGO at #agileee 2017. (lego for scrum)
 
Studying organizational complexity and its effects on scaling agility
Studying organizational complexity and its effects on scaling agilityStudying organizational complexity and its effects on scaling agility
Studying organizational complexity and its effects on scaling agility
 
Understanding Complexity of Organizational and System Dynamics
Understanding Complexity of Organizational and System DynamicsUnderstanding Complexity of Organizational and System Dynamics
Understanding Complexity of Organizational and System Dynamics
 
Complexity of organizational design and its effect scaling agility
Complexity of organizational design and its effect scaling agilityComplexity of organizational design and its effect scaling agility
Complexity of organizational design and its effect scaling agility
 
Agile Coaching Canvas: dream up, co-create and share your agile coaching visi...
Agile Coaching Canvas: dream up, co-create and share your agile coaching visi...Agile Coaching Canvas: dream up, co-create and share your agile coaching visi...
Agile Coaching Canvas: dream up, co-create and share your agile coaching visi...
 
Dejirafication: free your process from tools
Dejirafication: free your process from toolsDejirafication: free your process from tools
Dejirafication: free your process from tools
 
Agile Coaching Canvas at #agile2016
Agile Coaching Canvas at #agile2016Agile Coaching Canvas at #agile2016
Agile Coaching Canvas at #agile2016
 
Dejirafication - clean your process
Dejirafication - clean your processDejirafication - clean your process
Dejirafication - clean your process
 
Agile Retrospective Kickstarter @Riga
Agile Retrospective Kickstarter @RigaAgile Retrospective Kickstarter @Riga
Agile Retrospective Kickstarter @Riga
 
Agile Coaching Canvas
Agile Coaching CanvasAgile Coaching Canvas
Agile Coaching Canvas
 
Kickstart Your Retrospectives with a Cheat Sheet
Kickstart Your Retrospectives with a Cheat SheetKickstart Your Retrospectives with a Cheat Sheet
Kickstart Your Retrospectives with a Cheat Sheet
 
How to grow learning multi-site agile organizations
How to grow learning multi-site agile organizationsHow to grow learning multi-site agile organizations
How to grow learning multi-site agile organizations
 
Certified Scrum Product Owner: class desk, posters and photos
Certified Scrum Product Owner: class desk, posters and photosCertified Scrum Product Owner: class desk, posters and photos
Certified Scrum Product Owner: class desk, posters and photos
 

Último

APRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdfAPRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdfRbc Rbcua
 
Traction part 2 - EOS Model JAX Bridges.
Traction part 2 - EOS Model JAX Bridges.Traction part 2 - EOS Model JAX Bridges.
Traction part 2 - EOS Model JAX Bridges.Anamaria Contreras
 
Intro to BCG's Carbon Emissions Benchmark_vF.pdf
Intro to BCG's Carbon Emissions Benchmark_vF.pdfIntro to BCG's Carbon Emissions Benchmark_vF.pdf
Intro to BCG's Carbon Emissions Benchmark_vF.pdfpollardmorgan
 
8447779800, Low rate Call girls in Shivaji Enclave Delhi NCR
8447779800, Low rate Call girls in Shivaji Enclave Delhi NCR8447779800, Low rate Call girls in Shivaji Enclave Delhi NCR
8447779800, Low rate Call girls in Shivaji Enclave Delhi NCRashishs7044
 
8447779800, Low rate Call girls in Rohini Delhi NCR
8447779800, Low rate Call girls in Rohini Delhi NCR8447779800, Low rate Call girls in Rohini Delhi NCR
8447779800, Low rate Call girls in Rohini Delhi NCRashishs7044
 
FULL ENJOY Call girls in Paharganj Delhi | 8377087607
FULL ENJOY Call girls in Paharganj Delhi | 8377087607FULL ENJOY Call girls in Paharganj Delhi | 8377087607
FULL ENJOY Call girls in Paharganj Delhi | 8377087607dollysharma2066
 
8447779800, Low rate Call girls in Saket Delhi NCR
8447779800, Low rate Call girls in Saket Delhi NCR8447779800, Low rate Call girls in Saket Delhi NCR
8447779800, Low rate Call girls in Saket Delhi NCRashishs7044
 
NewBase 19 April 2024 Energy News issue - 1717 by Khaled Al Awadi.pdf
NewBase  19 April  2024  Energy News issue - 1717 by Khaled Al Awadi.pdfNewBase  19 April  2024  Energy News issue - 1717 by Khaled Al Awadi.pdf
NewBase 19 April 2024 Energy News issue - 1717 by Khaled Al Awadi.pdfKhaled Al Awadi
 
Digital Transformation in the PLM domain - distrib.pdf
Digital Transformation in the PLM domain - distrib.pdfDigital Transformation in the PLM domain - distrib.pdf
Digital Transformation in the PLM domain - distrib.pdfJos Voskuil
 
8447779800, Low rate Call girls in Tughlakabad Delhi NCR
8447779800, Low rate Call girls in Tughlakabad Delhi NCR8447779800, Low rate Call girls in Tughlakabad Delhi NCR
8447779800, Low rate Call girls in Tughlakabad Delhi NCRashishs7044
 
Islamabad Escorts | Call 03070433345 | Escort Service in Islamabad
Islamabad Escorts | Call 03070433345 | Escort Service in IslamabadIslamabad Escorts | Call 03070433345 | Escort Service in Islamabad
Islamabad Escorts | Call 03070433345 | Escort Service in IslamabadAyesha Khan
 
8447779800, Low rate Call girls in Uttam Nagar Delhi NCR
8447779800, Low rate Call girls in Uttam Nagar Delhi NCR8447779800, Low rate Call girls in Uttam Nagar Delhi NCR
8447779800, Low rate Call girls in Uttam Nagar Delhi NCRashishs7044
 
Organizational Structure Running A Successful Business
Organizational Structure Running A Successful BusinessOrganizational Structure Running A Successful Business
Organizational Structure Running A Successful BusinessSeta Wicaksana
 
Ten Organizational Design Models to align structure and operations to busines...
Ten Organizational Design Models to align structure and operations to busines...Ten Organizational Design Models to align structure and operations to busines...
Ten Organizational Design Models to align structure and operations to busines...Seta Wicaksana
 
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu Menza
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu MenzaYouth Involvement in an Innovative Coconut Value Chain by Mwalimu Menza
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu Menzaictsugar
 
Memorándum de Entendimiento (MoU) entre Codelco y SQM
Memorándum de Entendimiento (MoU) entre Codelco y SQMMemorándum de Entendimiento (MoU) entre Codelco y SQM
Memorándum de Entendimiento (MoU) entre Codelco y SQMVoces Mineras
 
Independent Call Girls Andheri Nightlaila 9967584737
Independent Call Girls Andheri Nightlaila 9967584737Independent Call Girls Andheri Nightlaila 9967584737
Independent Call Girls Andheri Nightlaila 9967584737Riya Pathan
 
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCRashishs7044
 
Case study on tata clothing brand zudio in detail
Case study on tata clothing brand zudio in detailCase study on tata clothing brand zudio in detail
Case study on tata clothing brand zudio in detailAriel592675
 

Último (20)

APRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdfAPRIL2024_UKRAINE_xml_0000000000000 .pdf
APRIL2024_UKRAINE_xml_0000000000000 .pdf
 
Traction part 2 - EOS Model JAX Bridges.
Traction part 2 - EOS Model JAX Bridges.Traction part 2 - EOS Model JAX Bridges.
Traction part 2 - EOS Model JAX Bridges.
 
Intro to BCG's Carbon Emissions Benchmark_vF.pdf
Intro to BCG's Carbon Emissions Benchmark_vF.pdfIntro to BCG's Carbon Emissions Benchmark_vF.pdf
Intro to BCG's Carbon Emissions Benchmark_vF.pdf
 
8447779800, Low rate Call girls in Shivaji Enclave Delhi NCR
8447779800, Low rate Call girls in Shivaji Enclave Delhi NCR8447779800, Low rate Call girls in Shivaji Enclave Delhi NCR
8447779800, Low rate Call girls in Shivaji Enclave Delhi NCR
 
8447779800, Low rate Call girls in Rohini Delhi NCR
8447779800, Low rate Call girls in Rohini Delhi NCR8447779800, Low rate Call girls in Rohini Delhi NCR
8447779800, Low rate Call girls in Rohini Delhi NCR
 
FULL ENJOY Call girls in Paharganj Delhi | 8377087607
FULL ENJOY Call girls in Paharganj Delhi | 8377087607FULL ENJOY Call girls in Paharganj Delhi | 8377087607
FULL ENJOY Call girls in Paharganj Delhi | 8377087607
 
8447779800, Low rate Call girls in Saket Delhi NCR
8447779800, Low rate Call girls in Saket Delhi NCR8447779800, Low rate Call girls in Saket Delhi NCR
8447779800, Low rate Call girls in Saket Delhi NCR
 
NewBase 19 April 2024 Energy News issue - 1717 by Khaled Al Awadi.pdf
NewBase  19 April  2024  Energy News issue - 1717 by Khaled Al Awadi.pdfNewBase  19 April  2024  Energy News issue - 1717 by Khaled Al Awadi.pdf
NewBase 19 April 2024 Energy News issue - 1717 by Khaled Al Awadi.pdf
 
Digital Transformation in the PLM domain - distrib.pdf
Digital Transformation in the PLM domain - distrib.pdfDigital Transformation in the PLM domain - distrib.pdf
Digital Transformation in the PLM domain - distrib.pdf
 
8447779800, Low rate Call girls in Tughlakabad Delhi NCR
8447779800, Low rate Call girls in Tughlakabad Delhi NCR8447779800, Low rate Call girls in Tughlakabad Delhi NCR
8447779800, Low rate Call girls in Tughlakabad Delhi NCR
 
Islamabad Escorts | Call 03070433345 | Escort Service in Islamabad
Islamabad Escorts | Call 03070433345 | Escort Service in IslamabadIslamabad Escorts | Call 03070433345 | Escort Service in Islamabad
Islamabad Escorts | Call 03070433345 | Escort Service in Islamabad
 
8447779800, Low rate Call girls in Uttam Nagar Delhi NCR
8447779800, Low rate Call girls in Uttam Nagar Delhi NCR8447779800, Low rate Call girls in Uttam Nagar Delhi NCR
8447779800, Low rate Call girls in Uttam Nagar Delhi NCR
 
Organizational Structure Running A Successful Business
Organizational Structure Running A Successful BusinessOrganizational Structure Running A Successful Business
Organizational Structure Running A Successful Business
 
Ten Organizational Design Models to align structure and operations to busines...
Ten Organizational Design Models to align structure and operations to busines...Ten Organizational Design Models to align structure and operations to busines...
Ten Organizational Design Models to align structure and operations to busines...
 
Japan IT Week 2024 Brochure by 47Billion (English)
Japan IT Week 2024 Brochure by 47Billion (English)Japan IT Week 2024 Brochure by 47Billion (English)
Japan IT Week 2024 Brochure by 47Billion (English)
 
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu Menza
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu MenzaYouth Involvement in an Innovative Coconut Value Chain by Mwalimu Menza
Youth Involvement in an Innovative Coconut Value Chain by Mwalimu Menza
 
Memorándum de Entendimiento (MoU) entre Codelco y SQM
Memorándum de Entendimiento (MoU) entre Codelco y SQMMemorándum de Entendimiento (MoU) entre Codelco y SQM
Memorándum de Entendimiento (MoU) entre Codelco y SQM
 
Independent Call Girls Andheri Nightlaila 9967584737
Independent Call Girls Andheri Nightlaila 9967584737Independent Call Girls Andheri Nightlaila 9967584737
Independent Call Girls Andheri Nightlaila 9967584737
 
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
8447779800, Low rate Call girls in Kotla Mubarakpur Delhi NCR
 
Case study on tata clothing brand zudio in detail
Case study on tata clothing brand zudio in detailCase study on tata clothing brand zudio in detail
Case study on tata clothing brand zudio in detail
 

Refactoring Fest