logo       

Re: Practice: Single Code Base: msg#00004

programming.extreme-programming.xp-explained2

Subject: Re: Practice: Single Code Base

Kent Beck wrote:

> The point of Single Code Base is that development is more effective if you
> avoid the multiple maintenance problem. The less multiple maintenance you
> have to do, the better. There are large-scale problems, like a relationship
> with a customer where they won't use the latest release, where multiple
> maintenance is a necessity. If you want software development to be more
> effective, you should address the root cause of such problems and cope as
> well as you can in the meantime. How does this compare to what you said?

I like the above much better because it names the problem (multiple
maintenance) rather than one particular technique (branching) for
solving it. This by itself helps others more quickly identify the root
cause IMHO.

What still confuses me is the usage of "codebase" -vs- "code stream". I
agree there is a single "codebase", but I think you mean to say
something stronger than "one codebase". I think you really mean "Single
Code-Stream", or (more accurately IMHO) "Single Release Stream" (feel
free to say "Codeline" or "Release-Line" if you prefer the term "line"
over "stream" :-)

If it were me, I would prefer to see "Single Release Stream" because I
feel it rules out multiple concurrent releases and variants without
exlcuding "transient" branches that all end-up flowing back into the
sole release-stream.

Something about this also reminds me of the traditional advice for not
rushing to parallelize a computer program (or maybe its more similar to
the guideline that a subroutine and/or loop should have exactly one
exit-point :-)
--
Brad Appleton <brad-777BKhlmzsrR7s880joybQ@xxxxxxxxxxxxxxxx> www.bradapp.net
Software CM Patterns (www.scmpatterns.com)
Effective Teamwork, Practical Integration
"And miles to go before I sleep" --Robert Frost






<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise