How Do You Plan Your Software?

How do you guys and girls plan your software?

I’m aware that too much planning can limit creativeness and flexibility. At the same time, by not planning at all (or even under planning), I’m finding it difficult to remember what I need to get done. I’ve been working on a slightly larger scale project (on my own), and there’s a lot to do; nothing too complex, but nonetheless quite a bit to get done. Simple in-code TODOs and FIXMEs sprinkled throughout just aren’t cutting it.

I’m looking for something more formal, without sacrificing much time/speed, that can help me keep track of what needs to get done.

What has worked for you?

Update 1:
I’ve just found out about Trello. Seems almost exactly like what I’m looking for. - Trello clone in Meteor :smile:

Very interesting! However, I think I will stick with Trello for the time being. I’m quite liking Trello and see no reason to switch.