View Full Version : questions about "eXtreme Programming Explained"
Kent Tong
07-20-2003, 05:11 PM
Dear all,
In the book "eXtreme Programming Explained", it is said that
it is impossible (poor) to have 40 developers at the start of
a project. Why? If the project is large, it should be OK to
split it into say 4 sub-projects and have 10 developers for
each.
It also says that if it costs $10 to produce an item and it
is estimated that it may be sold for $15 with a variation
of 100% (so, the range is $0-$30). The net present value of
producing the item now is $5 ($15-$10). If the interest rate
is 5%, the value of not producing the item now is $7.87.
Why? How to calcualte this amount of $7.87?
Thanks in advance for any clue!
Phlip
07-20-2003, 08:06 PM
Kent Tong wrote:
In the book "eXtreme Programming Explained", it is said that it is impossible (poor) to have 40 developers at the start of a project. Why? If the project is large, it should be OK to split it into say 4 sub-projects and have 10 developers for each.
If you say "split", you must ask "on what boundaries?"
If the project does not exist yet, then to find the boundaries you must
split based on a >Guess<. The rest of the industry calls guesses "the design
phase".
We don't do that. If we don't have code, we won't know what the design is,
so we don't know how best to apportion a project into 40 sub-projects.
(And we don't run one big project because cross-communication among 40
developers using exclusively XP practices is impossible and un-steerable.)
The solution, as always, is to go organic and incremental. Start a seed
project with 4 to 6 programmers. If the velocity is too slow, add more
programmers. They will all start writing live working code.
If we still need more programmers, then the project will already show
natural signs of fissioning. Functions that grow too long become classes.
Classes grown to long become modules. Modules grown too long become
packages.
Code smells, such as Feature Envy or Inappropriate Intimacy, will lead to
refactors that balance these packages, and narrow their interfaces. And
"well defined interfaces" are what multiple teams on the same project always
need to start with.
So, after growing a live project and steering it in terms of size, you now
know enough to split a team and project into two, and ask each to release to
the other against tests on those narrow interfaces.
It also says that if it costs $10 to produce an item and it is estimated that it may be sold for $15 with a variation of 100% (so, the range is $0-$30). The net present value of producing the item now is $5 ($15-$10). If the interest rate is 5%, the value of not producing the item now is $7.87. Why? How to calcualte this amount of $7.87?
That's just sophistry, but the author admits it. The annual interest rate,
compounded continuously, over the life of a 2 month project, or some such.
--
Phlip
http://www.c2.com/cgi/wiki?TestFirstUserInterfaces
Code Like Hell
07-25-2003, 05:15 AM
"Phlip" <phlip_cpp@yahoo.com> wrote in message news:<CFJSa.1040$GU7.632@newssvr19.news.prodigy.com>... Kent Tong wrote: In the book "eXtreme Programming Explained", it is said that it is impossible (poor) to have 40 developers at the start of a project. Why? If the project is large, it should be OK to split it into say 4 sub-projects and have 10 developers for each. [...] Code smells, such as Feature Envy or Inappropriate Intimacy, will lead to refactors that balance these packages, and narrow their interfaces. And "well defined interfaces" are what multiple teams on the same project always need to start with.
Code Smell is also enhanced by having newcomers, rather than the 40
who have been smelling the same sh!t from the beginning. Remember,
smell is the experience of a difference. Anyone can try this, eat
your lunch in your office, then go out for a few minutes and come
back--you'll smell your lunch.
Christophe Thibaut
07-26-2003, 04:04 AM
SUPER KOOL 223 wrote: "Phlip" <phlip_cpp@yahoo.com> wrote in message news:<CFJSa.1040$GU7.632@newssvr19.news.prodigy.com>...Code smells, such as Feature Envy or Inappropriate Intimacy, will lead torefactors that balance these packages, and narrow their interfaces. And"well defined interfaces" are what multiple teams on the same project alwaysneed to start with. Code Smell is also enhanced by having newcomers, rather than the 40 who have been smelling the same sh!t from the beginning. Remember, smell is the experience of a difference. Anyone can try this, eat your lunch in your office, then go out for a few minutes and come back--you'll smell your lunch.
Then maybe you don't need newcomers to enhance code smell if you can be
a newcomer yourself by just "going out" for a few minutes. Sometimes you
can't afford getting new people on the project each time you suspect a
refreshing view would help. So you take a break, or pair with someone
else, or you make little drawings on paper. Whatever, don't ever get
used to the stinking matter mentioned above.
Regards.
MyLounge.com Site Map
Forum:
Cars,
Cell Phone,
Database,
Games,
Home Improvement,
IT,
Music,
School,
Sports,
Web Design,
Web Server,
Weight Loss
The MyLounge.com forum is intended for informational use only and should not
be relied upon and is not a substitute for any advice. The information contained
on MyLounge.com are opinions and suggestions of members and is not a representation
of the opinions of MyLounge.com. MyLounge.com does not warrant or vouch for
the accuracy, completeness or usefulness of any postings or the qualifications
of any person responding. Please consult a expert or seek the services of an
attorney in your area for more accuracy on your specific situation. Please note
that our forums also serve as mirrors to Usenet newsgroups. Many posts you see
on our forums are made by newsgroup users who may not be members of MyLounge.com
Term of Service
vBulletin v3.0.7, Copyright ©2000-2008, Jelsoft Enterprises Ltd.