Beefy Boxes and Bandwidth Generously Provided by pair Networks
We don't bite newbies here... much
 
PerlMonks  

Re^2: Nobody Expects the Agile Imposition (Part V): Meetings

by JavaFan (Canon)
on Dec 13, 2010 at 13:06 UTC ( #876869=note: print w/ replies, xml ) Need Help??


in reply to Re: Nobody Expects the Agile Imposition (Part V): Meetings
in thread Nobody Expects the Agile Imposition (Part V): Meetings

I understand the importance of frequent status updates. If someone has a task estimated at a month, you don't want to find at 27 days that the task is off-course and will take two months to complete. These daily meetings are useful as articulation points.
But that's not the point of daily standups. In an "out-of-the-book" sprint, the team has at the beginning of the sprint split the project into small tasks without deciding who is going to do what. Tasks can be in a small number of states: "not worked on", "being worked on", "blocked" (or impeded), "done". Many teams use a board with columns for the states, and sticky notes for the tasks. During the standup, people move sticky notes from one column to the other. The standup is important to avoid having the same people work on the same task, and to know which tasks can now be worked on because they first need other tasks to be finished. (For instance, if a project involves installing an OS and a database, the task for installing a database cannot be done before the task of installing the OS has finished (which needs to be done after taking the machine out of the box and into the racks (which can only be done after ordering the box (which depends on the task of securing funding, etc)))).

Note also that in out-of-the-box scrum, you don't estimate how long a project will last, then adjust the estimate during the development. It's the other way around. "We have a month (or 2 weeks, or 2 months, usually nothing longer), what can we do in that period". Traditional project management is usually "We want X, we have Y developers, hence we estimate it's going to take Z days", or "We want X, the deadline is in Z days, hence we estimate we need Y developers". Scrum is "We have Y developers, we have Z days. Product owner, split X into smaller X' features, and we'll estimate how many X's we can do". (Note I'm not giving any judgement whether this is a good idea, and I'm sure everyone can come up with at least one scenario where it isn't going to work - I'm just telling what the reasoning behind scrum is).


Comment on Re^2: Nobody Expects the Agile Imposition (Part V): Meetings
Re^3: Nobody Expects the Agile Imposition (Part V): Meetings
by sundialsvc4 (Abbot) on Dec 14, 2010 at 15:16 UTC

    Bah.

    If you have actually succeeded in “breaking the work down into small tasks,” it doesn’t really matter “who does what.”   The real issue, neatly avoided by all this quasi-sports talk, comes down to exactly two things:

    1. Are you correct in your breakdown of the tasks?
    2. Will the target ever change position, or otherwise change in any way at all?

    Imagine, if you will, the task of shooting arrows at a target in a tornado.   Most of the arrows that you shoot are going to fly off course:   it doesn’t matter at all if, or how, you “track” those arrows.   Either the arrows were mis-aimed, or the target moved, or you somehow just wound-up with an arrow in your butt (but don’t quite know just how it got there...), or some combination of the three.

    Or maybe you have a “magic arrow” that will zip this way and that, gradually “homing in” on that moving-target.   But, how long was the course taken by that arrow, and how many trees and other obstacles did it have to blast its way through on its magical, determined effort to “finally hit the target?”

    An experienced marksman would wait for the tornado to pass.   She would size up the situation carefully, place herself at the position she had chosen, and fire one shot.   Only one.   And she would not walk up to the target to see if her arrow had done its job.

    I say (and not without experience to back me up...) that, when you are actually ready to write software code, writing the code is easy.   After all, “the code” is simply an expression of the design ... the most-rigid and inflexible expression, but comprehensible to a digital computer.   This should be the last incarnation that your completed design will take, and you should delay putting it into that form as long as possible.

    But of course, people who are paying a dreadful amount of money for something want to see “progress.”   And people who are working on that something, want to “progress.”   Building meticulous blueprints doesn’t feel like “building a house.”   And, Home Depot didn’t get to be a big, fat company by selling materials to people who draw blueprints.

    (I don’t say this to be persnickety.   I say this as someone who has written more than three quarters of a million lines of source-code in about twenty programming languages... while silver-bullets came and went, and were in their turn discarded.)

Re^3: Nobody Expects the Agile Imposition (Part V): Meetings
by mr_mischief (Monsignor) on Dec 14, 2010 at 16:21 UTC

    So they wrote a book on managing a to-do list?

    There's nothing that can be done with overpriced slightly tacky paper squares that can't be done in software more reliably. If you must meet in person, at least get a projector and use scheduling software. In/out status of the team members, completed/incomplete/not started status of a subproject, Gantt modeling, dependency tracking, and more are very simple software tasks. If your team can't find software to do those things and can't knock that together in a week then they have no business writing projects that need it.

      So they wrote a book on managing a to-do list?
      Scrum is more than standups.
      If your team can't find software to do those things and can't knock that together in a week then they have no business writing projects that need it.
      Been there, done that. Haven't seen any software that isn't sucky. Would prefer sticky notes over software. Note that scrum doesn't mandate the medium (note also that I'm not advocating scrum in this thread - I'm just explaining how it works). If a team prefers software, it uses software. Our team started with in-house javascript based software, progessed to a wiki-page and now uses nothing at all to keep track of "tasks".

        I understand that Scrum is more than standups and you would know that if you'd actually read what I had written in this thread, let alone all the other Agile Imposition series of threads. It's also more than one book, isn't it? There are six that Code Sprinters calls "authoritative and successful in the marketplace", four of which feature the word "Scrum" in the titles.

        There is specifically in Re: Nobody Expects the Agile Imposition (Part V): Meetings (to which you replied, starting this sub-thread):

        However, the rest of the meeting information in Scrum seems to be just potentially useful tips for how to conduct the meetings in an orderly way. It almost feels like the authors of the method felt they were short some material after stating all the other rules to Scrum.

        I never said anything in that node (Re: Nobody Expects the Agile Imposition (Part V): Meetings) about estimating the whole project, either. That's your wording about some strawman you brought into the conversation to knock down. I said you don't want some task (and I used the word "task", not "project") to be broken down incorrectly over a long period of time. I said that specifically in support of the frequent meetings. Believe it or not, estimates are sometimes wrong. You'd rather be wrong about short estimates frequently than long estimates infrequently. That's the justification for the frequency. The justification for the exact time, place, and office supplies necessary are exactly what I was questioning. You've supplied me with confirmation that someone using Scrum (you) has done it without the sticky notes. I maintain it could be down without the conference room. Now quit attacking points you're making for me.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://876869]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others exploiting the Monastery: (10)
As of 2014-12-18 08:04 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    Is guessing a good strategy for surviving in the IT business?





    Results (44 votes), past polls