It's my first Agile meeting: Requitments are mapped into stories, we are asked to give point for each story. And then devide every story to pieces of tasks, assign some work hours to each task. That's really interesting.
I notice the point cards "0" and "?" are seldom used. Do you often use these card in your practice?
What point cards? Is that the thing Mike Cohn teaches?
The soul is dyed the color of its thoughts. Think only on those things that are in line with your principles and can bear the light of day. The content of your character is your choice. Day by day, what you do is who you become. Your integrity is your destiny - it is the light that guides your way. - Heraclitus
0 - simply indicates that the User Story depends on another one - i.e. the functionality will come into existence when another user story is completed. Otherwise a 0 would make no sense - you would be asserting that a user story can be realized without any effort.
? - indicates that the User Story cannot be currently estimated. In this case you have to allocate some time in the next iteration to implement a spike (Tracer Bullets) for that User Story, so that you can later assign a more educated estimate to it.
In any case I would assume that a ? is more likely than 0 and that both of these are much less common than a positive, non-zero Story Point Value.
Joined: Jan 28, 2005
Sorry, I think I should describe it more clearly:
Requirements---->Many stories A story<--------->A point A story----------> Many tasks A task<----------> Work hours
The Moutain Goat Software has a series of Point Card:0, 1, 2, 3, 5, 8, ? We give each story a point with a card. We try my best to implement these stories to get a good point in one iteration. We repeat this in the next.
It's very interesting. I don't find the card on MoutainGoatSoftware's webpage either. But we use it in our meeting.
However these seemed more as a device to determine how many stories you can implement in a single iteration.
Also I'm a bit surprised by "tasks <-> work hours". Story Points are an abstraction of effort that is supposed to be decoupled from (personal/environmental) velocity. The point system allows you to score the implementation effort for all parts of the system relative to one another.
One organization may choose 1 story point to represent one ideal day of uninterrupted work (no meetings) for the ideal developer, while another may chose a quarter of a day in the same environment.
Hours only result once you assign the story to someone who has a known velocity in the current environment.
You make it sound more like a competition - whoever can implement the most points during the iteration 'wins'. 'Lines of code written' has never been a good measure of productivity, 'Story points' implemented is only slightly better as reality will usually show that not all story points are created equal (no matter how hard we try). [ April 10, 2007: Message edited by: Peer Reynders ]
Joined: Jul 11, 2001
As an aside, what seems to be most widely used is a more simple point system with just the values 1, 2 and 3.
We used 1,2,4,8 because the bigger they get the poorer your accuracy. 8's were rare and indicated some risk of being very wrong. I think that's the same feeling Ilja was expressing?
A good question is never answered. It is not a bolt to be tightened into place but a seed to be planted and to bear more seed toward the hope of greening the landscape of the idea. John Ciardi
Joined: Jul 11, 2001
Originally posted by Stan James: We used 1,2,4,8 because the bigger they get the poorer your accuracy. 8's were rare and indicated some risk of being very wrong. I think that's the same feeling Ilja was expressing?
Exactly. I feel it might be better to break down the 8 into several stories of smaller size. Which leaves you with 1 2 4 - which is nearly 1 2 3 already...
Joined: Jan 28, 2005
Originally posted by Lasse Koskela:
I don't remember seeing a team doing that in the past couple of years while I have seen multiple teams using the logarithmic scale story points (1, 2, 3, 5, 8, ?).
That's the card I'm using. I have a "0" in addition.