Với XP, khách hàng tham gia trực tiếp vào việc thực hiện dự án với tư cách là một thành viên chính thức của nhóm phát triển. Khách hàng sẽ giúp nhóm phát triển hiểu và nắm bắt được và kịp thời các yêu cầu của người sử dụng (cũng như sự thay đổi về yêu cầu) trong suốt quá trình thực hiện dự án. | Chapter 19 Estimation Is it bigger than a breadbox --20 Questions Base estimation on finding a similar piece of work that you ve already done. It ll take about the same amount of time as that. How do you come up with estimates We ve seen a lot of words devoted to this topic. We ve seen quite a few mathematical formulae. The best of these are based on the lines of code to be written. These can tell you how much time it will take to develop so many thousand lines of code. This is particularly useful since it s so easy to estimate precisely how many lines of code a solution will be before you start writing it. Spotted the sarcasm yet Let s be clear estimation is a black art at best. You re not going to get accurate figures however hard you try. You can however get good enough numbers with a little bit of effort and you can get better numbers over time. There are two keys to effective estimation Keep it simple Use what happened in the past The best guide to estimating the future is to look for something that happened in the past that was about the same as the future thing. Then just assume that history will repeat itself as it often does. If there s a significant difference between then and now then use a very simple way to factor it in. Don t try to be too sophisticated estimates will never be anything other than approximate however hard you try. Estimating the Size of a Story A simple yet effective way to estimate the size of a story is to look for a similar story that you ve already delivered. Then look at your records to see how long it took to build. Then assume the new story will take the same amount of effort. Oh another report. Reports always take us a week. What if all the stories were the same size Then estimating them would be easy. They are all ehem the same size. All that you would have to do is see how many stories the team completed each iteration and you would know how much you could get done. We don t know how to make all the stories the same size. .