Most of my ideas develop inside my head when I am not in front of the computer and when I am not really concentrating on anything, which is usually when I am in the shower. I let them ponder in my mind, perhaps sleep on them, and then, all of sudden, I will have the urge to frantically mind-map them out and research them.
With regards to brainstorming, I usually do this after I have envisaged the top of the tree. I usually go to my colleagues and/or advisor's and bounce the ideas off them. We usually then "discuss" how crazy the idea is, what would make it feasible, what attitudes and habits would need to change in order to make them work, etc., which helps me identify what the branches need to look like on the way up to the top of the tree.
So as an example, one of the things I am working on is a way to speed up research - that was the first seed, which was born out of my own frustrations with the status quo. If I speed up research, how will it impact the rest of the world and how will the world work if I pull it off? - which is the top of the tree. Imagining how the world would work if my idea reached fruition, allows me to identify all of the other things that are also required for it to work (the branches). For example, I think a new document format is required to speed up research, and so I have started to develop this as a new branch, which itself is almost at the point of forming a seed, falling off and becoming a tree in its own right.
I have no idea if any of that jibba-jabba made any sense, but it's how I work.