Here are the general steps I would go through:
- Understand what you'reyour goal is - Without a clear understanding of what you're trying to achieve, you'll have a hard time completing a project of any scale.
- Write the rules down on paper - Every system has rules. Take the time to write them down in bullet format. This will get your brain thinking about the logic, and will provide you with a handy reference to use later on.
- Rewrite the rules to follow the programmatic flow - Keep the rules in bullet format, but reorder and indent them, so they form an outline of the programmatic flow.
- Write the pseudo-code - Using your outline as reference, write out the pseudo code.
- Create the classes - Make a list of classes you'll need, based on your pseudo code, and implement them.
- Replace your pseudo-code with code
The process is a little slow, but it has a number of benefits to someone in your situation:
- Each step creates documentation that can be referenced in future steps
- You have multiple opportunities to catch mistakes in your logic before you ever touch code
- It's very easy to see how logic should breakdown into code