For Programmers: Free Programming Magazines  


Home > Archive > Extreme Programming > October 2006 > Will XP transform my career?









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author Will XP transform my career?
Andy Champ

2006-09-28, 6:58 pm

Deliberately open question there, a narrative hook :)

I've been looking at XP with a view to introducing it into our company.

I've read a bunch of books on it, and done a bit of surfing, and come to
no clear conclusion. I just can't find the evidence!

Some things in XP seem great ideas - like all the testing, and the
frequent integration - and others, like the lack of strategic design and
the pair programming, scare me. I can imagine people who'll LEAVE
rather than pair programme.

So guys, ante up. Where did it work? Where did it fail? Even the C2
wiki page http://c2.com/cgi/wiki?SuccessfulXpProjects didn't help me
any, there are very few projects there and those that are aren't
convincing. Like the SAABRE one - "Jensen acknowledges that his
developers deviate somewhat from pure XP practices".

Please don't wave C3 at me. I can't work out if that was a success or
not - except that if "the best team on the face of the earth" couldn't
write a payroll *something* was BADLY wrong!

Thx

Andy
Phlip

2006-09-28, 6:58 pm

Andy Champ wrote:

> the lack of strategic design


Them's fightin' words.

Specifically, some teams that practice "big design up front" will commit to
features

- without acceptance tests
- without known priority
- without recent feedback from users

So maybe we plan a little more than they. All our plans require those
details before we start a feature!

> I can imagine people who'll LEAVE rather than pair programme.


You may want to open Slashdot and search for "agile" or "pair programming".
You will find endless verbiage from people misunderstanding these systems.

Some of those people are the victims of clumsy managers who ordered everyone
to "start pair programing, and stop documenting your designs!" Neither of
those are XP.

> So guys, ante up. Where did it work? Where did it fail?


Where is your nearest XP users group?

It has "worked", for various meanings of "work", at...

- Microsoft
- Google
- recent Daimler-Chrysler
- High Moon Studios
- SAIC

Below my sig is a discussion of a report of it working on the "Space Station
Manager" project at Mistaril. You might notice the paragraphs of the post
mortem indicate the project was a success. Then the author of the post
mortem concludes that XP was a failure!

> Please don't wave C3 at me. I can't work out if that was a success or
> not - except that if "the best team on the face of the earth" couldn't
> write a payroll *something* was BADLY wrong!


The team went from a year with no delivery, to a delivery with useful
features twice a month.

The users did not accept delivery, or put the system online. That's on them;
it would have worked fine.

--
Phlip
[url]http://www.greencheese.us/ZLand[/url] <-- NOT a blog!!!

Re: [XP] Postmortem of a Video Game developed with XP


Clint-

So,

On 8/24/06 1:29 PM, "Clinton Keith" <ckeith@...> wrote:

[snip]

> game from Mistaril. The goal for the project was to create a game for
> entering the downloadable games market with and develop the required
> e-commerce infrastructure for distribution and marketing over the
> Internet. A secondary goal was to produce enough profit from the game to
> sustain continued game development activities. The project met both of
> these goals.


Hmm, met *both* goals.

[huge snip]

>
> All in all, the first downloadable project from Mistaril was a great
> success. The game found an appreciating target audience and managed to
> generate enough profit to let the company continue developing games. A
> lot was learnt during the development process, which translates into
> more efficient and fun development in the future. A satisfying first
> project.
>


Hmm, *great success*

Yet the overall conclusion is that "XP failed" because in their mind some
straw man alternative process that they haven't even tried yet *might* have
been better?

Not to mention that it clearly sounds like their first attempt at XP and
they clearly don't get many of it's principles.( "Also not adhering
completely to the XP process, mainly by designing in flexibility now and
then, helped get the program code over the first few bumps.") I guess I
forgot the XP practice of "Never design in flexibility."

Mind boggling.

--
Daryl


Phlip

2006-09-28, 6:58 pm

Phlip wrote:

> Below my sig is a discussion of a report of it working on the "Space
> Station Manager" project at Mistaril. You might notice the paragraphs of
> the post mortem indicate the project was a success. Then the author of the
> post mortem concludes that XP was a failure!


http://tech.groups.yahoo.com/group/.../message/122251

http://c2.com/cgi/wiki?SpaceStationManagerPostMortem

--
Phlip
[url]http://www.greencheese.us/ZLand[/url] <-- NOT a blog!!!


Laurent Bossavit

2006-09-29, 3:58 am

Phlip, Andy,

> Below my sig is a discussion of a report of it working on the "Space Station
> Manager" project at Mistaril. You might notice the paragraphs of the post
> mortem indicate the project was a success. Then the author of the post
> mortem concludes that XP was a failure!


I like Alistair Cockburn's definition of "successful" as applied to
processes: "at the end of the project, the people involved would want to
use the same process again".

That needs a little refinement: XP is supposed to be tunable, so you'd
actually expect a successful team to always want to use a *slightly
different* version of their process on the next project (indeed, the
next iteration). A better formulation: "the people involved would want
to pick a very similar starting point for their process".

That Mistaril project would count as a failure, since the final
recommendation sounds like they'd prefer to use something RUP-ish on the
next project.

The process described sounds like a "distant cousin" of XP, rather than
the basic species, owing to the reliance on manual testing rather than
(as far as I can tell from the write-up) any form of automated testing.

What is most common in my experience is "successful partial adoption",
using Alistair's definition of success: the team would want to use
*some* parts of the process again on their next project.

All the teams I've directly worked with who incorporated some elements
of XP into their way of working have reported improvements in one of two
areas: more predictable release dates, much fewer defects. Sometimes
both. All have retained either the XP "planning game" or XP-style
automated test suites (unit or acceptance, that varies; sometimes
written test-first, often not).

Laurent
Phlip

2006-09-29, 7:58 am

Laurent Bossavit wrote:

> I like Alistair Cockburn's definition of "successful" as applied to
> processes: "at the end of the project, the people involved would want to
> use the same process again".
>
> That needs a little refinement: XP is supposed to be tunable, so you'd
> actually expect a successful team to always want to use a *slightly
> different* version of their process on the next project (indeed, the
> next iteration). A better formulation: "the people involved would want
> to pick a very similar starting point for their process".
>
> That Mistaril project would count as a failure, since the final
> recommendation sounds like they'd prefer to use something RUP-ish on the
> next project.


I don't know if the post mortem author polled their team (and I also don't
know if that would have been one of those elections where you must vote for
Saddam Hussein, or you are in trouble!).

Another way to define a successful methodology adoption is if the team
learned things they will use next time. Maybe then they'd adopt RUP, but
with short iterations, emergent design for the code modules they don't fear,
etc...

> The process described sounds like a "distant cousin" of XP, rather than
> the basic species, owing to the reliance on manual testing rather than
> (as far as I can tell from the write-up) any form of automated testing.


That is the bane of videogame XP. You can't "test fun" (just as you can't
for a business project!), so videogame projects always budget for a horde of
manual testers to play a game, look for sloppy bugs, and look for deviations
from fun.

The fix is more XP. In a videogame project, the designers are on the
customer team, so they should author acceptance tests while they author the
scripts and configurations of the game. These would pin down the details of
fun.

However, much of videogame programming is delivering tools and
infrastructure to designers, such as level editors. Adding testage to these
tools wouldn't double their size, but everyone thinks they would, so teams
don't take that extra step. Some don't even recognize it.

> What is most common in my experience is "successful partial adoption",
> using Alistair's definition of success: the team would want to use
> *some* parts of the process again on their next project.
>
> All the teams I've directly worked with who incorporated some elements
> of XP into their way of working have reported improvements in one of two
> areas: more predictable release dates, much fewer defects. Sometimes
> both. All have retained either the XP "planning game" or XP-style
> automated test suites (unit or acceptance, that varies; sometimes
> written test-first, often not).


And they might then quietly learn the techniques they got wrong last time,
leading to more XP Level 3.

--
Phlip
[url]http://www.greencheese.us/ZLand[/url] <-- NOT a blog!!!


John Roth

2006-09-29, 7:58 am


Andy Champ wrote:
> Deliberately open question there, a narrative hook :)
>
> I've been looking at XP with a view to introducing it into our company.
>
> I've read a bunch of books on it, and done a bit of surfing, and come to
> no clear conclusion. I just can't find the evidence!


A few comments. First, learn how to do at least parts
yourself before you try to introduce it. If you've got
projects at home, use them to learn TDD and agile
project management. You obviously can't do team
practices solo, but the rest of the process works
regardless.

>
> Some things in XP seem great ideas - like all the testing, and the
> frequent integration - and others, like the lack of strategic design and
> the pair programming, scare me. I can imagine people who'll LEAVE
> rather than pair programme.


So can I. The basic fact of PP is that some people
won't adapt, and a lot of others need specific training
or coaching.

The other basic fact is that learning most of the
techniques take work. It takes about six months
for most people to learn TDD fluently.


> So guys, ante up. Where did it work? Where did it fail? Even the C2
> wiki page http://c2.com/cgi/wiki?SuccessfulXpProjects didn't help me
> any, there are very few projects there and those that are aren't
> convincing. Like the SAABRE one - "Jensen acknowledges that his
> developers deviate somewhat from pure XP practices".


Join the Yahoo Extremeprogramming group. Also the
testdrivendevelopment group. That's where all the heavyweights
hang out.

We've got a small presence on this newsgroup so we
can catch people who come here and direct them to
the mailing lists.

> Please don't wave C3 at me. I can't work out if that was a success or
> not - except that if "the best team on the face of the earth" couldn't
> write a payroll *something* was BADLY wrong!


Yep. A couple of things were badly wrong. One
is that it was supposed to be an _experimental_
project to evaluate using OO technologies at
Chrysler, not to replace the payroll system!
Payroll was the designated victim.

It was funded out of IT, not out of the payroll
department. When Damlier took over Chrysler
and replaced the IT management, they wanted
to move the funding to Payroll, and the new
payroll management didn't want it.

It was going in smoothly before the takeover,
it died afterwards. That's what loosing your
executive sponsor will do.

John Roth


>
> Thx
>
> Andy


Phlip

2006-09-29, 6:58 pm

John Roth wrote:

> Yep. A couple of things were badly wrong. One
> is that it was supposed to be an _experimental_
> project to evaluate using OO technologies at
> Chrysler, not to replace the payroll system!
> Payroll was the designated victim.
>
> It was funded out of IT, not out of the payroll
> department. When Damlier took over Chrysler
> and replaced the IT management, they wanted
> to move the funding to Payroll, and the new
> payroll management didn't want it.
>
> It was going in smoothly before the takeover,
> it died afterwards. That's what loosing your
> executive sponsor will do.


And that's why, to this day, professional XP detractors will say,
"Unfortunately, before the C3 project failed, Kent Beck started preaching XP
to gullible software engineers everywhere."

And the rest is history. ;-)

--
Phlip
[url]http://www.greencheese.us/ZLand[/url] <-- NOT a blog!!!


Isaac Gouy

2006-09-29, 6:58 pm


Andy Champ wrote:
> Deliberately open question there, a narrative hook :)
>
> I've been looking at XP with a view to introducing it into our company.
>
> I've read a bunch of books on it, and done a bit of surfing, and come to
> no clear conclusion. I just can't find the evidence!
>
> Some things in XP seem great ideas - like all the testing, and the
> frequent integration - and others, like the lack of strategic design and
> the pair programming, scare me. I can imagine people who'll LEAVE
> rather than pair programme.

-snip-

So first adopt the engineering practices that are supported by
MacCormack, A., Kemerer, C.F., Cusumano, M., and B. Crandall,
"Trade-offs between Productivity and Quality in Selecting Software
Development Practices." IEEE Software 20(5) 2003 78-85

- make sure there's some form of early prototype that gets in front of
real people
- (at least) daily integration and build
- regression test

After that bother about how motivated your people are, and after that
bother about tuning the development process.

http://www.xprogramming.com/xpmag/m...theevidence.htm

best wishes, Isaac

Laurent Bossavit

2006-09-29, 6:58 pm

Isaac,

> - make sure there's some form of early prototype that gets in front of
> real people
> - (at least) daily integration and build
> - regression test


For Andy's benefit, let me add that you can get there by targeting the
following subset of XP practices:
- Frequent Releases
- Continuous Integration
- Unit Testing
- Acceptance Testing

Laurent
Laurent Bossavit

2006-09-29, 6:58 pm

Andy,

> I've read a bunch of books on it, and done a bit of surfing, and come to
> no clear conclusion. I just can't find the evidence!


An idea, perhaps : searching on "extreme programming" in the ACM Digital
Library turns up at least 200 articles. Quite a few are experience
reports. That's a lot of reading, further criteria could narrow it down
a bit.

What kind of evidence are you interested in finding ?

Laurent
Isaac Gouy

2006-09-29, 6:58 pm


Laurent Bossavit wrote:
> Isaac,
>
>
> For Andy's benefit, let me add that you can get there by targeting the
> following subset of XP practices:
> - Frequent Releases
> - Continuous Integration
> - Unit Testing
> - Acceptance Testing
>
> Laurent


Frequent Releases != early prototype
(Irrespective of how valuable I think frequent releases may be)

(Also wouldn't we find "unit testing" and "acceptance testing" in any
software engineering book from the mid-80's onwards?)

Laurent Bossavit

2006-09-29, 6:58 pm

Isaac,

> Frequent Releases != early prototype
> (Irrespective of how valuable I think frequent releases may be)


I'm not claiming they're the same - I'm saying the XP subset I
identified will yield a situation similar to what you're describing. (In
XP you'll put the real product, an incomplete version, in front of real
people.)

> (Also wouldn't we find "unit testing" and "acceptance testing" in any
> software engineering book from the mid-80's onwards?)


In the context of XP, I mean automated xUnit type tests, together with
coarser-grained and "customer-facing" automated tests.

Laurent
Andy Champ

2006-10-01, 7:00 pm

Phlip wrote:

> Phlip wrote:
>
>
>

Ah - I see it now. Off for a read. Thanks.

Andy
Andy Champ

2006-10-01, 7:00 pm

John Roth wrote:
<snip>
>
> Join the Yahoo Extremeprogramming group. Also the
> testdrivendevelopment group. That's where all the heavyweights
> hang out.
>
> We've got a small presence on this newsgroup so we
> can catch people who come here and direct them to
> the mailing lists.
>


OK Thx John, I'll do that. Webmail account coming up! I don't mind
doing a little of this kind of thing at home in the evening, but not too
much. You know, sustainable pace...

Andy
Andy Champ

2006-10-01, 7:00 pm

Phlip wrote:
> And that's why, to this day, professional XP detractors will say,


That's an interesting one. I've met professional XP supporters -
trainers, for example - but how do you make money about detracting from it?

Andy
Phlip

2006-10-01, 7:00 pm

Andy Champ wrote:

> Phlip wrote:


>
> That's an interesting one. I've met professional XP supporters -
> trainers, for example - but how do you make money about detracting from
> it?


For some people, this is apparently all they have.

I won't name names, but there are people who try to get their writings (if
not their consultings) published and paid for, based on making up things
against XP off the top of their heads. Kind of like a "journalist" for Fox
News, who goes to a scene already knowing what the story is, then
cherry-picks the evidence supporting this story.

Pay them no mind, and read real case studies, to get a better picture of
things.

--
Phlip
[url]http://www.greencheese.us/ZLand[/url] <-- NOT a blog!!!


Isaac Gouy

2006-10-01, 7:00 pm


Phlip wrote:
> Andy Champ wrote:
>
>
>
> For some people, this is apparently all they have.
>
> I won't name names, but there are people who try to get their writings (if
> not their consultings) published and paid for, based on making up things
> against XP off the top of their heads. Kind of like a "journalist" for Fox
> News, who goes to a scene already knowing what the story is, then
> cherry-picks the evidence supporting this story.
>
> Pay them no mind, and read real case studies, to get a better picture of
> things.


It would be easier to "read real case studies" if you provided some
URLs or references.

>
> --
> Phlip
> [url]http://www.greencheese.us/ZLand[/url] <-- NOT a blog!!!


mthompson

2006-10-06, 6:58 pm

..[color=darkred]
>
> It would be easier to "read real case studies" if you provided some
> URLs or references.
>

I just read an article in the Agile Journal based off a 4 year case
studies of managing offshore XP teams. Granted its written by a guy
from the consulting team that did the work but its pretty interesting
to see short to the point article on how someone else deployed XP.
http://www.agilejournal.com/content/view/108/43/

Andy Champ

2006-10-06, 6:58 pm

mthompson wrote:

> .
>
>
> I just read an article in the Agile Journal based off a 4 year case
> studies of managing offshore XP teams. Granted its written by a guy
> from the consulting team that did the work but its pretty interesting
> to see short to the point article on how someone else deployed XP.
> http://www.agilejournal.com/content/view/108/43/
>


Why didn't anyone mention the Agile Journal before?

Thanks

Andy
Phlip

2006-10-06, 6:58 pm

Andy Champ wrote:

>
> Why didn't anyone mention the Agile Journal before?


Because this newsgroup doesn't have a critical mass of regulars. Try the
mailing list.

--
Phlip
[url]http://www.greencheese.us/ZLand[/url] <-- NOT a blog!!!


Isaac Gouy

2006-10-06, 9:58 pm


Phlip wrote:
> Andy Champ wrote:
>
>
> Because this newsgroup doesn't have a critical mass of regulars. Try the
> mailing list.
>
> --
> Phlip
> [url]http://www.greencheese.us/ZLand[/url] <-- NOT a blog!!!


Phlip why didn't you mention the Agile Journal before?

Isaac Gouy

2006-10-06, 9:58 pm


mthompson wrote:
> .
>
> I just read an article in the Agile Journal based off a 4 year case
> studies of managing offshore XP teams. Granted its written by a guy
> from the consulting team that did the work but its pretty interesting
> to see short to the point article on how someone else deployed XP.
> http://www.agilejournal.com/content/view/108/43/


Yes it is interesting. It would also be interesting to hear if there
were unsuccessful projects for that client.

Isaac Gouy

2006-10-07, 9:59 pm


mthompson wrote:
> .
>
> I just read an article in the Agile Journal based off a 4 year case
> studies of managing offshore XP teams. Granted its written by a guy
> from the consulting team that did the work but its pretty interesting
> to see short to the point article on how someone else deployed XP.
> http://www.agilejournal.com/content/view/108/43/


Yes it is interesting.

It would also be interesting to hear what the consulting team mean by
"successful" and if there
were any "unsuccessful" projects for that client.

Sponsored Links







Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive

Copyright 2008 codecomments.com