All of the above will cut it.
You might even (self-serving pitch! :) ) want to sample a HTML javascript "chess journal" I hacked together that lets you "store" tactics and then "randomly" review them, among other things.
Dig through my blog if you might be interested.
I am working through a tactical puzzle book and thought it would be great to have those puzzles on my hard drive so I could go through it without having to set up my board for each puzzle. Is there a software that I could use for this? I have Chessmaster 11, Fritz 12, and SCID and JOSE..........