Approximity blog home
841 to 850 of 903 articles

When Should We Test?   25 Sep 04
[print link all ]
Kent Beck, one of the people that invented extreme programming (XP) offers an economic model. The financial risk management community and the software development community can learn a lot from each other. Think of this article as: When should you put Risk Management into place?

Amongst other things this article tells you when best to have children :-). [groups.yahoo.com/group/extremeprogramming/files/when%20should%20we%20test.pdf]

XP is fractal.   25 Sep 04
[print link all ]
(Source: Ken Boucher posted this to the xp-mailinglist)
 > Surely, you're not calling design documents you built in the middle
 > of a project "up-front" design?

Let’s talk about "project" and "up-front" for a second.

In the old world I came from, a project had a feedback loop. This feedback loop could be considered to have covered design to unit testing, roughly a period of 6 months to a year on many projects. In other words, I would get feedback on my design 6 months after I made it.

Now let’s enter the fractal nature of XP.

My design to unit test feedback loop is the duration of a card in most cases. In some cases it’s as small as design/refactor/new test/new code/refactor/ (which may be a scope of minutes). In some cases it may be as large as an iteration (after all, we didn’t pick the cards in this iteration at random, we had a plan). It may even have been as large as a release plan.

The difference is that I get my feedback quickly and the design I do at any given stage is as small as it needs to be instead of as large as it can be. But I still do design "up-front". I have a plan before I leave the release meeting. I have a plan before I leave the iteration meeting. I have a plan before I even start refactoring before that first unit test. I have to make the same decisions I would have made in the BDUF, the only difference is that I make them as late as possible. In short, I make them just before I do the task that requires that decision to have been made.

XP is fractal. It’s possible to think about an XP project as a large collection of projects, each small enough to be written on 3*5 cards. And I do design for every one of those projects up front.

.. like Xmas   25 Sep 04
[print link all ]
I came across this nice discussion between Phlip and Juergen Ahthing in the XP-ML
 "Without test-first and refactoring, clients think
 they must assemble as many program requirements as
 they can afford to have written. This effort snarls
 all relative business priorities together, making
 Scope Control impossible. It obscures opportunities
 for simplification. Designing and implementing many
 features all at once is very hard, leading to our
 industry's reputation for very large failures. Putting
 tests in front of development's inner cycle permits an
 outer cycle of incremental feature growth. That
 relieves the Customer of the responsibility to predict
 the future and guess which complete set of features
 will maximize productivity."

.. Juergens answer:

 Nice description.
 Sometimes I try to explain that to non technical people
 with the following picture:

 If you have only one chance to get your wishes on a
 list, it is like Christmas for a child. You make sure
 you get every little wish on that list and hope for the best.

 If you are sure that you can get your wishes on the list
 at any time. You will just put the most important ones
 there which come to your mind easily.

Quote of the day   25 Sep 04
[print link all ]
(Source: Kent Beck posted this to the XP-mailinglist)

This from a lean manufacturing consultant:

Find the simple path to what works and follow it, always looking for a simpler path.

Patrick D. Smith

New Russian bestseller :-)   25 Sep 04
[print link all ]
A big thanks to Leftenant Berezka for the pics :-).

Been coding hard now on SW and CFaR. I would really need some good vodka now before getting up early tomorrow morning to catch the train.

Hope you all had a good weekend, -A.

This vodka bottle reminds me that I am way behind on Futurometer. We will kick ass there soonish!

Succinctness is Power!   25 Sep 04
[print link all ]
(Source: Paul Graham)

"The quantity of meaning compressed into a small space by algebraic signs, is another circumstance that facilitates the reasonings we are accustomed to carry on by their aid."

  • Charles Babbage, quoted in Iverson’s Turing Award Lecture

paulgraham.com/power.html

The first person to write about these issues, as far as I know, was Fred Brooks in the Mythical Man Month. He wrote that programmers seemed to generate about the same amount of code per day regardless of the language. When I first read this in my early twenties, it was a big surprise to me and seemed to have huge implications. It meant that (a) the only way to get software written faster was to use a more succinct language, and (b) someone who took the trouble to do this could leave competitors who didn’t in the dust.

Brooks’ hypothesis, if it’s true, seems to be at the very heart of hacking. In the years since, I’ve paid close attention to any evidence I could get on the question, from formal studies to anecdotes about individual projects. I have seen nothing to contradict him.

Where is the snow?   25 Sep 04
[print link all ]

Summertime .. so all we do is to ski-roller. High time for the snow to come back and cool it down a bit. I found that pic a long time ago on I have forgotten what website.

Big Requirements Up Front (BRUF)   25 Sep 04
[print link all ]
I really appreciate Georg Tuparev’s postings to the XP-ML.
 >Because it is important for the customer to have an idea of how much
 >> everything will cost ...

 In 99% of the times customer neither needs nor wants "everything"! One
 of the big dangers of BRUF is that it imposes the wrong feeling that
 "everything" is important. This is a major distraction that inevitably
 leads to scope-creep and eventually project failures. When we have the
 first meeting with a new customer we ask the following 3 questions:
 1. What is your biggest pain?
 2. If we solve this and only this pain, will your life get better?
 3. Are you willing to pay X amount of Euros to us to solve this pain.

 If any of these questions is answered with "no" we just thank for the
 coffee and walk away. If all 3 questions are answered with yes, we move
 to the first planning game...

 Put it in another way: I do believe it is extremely dishonest and
 incorrect behavior to conduct 9 months BRUF only to reach the
 conclusion that the customer does not have enough resources to
 continue. It is dishonest because as I wrote in an earlier posting,
 _all_ good developers I know are able to estimate almost immediately
 the scale of any software project without conducting BRUF.

How to Construct Bad Charts and Graphs   25 Sep 04
[print link all ]
(Source: Gary Klass) A short but good article in the style of Edward Tufte, the big guru when it comes to displaying data in a meaningful way. Fundamental rule of efficient graphical design: minimize the ratio of ink-to-data The three fundamental elements of bad graphical display are these: Data Ambiguity, Data Distortion, and Data Distraction. link Make sure you check out these classic bibles about envisioning information by Tufte: Envisioning Information and The Visual Display of Quantitative Information

Story cards are like poker   25 Sep 04
[print link all ]
(Source: Brad Appleton, XP-ML) How cool would it be actually to /use/ poker chips in the Planning Game? Interesting - I interpreted the above statement to be talking about having the planning game include both cards and chips (just like poker). The chips would correspond to story points, and would be attached to a story card with the appropriate number of chips. And when a story was "split" the corresponding chips would be split between the resulting new card(s).
  • The dealer gives the customer all the chips for this iteration
  • Then the customer "shuffles" the cards and lays them down
  • As each one is laid down, development uses a different color of chips and places the number of chips that story costs.
  • If the customer is okay with it, they then take an equivalent number of chips from their "stack" and place it to the "bet" pile.
  • If the customer isn't okay with it, the story can be split (kind of like "double down" in blackjack) and/or cards can be "reshuffled"
  • At any time, the customer may "reshuffle"
  • When the customer is out of chips and is okay with the current "bets" and card order, the planning session is adjourned

 

powered by RubLog
841 to 850 of 903 articles Syndicate: full/short
A unique and safe way to buy gold and silver