Google the Billings method. There is HEAPS of info on it and it is very detailed!

Good luck