I have written some code that contains the class Game and the class Draft. Inside of Game I have a private member, instance of Draft draft. When a user requests through the UI, a game must return some calculation of data held in draft. Should I have a method for this in both Game and Draft, such as when needed the UI calls game.ProcessData(); whose job is only to call draft.ProcessData(); which does all the work, or should I not have draft.ProcessData() defined at all, and just have game.ProcessData() do all the work directly on the instance of draft that is in game?
Basically my question is one of efficiency versus compartmentalization (not sure that is the correct word). My example cotains only 2 classes, but what if there were 3 or 4 or x. It seems weird to me to have x ProcessData methods, x-1 of which don't do anything of note, except call other ProcessData methods.