Loading ...
Sorry, an error occurred while loading the content.

Re: [scrumdevelopment] Re: Alternative to EGroups + scrum in a "management" org

Expand Messages
  • Ron Jeffries
    ... You are that, Ken, you are that. ;- Ron Jeffries www.XProgramming.com The Great and Powerful Oz has spoken.
    Message 1 of 29 , Oct 7, 2002
    • 0 Attachment
      On Monday, October 7, 2002, at 11:19:09 AM, Ken Schwaber wrote:

      > BTW, I was so pleased when I read one of your last emails and you said that
      > I was a better, better man. Thanks!

      You are that, Ken, you are that. ;->

      Ron Jeffries
      www.XProgramming.com
      The Great and Powerful Oz has spoken.
    • Ken Schwaber
      Your assessment of xP and Scrum practices is correct, and collaboration is of course the solution. And, in both, it is the team that selects how much they can
      Message 2 of 29 , Oct 7, 2002
      • 0 Attachment
        Your assessment of xP and Scrum practices is correct, and collaboration is
        of course the solution. And, in both, it is the team that selects how much
        they can do. The customer says "what", the team commits to how much of
        "what" and "how" they will turn the "what" into code.

        The customer wants to commit a fixed amount of money and get a fixed amount
        of functionality on a specified date. Just like at Dunkin Donuts, where
        $2.49 buys 6 donuts right now. A bunch of answers:

        1. Lay out the functionality and estimate it, just like you were bidding on
        a fcfd (fixed cost,fixed date) contract using traditional methodologies. Of
        course you are going to have to absorb some up front cost and effort to do
        this, and you'll build that cost into the bid/estimate. And prioritize the
        functionality. Collaborate with the customer that this functionality
        delivered in this sequence will optimize his ability to get the value, to
        deliver the vision, to redo the business operation, will deliver the system,
        that he wants. Tell him that you need the functionality ordered like this
        because you do iterative development and you want him to confirm that you
        are on track every iteration. And that you will give him the ability to
        change the requirements and their priority at the end of every iteration,
        because you know that his mind will change as he sees the system emerge and
        because his business conditions will change. And tell him that, in your
        experience, he will probably get most of the value from just some of the
        functionality, but you want him in charge of what functionality first. Then
        start going and collaborate. This is what DSDM does with the premiss that
        20% of the functionality will deliver 80% of the functionality. The
        prioritized backlog or stories, projected forward with estimates, becomes
        the contract bid.

        2. Same as 1 except only lay out functionality for the first three months of
        work. Bid the first three months as needed to really get a grasp on some
        pretty complex requirements and technology. And that at the end of the three
        months the customer will have the start of their system, potentially a first
        release to implement, and know if they want to proceed with you and to build
        the system or not. A proof of concept and engagement, except with real
        working functionality. Then enter into a collaborative, iteration by
        iteration (or 3x) contract. And switch the pressure, know that they know how
        good you are and how you can satisfy their needs. Tell them that you may
        need a longer committment so you can commit the resources to them.

        3. Check with Alistair Cockburn and the DSDM people. They bid on a state of
        Utah contract that was a fcfd rfp, and by using the first approach they
        changed the way that the state people viewed bidding and contracting and -
        in the process - may have become the preferred vendor.

        4. Understand that some customers are such contractual pricks, going after
        fcfp because they are lazy and don't intend to get involved, that you should
        walk away because it's a losing proposition (yes, even in these economic
        times ... remember that grocery stores still need baggers).

        BTW, I was so pleased when I read one of your last emails and you said that
        I was a better, better man. Thanks!
        Ken

        -----Original Message-----
        From: Ron Jeffries [mailto:ronjeffries@...]
        Sent: Monday, October 07, 2002 9:57 AM
        To: scrumdevelopment@yahoogroups.com
        Subject: Re: [scrumdevelopment] Re: Alternative to EGroups + scrum in a
        "management" org


        On Monday, October 7, 2002, at 9:46:28 AM, Ken Schwaber wrote:

        > Ron's right, the developers (team) commits to completing as much as they
        can
        > of the product backlog, aiming as the sprint goal to which they committed.
        > The goal is the overall purpose of the sprint, the backlog is what they
        have
        > to turn into product functionality to meet the goal. They are free to add
        > and subtract (with the customers colaboration) from the backlog as long as
        > they meet the goal. If the requirements become irrelevant or the
        technology
        > untractable during the sprint so that they can't meet the goal, the sprint
        > can be abnormally terminated either by the customer or the team.

        Now, this may be exactly what Mike meant by "committing to what they
        sign up for". Let me try out some differences between Scrum and XP to
        see if I understand. These are in the form of statements, but they are
        really questions:

        In Scrum, the developers pick from an ordered list of backlog, that
        is the Backlog Owner says what the priorities are and the team does
        the top N that they feel they can commit to, based on their
        assessment of their velocity.

        In XP, based on existing estimates for stories and on the team's
        measured velocity, the customer picks stories that s/he next wants
        to see done. The team signs up for those.

        Comparing, in Scrum the team commits to the high level goals but not
        to the details, nor to the how. In XP, the team undertakes to meet
        the Customer's detailed acceptance tests, but still not to the how,
        and renegotiates when it appears that they will fall short. XP
        involves the Customer in the tradeoff decision, while by definition,
        pardon the term, Scrum does not. (I'll bet that in practice, Scrum
        teams do commonly go to the owner and offer alternatives when
        there's tradeoff to be done.)

        So there's an equivalent amount of real "commitment", I'd say. Now
        Mike said:

        > Rather, I just describe an approach--stress that you're doing the
        > project in one month increments and that during that one month the
        > developers commit to completing everything they sign up for and that you
        > want the business to commit to not changing things (that doesn't sound
        > like a problem in your case). Describe how you'll meet at the start of
        > the month to create the "sprint backlog" and how the marketing person (a
        > "product manager" or in Scrum terms the "Product Owner") completely owns
        > the prioritization but that the team will draw a line under the tasks
        > they can commit to.

        In a recent conversation on the xp group, Bill Walton who bravely came
        and talked with us after writing an op/ed piece that many XPers
        roundly trounced, made the point that in his experience, managers want
        hard answers as to how much some project will cost. He feels that they
        will not sit still for approaches like the above, because they don't
        let them decide go / nogo on a project and its budget.

        Do you feel the same pressure to come up with a complete answer? How
        do you deal with it?

        Ron Jeffries
        www.XProgramming.com
        To be on the wire is life. The rest is waiting. --Karl Wallenda



        To Post a message, send it to: scrumdevelopment@...
        To Unsubscribe, send a blank message to:
        scrumdevelopment-unsubscribe@...

        Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
      • Mike Cohn
        Yes, frequently. I usually try to sell away from that type of situation because I ve seen it go bad too frequently. If you go into something with a fixed date
        Message 3 of 29 , Oct 7, 2002
        • 0 Attachment
          Yes, frequently. I usually try to sell away from that type of situation
          because I've seen it go bad too frequently. If you go into something
          with a fixed date and a fixed feature set the only things that can
          change are the quality or the staff size (which will adversely affect
          the quality, so it's really only quality that suffers).

          If I'm presenting to a CEO, for example, to take over a project a
          typical question is "Why should I use you for this project? Company X
          will guarantee me a delivery date with a defined set of functionality."
          My answer to that is always: Anyone who guarantees a date and a set of
          features is either padding his estimate, lying, or both. I could pad my
          estimate and give you the same thing and take away some of your
          flexibility at the same time. It all depends on what you want.

          When I estimate approximately how many sprints a project will take I use
          a Theory of Constraints / Critical Chain approach (Eli Goldratt). This
          works really well--not necessarily for creating a Gantt chart I want to
          use for anything later--but for estimating overall duration. It also
          helps the team think through dependencies between tasks/stories.
          Critical Chain works well because it is so compatible with uncertainty.
          To estimate the project I work with the team to come up with a 50% and a
          90% estimate for each task. Using those I can figure out the nominal
          schedule for a project (based on late-start 50% estimates) and I can
          then add feeding and project buffers. So far, it hasn't failed me in
          coming up with estimates I can put around Scrum projects. I finished a
          project this summer where the CEO made us give him a point-estimate
          (7/13) six months in advance. We finished on time and the team commented
          how nice it was to have accomplished so much but never have felt
          inordinately under the gun as on most projects. That same CEO is no
          longer even asking for estimates--he does lay out aggressive goals for
          the team but he now has trust in the team to deliver the most they can
          the fastest they can.

          --Mike

          -----Original Message-----
          From: Ron Jeffries [mailto:ronjeffries@...]
          Sent: Monday, October 07, 2002 7:57 AM
          To: scrumdevelopment@yahoogroups.com
          Subject: Re: [scrumdevelopment] Re: Alternative to EGroups + scrum in a
          "management" org

          > In a recent conversation on the xp group, Bill Walton who bravely came
          > and talked with us after writing an op/ed piece that many XPers
          > roundly trounced, made the point that in his experience, managers want
          > hard answers as to how much some project will cost. He feels that they
          > will not sit still for approaches like the above, because they don't
          > let them decide go / nogo on a project and its budget.

          > Do you feel the same pressure to come up with a complete answer? How
          > do you deal with it?

          Ron Jeffries
          www.XProgramming.com
        Your message has been successfully submitted and would be delivered to recipients shortly.