I'm an amateur programmer who has been studying .NET for the last 2 years off and on. I've finished a number of projects for family and at my workplace but they have all been relatively small.

I have plans to begin a project for myself that would definitely be the largest and most in depth that I have ever attempted. With all my previous smaller projects I have just jumped right in but with this one I feel like I need to do quite a bit of planning before I even write a line of code.

So, with that in mind, I'm looking for some links/books about planning for a project. Do I plan and work on my database structure first? Design the UI? Work on some classes? What general steps do you take when you first begin to plan a large project? I'm not even sure where to start.

Thanks for any and all comments and links!