The topic of grading is covered thoroughly in many different posts. Most of the information you are asking about can be found there.