SlideShare a Scribd company logo
1 of 41
Download to read offline
Lean, Mean, & Agile
  Agile 2009 Conference Report
    Harold Shinsato - October 8, 2009
Yes
 Power
Integrity
Challenge
Strength
Courage
Winning




              No
             Violence
            Arrogance
               Etc.
Challenge




Truth, Beauty, Fun
Agile
Agile Scrum & XP
Lean 5 Steps
Lean Software
Development
A little history
• agilemanifesto.org - February 2001
 • Programmers tired of bureaucracy
• lean.org - Toyota Post WWII
 • Few customers
 • Had to remove waste
• Scrum Conference + XP Conference
Agile 2009 Conference

• Chicago - August 24-27
• 1350+ Attendees
• Large Music Festival Model (21 “stages”)
• 20+ sessions going on at any time
• Any number of “Open Jam” sessions
User Experience (UX)

• Jared Spool Keynote
• Guerilla Usability Testing
• Guerilla User Research
• Lightweight Design
• Integrated with Agile/Scrum/Iterative dev.
What’s the Story?
As <role> I want <function>
 so that <business value>



                   Rachel Davies

                   Johanna Rothman
Deliberate Practice
10 Years to World Class
• The Role of Deliberate Practice in the
  Acquisition of Expert Performance
            - by Anders Ericsson
  • Sufficient time (hours a day)
  • Mentor/Coach/Teacher
  • Specific practice
  • Immediate Feedback
Uncle “Bob” Martin




           objectmentor.com
Software Craftsmanship
• Software Craftsmanship North America
• Know your craft
• Study more than 1 language (Java, C#,
  Dynamic, Functional)
• YOU are responsible for your training
• No technical debt - only mess making
Test Driven
Development
TDD Benefits

• Clean code
• Self documenting
• Full unit test suite
• Enables near 0 defect rate
• Ensures flexible code
Behavior Driven
 Development
BDD Benefits
• TDD is actually not about testing
• TDD is a design methodology
• “Test” Driven Development encourages
  “Test” mindset and delays mastery of TDD
• BDD encourages starting from the
  behavior and the use of
• Mock objects
BDD Sessions + Tools
• Agile 2009 Sessions:
 • “Acceptance Testing Java Applications
    with Cucumber, RSpec, and JRuby”
  • “How to Make Your Testing More
    Groovy”
• Tools
 • RSpec, Cucumber, JBehave, EasyB, .......
RSpec/Cucumber
JBehave
EasyB
Mock Objects

• Mock Roles not Objects
• System Under Test & Collaborators
• “Mocks aren’t Stubs” (or dummies)
• State vs. Behavior Verification
• Java tools - jMock, EasyMock, Mockito
JMock Example
SUT sut = new SUT(); // System Under Test
Mock mock = new Mock(Collab.class);

//setup expectations
mock.expects(once()).method(“neededMethod”)
  .with(eq(1), eq(“String param”));

//exercise
sut.testedMethod((Collab) mock.proxy());

//verify
mock.verify();
assertEquals(EXPECTED_STATE, sut.state());
Bad Mocking
(thanks Paolini Carolini & Sudhindra Rao)

• Unreadable tests
• Replacing Integration Testing
• Unnecessary (e.g.Value Object)
• Context Confusion
• Mock returns Mock
• Mock Abuse (better: FakeDB, Dummy, Stub, Fixture)
Dynamic Languages &
     Groovy
Groovy = less code
Other Groovy Features
• Fully compatible with Java code
• Can use Static Types
• Easy to make Domain Specific Language
• Dynamic typing, closures,
  metaprogramming, etc.
• Easy XML processing, string & list handling
Groovy Adoption
Discussion vs. Dialog
Decision vs.
           Exploration
• Discussion is “convergent”. It assumes a
  single viewpoint must be chosen.
• Dialog or Conversation allows for
  exploration and does not require decision.
• Dialog is critical for many Agile processes.
 • User Research, Retrospectives, Learning
Dialog Processes

• World Café
• Open Space Technology
• Deep Democracy
• Appreciative Inquiry
Leadership Stage
• Coaching
• Organizational Development
• Change Management
• Collaborative vs. “Command & Control”
• Leadership & Self-Organizing
• “Stepping Up & Stepping Back”
Post-Heroic Leadership


       Gilles Brouillet
“Developing Agile Leaders and
Team: A Developmental Path”
Stages of Leadership
Responsibility
         Redefined
• Dr. Christopher Avery
• Leadership means 100% Responsibility
• Responsibility != Accountability
• Responsibility != Shame
Responsibility Process
We cannot solve our problems
with the same thinking we used
    when we created them.
We Want Your Questions, Thoughts ...

More Related Content

What's hot

Intro to our Agile Release Planning workshop
Intro to our Agile Release Planning workshopIntro to our Agile Release Planning workshop
Intro to our Agile Release Planning workshopLeanAgileTraining
 
Play to Learn: Agile Games with Cards and Dice
Play to Learn: Agile Games with Cards and DicePlay to Learn: Agile Games with Cards and Dice
Play to Learn: Agile Games with Cards and DiceMike Clement
 
"GitHub com for lazy in cloud project management" by Sergejs Matancevs from S...
"GitHub com for lazy in cloud project management" by Sergejs Matancevs from S..."GitHub com for lazy in cloud project management" by Sergejs Matancevs from S...
"GitHub com for lazy in cloud project management" by Sergejs Matancevs from S...DevClub_lv
 
Getting started with dev tools (05 09-17, santa monica) upload
Getting started with dev tools (05 09-17, santa monica) uploadGetting started with dev tools (05 09-17, santa monica) upload
Getting started with dev tools (05 09-17, santa monica) uploadThinkful
 
Hiep le - xp should be dead! here is why.
Hiep le - xp should be dead! here is why. Hiep le - xp should be dead! here is why.
Hiep le - xp should be dead! here is why. Lê Trọng-Hiệp
 
Vladimirs Ivanovs — How minions can help creating a complementary team and fi...
Vladimirs Ivanovs — How minions can help creating a complementary team and fi...Vladimirs Ivanovs — How minions can help creating a complementary team and fi...
Vladimirs Ivanovs — How minions can help creating a complementary team and fi...AgileLAB
 
Building an Online Presence
Building an Online PresenceBuilding an Online Presence
Building an Online PresenceRahul Nath
 
Agility without Complexity: Fast and Efficient
Agility without Complexity: Fast and EfficientAgility without Complexity: Fast and Efficient
Agility without Complexity: Fast and EfficientTechWell
 
Being a tech speaker
Being a tech speakerBeing a tech speaker
Being a tech speakerGil Fink
 
Mob Programming for Continuous Learning
Mob Programming for Continuous LearningMob Programming for Continuous Learning
Mob Programming for Continuous LearningMike Clement
 
Nimble Framework - Software architecture and design in agile era - PSQT Template
Nimble Framework - Software architecture and design in agile era - PSQT TemplateNimble Framework - Software architecture and design in agile era - PSQT Template
Nimble Framework - Software architecture and design in agile era - PSQT Templatetjain
 
Babysitting your orm essenmacher, adam
Babysitting your orm   essenmacher, adamBabysitting your orm   essenmacher, adam
Babysitting your orm essenmacher, adamAdam Essenmacher
 
Tips & Tricks for Being a Successful Tech Lead
Tips & Tricks for Being a Successful Tech LeadTips & Tricks for Being a Successful Tech Lead
Tips & Tricks for Being a Successful Tech LeadBen Limmer
 

What's hot (17)

Clean Code Talk (draft)
Clean Code Talk (draft)Clean Code Talk (draft)
Clean Code Talk (draft)
 
Intro to our Agile Release Planning workshop
Intro to our Agile Release Planning workshopIntro to our Agile Release Planning workshop
Intro to our Agile Release Planning workshop
 
Play to Learn: Agile Games with Cards and Dice
Play to Learn: Agile Games with Cards and DicePlay to Learn: Agile Games with Cards and Dice
Play to Learn: Agile Games with Cards and Dice
 
"GitHub com for lazy in cloud project management" by Sergejs Matancevs from S...
"GitHub com for lazy in cloud project management" by Sergejs Matancevs from S..."GitHub com for lazy in cloud project management" by Sergejs Matancevs from S...
"GitHub com for lazy in cloud project management" by Sergejs Matancevs from S...
 
Getting started with dev tools (05 09-17, santa monica) upload
Getting started with dev tools (05 09-17, santa monica) uploadGetting started with dev tools (05 09-17, santa monica) upload
Getting started with dev tools (05 09-17, santa monica) upload
 
Hiep le - xp should be dead! here is why.
Hiep le - xp should be dead! here is why. Hiep le - xp should be dead! here is why.
Hiep le - xp should be dead! here is why.
 
Vladimirs Ivanovs — How minions can help creating a complementary team and fi...
Vladimirs Ivanovs — How minions can help creating a complementary team and fi...Vladimirs Ivanovs — How minions can help creating a complementary team and fi...
Vladimirs Ivanovs — How minions can help creating a complementary team and fi...
 
Building an Online Presence
Building an Online PresenceBuilding an Online Presence
Building an Online Presence
 
Agility without Complexity: Fast and Efficient
Agility without Complexity: Fast and EfficientAgility without Complexity: Fast and Efficient
Agility without Complexity: Fast and Efficient
 
Being a tech speaker
Being a tech speakerBeing a tech speaker
Being a tech speaker
 
DevOps Quiz
DevOps QuizDevOps Quiz
DevOps Quiz
 
Dealing with challenges (technical)
Dealing with challenges (technical)Dealing with challenges (technical)
Dealing with challenges (technical)
 
Mob Programming for Continuous Learning
Mob Programming for Continuous LearningMob Programming for Continuous Learning
Mob Programming for Continuous Learning
 
Nimble Framework - Software architecture and design in agile era - PSQT Template
Nimble Framework - Software architecture and design in agile era - PSQT TemplateNimble Framework - Software architecture and design in agile era - PSQT Template
Nimble Framework - Software architecture and design in agile era - PSQT Template
 
Agile and UX
Agile and UXAgile and UX
Agile and UX
 
Babysitting your orm essenmacher, adam
Babysitting your orm   essenmacher, adamBabysitting your orm   essenmacher, adam
Babysitting your orm essenmacher, adam
 
Tips & Tricks for Being a Successful Tech Lead
Tips & Tricks for Being a Successful Tech LeadTips & Tricks for Being a Successful Tech Lead
Tips & Tricks for Being a Successful Tech Lead
 

Viewers also liked

MiM Madison 2010 rally
MiM Madison 2010 rallyMiM Madison 2010 rally
MiM Madison 2010 rallyAthea Wallace
 
Seventh grade mi m presentation
Seventh grade mi m presentationSeventh grade mi m presentation
Seventh grade mi m presentationAthea Wallace
 
Fda phacilitate2010final
Fda phacilitate2010finalFda phacilitate2010final
Fda phacilitate2010finalisoasp
 
Nubilum: Resource Management System for Distributed Clouds
Nubilum: Resource Management System for Distributed CloudsNubilum: Resource Management System for Distributed Clouds
Nubilum: Resource Management System for Distributed CloudsGlauco Gonçalves
 
FDA 1997 Points to Consider for Monoclonal Antibodies
FDA  1997 Points to Consider for Monoclonal AntibodiesFDA  1997 Points to Consider for Monoclonal Antibodies
FDA 1997 Points to Consider for Monoclonal Antibodiesisoasp
 
MiM Madison SO Conference Presentation
MiM Madison SO Conference PresentationMiM Madison SO Conference Presentation
MiM Madison SO Conference PresentationAthea Wallace
 
Year 8 cad toy instructions
Year 8 cad toy instructionsYear 8 cad toy instructions
Year 8 cad toy instructionstsm37
 
Balton From Poland
Balton From PolandBalton From Poland
Balton From Polandjaromatuk
 
Jonathan Teague Gsa Info Pack
Jonathan Teague Gsa Info PackJonathan Teague Gsa Info Pack
Jonathan Teague Gsa Info Packjteague1975
 
Burst TCP: an approach for benefiting mice flows
Burst TCP: an approach for benefiting mice flowsBurst TCP: an approach for benefiting mice flows
Burst TCP: an approach for benefiting mice flowsGlauco Gonçalves
 
The Three Branches Of Government Power Point
The Three Branches Of Government Power PointThe Three Branches Of Government Power Point
The Three Branches Of Government Power Pointguestfe2e35
 
So You Say You Want a Revolution? Evolving Agile Authority
So You Say You Want a Revolution? Evolving Agile AuthoritySo You Say You Want a Revolution? Evolving Agile Authority
So You Say You Want a Revolution? Evolving Agile AuthorityHarold Shinsato
 

Viewers also liked (16)

MiM Madison 2010 rally
MiM Madison 2010 rallyMiM Madison 2010 rally
MiM Madison 2010 rally
 
Seventh grade mi m presentation
Seventh grade mi m presentationSeventh grade mi m presentation
Seventh grade mi m presentation
 
Fda phacilitate2010final
Fda phacilitate2010finalFda phacilitate2010final
Fda phacilitate2010final
 
Nubilum: Resource Management System for Distributed Clouds
Nubilum: Resource Management System for Distributed CloudsNubilum: Resource Management System for Distributed Clouds
Nubilum: Resource Management System for Distributed Clouds
 
Proyecto Escuela Saludable2009
Proyecto Escuela Saludable2009Proyecto Escuela Saludable2009
Proyecto Escuela Saludable2009
 
Taller De Pintar Camisas
Taller De Pintar CamisasTaller De Pintar Camisas
Taller De Pintar Camisas
 
FDA 1997 Points to Consider for Monoclonal Antibodies
FDA  1997 Points to Consider for Monoclonal AntibodiesFDA  1997 Points to Consider for Monoclonal Antibodies
FDA 1997 Points to Consider for Monoclonal Antibodies
 
MiM Madison SO Conference Presentation
MiM Madison SO Conference PresentationMiM Madison SO Conference Presentation
MiM Madison SO Conference Presentation
 
Year 8 cad toy instructions
Year 8 cad toy instructionsYear 8 cad toy instructions
Year 8 cad toy instructions
 
Balton From Poland
Balton From PolandBalton From Poland
Balton From Poland
 
Jonathan Teague Gsa Info Pack
Jonathan Teague Gsa Info PackJonathan Teague Gsa Info Pack
Jonathan Teague Gsa Info Pack
 
Burst TCP: an approach for benefiting mice flows
Burst TCP: an approach for benefiting mice flowsBurst TCP: an approach for benefiting mice flows
Burst TCP: an approach for benefiting mice flows
 
2. guru bimbingan kaunseling
2. guru bimbingan kaunseling2. guru bimbingan kaunseling
2. guru bimbingan kaunseling
 
The Three Branches Of Government Power Point
The Three Branches Of Government Power PointThe Three Branches Of Government Power Point
The Three Branches Of Government Power Point
 
So You Say You Want a Revolution? Evolving Agile Authority
So You Say You Want a Revolution? Evolving Agile AuthoritySo You Say You Want a Revolution? Evolving Agile Authority
So You Say You Want a Revolution? Evolving Agile Authority
 
stress management
stress managementstress management
stress management
 

Similar to Lean Mean & Agile 2009

The Importance of Culture: Building and Sustaining Effective Engineering Org...
The Importance of Culture:  Building and Sustaining Effective Engineering Org...The Importance of Culture:  Building and Sustaining Effective Engineering Org...
The Importance of Culture: Building and Sustaining Effective Engineering Org...Randy Shoup
 
Lean-Agile Development with SharePoint - Bill Ayers
Lean-Agile Development with SharePoint - Bill AyersLean-Agile Development with SharePoint - Bill Ayers
Lean-Agile Development with SharePoint - Bill AyersSPC Adriatics
 
Getting started with dev tools (atl)
Getting started with dev tools (atl)Getting started with dev tools (atl)
Getting started with dev tools (atl)Thinkful
 
It's XP Stupid (2019)
It's XP Stupid (2019)It's XP Stupid (2019)
It's XP Stupid (2019)Mike Harris
 
Supersize me: Making Drupal go large
Supersize me: Making Drupal go largeSupersize me: Making Drupal go large
Supersize me: Making Drupal go largeTom Phethean
 
Adapt your testing for Agile
Adapt your testing for AgileAdapt your testing for Agile
Adapt your testing for AgileEmma Armstrong
 
Creating change from within - Agile Practitioners 2012
Creating change from within - Agile Practitioners 2012Creating change from within - Agile Practitioners 2012
Creating change from within - Agile Practitioners 2012Dror Helper
 
TDD - Seriously, try it! (updated '22)
TDD - Seriously, try it! (updated '22)TDD - Seriously, try it! (updated '22)
TDD - Seriously, try it! (updated '22)Nacho Cougil
 
Introduction to Bdd and cucumber
Introduction to Bdd and cucumberIntroduction to Bdd and cucumber
Introduction to Bdd and cucumberNibu Baby
 
TDD Anti-patterns (2022 edition)
TDD Anti-patterns (2022 edition)TDD Anti-patterns (2022 edition)
TDD Anti-patterns (2022 edition)Ahmed Misbah
 
Greenfield Java 2013
Greenfield Java 2013Greenfield Java 2013
Greenfield Java 2013Will Iverson
 
Getting started with dev tools (4/10/17 DC)
Getting started with dev tools (4/10/17 DC)Getting started with dev tools (4/10/17 DC)
Getting started with dev tools (4/10/17 DC)Daniel Friedman
 
Devconf 2011 - PHP - How Yii framework is developed
Devconf 2011 - PHP - How Yii framework is developedDevconf 2011 - PHP - How Yii framework is developed
Devconf 2011 - PHP - How Yii framework is developedAlexander Makarov
 
Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience - Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience - UXPA International
 
How to Become a Senior
How to Become a SeniorHow to Become a Senior
How to Become a SeniorIvan Katunou
 
Agile Testing XBOSoft Jared Richardson Phil Lew
Agile Testing XBOSoft Jared Richardson Phil LewAgile Testing XBOSoft Jared Richardson Phil Lew
Agile Testing XBOSoft Jared Richardson Phil LewXBOSoft
 
UX in Action: IBM Watson
UX in Action: IBM WatsonUX in Action: IBM Watson
UX in Action: IBM WatsonUserTesting
 

Similar to Lean Mean & Agile 2009 (20)

The Importance of Culture: Building and Sustaining Effective Engineering Org...
The Importance of Culture:  Building and Sustaining Effective Engineering Org...The Importance of Culture:  Building and Sustaining Effective Engineering Org...
The Importance of Culture: Building and Sustaining Effective Engineering Org...
 
Lean-Agile Development with SharePoint - Bill Ayers
Lean-Agile Development with SharePoint - Bill AyersLean-Agile Development with SharePoint - Bill Ayers
Lean-Agile Development with SharePoint - Bill Ayers
 
Getting started with dev tools (atl)
Getting started with dev tools (atl)Getting started with dev tools (atl)
Getting started with dev tools (atl)
 
It's XP Stupid (2019)
It's XP Stupid (2019)It's XP Stupid (2019)
It's XP Stupid (2019)
 
Supersize me: Making Drupal go large
Supersize me: Making Drupal go largeSupersize me: Making Drupal go large
Supersize me: Making Drupal go large
 
The Agile Mindset
The Agile MindsetThe Agile Mindset
The Agile Mindset
 
Adapt your testing for Agile
Adapt your testing for AgileAdapt your testing for Agile
Adapt your testing for Agile
 
Creating change from within - Agile Practitioners 2012
Creating change from within - Agile Practitioners 2012Creating change from within - Agile Practitioners 2012
Creating change from within - Agile Practitioners 2012
 
TDD - Seriously, try it! (updated '22)
TDD - Seriously, try it! (updated '22)TDD - Seriously, try it! (updated '22)
TDD - Seriously, try it! (updated '22)
 
Introduction to Bdd and cucumber
Introduction to Bdd and cucumberIntroduction to Bdd and cucumber
Introduction to Bdd and cucumber
 
TDD Anti-patterns (2022 edition)
TDD Anti-patterns (2022 edition)TDD Anti-patterns (2022 edition)
TDD Anti-patterns (2022 edition)
 
Greenfield Java 2013
Greenfield Java 2013Greenfield Java 2013
Greenfield Java 2013
 
Getting started with dev tools (4/10/17 DC)
Getting started with dev tools (4/10/17 DC)Getting started with dev tools (4/10/17 DC)
Getting started with dev tools (4/10/17 DC)
 
Agile ux fullday-uxpa2016
Agile ux fullday-uxpa2016Agile ux fullday-uxpa2016
Agile ux fullday-uxpa2016
 
Devconf 2011 - PHP - How Yii framework is developed
Devconf 2011 - PHP - How Yii framework is developedDevconf 2011 - PHP - How Yii framework is developed
Devconf 2011 - PHP - How Yii framework is developed
 
Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience - Pre-Conference Course: UX and Agile: Making a Great Experience -
Pre-Conference Course: UX and Agile: Making a Great Experience -
 
How to Become a Senior
How to Become a SeniorHow to Become a Senior
How to Become a Senior
 
It's XP, Stupid
It's XP, StupidIt's XP, Stupid
It's XP, Stupid
 
Agile Testing XBOSoft Jared Richardson Phil Lew
Agile Testing XBOSoft Jared Richardson Phil LewAgile Testing XBOSoft Jared Richardson Phil Lew
Agile Testing XBOSoft Jared Richardson Phil Lew
 
UX in Action: IBM Watson
UX in Action: IBM WatsonUX in Action: IBM Watson
UX in Action: IBM Watson
 

Recently uploaded

Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 

Recently uploaded (20)

Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 

Lean Mean & Agile 2009

  • 1. Lean, Mean, & Agile Agile 2009 Conference Report Harold Shinsato - October 8, 2009
  • 8.
  • 9. A little history • agilemanifesto.org - February 2001 • Programmers tired of bureaucracy • lean.org - Toyota Post WWII • Few customers • Had to remove waste • Scrum Conference + XP Conference
  • 10. Agile 2009 Conference • Chicago - August 24-27 • 1350+ Attendees • Large Music Festival Model (21 “stages”) • 20+ sessions going on at any time • Any number of “Open Jam” sessions
  • 11. User Experience (UX) • Jared Spool Keynote • Guerilla Usability Testing • Guerilla User Research • Lightweight Design • Integrated with Agile/Scrum/Iterative dev.
  • 12. What’s the Story? As <role> I want <function> so that <business value> Rachel Davies Johanna Rothman
  • 14. 10 Years to World Class • The Role of Deliberate Practice in the Acquisition of Expert Performance - by Anders Ericsson • Sufficient time (hours a day) • Mentor/Coach/Teacher • Specific practice • Immediate Feedback
  • 15. Uncle “Bob” Martin objectmentor.com
  • 16. Software Craftsmanship • Software Craftsmanship North America • Know your craft • Study more than 1 language (Java, C#, Dynamic, Functional) • YOU are responsible for your training • No technical debt - only mess making
  • 18. TDD Benefits • Clean code • Self documenting • Full unit test suite • Enables near 0 defect rate • Ensures flexible code
  • 20. BDD Benefits • TDD is actually not about testing • TDD is a design methodology • “Test” Driven Development encourages “Test” mindset and delays mastery of TDD • BDD encourages starting from the behavior and the use of • Mock objects
  • 21. BDD Sessions + Tools • Agile 2009 Sessions: • “Acceptance Testing Java Applications with Cucumber, RSpec, and JRuby” • “How to Make Your Testing More Groovy” • Tools • RSpec, Cucumber, JBehave, EasyB, .......
  • 24. EasyB
  • 25. Mock Objects • Mock Roles not Objects • System Under Test & Collaborators • “Mocks aren’t Stubs” (or dummies) • State vs. Behavior Verification • Java tools - jMock, EasyMock, Mockito
  • 26. JMock Example SUT sut = new SUT(); // System Under Test Mock mock = new Mock(Collab.class); //setup expectations mock.expects(once()).method(“neededMethod”) .with(eq(1), eq(“String param”)); //exercise sut.testedMethod((Collab) mock.proxy()); //verify mock.verify(); assertEquals(EXPECTED_STATE, sut.state());
  • 27. Bad Mocking (thanks Paolini Carolini & Sudhindra Rao) • Unreadable tests • Replacing Integration Testing • Unnecessary (e.g.Value Object) • Context Confusion • Mock returns Mock • Mock Abuse (better: FakeDB, Dummy, Stub, Fixture)
  • 30. Other Groovy Features • Fully compatible with Java code • Can use Static Types • Easy to make Domain Specific Language • Dynamic typing, closures, metaprogramming, etc. • Easy XML processing, string & list handling
  • 33. Decision vs. Exploration • Discussion is “convergent”. It assumes a single viewpoint must be chosen. • Dialog or Conversation allows for exploration and does not require decision. • Dialog is critical for many Agile processes. • User Research, Retrospectives, Learning
  • 34. Dialog Processes • World Café • Open Space Technology • Deep Democracy • Appreciative Inquiry
  • 35. Leadership Stage • Coaching • Organizational Development • Change Management • Collaborative vs. “Command & Control” • Leadership & Self-Organizing • “Stepping Up & Stepping Back”
  • 36. Post-Heroic Leadership Gilles Brouillet “Developing Agile Leaders and Team: A Developmental Path”
  • 38. Responsibility Redefined • Dr. Christopher Avery • Leadership means 100% Responsibility • Responsibility != Accountability • Responsibility != Shame
  • 40. We cannot solve our problems with the same thinking we used when we created them.
  • 41. We Want Your Questions, Thoughts ...