Agile 101: Build for Today
Thomas Jefferson advised to “never put off till tomorrow what you can do today.” However, when it comes to Agile-run projects, all potential future requirements should almost always be put off until tomorrow. The focus is on doing only those things that support the current sprint — “today’s functionality.”
One of the philosophies of Agile projects is to “build for today.” In other words, you should design, build and test only what is necessary to meet the needs of the use cases that are selected in the current iteration.
In some respects this goes against the intuition of many developers who feel it is more efficient in the long-term if they write code that takes into account potential future requirements. The thought is that you should build to support this future functionality “while you are there” and then later when the requirement is actually selected you can finalize the work with much less effort.
In the Agile model, this reasoning is seen as a false tradeoff for a several reasons.
First, the time it takes to design, build and test to support future features will mean that you cannot get as much done in the current sprint. You are supporting fewer current, concrete, high-priority requirements in exchange for vague, distant potential future requirements. This is not seen as a good trade-off. The Agile team should focus on the
Please log in or sign up below to read the rest of the article.
|
My one regret in life is that I am not someone else. - Woody Allen |




