Measurements

I received an email from a student: “Why do we have to measure our work? Measurement is difficult and it is a waste of time as it provides no value to me. If we have defects, we can fix them later regardless how many of them. I do not know why we need measurement?”

My answer: We use measurements every day and we often forget the value they provide to us. When you ride your motorcycle, do you watch the gas-meter to make sure that you have enough gasoline to go for a long drive? While following a cooking recipe, do you measure the amount of ingredients such as salt before adding to your food? Do you check the time by looking at your watches? Those are measurements that you use all the time. There is no difference in what you do in your daily life and the software project: You measure your progress to let you know how well you are doing and if there are problems then you must fix them. I do not know why so many people do not pay attention to measurement when it is so much a part of their daily life?

If you do not look at your gas-meter when riding your motorcycle then what is the chance that you run out of gas? Would you continue to go if the meter indicates that you do not have enough gas in your motorcycle? Imagine that you cook something and just pouring salt into it without any measurement? Would ten or twenty teaspoons of salt are better than just two teaspoons? I am sure in that case, you may have to drink a lot of water afterward as your food has so much salt in it.

If you think measurement is difficult and a waste of time then would you NOT go to the doctor because you think he may find something wrong with your body? Would you NOT look at your watch because it may tell you that you are late to class? Would you NOT check to see how much money you have when you ask your girlfriend to go to a movie? You always measure something don't you? Because you need it to make correct decision. If you do not have enough gas then you must go to the gas station to fill up the tank before go on the trip. If you do not have enough money then you may go to your bank to withdraw money or borrow your friend before go to your girlfriend 's house to ask her to go to the movies. Measurement is the indicator to let you know the situation where you can take correct action.

Having a measuring program for your project is important. It help you to check your progress, to let you know how good or how bad that you are doing so you can correct it before it is too late. Of course, if you have defects than you must fix them but what will happen if you do NOT have enough time because you do not measure the time? What will happen when you did not fix a defect early and it accumulates over time from one defect to hundred defects? How many of you would travel in the forest without a compass? How many of you would travel without a map? Have you ever heard the saying “If you do not know where you are, a map will not help”. Measurements are things that help you to manage your project as they let you know when you should take corrective actions. No one want to get lost and no one want to receive software full of defects.

Sources

  • Blogs of Prof. John Vu, Carnegie Mellon University