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

Re: [XP] auditing XP

Expand Messages
  • Ron Jeffries
    ... I think it works, but I have one big problem with the whole issue. I m not sure that it means anything to say We are doing XP , or We are doing RUP
    Message 1 of 18 , Oct 1, 2003
    • 0 Attachment
      On Wednesday, October 1, 2003, at 7:40:05 AM, Ralph Johnson wrote:

      > Alistair Cockburn says that it isn't possible to tell
      > whether a group is doing XP from outside the group.
      > I do it all the time. Students in my software engineering
      > class do projects using RUP and XP. Part of their grade
      > is convincing us that they are actually following the process.
      > ...

      > I think from that (and a few on-site interviews) I can tell
      > if a group is doing XP. Do you think this will not work?

      I think it works, but I have one "big" problem with the whole issue. I'm
      not sure that it means anything to say "We are doing XP", or "We are doing
      RUP" for that matter.

      We can certainly monitor, however, the extent to which the team is doing
      (or at least reporting) the XP practices, which is probably nearly good
      enough for a number of simple purposes:

      -- satisfying a CMM or ISO process check;
      -- finding out whether students are adhering to practices;
      -- detecting correlation between practice and result;
      -- detecting probable areas to measure and/or improve;

      In this context, I am reminded that long ago, Alistair came to visit the C3
      team. He commented later to the effect that he learned that the team
      actually did the process that they and their management said that they did,
      and if I recall, expressed some surprise, as this was rather an unusual
      result.

      So it seems that Alistair has forgotten how to determine whether teams are
      doing what they claim to be doing, using an independent resource if need
      be. I hope he kept good notes on how he used to do it, because it can be a
      valuable ability when one is coaching. ;->

      Ron Jeffries
      www.XProgramming.com
      There is really no such thing as bad weather,
      only different kinds of good weather. ~John Ruskin
    • Ken Boucher
      ... Trying to accurately work this out in my mind. Feel free to tell me what I m missing. Planning Game - interview? Small Releases - repository? Metaphor -
      Message 2 of 18 , Oct 1, 2003
      • 0 Attachment
        --- In extremeprogramming@yahoogroups.com, Ralph Johnson
        <johnson@c...> wrote:
        > Alistair Cockburn says that it isn't possible to tell whether a
        > group is doing XP from outside the group. I do it all the time.
        > All I really need is a log of each person's activiity and access to
        > their cvs repository.

        > The customer should make a more detailed report and should
        > report on every iteration planning meeting what is to be
        > done and what was actually done.
        >
        > I think from that (and a few on-site interviews) I can tell
        > if a group is doing XP. Do you think this will not work?

        Trying to accurately work this out in my mind. Feel free to tell me
        what I'm missing.

        Planning Game - interview?
        Small Releases - repository?
        Metaphor - interview?
        Simple Design - code review from repository?
        Testing - repository? Interviews? some code tool?
        Refactoring - interview? code review?
        Pair Programming - logs?
        Collective Code Ownership - interview? repository?
        Continuous Integration - repository?
        Sustainable Pace - logs?
        On-site Customer - interview?
        Coding Standards - code review? some code tool?

        Personally, I really hate having to log everything I'm doing, but it
        just seems to be the nature of the business to spend a chunk of time
        documenting the time you spend on everything except the amount of
        time you spend documenting it.

        Honestly, the big problem I see is that most of the measurements
        you're getting are coming from interviews and logs, both of which are
        mostly consisting of people telling you what they want you to hear. I
        mean let's be honest, what's more likely to be accurate, a comment in
        the code or someone's interview or timesheet? At least the comment
        was truthful at one time.
      • Ron Jeffries
        ... I m not /telling/ anything, but here are some other thoughts ... ... Plus the results on the whiteboard, the acceptance tests, and a video recording if one
        Message 3 of 18 , Oct 1, 2003
        • 0 Attachment
          On Wednesday, October 1, 2003, at 8:02:39 AM, Ken Boucher wrote:

          > Trying to accurately work this out in my mind. Feel free to tell me
          > what I'm missing.

          I'm not /telling/ anything, but here are some other thoughts ...

          > Planning Game - interview?

          Plus the results on the whiteboard, the acceptance tests, and a video
          recording if one really cared. Whiteboard photos. Status reports.

          > Small Releases - repository?

          Maybe some other transmission documents, results of ATs. Manuals. Party
          bills on the company Visa card.

          > Metaphor - interview?

          Or a class diagram on the whiteboard, or the three-page writeup of
          "Navigating the XYZ Code Base".

          > Simple Design - code review from repository?

          Tricky one. I'm stumped at this moment.

          > Testing - repository? Interviews? some code tool?

          Coverage tools are good for this. Graphs of number of classes, methods,
          tests, assertions, vs time.

          > Refactoring - interview? code review?

          Might be able to induce this from the code manager. Effects visible in
          velocity. Tricky one though.

          > Pair Programming - logs?

          And interviews and signed checkins. And observing the room. I'd like to
          see defects logged by paired vs non, but that's a separate issue.

          > Collective Code Ownership - interview? repository?

          Story and task assignments from the whiteboard signup.

          > Continuous Integration - repository?

          Yes. Acceptance test runs and results?

          > Sustainable Pace - logs?

          And code checkouts, checkins, machine logs, internet hits, mail sends,
          ... all that draconian spyware stuff. Yucch.

          > On-site Customer - interview?

          Yes. And I'd think that other practices would show absence of, or low
          quality in, on-site customer. Acceptance tests, planning game, ...

          > Coding Standards - code review? some code tool?

          Interviews

          > Personally, I really hate having to log everything I'm doing, but it
          > just seems to be the nature of the business to spend a chunk of time
          > documenting the time you spend on everything except the amount of
          > time you spend documenting it.

          I hate it too. And if I did, I would /definitely/ document the amount of
          time I spent documenting the amount of time I spent ... Really.

          > Honestly, the big problem I see is that most of the measurements
          > you're getting are coming from interviews and logs, both of which are
          > mostly consisting of people telling you what they want you to hear. I
          > mean let's be honest, what's more likely to be accurate, a comment in
          > the code or someone's interview or timesheet? At least the comment
          > was truthful at one time.

          I'm not sure that the comment was ever truthful.

          However, if the team lies as a matter of course (as opposed to being
          frequently mistaken or forgetful) then our problem isn't whether or not
          they are doing XP.

          I believe that the continuous release of running tested software tells the
          tale. If that's happening, then the process is working fairly well. If it
          isn't happening, then the process isn't working well.

          The preceding paragraph should be at the top of this note, and the concepts
          woven into the list of practices. Exercise left to the reader ...

          Ron Jeffries
          www.XProgramming.com
          The main reason that testing at the end of a development cycle finds
          problems is not that problems were put in near the end, it is that
          testing was put off until then.
        • yahoogroups@jhrothjr.com
          ... From: Ken Boucher To: extremeprogramming@yahoogroups.com
          Message 4 of 18 , Oct 1, 2003
          • 0 Attachment
            ----- Original Message -----
            From: "Ken Boucher" <yahoo.at.nozen.com@...>
            To: "extremeprogramming@yahoogroups.com"
            <extremeprogramming.at.yahoogroups.com@...>
            Sent: Wednesday, October 01, 2003 8:02 AM
            Subject: [XP] Re: auditing XP


            > --- In extremeprogramming@yahoogroups.com, Ralph Johnson
            > <johnson@c...> wrote:
            > > Alistair Cockburn says that it isn't possible to tell whether a
            > > group is doing XP from outside the group. I do it all the time.
            > > All I really need is a log of each person's activiity and access to
            > > their cvs repository.
            >
            > > The customer should make a more detailed report and should
            > > report on every iteration planning meeting what is to be
            > > done and what was actually done.
            > >
            > > I think from that (and a few on-site interviews) I can tell
            > > if a group is doing XP. Do you think this will not work?
            >
            > Trying to accurately work this out in my mind. Feel free to tell me
            > what I'm missing.
            >
            > Planning Game - interview?

            Visit a planning game. Play fly on the wall to see
            how well it's working. Read Alistar Cockburns
            book "Agile Software Development" to get
            a feeling for things to look for in the communication
            arena.

            > Small Releases - repository?

            How frequently have releases gone to the field to
            be installed? Someone (usually the customer) knows
            this.

            > Metaphor - interview?

            Sit in on a couple of sessions between the customer
            and the developers. Are they communicating smoothly,
            or is there a lot of groping to try to get ideas across.

            > Simple Design - code review from repository?

            Code review is the only thing that comes to mind here.

            > Testing - repository? Interviews? some code tool?

            For unit testing, I'd do a code coverage analysis,
            and look for 100% statement and branch coverage.
            This is actually more than canonical XP does, but
            it's not that hard to achieve if you start out with
            TDD.

            For customer tests, I'd look at the number of field
            reported bugs of the form: "but it shouldn't be doing
            *this*" for whatever *this* is.

            > Refactoring - interview? code review?

            Code review looking specifically for duplication and
            comprehensibility (items 2 and 3 on Kent Beck's Simple
            Design list.)

            > Pair Programming - logs?

            Walkabout. Either people are pairing, or they aren't.

            > Collective Code Ownership - interview? repository?

            Is someone trying to schedule tasks and assign them
            to developers? If they aren't, then collective code ownership
            is functioning adequately.

            > Continuous Integration - repository?

            Look for failed checkins. The smaller the grain of integration,
            the fewer failed checkins there should be.

            > Sustainable Pace - logs?

            Probably, although I'd look at velocity as well, also
            code quality. Violating sustainable pace usually impacts
            both very quickly.

            > On-site Customer - interview?

            Visit the site. "Hey, Connie's our customer, but she's talking
            to one of the developers right now."

            > Coding Standards - code review? some code tool?

            Is there a document? Do a code review against the document.


            > Personally, I really hate having to log everything I'm doing, but it
            > just seems to be the nature of the business to spend a chunk of time
            > documenting the time you spend on everything except the amount of
            > time you spend documenting it.

            I've always logged a couple of hours a week as time spent filling
            out time sheets, and I've never had anyone complain. Early on, I
            was hoping that it would get people to quit requiring the silly things.
            Later, I understood that accountants are perfectly well aware that
            time reporting takes time.

            > Honestly, the big problem I see is that most of the measurements
            > you're getting are coming from interviews and logs, both of which are
            > mostly consisting of people telling you what they want you to hear. I
            > mean let's be honest, what's more likely to be accurate, a comment in
            > the code or someone's interview or timesheet? At least the comment
            > was truthful at one time.

            I don't think I actually specified an interview at all in my comments,
            and the only times I looked at logs were for rather obvious things that
            the development team should probably be keeping an eye on anyway.

            John Roth
            >
            >
          • Alexander Fedorenko
            ... Try to plan Your day instead of logging after doing things. It works for me pretty well. Alexander Fedorenko, mailto:sashaf@arshin.com ... ïÔ: Ken
            Message 5 of 18 , Oct 1, 2003
            • 0 Attachment
              > Personally, I really hate having to log everything I'm doing,

              Try to plan Your day instead of logging after doing things. It works for me pretty well.

              Alexander Fedorenko,
              mailto:sashaf@...


              -----Исходное сообщение-----
              От: Ken Boucher [mailto:yahoo@...]
              Отправлено: 1 жовтня 2003 р. 15:03
              Кому: extremeprogramming@yahoogroups.com
              Тема: [XP] Re: auditing XP

              --- In extremeprogramming@yahoogroups.com, Ralph Johnson
              <johnson@c...> wrote:
              > Alistair Cockburn says that it isn't possible to tell whether a
              > group is doing XP from outside the group. I do it all the time.
              > All I really need is a log of each person's activiity and access to
              > their cvs repository.

              > The customer should make a more detailed report and should
              > report on every iteration planning meeting what is to be
              > done and what was actually done.
              >
              > I think from that (and a few on-site interviews) I can tell
              > if a group is doing XP. Do you think this will not work?

              Trying to accurately work this out in my mind. Feel free to tell me
              what I'm missing.

              Planning Game - interview?
              Small Releases - repository?
              Metaphor - interview?
              Simple Design - code review from repository?
              Testing - repository? Interviews? some code tool?
              Refactoring - interview? code review?
              Pair Programming - logs?
              Collective Code Ownership - interview? repository?
              Continuous Integration - repository?
              Sustainable Pace - logs?
              On-site Customer - interview?
              Coding Standards - code review? some code tool?

              Personally, I really hate having to log everything I'm doing, but it
              just seems to be the nature of the business to spend a chunk of time
              documenting the time you spend on everything except the amount of
              time you spend documenting it.

              Honestly, the big problem I see is that most of the measurements
              you're getting are coming from interviews and logs, both of which are
              mostly consisting of people telling you what they want you to hear. I
              mean let's be honest, what's more likely to be accurate, a comment in
              the code or someone's interview or timesheet? At least the comment
              was truthful at one time.


              To Post a message, send it to: extremeprogramming@...

              To Unsubscribe, send a blank message to: extremeprogramming-unsubscribe@...

              ad-free courtesy of objectmentor.com

              Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
            • Steven Gordon
              ... Code changes checked in, but no new unit tests checked in. [Non-text portions of this message have been removed]
              Message 6 of 18 , Oct 1, 2003
              • 0 Attachment
                > Refactoring - interview? code review?

                Code changes checked in, but no new unit tests checked in.


                [Non-text portions of this message have been removed]
              • Steven Gordon
                Whenever I document the time I spend at the request of management, I ALWAYS include an entry for the time I spent documenting the time I spent. You cannot
                Message 7 of 18 , Oct 1, 2003
                • 0 Attachment
                  Whenever I document the time I spend at the request of management, I ALWAYS include an entry for the time I spent documenting the time I spent. You cannot allow management to think your time is free.

                  I agree with the second observation. Not only is there a bias because people tend to say what they think you want to hear, but introspection also tends to be a report of internal rationalizations and mental models, not what really occurred. But, I do not see a better solution.

                  -----Original Message-----
                  From: Ken Boucher [mailto:yahoo@...]
                  Sent: Wed 10/1/2003 5:02 AM
                  To: extremeprogramming@yahoogroups.com
                  Cc:
                  Subject: [XP] Re: auditing XP

                  Personally, I really hate having to log everything I'm doing, but it
                  just seems to be the nature of the business to spend a chunk of time
                  documenting the time you spend on everything except the amount of
                  time you spend documenting it.

                  Honestly, the big problem I see is that most of the measurements
                  you're getting are coming from interviews and logs, both of which are
                  mostly consisting of people telling you what they want you to hear.




                  [Non-text portions of this message have been removed]
                • Ron Jeffries
                  ... This is why most such practices require contemporaneous logs. Which, after much research, I find means log things as you do them, not at the end of the
                  Message 8 of 18 , Oct 1, 2003
                  • 0 Attachment
                    On Wednesday, October 1, 2003, at 9:50:04 AM, Steven Gordon wrote:

                    > Whenever I document the time I spend at the request of management, I ALWAYS include an entry for the time
                    > I spent documenting the time I spent. You cannot allow management to think your time is free.

                    > I agree with the second observation. Not only is there a bias because people tend to say what they think
                    > you want to hear, but introspection also tends to be a report of internal rationalizations and mental
                    > models, not what really occurred. But, I do not see a better solution.

                    This is why most such practices require contemporaneous logs. Which, after
                    much research, I find means "log things as you do them, not at the end of
                    the day".

                    Ron Jeffries
                    www.XProgramming.com
                    One never knows, do one? -- Fats Waller
                  • Syver Enstad
                    ... What about the time it takes to make a very simple application that uses a subset of the system? If the system has a simple design it should be relatively
                    Message 9 of 18 , Oct 1, 2003
                    • 0 Attachment
                      yahoogroups@... writes:

                      > > Simple Design - code review from repository?
                      >
                      > Code review is the only thing that comes to mind here.

                      What about the time it takes to make a very simple application that
                      uses a subset of the system? If the system has a simple design it
                      should be relatively easy to instantiate a couple of system classes
                      and make them do something.
                    • Chris Hanson
                      ... Since I do consulting work on a time-and-materials basis, I track my time to the quarter hour. However, I track my time *my* way using OmniOutliner, which
                      Message 10 of 18 , Oct 1, 2003
                      • 0 Attachment
                        On Wednesday, October 1, 2003, at 07:02 AM, Ken Boucher wrote:
                        > Personally, I really hate having to log everything I'm doing, but it
                        > just seems to be the nature of the business to spend a chunk of time
                        > documenting the time you spend on everything except the amount of
                        > time you spend documenting it.

                        Since I do consulting work on a time-and-materials basis, I track my
                        time to the quarter hour. However, I track my time *my* way using
                        OmniOutliner, which takes almost no time at all. If a client wants me
                        to track my hours some other way, say by using some nasty web
                        application or by filling out paper forms, then I do it that way too
                        and bill for the time it takes.

                        I've had cases where it would take me 30 to 60 minutes per week to
                        enter my data into someone else's time tracking system. If they prefer
                        I spend billable time that way rather than doing real work, I'm not
                        going to argue with them. However, I'm perfectly up front with them
                        that I consider the time billable, and let them make the decision with
                        that in mind.

                        -- Chris

                        --
                        Chris Hanson, bDistributed.com, Inc. | Email: cmh@...
                        Custom Mac OS X Development | Phone: +1-847-372-3955
                        http://bdistributed.com/ | Fax: +1-847-589-3738
                        http://bdistributed.com/Articles/ | Personal Email: cmh@...
                      • acockburn@aol.com
                        In a message dated 10/1/2003 1:20:47 PM Mountain Daylight Time, Ralph Johnsonwrites:
                        Message 11 of 18 , Oct 1, 2003
                        • 0 Attachment
                          In a message dated 10/1/2003 1:20:47 PM Mountain Daylight Time, Ralph
                          Johnsonwrites:


                          <<Alistair Cockburn says that it isn't possible to tell
                          whether a group is doing XP from outside the group.
                          I do it all the time.>>

                          Hi, Ralph,

                          1. Could you please publish here the rules or heuristics you use to determine
                          whether or not they have followed XP?
                          You may be the only person in the world who has reason enough to care whether
                          a team actually did whatever you choose to think of as "XP". Therefore the
                          evaluation mechanism you use is very important.

                          2. My point wasn't that You don't know in your own mind whether they're doing
                          XP (which is adequate for your course), or Ron doesn't know in his own mind
                          (or I don't know in my own mind) whether they're doing XP, but that there isn't
                          enough consensus to constitute meaning to the phrase, "This team is / isn't
                          doing XP".

                          3. Point #2 was effectively neutralized w.r.t. the CMMi question by those who
                          pointed out that a team doesn't have to be observed to be doing "XP"
                          (whatever that is), but only what they say they're doing. So with respect to CMMi,
                          "This team is/isn't doing XP" is an irrelevant sentence (which is just as well,
                          since I also think it's a meaningless sentence, except, possibly, in your
                          course).

                          4. Leading forward to a different question, if the sentence is both
                          meaningless in utterance, and as many people here point out, also insignificant ("What
                          do you care whether they are doing *real* XP --- the important question is
                          whether the project is succeeding and people are happy?"), then what would make a
                          decent response to the FAQ, "how can we tell if we're doing XP?"

                          ==============================================
                          Alistair Cockburn
                          ==============================================


                          [Non-text portions of this message have been removed]
                        • acockburn@aol.com
                          In a message dated 10/1/2003 1:20:47 PM Mountain Daylight Time, extremeprogramming@yahoogroups.com writes: In this context, I am reminded that long ago,
                          Message 12 of 18 , Oct 1, 2003
                          • 0 Attachment
                            In a message dated 10/1/2003 1:20:47 PM Mountain Daylight Time,
                            extremeprogramming@yahoogroups.com writes:
                            In this context, I am reminded that long ago, Alistair came to visit the C3
                            team. He commented later to the effect that he learned that the team
                            actually did the process that they and their management said that they did,
                            and if I recall, expressed some surprise, as this was rather an unusual
                            result.

                            So it seems that Alistair has forgotten how to determine whether teams are
                            doing what they claim to be doing, using an independent resource if need
                            be. I hope he kept good notes on how he used to do it, because it can be a
                            valuable ability when one is coaching. ;->
                            ---> At that time, "doing XP" had a meaning. Given the definition I was
                            handed, it wasn't just that they were doing what they said they would be doing,
                            they were doing "XP".

                            I remain in awe by that remarkable result.

                            Also by the fact that there was no brick falling onto the team's collect head
                            at that time.

                            (My audit wouldn't have worked for CMMi purposes, because I didn't check the
                            C3 processes for ensuring that the process was taught and followed ... only
                            that coincidentally it just happened to be being followed on the day I visited)

                            ==============================================
                            Alistair Cockburn
                            ==============================================


                            [Non-text portions of this message have been removed]
                          • acockburn@aol.com
                            In a message dated 10/1/2003 1:20:47 PM Mountain Daylight Time, Ron Jeffries writes: I think it works, but I have one big problem with the whole issue. I m
                            Message 13 of 18 , Oct 1, 2003
                            • 0 Attachment
                              In a message dated 10/1/2003 1:20:47 PM Mountain Daylight Time, Ron Jeffries
                              writes:
                              I think it works, but I have one "big" problem with the whole issue. I'm
                              not sure that it means anything to say "We are doing XP", or "We are doing
                              RUP" for that matter.
                              ---> sorry, I didn't spot this before putting in my similar sentence. It
                              appears Ron and I accidentally agree again (sorry, Ron)

                              ==============================================
                              Alistair Cockburn
                              ==============================================


                              [Non-text portions of this message have been removed]
                            • Ron Jeffries
                              ... I m sure it must be my mistake ... Ron Jeffries www.XProgramming.com You are closing your eyes to a situation you do not wish to acknowledge. --Professor
                              Message 14 of 18 , Oct 1, 2003
                              • 0 Attachment
                                On Wednesday, October 1, 2003, at 5:54:16 PM, acockburn@... wrote:

                                > In a message dated 10/1/2003 1:20:47 PM Mountain Daylight Time, Ron Jeffries
                                > writes:
                                > I think it works, but I have one "big" problem with the whole issue. I'm
                                > not sure that it means anything to say "We are doing XP", or "We are doing
                                > RUP" for that matter.
                                > ---> sorry, I didn't spot this before putting in my similar sentence. It
                                > appears Ron and I accidentally agree again (sorry, Ron)

                                I'm sure it must be my mistake ...

                                Ron Jeffries
                                www.XProgramming.com
                                You are closing your eyes to a situation you do not wish to acknowledge.
                                --Professor Harold Hill
                              • Ron Jeffries
                                ... Here are a few potentially decent responses, to be used in a context-dependent way. See Brad Appleton for details on how to be optimally context-dependent.
                                Message 15 of 18 , Oct 2, 2003
                                • 0 Attachment
                                  On Wednesday, October 1, 2003, at 5:47:33 PM, acockburn@... wrote:

                                  > 4. Leading forward to a different question, if the sentence is both
                                  > meaningless in utterance, and as many people here point out, also insignificant ("What
                                  > do you care whether they are doing *real* XP --- the important question is
                                  > whether the project is succeeding and people are happy?"), then what would make a
                                  > decent response to the FAQ, "how can we tell if we're doing XP?"

                                  Here are a few potentially decent responses, to be used in a
                                  context-dependent way. See Brad Appleton for details on how to be optimally
                                  context-dependent.

                                  ==========================================================================
                                  "Well, if we knew whether we were doing XP, what use would we make of the
                                  information?"
                                  ==========================================================================
                                  "Well, first of all, are you doing all of the XP practices all the time?"

                                  If they say yes, next ask "How's that working for you?"
                                  If they say no, next ask "How's that working for you?"
                                  ==========================================================================
                                  "1. Show me the team's Open Workspace.
                                  2. I'd like to meet your Customer.
                                  3. What stories are being done this iteration? Can I see the cards?
                                  4. Tell me about your performance on acceptance tests.
                                  5. When was your most recent release? When's the next one?
                                  6. Here are some cards. Tell me about the system's design.
                                  7. Let's go watch people program for a while.
                                  8. How many classes, methods, lines of code do you have? How many test
                                  classes, methods, assertions, lines? Have you tracked that over time?
                                  9. Do you know what your unit test coverage is?
                                  10. How do you handle defects coming in from the customers?
                                  11. How are you doing on refactoring? Any changes? Why?
                                  12. Tell me about who works on what code.
                                  13. What kind of coding standards do you follow?
                                  14. How often do you build the system? Do the builds always work?
                                  15. When do you start your days, and end them? I'm staying over Saturday,
                                  will there be anyone here to come talk to?"
                                  ==========================================================================
                                  "Hire Ron Jeffries to come in and tell you. It's the only way to be sure."
                                  ==========================================================================

                                  Ron Jeffries
                                  www.XProgramming.com
                                  For me, XP ain't out there, it's in here. -- Bill Caputo
                                • Ralph Johnson
                                  Ron Jeffries had a bunch of ideas for checking that XP practices were being followed which are mostly more work than what we do, though they would be more
                                  Message 16 of 18 , Oct 11, 2003
                                  • 0 Attachment
                                    Ron Jeffries had a bunch of ideas for checking that XP practices were being
                                    followed which are mostly more work than what we do, though they would be
                                    more accurate. We monitor a lot of projects, so we can't spend too much
                                    time on each.

                                    He also said:
                                    > I think it works, but I have one "big" problem with the whole issue. I'm
                                    > not sure that it means anything to say "We are doing XP", or "We are doing
                                    > RUP" for that matter.
                                    >
                                    > We can certainly monitor, however, the extent to which the team is doing
                                    > (or at least reporting) the XP practices, which is probably nearly good
                                    > enough for a number of simple purposes:
                                    >
                                    > -- satisfying a CMM or ISO process check;
                                    > -- finding out whether students are adhering to practices;
                                    > -- detecting correlation between practice and result;
                                    > -- detecting probable areas to measure and/or improve;

                                    I define XP as doing the XP practices. Is there any other useful
                                    definition?

                                    Ken Boucher was pretty close when he said:

                                    > Planning Game - interview?
                                    Logs plus reports from customer.
                                    > Small Releases - repository?
                                    > Metaphor - interview?
                                    > Simple Design - code review from repository?
                                    The TAs and I read code. I don't know if this is what you mean by "code
                                    review". It is impossible to be sure that students are doing the simplest
                                    thing they can think of but it is easy to see unnecessary complexity. It
                                    takes days or weeks for people to build infrastructure.

                                    > Testing - repository? Interviews? some code tool?
                                    We make sure there are automated tests and we count them and complain if
                                    there don't seem to be very many. We usually don't make sure that tests are
                                    written before code. When they aren't, usually code is checked in one day
                                    and tests are checked in the next. It is theoretically possible for
                                    students to write code and tests on the same day without writing tests
                                    first, but not likely.

                                    > Refactoring - interview? code review?
                                    We read code and say "this needs to be refactored". Refactoring is one of
                                    the practices students find hardest. Many of them look at bad code and
                                    can't see that it needs to be refactored, or else can't see how. Most teams
                                    have some people who can, and eventually that knowledge spreads, but it
                                    takes awhile.

                                    Steven Gordon <sagordon@...> suggested "Code changes checked in, but no
                                    new unit tests checked in." This is a good idea, and we should look for it.

                                    > Pair Programming - logs?
                                    > Collective Code Ownership - interview? repository?
                                    > Continuous Integration - repository?
                                    > Sustainable Pace - logs?
                                    > On-site Customer - interview?
                                    Also logs. If the customer is a student then they will have a log. The
                                    best customers are not in the class, of course. But all XP projects are
                                    required to have a customer, and students find their own projects, so often
                                    someone in the class is a customer.

                                    > Coding Standards - code review? some code tool?
                                    Also interview. "What are your coding standards?"

                                    -Ralph Johnson
                                  • Ron Jeffries
                                    ... I d like to think that there is, though I confess I don t know what it might be. It seems awfully narrowly defined as Just the Pracs, Ma am. Is it still
                                    Message 17 of 18 , Oct 11, 2003
                                    • 0 Attachment
                                      On Saturday, October 11, 2003, at 5:36:36 PM, Ralph Johnson wrote:

                                      > I define XP as doing the XP practices. Is there any other useful
                                      > definition?

                                      I'd like to think that there is, though I confess I don't know what it
                                      might be. It seems awfully narrowly defined as Just the Pracs, Ma'am.

                                      "Is it still XP if we type the stories into Excel," etc.

                                      Ron Jeffries
                                      www.XProgramming.com
                                      It's easier to act your way into a new way of thinking
                                      than to think your way into a new way of acting. --Millard Fuller
                                    Your message has been successfully submitted and would be delivered to recipients shortly.