Too Long; Didn't Read
Everyone loves features. People wouldn’t use your software if it couldn’t do something for them. A lot of the time, the killer feature is the reason the software was created. You have a problem you want to solve, and you have some idea how to solve it. Other times, you’ve already got a product, but you want to make it more powerful or more flexible. It can be difficult not to get carried away when you’ve got an idea for a new feature, but it’s important not to rush into development without proper consideration. I’ve recently been reading <a href="http://www.cc2e.com/">Code Complete by Steve McConnell</a> and it contains an extensive list for checking whether your project requirements are missing any obvious holes.