Agile101 Small Batches

1,960 views
1,858 views

Published on

As presented at Mile High Agile 2012 in Denver.

Review and discuss the basic agile practices in the context of two games. The first game will illustrate why small batches are important and how they can help you address project risks sooner. The second game will illustrate how small batches can help give you better information about your project sooner and will demonstrate some of the basic agile practices at work like iterations, continuous flow, manage to done, velocity, retrospectives, etc.

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,960
On SlideShare
0
From Embeds
0
Number of Embeds
10
Actions
Shares
0
Downloads
19
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • I am a very experienced agilistIT shops are very response to requestsAgile is suitable for all software projects.
  • http://www.informationweek.com/news/global-cio/interviews/229218781?pgno=1
  • They don’t want you to hurry, write bad code, etcThey want you to finish sooner.
  • Get all the sandwiches delivered sooner.
  • Ensure you have the right sandwich
  • Bad mayo?Cost of finding a defect
  • Examples: Performance of DBR screenWill people buy it?Does it solve the business problem?Quick Books integration
  • Burn chart. Do one & multiply
  • They don’t want you to hurry, write bad code, etcThey want you to finish sooner.
  • Like on a soccer team. I can step in and play defense even though I’m an offensive specialist.Blurring the lines.Tester can assist with requirementsDeveloper can script the automated acceptance tests
  • Like on a soccer team. I can step in a play defense even though I’m an offensive specialist.
  • SOLID principlesDesign PatternsTDDExamplesSwap out databaseSwap out an engine
  • Talk about testing experienceTalk about risk, assumptions, etc.Deck of cards
  • When you have an issue, you need to get the answer without waiting, without emailing, without having to document everything.
  • Efficiency vs. Effectiveness============================Principle: Mutual benefit & respectWin-Win- listen to Green & Clean?- Nurture competency higher than your own- You are the steward of the potential of your team- Share recognition, share responsibility, share ownership. How can your plans reflect this? How does a roles and responsibilities grid help this?- You want the team to win.- Long term win is what you are going for. Sometimes pain and mistakes on the way, but if you nag/correct/control they aren't learning how to do it without you. This is lose-lose - you have to nag, they get nagged.- This robs them of engagement, reward, satisfaction.- Cooperation vs. competitionBegin with the end in mind- Give the description of the desired results (Green & Clean)- Have them see it, don't rush this part. Keep communicating until they understand it.- Give them guidelines, no-nos. e.g don't paint the grass.- Don't tell them what methods to use to solve the problem. - Tap into their resourcefulness, creative energy to achieve the desired results.- Offer them help, be the one- Identify accountability ('the desired results' (why), and the burn/velocity charts as visible status)- If the relationship/trust is good, people will be twice as hard on themselves as you would- "You cannot hold people responsible for results if you supervise their methods. You then become responsible for results and rules replace human judgement, creativity, responsibility"- "Effective leaders set up the conditions of empowerment and then... get out of people’s way, clear their path and become a source of help as requested.""Be efficient with things and effective with people"- play the Green & Clean clip- Being nagged, vs. getting the job done yourself. - example: kanban at home.- Give boundaries, agree on accountability, offer support & help, let them go.- Collective responsibility vs. Individual responsibility- Autonomy - Don't assign/manage tasks, trust them to get it done.- Mastery - Allow them to get better, including the managing.- Purpose - Tell them why.Manage Teams, not tasks.A completed task means nothing, a completed user story means everything.If you break down into tasks, you are going into too much detail (waste)Manage outcomes, not outputStory of the PM who kept updating MS Project, instead of helping the team.Promotes micromanaging (are you done that task?)Assumes the team can't figure outPromotes silosManaging tasks - takes too much timeDan Pink - autonomy, mastery, purposeWhat are you gaining from managing/assigning tasks?
  • Anna
  • Conditions of empowermentHelp as requestedClear goalsBrutal Transparency wrt to accountabilityWe no longer:Supervise her methodsAssign her tasksAsk if she’s done yet
  • Lego gameWIP = 2One PMTeam = 3Show visual in excel
  • Agile101 Small Batches

    1. 1. AGILE 101: smallBATCHES Mile High Agile 2012
    2. 2. Steve Rogalsky @SROGALSKY WINNIPEGAGILIST.BLOGSPOT.COM PROTEGRA.COM
    3. 3. At Protegra weemploy agile andlean techniques togive our clients an Protegra Advantageadvantage – to leapout of the bowl.info@protegra.comblog.protegra.comwww.protegra.com
    4. 4. “Is your IT shop theplace where great businessideas grind to a halt?”
    5. 5. not necessarily faster
    6. 6. As a <role> I want to <some action> So that <result>(one coin) (many coins)
    7. 7. 120%100%80%60% Time spent switching40% Time spent on task(s)20% 0% 1 Task 2 Tasks 3 Tasks 4 Tasks 5 Tasks 6 Tasks From: QSM 1, Systems Thinking (Dorset House, 1992). Jerry Weinberg
    8. 8. Credit: This example is from “The Role of Quality Assurance in Lean-Agile” – Allan Shalloway
    9. 9. Alistair’s 3 keys tosuccessful projects:1. Frequent Delivery of working code2. Access to customers3. Co-located teams
    10. 10. vs. andEfficient Effective
    11. 11. 1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.2. Welcome changing requirements, even late in development. Agile processes harness change for the customers competitive advantage.3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.4. Business people and developers must work together daily throughout the project.5. Build projects around motivated individuals. Give them the environment and support they need, and trust them to get the job done.6. efficient The most and effective method of conveying information to and within a development team is face-to-face conversation .7. Working software is the primary measure of progress.8. Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.9. technical excellence Continuous attention to and good design enhances agility.10.Simplicity- -the art of maximizing the amount of work not done--is essential.11. The best architectures, requirements, and designs emerge from self-organizing teams.12. At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behaviour accordingly.
    12. 12. 1. Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.2. Welcome changing requirements, even late in development. Agile processes harness change for the customers competitive advantage.3. Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.4. Business people and developers must work together daily throughout the project.5. Build projects around motivated individuals . Give them the environment and support they need, and trust them to get the job done.6. The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.7. Working software is the primary measure of progress.8. Agile processes promote sustainable development . The sponsors, developers, and users should be able to maintain a constant pace indefinitely.9. Continuous attention to technical excellence and good design enhances agility.10. Simplicity--the art of maximizing the amount of work not done--is essential.11. self-organizing teams. The best architectures, requirements, and designs emerge from12. At regular intervals, the team reflects on how to become more effective , then tunes and adjusts its behaviour accordingly.
    13. 13. "You cannot hold people responsible forresults if you supervise their methods. You then become responsible for results andrules replace human judgement, creativity, responsibility“ - Dr. Stephen R. Covey
    14. 14. "Effective leaders set up the conditions ofempowerment and then... get out of people’s way, clear their path and become a source of help as requested.“ - Dr. Stephen R. Covey
    15. 15. Size 1 Size 2 Size 3 Size 8
    16. 16. What agile practices did we just witness?• Iteration Planning • User Stories• Prioritized backlog (1-100 • Acceptance Testing not H/M/L) • Embracing Change• Manage to Done • Scope management• Relative estimating • Face to face• Velocity communication• Burn up/down • Kanban / Continuous Flow• Demo • Work in Progress Limits• Retrospectives • Continually testing for failure
    17. 17. In Closing Want sooner? • Be efficient with process – (think small) • Be effective with people Steve Rogalsky @SROGALSKYThanks! WINNIPEGAGILIST.BLOGSPOT.COMQuestions PROTEGRA.COM

    ×