luri ron wrote:i have tried to adopt some technique from agile development methods such as Scrum, Extreme programming, and RUP. One thing I found that is chanllenging is that the requirement gathering time desribed in these methods is too short. in extreme programming and scrum, the requirement gathering is done in story cards or use cases within a day or two. but in realitiy, the requirement gathering takes much longer time. just want to see if anyone with agile experience has any feedback on this.
Luri, the reason requirements gathering can go so quickly in Scrum and XP is that you are working on a very small subset of functionality at a time. Each story is a small chunk of functionality, which still delivers business value, and can be completed in a few days. Of course, it's part of some larger feature or theme, so you're not working on it in isolation.
When my team has a big theme or project coming up, which might take us 2 - 4 two-week iterations to complete, we usually have a few meetings with the customers to learn what the theme is about, how the feature will be used, examples of desired and undesired behavior. We brainstorm about the design, we size the stories, we figure out dependencies, we choose the most basic path thru the functionality and plan accordingly. Before the first iteration, we spend an hour talking about the stories in the upcoming iteration, so we're ready to plan it during the iteration planning. By the time we're working on requirements and high level
test cases for the first story, we are already quite familiar with the functionality, so it doesn't take long to write up examples, requirements and high level test cases and go over them with the customers and the developers.
Does that make sense? You have to be sure to limit the scope of each story and of the amount of work being done in each iteration so that you have adequate time to spend on each story, and complete all the testing activities for the story.
-- Lisa