Matt Hales, who records under the moniker of Aqualung, explained his songwriting process to CMU
a) Get the weird feeling.
b) Find a piano.
c) Play and sing and get lost in it.
d) Find a bit that I can't live without.
e) Play that bit 1000 times.
f) Do something else for a while (between 1 hour and 2 years).
g) Get the weird feeling again.
h) Turn the bit into a song. decipher the singing and write some words.
i) See (f) but be always thinking about it.
j) Suddenly need to hear it all finished. NOW!
k) Get some friends around and record it. Make it sound great with whatever is lying around. DO IT QUICKLY.
l) Listen to it 1000 times.