Kruchten 130320 post agile handout - Philippe Kruchten · Title: Kruchten 130320 post agile handout.pptx Author: Philippe Kruchten Created Date: 3/22/2013 5:18:05 PM
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
"agile"? March 2013
Ph. Kruchten 1
What the heck is this thing they call “agile”?
Philippe Kruchten
UBC, March 20, 2013
Philippe Kruchten, Ph.D., P.Eng., CSDP
Professor of So)ware Engineering NSERC Chair in Design Engineering Department of Electrical and Computer Engineering
University of BriJsh Columbia Vancouver, BC Canada [email protected]
Founder and president Kruchten Engineering Services Ltd Vancouver, BC Canada [email protected]
• “Most companies build their bureaucraJc rules to manage the small percentage of wrong people on the bus, which in turn drive away the right people on the bus, which then increases the need for more bureaucracy to compensate for incompetence and lack of discipline, which then further drives the right people away and so forth.”
Jim Collins, Good to Great (2001)
Feb. 2013
The nature of soRware
1. No fundamental laws of soRware – Cannot validate soRware on blueprints – Need to build and test
2. Extreme modifiability – End-‐user & customer want to exploit this – Constant changes
3. No manufacturing costs, no border – All costs are in design, no economy of scale
False Dichotomies: Agile versus X • Agile versus Waterfall • Agile versus Discipline ?!?! • Agile versus Plan-‐driven ? • Light-‐weight versus Heavy-‐weight ? • Agility versus Architecture !?
• Eliminate waste • Amplify learning • Decide as late as possible • Deliver as fast as possible • Empower the team • Build integrity in • See the whole
Agility as a Memeplex • Meme: a replicaJng “chunk” of culture, a unit of informaJon residing in a brain, a unit of cultural transmission, a basic building block in cultural evoluJon.
• Memeplex: meme complex -‐-‐ sets of memes that replicate beber as a group
• Examples: – the 50 or so memes that consJtute agile pracJces – the 12 or so memes that consJtute XP
DecontextualizaJon = cut out the relaJonships with it natural or original environment
• Pabern: • Experience a couple of success with a pracJce • Describe it • Simplify it (slogan, cute name) • Pass it on, pass it on, (write a book), pass it on • Without the original context where it was successful
• This lack of context hampers adaptaJon – AmplificaJon or dampening
• “The paJent typically finds himself impelled by some deep, inner convicJon that something is true, or right, or virtuous: a convicJon that doesn't seem to owe anything to evidence or reason, but which, nevertheless, he feels as totally compelling and convincing. We doctors refer to such a belief as ‘faith’.”
• SoRware development is not natural science! Dawkins 1995
• “PaJents typically make a posiJve virtue of faith’s being strong and unshakable, in spite of not being based upon evidence. Indeed, they may feel that the less evidence there is, the more virtuous the belief.”
• For many pracJces we have only sporadic evidence of effecJveness, or in a limited context.
Viruses of the Mind (3) • “The sufferer may find himself behaving intolerantly towards vectors of rival faiths, in extreme cases even killing them or advo-‐ caJng their deaths. He may be similarly violent in his disposiJon towards apostates (people who once held the faith but have renounced it); or towards hereJcs (people who espouse a different —oRen, perhaps significantly, only very slightly different—version of the faith). He may also feel hosJle towards other modes of thought that are potenJally inimical to his faith, such as the method of scienJfic reason which may funcJon rather like a piece of anJ-‐viral soRware.”
… conformance to the Agile Manifesto … a rigid set of pracJces to follow … a defined set of roles … a branded method … the anJthesis of “waterfall”,… or old, or bad
Culture is a fuzzy set of a�tudes, beliefs, behavioural norms, and basic assumpJons and values that are shared by a group of people, and that influence each member’s behaviour and his/her interpretaJons of the ‘meaning’ of other people’s behaviour. Helen Spencer-‐Oatey (2000)
Agility is a fuzzy set of a�tudes, beliefs, behavioural norms, and basic assumpJons and values that are shared by a group of people, and that influence each member’s behaviour and his/her interpretaJons of the ‘meaning’ of other people’s behaviour. Kruchten (2005)
– Once per iteraJon at least – Are we doing the right thing? – Are we doing the thing right? – Can we do beber? – Use indicators:
• Quality (defect analysis) • Issues and risks ge�ng stale (open for long Jme) • ProducJvity (velocity), Burn down chart • Delays, pushing objecJves down the Jme line
• Nature of soRware • Nature of soRware development • Risks and uncertainty • Context mabers, a lot • AdaptaJon versus anJcipaJon • Process: one size does not fit all • Building trust • Don’t do agile, be agile