SlideShare a Scribd company logo
www.agilegurgaon.com
www.agilegurgaon.com
Change Vector Tracking
A reflective approach towards designing large scale software
BY
Ranjith Tharayil
Senior Agile Consultant & Technical Coach
rtharayil@soultionsiq.com
www.agilegurgaon.com
Expectations and take always
• Understand the problem wrt design debt in large scale software
systems.
• Exposure to a novel technique called Change Vector Tracking (CVT)
• Can start applying it right away
• Knowledge of how change can be modelled as a weighted vector
• Using CVT to make informed decision on architecture refactoring.
www.agilegurgaon.com
About Me
https://in.linkedin.com/in/ranjiththarayil
Ranjith Tharayil
Design Is a Wicked Problem , a “wicked” problem is one that
could be clearly defined only by solving it, or by solving part of
it .This paradox implies, essentially, that you have to “solve”
the problem once in order to clearly define it and then solve it
again to create a solution that works
“
”
- McConnell, Steve. Code complete. Pearson Education, 2004.
www.agilegurgaon.com
Emergent design
Test Code Refactor
Test Code Refactor
Test Code Refactor
Test Code Refactor
Test Code Refactor
Test Code Refactor
Test Code Refactor
Test Code Refactor
Design
www.agilegurgaon.com
Problem : Refactoring less focus on
architecture
System
Sub-
system
Modules
Modules
Modules
Sub-
system
Modules
Modules
Modules
Sub-
system
Modules
Sub-
system
Modules
modules
Refactoring , observed trends
» More focus on classes inside modules
» Less focus on Modules ,sub-
Subsystem and system
» Inexperience team members
» Accumulate design debt
» Technical debt
www.agilegurgaon.com
Example : Super MarketI 'am using a simple example to explain the problem , same is applicable for bigger complex systems
 The super market has many products to sell
 Each product has a
 quality
 cost
 The rules for computation of Quality and Cost are
different for each product
Abstract Product
computeQuality()
computeCost ()
Concreate product 1
Concreate product 2
Concreate product n-1
Concreate product N
www.agilegurgaon.com
Is this the best design ?
Onion
computeQuality()
computeCost ()
»Is this following SRP ? Single responsibility principle
»What if the pricing strategy of a product varies from
time to time ?
www.agilegurgaon.com
How about a different design
Abstract Product
Pricing strategy
computeQuality()
Concreate product 1
Concreate product 2
Concreate product n-1
Concreate product N
PricingStrategy
CompteCost()
Strategy 1
Strategy 2
Strategy 3
www.agilegurgaon.com
Another design
Product
PricingStrategy
QualityRule
PricingStrategy
CompteCost()
Strategy 1
Strategy 2
Strategy 3
QualityRule
Quality()
Rule 1
Rule 2
www.agilegurgaon.com
Which design is better ?
www.agilegurgaon.com
Which design is better ?
• Answer is : it depends
• Dependents on what ?
• Lest try to define this context
Context
www.agilegurgaon.com
Which design is better ?
• We will be adding new
products
• We Need to modify pricing
strategy for existing products
• We will be only adding new
products
• We need to often modify
pricing strategy & Quality rule
for existing products
www.agilegurgaon.com
Design should depend on how the
system is behaving currently
• The behaviour of a system changes with time
• Due to
• new requirements
• enhancements
• Change is constant and can disrupt design &
architecture
• Need to track change and its effect on
design/architecture
www.agilegurgaon.com
Modelling change as a vector
• Change has multiple dimensions
• Hence it can be quantified using a vector like
ax+by+cz
• Example:
3(New Products) +
2(Modify Pricing strategy)
4(New Products) +
1(Miscellaneous)
2(Modify Pricing strategy) +
2(Modify Quality rule) +
1(Miscellaneous)
www.agilegurgaon.com
How change can be modelled as a weighted
vector ?
• We need to periodically review & document change vector for our
system
3(New Products)
+
2(Modify Pricing strategy)
4(New Products)
+
1(Miscellaneous)
Few Months
Change: new requirement , Enhancement
Change
requests
Dev
Track
Change
vector
Refactor
www.agilegurgaon.com
Change vector tracking from
Architecture to class
System
Sub-
system
Modules
classes
Modules
classes
Sub-
system
Modules
classes
Change
requests
Dev
Track
Change
vector
Refactor
www.agilegurgaon.com
Change vector tracking in context of micro
services
www.agilegurgaon.com
Process and Ceremonies
• Change vector tracking meeting
• with TL , Architects
• Every month initially
• Cadence decide by need
• Time boxed
• Analyse change request from
• Source control
• Analyse product backlog
• Document Change vector
• Identify if any design debt
• Prioritize (design debt ) and push a story to your
back log
Change
requests
Dev
Track
Change
vector
Refactor
www.agilegurgaon.com
Re-visiting expectations
• Understand the problem wrt design debt in large scale software
systems.
• Exposure to a novel technique called Change Vector Tracking (CVT)
• Can start applying it right away
• Add this jargon to your resume :P
• Knowledge of how change can be modelled as a weighted vector
• Using CVT to make informed decision on architecture refactoring.
www.agilegurgaon.com
Questions
Acknowledgments :
After hearing out this technique Sharad Julka coined the term reflective design .

More Related Content

Similar to Agile Gurugram 2016 | Conference | Change Vector Tracking in emergent Architecture | Ranjith Tharayil

Best Practices for a Repeatable Shift-Left Commitment
Best Practices for a Repeatable Shift-Left CommitmentBest Practices for a Repeatable Shift-Left Commitment
Best Practices for a Repeatable Shift-Left Commitment
Applause
 
OPS 571T Education Specialist |tutorialrank.com
OPS 571T Education Specialist |tutorialrank.comOPS 571T Education Specialist |tutorialrank.com
OPS 571T Education Specialist |tutorialrank.com
ladworkspaces
 
Software Architecture – Centric Methods and Agile Development
Software Architecture –   Centric Methods and   Agile DevelopmentSoftware Architecture –   Centric Methods and   Agile Development
Software Architecture – Centric Methods and Agile Development
sathish sak
 
SPM 5 - Release Planning
SPM 5 - Release PlanningSPM 5 - Release Planning
SPM 5 - Release Planning
Garm Lucassen
 
Quality Engineering in today's cross-functTeams with TMAP
Quality Engineering in today's cross-functTeams with TMAPQuality Engineering in today's cross-functTeams with TMAP
Quality Engineering in today's cross-functTeams with TMAP
Rik Marselis
 
Secrets of Value Stream Mapping for Future State
Secrets of Value Stream Mapping for Future StateSecrets of Value Stream Mapping for Future State
Secrets of Value Stream Mapping for Future State
DevOps.com
 
Agile Development | Agile Process Models
Agile Development | Agile Process ModelsAgile Development | Agile Process Models
Agile Development | Agile Process Models
Ahsan Rahim
 
Agile and fixed budget projects
Agile and fixed budget projectsAgile and fixed budget projects
Agile and fixed budget projects
Gul Mohammad
 
PeopleSoft 9.2 HCM Features and Functions Including Fluid Mobile
PeopleSoft 9.2 HCM Features and Functions Including Fluid MobilePeopleSoft 9.2 HCM Features and Functions Including Fluid Mobile
PeopleSoft 9.2 HCM Features and Functions Including Fluid Mobile
NERUG
 
Software Development Life Cycle steps.pdf
Software Development Life Cycle steps.pdfSoftware Development Life Cycle steps.pdf
Software Development Life Cycle steps.pdf
rajesshs31r
 
Agile Metrics : A seminal approach for calculating Metrics in Agile Projects
Agile Metrics : A seminal approach for calculating Metrics in Agile ProjectsAgile Metrics : A seminal approach for calculating Metrics in Agile Projects
Agile Metrics : A seminal approach for calculating Metrics in Agile Projects
Prashant Ram
 
OOSDLC.pptx
OOSDLC.pptxOOSDLC.pptx
OOSDLC.pptx
RAJESH S
 
3.2 Managing Engineering Design.ppt
3.2 Managing Engineering Design.ppt3.2 Managing Engineering Design.ppt
3.2 Managing Engineering Design.ppt
KrishnaGupta191
 
agility_principles.ppt
agility_principles.pptagility_principles.ppt
agility_principles.ppt
AteeqaKokab1
 
Software testing
Software testingSoftware testing
Software testing
Dhanasekaran Narayanaswamy
 
Quality Function Deployment (QFD) Seminar Presentation
Quality Function Deployment (QFD) Seminar PresentationQuality Function Deployment (QFD) Seminar Presentation
Quality Function Deployment (QFD) Seminar Presentation
Orange Slides
 
DesignTech Systems - DCS presentation Oct 2017
DesignTech Systems - DCS presentation Oct 2017DesignTech Systems - DCS presentation Oct 2017
DesignTech Systems - DCS presentation Oct 2017
DesignTech Systems Ltd.
 
Software archiecture lecture08
Software archiecture   lecture08Software archiecture   lecture08
Software archiecture lecture08Luktalja
 
How to get Automated Testing "Done"
How to get Automated Testing "Done"How to get Automated Testing "Done"
How to get Automated Testing "Done"
TEST Huddle
 
ThoughtWorks Approach 2009
ThoughtWorks Approach 2009ThoughtWorks Approach 2009
ThoughtWorks Approach 2009
ThoughtWorks Studios
 

Similar to Agile Gurugram 2016 | Conference | Change Vector Tracking in emergent Architecture | Ranjith Tharayil (20)

Best Practices for a Repeatable Shift-Left Commitment
Best Practices for a Repeatable Shift-Left CommitmentBest Practices for a Repeatable Shift-Left Commitment
Best Practices for a Repeatable Shift-Left Commitment
 
OPS 571T Education Specialist |tutorialrank.com
OPS 571T Education Specialist |tutorialrank.comOPS 571T Education Specialist |tutorialrank.com
OPS 571T Education Specialist |tutorialrank.com
 
Software Architecture – Centric Methods and Agile Development
Software Architecture –   Centric Methods and   Agile DevelopmentSoftware Architecture –   Centric Methods and   Agile Development
Software Architecture – Centric Methods and Agile Development
 
SPM 5 - Release Planning
SPM 5 - Release PlanningSPM 5 - Release Planning
SPM 5 - Release Planning
 
Quality Engineering in today's cross-functTeams with TMAP
Quality Engineering in today's cross-functTeams with TMAPQuality Engineering in today's cross-functTeams with TMAP
Quality Engineering in today's cross-functTeams with TMAP
 
Secrets of Value Stream Mapping for Future State
Secrets of Value Stream Mapping for Future StateSecrets of Value Stream Mapping for Future State
Secrets of Value Stream Mapping for Future State
 
Agile Development | Agile Process Models
Agile Development | Agile Process ModelsAgile Development | Agile Process Models
Agile Development | Agile Process Models
 
Agile and fixed budget projects
Agile and fixed budget projectsAgile and fixed budget projects
Agile and fixed budget projects
 
PeopleSoft 9.2 HCM Features and Functions Including Fluid Mobile
PeopleSoft 9.2 HCM Features and Functions Including Fluid MobilePeopleSoft 9.2 HCM Features and Functions Including Fluid Mobile
PeopleSoft 9.2 HCM Features and Functions Including Fluid Mobile
 
Software Development Life Cycle steps.pdf
Software Development Life Cycle steps.pdfSoftware Development Life Cycle steps.pdf
Software Development Life Cycle steps.pdf
 
Agile Metrics : A seminal approach for calculating Metrics in Agile Projects
Agile Metrics : A seminal approach for calculating Metrics in Agile ProjectsAgile Metrics : A seminal approach for calculating Metrics in Agile Projects
Agile Metrics : A seminal approach for calculating Metrics in Agile Projects
 
OOSDLC.pptx
OOSDLC.pptxOOSDLC.pptx
OOSDLC.pptx
 
3.2 Managing Engineering Design.ppt
3.2 Managing Engineering Design.ppt3.2 Managing Engineering Design.ppt
3.2 Managing Engineering Design.ppt
 
agility_principles.ppt
agility_principles.pptagility_principles.ppt
agility_principles.ppt
 
Software testing
Software testingSoftware testing
Software testing
 
Quality Function Deployment (QFD) Seminar Presentation
Quality Function Deployment (QFD) Seminar PresentationQuality Function Deployment (QFD) Seminar Presentation
Quality Function Deployment (QFD) Seminar Presentation
 
DesignTech Systems - DCS presentation Oct 2017
DesignTech Systems - DCS presentation Oct 2017DesignTech Systems - DCS presentation Oct 2017
DesignTech Systems - DCS presentation Oct 2017
 
Software archiecture lecture08
Software archiecture   lecture08Software archiecture   lecture08
Software archiecture lecture08
 
How to get Automated Testing "Done"
How to get Automated Testing "Done"How to get Automated Testing "Done"
How to get Automated Testing "Done"
 
ThoughtWorks Approach 2009
ThoughtWorks Approach 2009ThoughtWorks Approach 2009
ThoughtWorks Approach 2009
 

More from AgileNetwork

ANIn Ahmedabad June 2022 | Role of a Leader in Agile Transformation by Meena ...
ANIn Ahmedabad June 2022 | Role of a Leader in Agile Transformation by Meena ...ANIn Ahmedabad June 2022 | Role of a Leader in Agile Transformation by Meena ...
ANIn Ahmedabad June 2022 | Role of a Leader in Agile Transformation by Meena ...
AgileNetwork
 
ANIn Ahmedabad June 2024 | Metrics in Agile Business by Angana Sharma
ANIn Ahmedabad June 2024 | Metrics in Agile Business by Angana SharmaANIn Ahmedabad June 2024 | Metrics in Agile Business by Angana Sharma
ANIn Ahmedabad June 2024 | Metrics in Agile Business by Angana Sharma
AgileNetwork
 
ANIn Ahmedabad June 2024 | Business outcomes directly proportional to mindset...
ANIn Ahmedabad June 2024 | Business outcomes directly proportional to mindset...ANIn Ahmedabad June 2024 | Business outcomes directly proportional to mindset...
ANIn Ahmedabad June 2024 | Business outcomes directly proportional to mindset...
AgileNetwork
 
ANIn Coimbatore May 2024 | Being Agile - Fortifying the GenZ Workforce by Sar...
ANIn Coimbatore May 2024 | Being Agile - Fortifying the GenZ Workforce by Sar...ANIn Coimbatore May 2024 | Being Agile - Fortifying the GenZ Workforce by Sar...
ANIn Coimbatore May 2024 | Being Agile - Fortifying the GenZ Workforce by Sar...
AgileNetwork
 
ANIn Coimbatore May 2024 | Skills for the Evolving IT landscape by Meena Subr...
ANIn Coimbatore May 2024 | Skills for the Evolving IT landscape by Meena Subr...ANIn Coimbatore May 2024 | Skills for the Evolving IT landscape by Meena Subr...
ANIn Coimbatore May 2024 | Skills for the Evolving IT landscape by Meena Subr...
AgileNetwork
 
ANIn Delhi Feb 2022 | Design the Future with Technology Disruption by N Kisho...
ANIn Delhi Feb 2022 | Design the Future with Technology Disruption by N Kisho...ANIn Delhi Feb 2022 | Design the Future with Technology Disruption by N Kisho...
ANIn Delhi Feb 2022 | Design the Future with Technology Disruption by N Kisho...
AgileNetwork
 
ANIn Ahmedabad Jan 2023 | Discovery is not a phase in being Agile its, "The A...
ANIn Ahmedabad Jan 2023 | Discovery is not a phase in being Agile its, "The A...ANIn Ahmedabad Jan 2023 | Discovery is not a phase in being Agile its, "The A...
ANIn Ahmedabad Jan 2023 | Discovery is not a phase in being Agile its, "The A...
AgileNetwork
 
ANIn Ahmedabad April 2023 | Importance of agile and how it can be Implemented...
ANIn Ahmedabad April 2023 | Importance of agile and how it can be Implemented...ANIn Ahmedabad April 2023 | Importance of agile and how it can be Implemented...
ANIn Ahmedabad April 2023 | Importance of agile and how it can be Implemented...
AgileNetwork
 
ANIn Chennai May 2023 | Navigating the Rapids: Embracing Agility to Conquer E...
ANIn Chennai May 2023 | Navigating the Rapids: Embracing Agility to Conquer E...ANIn Chennai May 2023 | Navigating the Rapids: Embracing Agility to Conquer E...
ANIn Chennai May 2023 | Navigating the Rapids: Embracing Agility to Conquer E...
AgileNetwork
 
ANIn Chennai May 2023 | Technical Agility by Arunmozhi Varman
ANIn Chennai May 2023 | Technical Agility by Arunmozhi VarmanANIn Chennai May 2023 | Technical Agility by Arunmozhi Varman
ANIn Chennai May 2023 | Technical Agility by Arunmozhi Varman
AgileNetwork
 
ANIn Bengaluru May 2023 | The Role of AI in Business Agility by Rajkumar Vara...
ANIn Bengaluru May 2023 | The Role of AI in Business Agility by Rajkumar Vara...ANIn Bengaluru May 2023 | The Role of AI in Business Agility by Rajkumar Vara...
ANIn Bengaluru May 2023 | The Role of AI in Business Agility by Rajkumar Vara...
AgileNetwork
 
ANIn Bengaluru May 2023 | AI led Enterprise Transformation by Arpit Tandon
ANIn Bengaluru May 2023 | AI led Enterprise Transformation by Arpit TandonANIn Bengaluru May 2023 | AI led Enterprise Transformation by Arpit Tandon
ANIn Bengaluru May 2023 | AI led Enterprise Transformation by Arpit Tandon
AgileNetwork
 
ANIn Navi Mumbai Jan 2023 | Agile project development -"A Journey" by Indulek...
ANIn Navi Mumbai Jan 2023 | Agile project development -"A Journey" by Indulek...ANIn Navi Mumbai Jan 2023 | Agile project development -"A Journey" by Indulek...
ANIn Navi Mumbai Jan 2023 | Agile project development -"A Journey" by Indulek...
AgileNetwork
 
ANIn Pune May 2024 | Best practices in testing of AI based SaMD by Anupama An...
ANIn Pune May 2024 | Best practices in testing of AI based SaMD by Anupama An...ANIn Pune May 2024 | Best practices in testing of AI based SaMD by Anupama An...
ANIn Pune May 2024 | Best practices in testing of AI based SaMD by Anupama An...
AgileNetwork
 
ANIn Ahmedabad May 2024 | Sailing the Agile seas Leveraging Business Prioriti...
ANIn Ahmedabad May 2024 | Sailing the Agile seas Leveraging Business Prioriti...ANIn Ahmedabad May 2024 | Sailing the Agile seas Leveraging Business Prioriti...
ANIn Ahmedabad May 2024 | Sailing the Agile seas Leveraging Business Prioriti...
AgileNetwork
 
ANIn Mumbai May 2024 | Measuring Business Agility by Prashant Neharkar
ANIn Mumbai May 2024 | Measuring Business Agility by Prashant NeharkarANIn Mumbai May 2024 | Measuring Business Agility by Prashant Neharkar
ANIn Mumbai May 2024 | Measuring Business Agility by Prashant Neharkar
AgileNetwork
 
ANIn Ahmedabad May 2024 | Reusability Using Agile by Pratik Patel
ANIn Ahmedabad May 2024 | Reusability Using Agile by Pratik PatelANIn Ahmedabad May 2024 | Reusability Using Agile by Pratik Patel
ANIn Ahmedabad May 2024 | Reusability Using Agile by Pratik Patel
AgileNetwork
 
ANIn Chennai April 2024 |Agile Engineering: Modernizing Legacy Systems by Ana...
ANIn Chennai April 2024 |Agile Engineering: Modernizing Legacy Systems by Ana...ANIn Chennai April 2024 |Agile Engineering: Modernizing Legacy Systems by Ana...
ANIn Chennai April 2024 |Agile Engineering: Modernizing Legacy Systems by Ana...
AgileNetwork
 
ANIn Chennai April 2024 |Beyond Big Bang: Technical Agility in Vintage Produc...
ANIn Chennai April 2024 |Beyond Big Bang: Technical Agility in Vintage Produc...ANIn Chennai April 2024 |Beyond Big Bang: Technical Agility in Vintage Produc...
ANIn Chennai April 2024 |Beyond Big Bang: Technical Agility in Vintage Produc...
AgileNetwork
 
ANIn Gurugram April 2024 |Agile Adaptation: Driving Progress in Generative AI...
ANIn Gurugram April 2024 |Agile Adaptation: Driving Progress in Generative AI...ANIn Gurugram April 2024 |Agile Adaptation: Driving Progress in Generative AI...
ANIn Gurugram April 2024 |Agile Adaptation: Driving Progress in Generative AI...
AgileNetwork
 

More from AgileNetwork (20)

ANIn Ahmedabad June 2022 | Role of a Leader in Agile Transformation by Meena ...
ANIn Ahmedabad June 2022 | Role of a Leader in Agile Transformation by Meena ...ANIn Ahmedabad June 2022 | Role of a Leader in Agile Transformation by Meena ...
ANIn Ahmedabad June 2022 | Role of a Leader in Agile Transformation by Meena ...
 
ANIn Ahmedabad June 2024 | Metrics in Agile Business by Angana Sharma
ANIn Ahmedabad June 2024 | Metrics in Agile Business by Angana SharmaANIn Ahmedabad June 2024 | Metrics in Agile Business by Angana Sharma
ANIn Ahmedabad June 2024 | Metrics in Agile Business by Angana Sharma
 
ANIn Ahmedabad June 2024 | Business outcomes directly proportional to mindset...
ANIn Ahmedabad June 2024 | Business outcomes directly proportional to mindset...ANIn Ahmedabad June 2024 | Business outcomes directly proportional to mindset...
ANIn Ahmedabad June 2024 | Business outcomes directly proportional to mindset...
 
ANIn Coimbatore May 2024 | Being Agile - Fortifying the GenZ Workforce by Sar...
ANIn Coimbatore May 2024 | Being Agile - Fortifying the GenZ Workforce by Sar...ANIn Coimbatore May 2024 | Being Agile - Fortifying the GenZ Workforce by Sar...
ANIn Coimbatore May 2024 | Being Agile - Fortifying the GenZ Workforce by Sar...
 
ANIn Coimbatore May 2024 | Skills for the Evolving IT landscape by Meena Subr...
ANIn Coimbatore May 2024 | Skills for the Evolving IT landscape by Meena Subr...ANIn Coimbatore May 2024 | Skills for the Evolving IT landscape by Meena Subr...
ANIn Coimbatore May 2024 | Skills for the Evolving IT landscape by Meena Subr...
 
ANIn Delhi Feb 2022 | Design the Future with Technology Disruption by N Kisho...
ANIn Delhi Feb 2022 | Design the Future with Technology Disruption by N Kisho...ANIn Delhi Feb 2022 | Design the Future with Technology Disruption by N Kisho...
ANIn Delhi Feb 2022 | Design the Future with Technology Disruption by N Kisho...
 
ANIn Ahmedabad Jan 2023 | Discovery is not a phase in being Agile its, "The A...
ANIn Ahmedabad Jan 2023 | Discovery is not a phase in being Agile its, "The A...ANIn Ahmedabad Jan 2023 | Discovery is not a phase in being Agile its, "The A...
ANIn Ahmedabad Jan 2023 | Discovery is not a phase in being Agile its, "The A...
 
ANIn Ahmedabad April 2023 | Importance of agile and how it can be Implemented...
ANIn Ahmedabad April 2023 | Importance of agile and how it can be Implemented...ANIn Ahmedabad April 2023 | Importance of agile and how it can be Implemented...
ANIn Ahmedabad April 2023 | Importance of agile and how it can be Implemented...
 
ANIn Chennai May 2023 | Navigating the Rapids: Embracing Agility to Conquer E...
ANIn Chennai May 2023 | Navigating the Rapids: Embracing Agility to Conquer E...ANIn Chennai May 2023 | Navigating the Rapids: Embracing Agility to Conquer E...
ANIn Chennai May 2023 | Navigating the Rapids: Embracing Agility to Conquer E...
 
ANIn Chennai May 2023 | Technical Agility by Arunmozhi Varman
ANIn Chennai May 2023 | Technical Agility by Arunmozhi VarmanANIn Chennai May 2023 | Technical Agility by Arunmozhi Varman
ANIn Chennai May 2023 | Technical Agility by Arunmozhi Varman
 
ANIn Bengaluru May 2023 | The Role of AI in Business Agility by Rajkumar Vara...
ANIn Bengaluru May 2023 | The Role of AI in Business Agility by Rajkumar Vara...ANIn Bengaluru May 2023 | The Role of AI in Business Agility by Rajkumar Vara...
ANIn Bengaluru May 2023 | The Role of AI in Business Agility by Rajkumar Vara...
 
ANIn Bengaluru May 2023 | AI led Enterprise Transformation by Arpit Tandon
ANIn Bengaluru May 2023 | AI led Enterprise Transformation by Arpit TandonANIn Bengaluru May 2023 | AI led Enterprise Transformation by Arpit Tandon
ANIn Bengaluru May 2023 | AI led Enterprise Transformation by Arpit Tandon
 
ANIn Navi Mumbai Jan 2023 | Agile project development -"A Journey" by Indulek...
ANIn Navi Mumbai Jan 2023 | Agile project development -"A Journey" by Indulek...ANIn Navi Mumbai Jan 2023 | Agile project development -"A Journey" by Indulek...
ANIn Navi Mumbai Jan 2023 | Agile project development -"A Journey" by Indulek...
 
ANIn Pune May 2024 | Best practices in testing of AI based SaMD by Anupama An...
ANIn Pune May 2024 | Best practices in testing of AI based SaMD by Anupama An...ANIn Pune May 2024 | Best practices in testing of AI based SaMD by Anupama An...
ANIn Pune May 2024 | Best practices in testing of AI based SaMD by Anupama An...
 
ANIn Ahmedabad May 2024 | Sailing the Agile seas Leveraging Business Prioriti...
ANIn Ahmedabad May 2024 | Sailing the Agile seas Leveraging Business Prioriti...ANIn Ahmedabad May 2024 | Sailing the Agile seas Leveraging Business Prioriti...
ANIn Ahmedabad May 2024 | Sailing the Agile seas Leveraging Business Prioriti...
 
ANIn Mumbai May 2024 | Measuring Business Agility by Prashant Neharkar
ANIn Mumbai May 2024 | Measuring Business Agility by Prashant NeharkarANIn Mumbai May 2024 | Measuring Business Agility by Prashant Neharkar
ANIn Mumbai May 2024 | Measuring Business Agility by Prashant Neharkar
 
ANIn Ahmedabad May 2024 | Reusability Using Agile by Pratik Patel
ANIn Ahmedabad May 2024 | Reusability Using Agile by Pratik PatelANIn Ahmedabad May 2024 | Reusability Using Agile by Pratik Patel
ANIn Ahmedabad May 2024 | Reusability Using Agile by Pratik Patel
 
ANIn Chennai April 2024 |Agile Engineering: Modernizing Legacy Systems by Ana...
ANIn Chennai April 2024 |Agile Engineering: Modernizing Legacy Systems by Ana...ANIn Chennai April 2024 |Agile Engineering: Modernizing Legacy Systems by Ana...
ANIn Chennai April 2024 |Agile Engineering: Modernizing Legacy Systems by Ana...
 
ANIn Chennai April 2024 |Beyond Big Bang: Technical Agility in Vintage Produc...
ANIn Chennai April 2024 |Beyond Big Bang: Technical Agility in Vintage Produc...ANIn Chennai April 2024 |Beyond Big Bang: Technical Agility in Vintage Produc...
ANIn Chennai April 2024 |Beyond Big Bang: Technical Agility in Vintage Produc...
 
ANIn Gurugram April 2024 |Agile Adaptation: Driving Progress in Generative AI...
ANIn Gurugram April 2024 |Agile Adaptation: Driving Progress in Generative AI...ANIn Gurugram April 2024 |Agile Adaptation: Driving Progress in Generative AI...
ANIn Gurugram April 2024 |Agile Adaptation: Driving Progress in Generative AI...
 

Recently uploaded

The Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official PublicationThe Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official Publication
Delapenabediema
 
The basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptxThe basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptx
heathfieldcps1
 
Digital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion DesignsDigital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion Designs
chanes7
 
Unit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdfUnit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdf
Thiyagu K
 
Best Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDABest Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDA
deeptiverma2406
 
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptxChapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Mohd Adib Abd Muin, Senior Lecturer at Universiti Utara Malaysia
 
A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
Peter Windle
 
The approach at University of Liverpool.pptx
The approach at University of Liverpool.pptxThe approach at University of Liverpool.pptx
The approach at University of Liverpool.pptx
Jisc
 
Advantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO PerspectiveAdvantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO Perspective
Krisztián Száraz
 
Pride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School DistrictPride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School District
David Douglas School District
 
CACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdfCACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdf
camakaiclarkmusic
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
Jean Carlos Nunes Paixão
 
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdfMASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
goswamiyash170123
 
Overview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with MechanismOverview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with Mechanism
DeeptiGupta154
 
Supporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptxSupporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptx
Jisc
 
Model Attribute Check Company Auto Property
Model Attribute  Check Company Auto PropertyModel Attribute  Check Company Auto Property
Model Attribute Check Company Auto Property
Celine George
 
The Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collectionThe Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collection
Israel Genealogy Research Association
 
The Diamond Necklace by Guy De Maupassant.pptx
The Diamond Necklace by Guy De Maupassant.pptxThe Diamond Necklace by Guy De Maupassant.pptx
The Diamond Necklace by Guy De Maupassant.pptx
DhatriParmar
 
A Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptxA Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptx
thanhdowork
 
S1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptxS1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptx
tarandeep35
 

Recently uploaded (20)

The Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official PublicationThe Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official Publication
 
The basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptxThe basics of sentences session 5pptx.pptx
The basics of sentences session 5pptx.pptx
 
Digital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion DesignsDigital Artifact 2 - Investigating Pavilion Designs
Digital Artifact 2 - Investigating Pavilion Designs
 
Unit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdfUnit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdf
 
Best Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDABest Digital Marketing Institute In NOIDA
Best Digital Marketing Institute In NOIDA
 
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptxChapter 4 - Islamic Financial Institutions in Malaysia.pptx
Chapter 4 - Islamic Financial Institutions in Malaysia.pptx
 
A Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in EducationA Strategic Approach: GenAI in Education
A Strategic Approach: GenAI in Education
 
The approach at University of Liverpool.pptx
The approach at University of Liverpool.pptxThe approach at University of Liverpool.pptx
The approach at University of Liverpool.pptx
 
Advantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO PerspectiveAdvantages and Disadvantages of CMS from an SEO Perspective
Advantages and Disadvantages of CMS from an SEO Perspective
 
Pride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School DistrictPride Month Slides 2024 David Douglas School District
Pride Month Slides 2024 David Douglas School District
 
CACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdfCACJapan - GROUP Presentation 1- Wk 4.pdf
CACJapan - GROUP Presentation 1- Wk 4.pdf
 
Lapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdfLapbook sobre os Regimes Totalitários.pdf
Lapbook sobre os Regimes Totalitários.pdf
 
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdfMASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
MASS MEDIA STUDIES-835-CLASS XI Resource Material.pdf
 
Overview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with MechanismOverview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with Mechanism
 
Supporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptxSupporting (UKRI) OA monographs at Salford.pptx
Supporting (UKRI) OA monographs at Salford.pptx
 
Model Attribute Check Company Auto Property
Model Attribute  Check Company Auto PropertyModel Attribute  Check Company Auto Property
Model Attribute Check Company Auto Property
 
The Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collectionThe Diamonds of 2023-2024 in the IGRA collection
The Diamonds of 2023-2024 in the IGRA collection
 
The Diamond Necklace by Guy De Maupassant.pptx
The Diamond Necklace by Guy De Maupassant.pptxThe Diamond Necklace by Guy De Maupassant.pptx
The Diamond Necklace by Guy De Maupassant.pptx
 
A Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptxA Survey of Techniques for Maximizing LLM Performance.pptx
A Survey of Techniques for Maximizing LLM Performance.pptx
 
S1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptxS1-Introduction-Biopesticides in ICM.pptx
S1-Introduction-Biopesticides in ICM.pptx
 

Agile Gurugram 2016 | Conference | Change Vector Tracking in emergent Architecture | Ranjith Tharayil

  • 2. www.agilegurgaon.com Change Vector Tracking A reflective approach towards designing large scale software BY Ranjith Tharayil Senior Agile Consultant & Technical Coach rtharayil@soultionsiq.com
  • 3. www.agilegurgaon.com Expectations and take always • Understand the problem wrt design debt in large scale software systems. • Exposure to a novel technique called Change Vector Tracking (CVT) • Can start applying it right away • Knowledge of how change can be modelled as a weighted vector • Using CVT to make informed decision on architecture refactoring.
  • 5. Design Is a Wicked Problem , a “wicked” problem is one that could be clearly defined only by solving it, or by solving part of it .This paradox implies, essentially, that you have to “solve” the problem once in order to clearly define it and then solve it again to create a solution that works “ ” - McConnell, Steve. Code complete. Pearson Education, 2004.
  • 6. www.agilegurgaon.com Emergent design Test Code Refactor Test Code Refactor Test Code Refactor Test Code Refactor Test Code Refactor Test Code Refactor Test Code Refactor Test Code Refactor Design
  • 7. www.agilegurgaon.com Problem : Refactoring less focus on architecture System Sub- system Modules Modules Modules Sub- system Modules Modules Modules Sub- system Modules Sub- system Modules modules Refactoring , observed trends » More focus on classes inside modules » Less focus on Modules ,sub- Subsystem and system » Inexperience team members » Accumulate design debt » Technical debt
  • 8. www.agilegurgaon.com Example : Super MarketI 'am using a simple example to explain the problem , same is applicable for bigger complex systems  The super market has many products to sell  Each product has a  quality  cost  The rules for computation of Quality and Cost are different for each product Abstract Product computeQuality() computeCost () Concreate product 1 Concreate product 2 Concreate product n-1 Concreate product N
  • 9. www.agilegurgaon.com Is this the best design ? Onion computeQuality() computeCost () »Is this following SRP ? Single responsibility principle »What if the pricing strategy of a product varies from time to time ?
  • 10. www.agilegurgaon.com How about a different design Abstract Product Pricing strategy computeQuality() Concreate product 1 Concreate product 2 Concreate product n-1 Concreate product N PricingStrategy CompteCost() Strategy 1 Strategy 2 Strategy 3
  • 13. www.agilegurgaon.com Which design is better ? • Answer is : it depends • Dependents on what ? • Lest try to define this context Context
  • 14. www.agilegurgaon.com Which design is better ? • We will be adding new products • We Need to modify pricing strategy for existing products • We will be only adding new products • We need to often modify pricing strategy & Quality rule for existing products
  • 15. www.agilegurgaon.com Design should depend on how the system is behaving currently • The behaviour of a system changes with time • Due to • new requirements • enhancements • Change is constant and can disrupt design & architecture • Need to track change and its effect on design/architecture
  • 16. www.agilegurgaon.com Modelling change as a vector • Change has multiple dimensions • Hence it can be quantified using a vector like ax+by+cz • Example: 3(New Products) + 2(Modify Pricing strategy) 4(New Products) + 1(Miscellaneous) 2(Modify Pricing strategy) + 2(Modify Quality rule) + 1(Miscellaneous)
  • 17. www.agilegurgaon.com How change can be modelled as a weighted vector ? • We need to periodically review & document change vector for our system 3(New Products) + 2(Modify Pricing strategy) 4(New Products) + 1(Miscellaneous) Few Months Change: new requirement , Enhancement Change requests Dev Track Change vector Refactor
  • 18. www.agilegurgaon.com Change vector tracking from Architecture to class System Sub- system Modules classes Modules classes Sub- system Modules classes Change requests Dev Track Change vector Refactor
  • 19. www.agilegurgaon.com Change vector tracking in context of micro services
  • 20. www.agilegurgaon.com Process and Ceremonies • Change vector tracking meeting • with TL , Architects • Every month initially • Cadence decide by need • Time boxed • Analyse change request from • Source control • Analyse product backlog • Document Change vector • Identify if any design debt • Prioritize (design debt ) and push a story to your back log Change requests Dev Track Change vector Refactor
  • 21. www.agilegurgaon.com Re-visiting expectations • Understand the problem wrt design debt in large scale software systems. • Exposure to a novel technique called Change Vector Tracking (CVT) • Can start applying it right away • Add this jargon to your resume :P • Knowledge of how change can be modelled as a weighted vector • Using CVT to make informed decision on architecture refactoring.
  • 22. www.agilegurgaon.com Questions Acknowledgments : After hearing out this technique Sharad Julka coined the term reflective design .