I feels like you have asked a broad question that I cant give a direct answer at once.Normally proper way to develop an application is described by 'Software Development Models' like waterfall model, spiral model ect. I think you can get a very accurate answer by narrowing your question or being specific.Or if you have a problem in design,better try it posting the question in "OO,
Patterns, UML and Refactoring" section of the forum.