View Full Version : Project Planning
JonnyThunder
24th May 2004, 12:10
Ello,
Needing some advice / material from anyone who has studied a university level programming course. Basically, i'm (as you know) writing two bits of software at the moment which are HUGE. Im finding i'm re-writing a lot of it because I don't have a solid design to work from.
Can any of you tell me anything about steps I should follow in preparing / planning my project. I'm willing to dedicate some time to backtracking and getting the design down on paper before I continue. This is fairly urgent tho, cos im off this week working on it.
Cheers,
JT
|humph|
Red Plague
24th May 2004, 12:27
Can you give a bit mroe detail on the type of work?
My work uses Unified Modeling Language (UML) (http://www.uml.org/) quite a lot and I find it good to draw up-
- Class diagrams (hows the objects withing your app communicate)
- Sequence diagrams (the sequence of events shown for a particular scenario e.g logging a user in)
We use a thing called "Design by Contract". Basically you define the sections of your app, then create contracts between them using pre and post conditions. E.g an object expects the following paramter to be not null (pre condition), and when finished xxx has been done (post condition). This makes you think of how everything is going to interact even before you write any code.
If it was Java, I would write code "stubs" just to get the objects created and define the contracts between the stubs, the flesh out the code when I am happy with the structure.
The best standalone app for developing UML diagrams is Rational Rose (http://www-306.ibm.com/software/awdtools/developer/modeler/). It may seem duanting at first but it is very powerful. I have quite a few examples here if you want to have a look.
JonnyThunder
24th May 2004, 14:36
Yes, examples would be great. Basically, lets say I was making a shop (which I am, kindof). Now, at the moment i've just got a basic idea of how it needs to work in my head - and i'm writing it on the fly. What I need to do, is get it all down on paper so it's a little more clear. For instance, what screens will be involved. Where functions and classes will be stored in relation to the main calling scripts (whether it should be 'on demand' or just global). Flow charts of how scripts run etc.
As much detail as I can needs to go on paper before I go any further, cos i'm finding im redesigning lots of it due to lack of structure.
Marauder
24th May 2004, 17:30
I know it's not much but in the courses I did I was always told to plan your project out using Pseudo code and structure diagrams, once you have mapped out the basic design and decided what the program is going to do and it's fuctions, split it up into different sections and do the pseudo code and diagrams for each one. Saves having one massive file and you can keep track on what you have already done. You could end up with a lot of different modules like "file control, user input, output, etc" but each part will be easy to find and modify. for your main pseudo code write down a list from start to finnish what the program is going to do from running to exit and make a list of each function of the program. make a mini design of the different functions and work through them one at a time, once there done put the main code together, either incorporate the functions into the main code or call them as subroutines, and bingo..
JonnyThunder
24th May 2004, 17:43
Got any examples??
Marauder
24th May 2004, 20:12
Here is a very basic example of design! first time i've used word for this kinda of thing!
JonnyThunder
24th May 2004, 21:20
Looks like a lorra work. Maybe i'll just wing it instead! :P
Powered by vBulletin® Version 4.1.4 Copyright © 2012 vBulletin Solutions, Inc. All rights reserved.