SlideShare a Scribd company logo
What is the deal with Agile? I mean really?   an overview of "Practices of an Agile Developer"
In  a nutshell....Waterfall VS. Agile Waterfall fixed price planning up front features documented with great detail Linear process - planning is first testing is at the end   Agile price TDB limited planning up front goals and problems documented over solutions Continuous, iterative process
The Agile Manifesto We value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan    
The Spirit don't work in isolation avoid quick hacks - they'll stay in the codebase forever  understand the problem you are trying to solve fix the problem, not just the symptom blame doesn't fix anything criticize ideas, not people negativity kills innovation simplify - if it's too hard for one person to understand, it's probably not maintainable use timeboxing (by lunch, end of day, etc) to keep things moving forward (software projects are like sharks, if they don't keep moving, they'll die)
Feeding Agility Keep up with change keeping learning follow blogs for the latest "buzz" User groups and conferences READ! Share what you know with your team Know when to unlearn in this business, if you still doing something the same way you did it 3-4 years ago...it's probably time for a change Question until you understand (get past the symptoms, ask  "why?") think of all the stuff we could NOT build if we just asked "why?"
Delivering What Users Want keep users involved in decision making don't show them when it's too late to change course present options early   early designs should be high level, not too exact - only as detailed as necessary to implement (think Lewis and Clark crossing the country) justify technology use - don't build it when you can download it always keep the application in a state that is ready to deploy, check in your work early and often (use CI) Frequent Demos Good software today is much better than Superior Software sometime next year - get something usable out ASAP      
Agile Feedback small, continuous adjustment requires constant feedback sprint reviews (every 1, 2 or more weeks) release notes build as early as possible (automate) improve constantly customers are the domain experts scope can change more easily (SOWs can be issued to accomodate in our case)
Coding Agile good code does not necessarily mean more classes and or fewer code re-use is key, code duplication should be in check Good programming can be simple to read, and well optimized - you can do both! refactor! everytime you re-use something, make improvments don't comment things out, remove them today's lazy hack is tomorrow's nightmare, don't give in to temptation...it will cost more in the long run, quick fixes are ticking time bombs
Bugs report and log all exceptions - even if there is no plan to fix them right away provide useful messages to the client in the software for any event that occurs, whether it's an exception or a success for hard to find bugs in huge codebases, isolate the bug into a test or prototype that is more managable Blame does not fix bugs
Collaboration Client Facing: back log tasks keep a project glossary email status reporting (client facing, and SCRUMS) release notes with demos   Internal: improving team skills is just as important as getting projects out the door improve things with each go round, not just the quality of the deliverable, but better your skills (old code should dissapear over time) designers and architects must work on the deliverable tools (meetings, fogbugz, "the list")  
Wrapup better collaboration systems auto genererated status reports auto generated release notes email tracking weekly or bi-weekly reviews with client gather client feedback     There no need to fix everything at once. Like agile itself, implementation should be incremental.   What we can take on now: Continuous Integration Source Control Change  eventually integrate with collab system Results: fewer surprises, less overbuilding more SOWs better quality   better software more profit (fewer trainwrecks) happier clients

More Related Content

What's hot (20)

PPTX
The Roles and Responsibilities in an Agile Project and Organization
Toivo Vaje
 
PPTX
Agile Roles & responsibilities
Ravi Tadwalkar
 
PDF
Agile Scrum Overview
Data Con LA
 
KEY
Intro to Lean Software Development
gcaprio
 
PPT
Agile overview
Ragavendra Prasath
 
PDF
Agile & Scrum Training
Conscires Agile Practices
 
PDF
Lean vs scrum
Pavel Dabrytski
 
PPTX
Agile Development Models
DeepaThirumurugan
 
PPT
Agile presentation
infolock
 
PPTX
Lean Software Development Is for Everyone
TechWell
 
PDF
Introducing Agile Scrum XP and Kanban
Dimitri Ponomareff
 
PDF
Agile Methodology - Agile Project Management Training
Resit Gulec, MBA, PMP®, ITIL®
 
PPT
Agile and waterfall
John Morse
 
PDF
Apt agile methodology
Indra
 
PDF
Lean and Kanban-based Software Development
Dr. Tathagat Varma
 
PDF
Іванна Заєць: Основи ПМа (PM’s Essentials)
Lviv Startup Club
 
PPTX
Agile and Lean Software Development
Dr. Tathagat Varma
 
PDF
Agile Methodology Vs. Others by Sara Berrada
Agile ME
 
PDF
Assessing Your Agility: Introducing the Comparative Agility Assessment
Mike Cohn
 
PPTX
Agile foundation and agile myths
Dennis Stevens
 
The Roles and Responsibilities in an Agile Project and Organization
Toivo Vaje
 
Agile Roles & responsibilities
Ravi Tadwalkar
 
Agile Scrum Overview
Data Con LA
 
Intro to Lean Software Development
gcaprio
 
Agile overview
Ragavendra Prasath
 
Agile & Scrum Training
Conscires Agile Practices
 
Lean vs scrum
Pavel Dabrytski
 
Agile Development Models
DeepaThirumurugan
 
Agile presentation
infolock
 
Lean Software Development Is for Everyone
TechWell
 
Introducing Agile Scrum XP and Kanban
Dimitri Ponomareff
 
Agile Methodology - Agile Project Management Training
Resit Gulec, MBA, PMP®, ITIL®
 
Agile and waterfall
John Morse
 
Apt agile methodology
Indra
 
Lean and Kanban-based Software Development
Dr. Tathagat Varma
 
Іванна Заєць: Основи ПМа (PM’s Essentials)
Lviv Startup Club
 
Agile and Lean Software Development
Dr. Tathagat Varma
 
Agile Methodology Vs. Others by Sara Berrada
Agile ME
 
Assessing Your Agility: Introducing the Comparative Agility Assessment
Mike Cohn
 
Agile foundation and agile myths
Dennis Stevens
 

Similar to Agile Development Brown Bag Lunches Slides (20)

PPTX
Agile intro stldodn2009
Brian Blanchard
 
PPTX
Agile Comes to You (Mironov, Bellevue)
Enthiosys Inc
 
PPTX
Agile Principles.pptx
DJGaming28
 
PPT
Agile Cafe Boulder - Panelist and keynote slides
Cloud Elements
 
PPT
Agile Software Development
gian-zas
 
PPT
Agile Development From A Developers Perspective
Richard Banks
 
PDF
FOSS and agile software development
DUONG Trong Tan
 
PDF
SFD2012Hanoi - Duong Trong Tan - Agile and FOSS
Vu Hung Nguyen
 
PDF
Introduction to agility
Alexandre Cuva
 
PPT
Sustainable SW Development
Sam Hwang
 
PDF
Introduction to Lean, Agile, Scrum, & XP
Si Alhir (Sinan Si Alhir)
 
ZIP
Agile Implementation
Olga Sa
 
PPTX
Introduction to Agile, by J.D. Meier
J.D. Meier
 
PPTX
Agile Intro - Saint Louis Day of Dot Net
Brian Blanchard
 
PPTX
Agile
Jeff Bollinger
 
PDF
Why Agile? Back to Basics.
Lucas Hendrich
 
PDF
Introduction to Agile Methods
Siddhi
 
PPTX
Value driven continuous delivery
Gabriel Prat
 
PDF
Selling agile to business nisha shoukath
India Scrum Enthusiasts Community
 
Agile intro stldodn2009
Brian Blanchard
 
Agile Comes to You (Mironov, Bellevue)
Enthiosys Inc
 
Agile Principles.pptx
DJGaming28
 
Agile Cafe Boulder - Panelist and keynote slides
Cloud Elements
 
Agile Software Development
gian-zas
 
Agile Development From A Developers Perspective
Richard Banks
 
FOSS and agile software development
DUONG Trong Tan
 
SFD2012Hanoi - Duong Trong Tan - Agile and FOSS
Vu Hung Nguyen
 
Introduction to agility
Alexandre Cuva
 
Sustainable SW Development
Sam Hwang
 
Introduction to Lean, Agile, Scrum, & XP
Si Alhir (Sinan Si Alhir)
 
Agile Implementation
Olga Sa
 
Introduction to Agile, by J.D. Meier
J.D. Meier
 
Agile Intro - Saint Louis Day of Dot Net
Brian Blanchard
 
Why Agile? Back to Basics.
Lucas Hendrich
 
Introduction to Agile Methods
Siddhi
 
Value driven continuous delivery
Gabriel Prat
 
Selling agile to business nisha shoukath
India Scrum Enthusiasts Community
 
Ad

Recently uploaded (20)

PPTX
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
PDF
Predicting the unpredictable: re-engineering recommendation algorithms for fr...
Speck&Tech
 
PDF
SFWelly Summer 25 Release Highlights July 2025
Anna Loughnan Colquhoun
 
PDF
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PDF
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
PDF
HCIP-Data Center Facility Deployment V2.0 Training Material (Without Remarks ...
mcastillo49
 
PDF
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
PDF
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
PDF
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
PDF
Building Resilience with Digital Twins : Lessons from Korea
SANGHEE SHIN
 
PPTX
MSP360 Backup Scheduling and Retention Best Practices.pptx
MSP360
 
PDF
July Patch Tuesday
Ivanti
 
PDF
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
PDF
Persuasive AI: risks and opportunities in the age of digital debate
Speck&Tech
 
PDF
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
PDF
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
PPTX
✨Unleashing Collaboration: Salesforce Channels & Community Power in Patna!✨
SanjeetMishra29
 
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
Predicting the unpredictable: re-engineering recommendation algorithms for fr...
Speck&Tech
 
SFWelly Summer 25 Release Highlights July 2025
Anna Loughnan Colquhoun
 
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
Log-Based Anomaly Detection: Enhancing System Reliability with Machine Learning
Mohammed BEKKOUCHE
 
HCIP-Data Center Facility Deployment V2.0 Training Material (Without Remarks ...
mcastillo49
 
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
CIFDAQ Weekly Market Wrap for 11th July 2025
CIFDAQ
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
Building Resilience with Digital Twins : Lessons from Korea
SANGHEE SHIN
 
MSP360 Backup Scheduling and Retention Best Practices.pptx
MSP360
 
July Patch Tuesday
Ivanti
 
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
Persuasive AI: risks and opportunities in the age of digital debate
Speck&Tech
 
SWEBOK Guide and Software Services Engineering Education
Hironori Washizaki
 
Complete JavaScript Notes: From Basics to Advanced Concepts.pdf
haydendavispro
 
✨Unleashing Collaboration: Salesforce Channels & Community Power in Patna!✨
SanjeetMishra29
 
Ad

Agile Development Brown Bag Lunches Slides

  • 1. What is the deal with Agile? I mean really?   an overview of "Practices of an Agile Developer"
  • 2. In  a nutshell....Waterfall VS. Agile Waterfall fixed price planning up front features documented with great detail Linear process - planning is first testing is at the end   Agile price TDB limited planning up front goals and problems documented over solutions Continuous, iterative process
  • 3. The Agile Manifesto We value: Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over contract negotiation Responding to change over following a plan    
  • 4. The Spirit don't work in isolation avoid quick hacks - they'll stay in the codebase forever understand the problem you are trying to solve fix the problem, not just the symptom blame doesn't fix anything criticize ideas, not people negativity kills innovation simplify - if it's too hard for one person to understand, it's probably not maintainable use timeboxing (by lunch, end of day, etc) to keep things moving forward (software projects are like sharks, if they don't keep moving, they'll die)
  • 5. Feeding Agility Keep up with change keeping learning follow blogs for the latest "buzz" User groups and conferences READ! Share what you know with your team Know when to unlearn in this business, if you still doing something the same way you did it 3-4 years ago...it's probably time for a change Question until you understand (get past the symptoms, ask  "why?") think of all the stuff we could NOT build if we just asked "why?"
  • 6. Delivering What Users Want keep users involved in decision making don't show them when it's too late to change course present options early   early designs should be high level, not too exact - only as detailed as necessary to implement (think Lewis and Clark crossing the country) justify technology use - don't build it when you can download it always keep the application in a state that is ready to deploy, check in your work early and often (use CI) Frequent Demos Good software today is much better than Superior Software sometime next year - get something usable out ASAP      
  • 7. Agile Feedback small, continuous adjustment requires constant feedback sprint reviews (every 1, 2 or more weeks) release notes build as early as possible (automate) improve constantly customers are the domain experts scope can change more easily (SOWs can be issued to accomodate in our case)
  • 8. Coding Agile good code does not necessarily mean more classes and or fewer code re-use is key, code duplication should be in check Good programming can be simple to read, and well optimized - you can do both! refactor! everytime you re-use something, make improvments don't comment things out, remove them today's lazy hack is tomorrow's nightmare, don't give in to temptation...it will cost more in the long run, quick fixes are ticking time bombs
  • 9. Bugs report and log all exceptions - even if there is no plan to fix them right away provide useful messages to the client in the software for any event that occurs, whether it's an exception or a success for hard to find bugs in huge codebases, isolate the bug into a test or prototype that is more managable Blame does not fix bugs
  • 10. Collaboration Client Facing: back log tasks keep a project glossary email status reporting (client facing, and SCRUMS) release notes with demos   Internal: improving team skills is just as important as getting projects out the door improve things with each go round, not just the quality of the deliverable, but better your skills (old code should dissapear over time) designers and architects must work on the deliverable tools (meetings, fogbugz, "the list")  
  • 11. Wrapup better collaboration systems auto genererated status reports auto generated release notes email tracking weekly or bi-weekly reviews with client gather client feedback     There no need to fix everything at once. Like agile itself, implementation should be incremental.   What we can take on now: Continuous Integration Source Control Change eventually integrate with collab system Results: fewer surprises, less overbuilding more SOWs better quality   better software more profit (fewer trainwrecks) happier clients