Let's see what you've got. Probably this is a duplicate of a bunch of questions though. It seems you do not have the data structures right yet. I would go with a two dimensional array (or a one dimensional with accessor methods to look like a 2D array), so the individual (named) buttons is a bad idea imho.
After that you should check the tic-tac-toe related questions, I guess you will find some inspiration and the discussion part of your paper will have more voices, opinions. There are many ways to solve this, playing the game a few times you will realize the first user should put its sign to the middle and after that there are not many choices. If you prefer to find these rules automatically, you can use backtracking, alpa-beta cutting, neural network, almost anything that is AI related.
Good luck to this task!