Planning the design
Time spent planning means less time spent debugging and reworking the application later on. Resist the "newbie" tendency to jump right to the programming. Take some time to think, to write, to plan.
Identify your key user contacts and strike up relationships. Your customers will clarify their requirements, offer suggestions, and weigh in on decisions about the design. They will approach and test the application from different perspectives, which will highlight issues you had not considered.
Understand the scope of the project
From the requirements that you have, determine what kind of project this is. Are you changing the design of an existing application? Web-enabling an application? Or crafting an entirely new design? The answer to this question will in part tell you how much planning effort is required; the larger the task, the more planning that should be done.
Classify the project and its requirements. Here is a straight-forward taxonomy:
Bug fixes
Modifications to...