• Save
Being Agile
Upcoming SlideShare
Loading in...5
×
 

Being Agile

on

  • 262 views

A talk I gave at the Amazon Development Centre London on understanding the root of the Agile movement.

A talk I gave at the Amazon Development Centre London on understanding the root of the Agile movement.

Statistics

Views

Total Views
262
Views on SlideShare
262
Embed Views
0

Actions

Likes
0
Downloads
0
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Top down
  • Philosophy!
  • Bottom up
  • Learnability: How easy is it for users to accomplish basic tasks the first time they encounter the software?Efficiency: Once users have learned the software, how quickly can they perform tasks?Memorability: When users return to the software after a period of not using it, how easily can they re establish proficiency?Errors: How many errors do users make, how severe are these errors, and how easily can they recover from the errors?Satisfaction: How pleasant is it to use the software?
  • Over-plannedLots of rules and regulationsRegimentedMicromanagedPhased
  • Fewer rules and regulationsAdaptabilityEvolvesOwnership
  • 17 prominent developersKent Beck (SmallTalk, TDD, JUnit)Martin Fowler (Dependency injection, continuous integration, continuous delivery)Uncle Bob Martin (Software Craftmanship, Clean Code)Practitioners of several programming methodologies
  • Traditional wisdom: learn the fundamentals, techniques, heuristics, and proverbs
  • Break with tradition: detachment from the illusions of self
  • There are no techniques or proverbs, all moves are natural, becoming one with spirit alone without clinging to forms; transcending the physical
  • Framework for agileCross functional teamsValue at every layer of the system
  • Break down to smaller tasksSimplify deliveryIterate quickly
  • Features and development tasks broken down into User storiesStarts out fuzzy but becomes better understood as it is prioritised towards iterations
  • Customer valueAcceptance criteriaSpikesDependancy management
  • Poker planning
  • Set-up for successGoals as driversEnvironmentsToolsProcessesBacklogDefinition of Done

Being Agile Being Agile Presentation Transcript

  • Being AgileHow to Condense Order from the Chaos
  • Previously…
  • Bad Agile!
  • Designed by development teams……for development teams!
  • Software Development is Hard!
  • Great software needs to…Work as intended
  • Great software needs to…Work as intendedBe user friendly
  • Great software needs to…Work as intendedBe user friendlyBe adaptable
  • Great software needs to…Work as intendedBe user friendlyBe robustBe adaptable
  • Great software needs to…Work as intendedBe user friendlyBe robustBe adaptableBe portable
  • Great software needs to…Work as intendedBe user friendlyBe robustBe adaptableBe portableBe scalable
  • Great software needs to…Work as intendedBe user friendlyBe robustBe adaptableBe efficientBe portableBe scalable
  • Great software needs to…Work as intendedBe user friendlyBe robustBe adaptableBe reusableBe efficientBe portableBe scalable
  • Great software needs to…Work as intendedBe user friendlyBe robustBe adaptableBe reusableBe efficientBe portableBe secureBe scalable
  • Great software needs to…Work as intendedBe user friendlyBe robustBe adaptableBe reusableBe efficientBe portableBe secureBe scalableBe deliverable
  • User-friendly? Learnability Efficiency Memorability Errors Satisfaction
  • Heavyweight Software Development
  • Waterfall Requirements Design Implementation Integration Testing Debugging Deployment Maintenance
  • Lightweight Software Development
  • Agile!
  • Meanwhile, somewhere in Utah…… circa 2001
  • The Agile ManifestoWe are uncovering better ways of developing software by doing it andhelping others do it. Through this work we have come to value:• Individuals and interactions over processes and tools• Working software over comprehensive documentation• Customer collaboration over contract negotiation• Responding to change over following a planThat is, while there is value in the items on the right, we value the items onthe left more.
  • Value Individuals Working Software Customer collaboration Responding to change
  • Principles
  • “Our highest priority is to satisfy the customerthrough early and continuous delivery ofvaluable software.”
  • “Welcome changing requirements, even late indevelopment. Agile processes harness change forthe customers competitive advantage.”
  • “Deliver working software frequently, from acouple of weeks to a couple of months, with apreference to the shorter timescale.”
  • “Business people and developers must worktogether daily throughout the project.”
  • “Build projects around motivated individuals.Give them the environment and support theyneed, and trust them to get the job done.”
  • “The most efficient and effective method ofconveying information to and within adevelopment team is face-to-face conversation.”
  • “Working software is the primary measure ofprogress.”
  • “Agile processes promote sustainabledevelopment. The sponsors, developers, andusers should be able to maintain a constant paceindefinitely.”
  • “Continuous attention to technical excellenceand good design enhances agility.”
  • “Simplicity—the art of maximizing the amountof work not done—is essential.”
  • “The best architectures, requirements, anddesigns emerge from self-organising teams.”
  • “At regular intervals, the team reflects on how tobecome more effective, then tunes and adjustsits behavior accordingly.”
  • Shuhari of Agile
  • Learn (Shu)
  • Detach (Ha)
  • Transcend (Ri)
  • Scrum
  • Simplify
  • Backlog
  • Definition of Done
  • User Stories As a customer / user… I want… So that…
  • Complexity……and the inevitable dreaded estimation
  • CeremoniesValue vs. Dogma
  • Sprint Zero
  • Backlog Grooming
  • Sprint Planning
  • Stand-ups
  • Demos
  • Retrospectives
  • Scrum of Scrums
  • Thank you!