I've banged my head against this topic so many times and I've come to the conclusion that the tools you use should be entirely proportional to the size and complexity of the project and the number of people working on it.
If it's you or just you and a couple of other team members, then keep it simple. Most of the UML type modelling tools exist as a form of communication between teams and tiers of teams, rather than as general design tools and require a lot of effort and discipline to use effectively, and you'll only add complexity to your project if you adopt them without needing to.
If you're not sure where to start with a large project (and in fact, a project of any size really), then start with your users and the bare minimum of what it is they need from your application. Use paper and pencil and scan your sketches if you need to share them. If you work backwards from here, and don't make any assumptions on what you might need before you need it, you will find that other parts of your application (such as your database design) will fall into place naturally as you go. Make sure you stick to your minimum requirements until you have a working application (even if it's not feature complete) and then iterate on it from there. Don't feel you are wasting your time by working on paper, and don't feel pressured to start coding until you are ready.