Upload
others
View
9
Download
0
Embed Size (px)
Citation preview
AGILE AND AUTOMATION CONCLAVE 2018
Reflective Design
Ranjith Tharayil
Agile and Automation Conclave 2018
Ranjith Tharayil • Steward Agile Technical practices ATCI • ACM distinguished speaker • Dad of two daughters
Agile and Automation Conclave 2018
Agile and Automation Conclave 2018
Agile and Automation Conclave 2018
Requirements Changing in another direction
First cut
Agile and Automation Conclave 2018
Where we started
What we initially envisioned
What we were supposed to be
But actually where we are
Design tech debt
Agile and Automation Conclave 2018 (c) http://scribol.com/environment/animals-environment/amazing-insect-camouflage/
This kind of Design debt is almost invisible
Agile and Automation Conclave 2018
Key areas of concern when defining software architecture
Reference:Bellomo,Stephany,IanGorton,andRickKazman."Towardagilearchitecture:Insightsfrom15yearsofatam data." IEEESoftware (2015)
Agile and Automation Conclave 2018
Agile and Automation Conclave 2018
Choice supportive bias
I know I am right
I am right
I know I am really sure I am
right
Well I am pretty sure
anyway
Counter argument 1
Counter argument 2 Counter argument 3
Counter argument 4
Agile and Automation Conclave 2018
Endowment effect
0
0.5
1
1.5
2
2.5
3
3.5
4
4.5
5
Pain from loss Pleasure from gain
value
value
“Changing is going to cost us a fortune , we have already invested X$$ in this.”
Agile and Automation Conclave 2018
After 6 months
Agile and Automation Conclave 2018
In Software Design we conveniently like to forget the fact
Agile and Automation Conclave 2018
During Architecture discussions
• Don’t just focus on future design
• Also Reflect on existing design • Systematically look into features and enhancements• Reflect if changes are as per expectation• Could use techniques like Change Vector Tracking • Identify design debts • Make informed decisions (act or ignore)
Reflective design
Agile and Automation Conclave 2018
The 3A’s : Shift towards reflective design
Awareness • Its Extremely difficult to get
the design right in the first go , hence I need to always check.
Acknowledgement• As an architect I acknowledge
that I could be wrong.
Acceptance• In my group refactoring is
accepted and encouraged.
<=>
Agile and Automation Conclave 2018
Q&A
Agile and Automation Conclave 2018
FOLLOW USLinkedIn – SolutionsIQ India | Twitter – SIQIndia | Facebook – SolutionsIQ India
Ranjith [email protected]