Link to home
Start Free TrialLog in
Avatar of Unimatrix_001
Unimatrix_001Flag for United Kingdom of Great Britain and Northern Ireland

asked on

BIG project?

Hi everybody,

I'm going to be starting a very large project soon, and I'm pretty positive I'm going to run into problems 1/2 way down the line. I cannot realistically plan out the entire project on paper since it would take far too long. So my question is, how do you start such a large project and what preperations do you make? I.e. any special programs you use to help the design phase? etc...

Thank you!
ASKER CERTIFIED SOLUTION
Avatar of TimYates
TimYates
Flag of United Kingdom of Great Britain and Northern Ireland image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of Unimatrix_001

ASKER

What sort of detail do you go into?...for example clicking button A brings up this dialog and clicking button B closes it etc...
Nah, just quick layout of the main dialogs... that way you can see if there is too much info on one screen which usually means your data structure could do with normalising ;-)

Basically, I try and get all major classes of object into circles on the board, then we can start linking them up and working out which ones need to be stored, which need to be encrypted, which can be derived from others, etc...

Then it's easier to see how much coding you need to do, and break it into managable units that can be tested in isolation :-)

It's so much easier writing code for a week or two, then testing it, then writing the next block that plugs in and uses the first block, etc...

-------

Other people probably have MUCH better ways of working than this ;-)  It's just the way I find easiest :-)
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Hmm...Mind if I leave it open to see what other people say?....
Not at all :)
In fact you should leave it open in order to get more ideas :)
Avatar of jpolin1
jpolin1

Big projects require more people, analysts to define requirments, and programmers to make it happen. If you have to design the system from end to end you are doomed.  U need to insulate yourself from the people that want the system created, or you will have revolving door development.
Thats where the bus. analysts come in.
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Okie, I bet your subscription to Programmers Weekly was written in Aghagaslavian so I'm here to clear it all up.
Lets get down to the dot on Project Lifespan.

public void Step1
{
Let's see...large project...lots of money. BIG DEAL! Same thing applies to small projects.
First you need an idea of what your program's gonna do (if it actually does anything...useful).
If you don't, you might as well hit your keyboard and call it 'coding'.
}

public class Step2
{
Okay, you got your function of the program.
If your function is too wide then narrow it down or you'll get a program that is a travel agent AND a nuclear reactor AND etc.
If it is too thin, well, you have a program that sells GREEN colored MINTS to SASQUATCHES in BC FARMS.
Next you must list all the stuff required by your program to do it's function.
For example:
Java Runtime, Collision Class, MyLIfe.txt, Arrow.jpg, CopyrightJunk.png.
This should be done after making a map of the interface. All those cute buttons. This will be explained in step 3.
}

import java.util.Step3.*;
The point of Windows is that it's colorish and picturish.
DOS stinks, so you need an interface unless you want to get a slap-in-face.
Especially with commercial apps, you navigate from each 'screen' to screen to operate the program. Make a map of how each screen should be necessary.
Then plot buttons on the map. This is all best done on Paint. As you add a new image, bring out a notebook and list it along with the screen it is placed on, same with a new textbox or object.
Eventually you should have a list of all the components and their locations. You're done the mapping. Good job. :D<[Blegh!]

Step = 4;
Woot, you got your blueprints!!!
Next you have a map saved in Paint, you have a list of components. Now for consultation.
I'm assuming you work in a bigger company and that this is not a one-man show. If it is, skip this step.
Gather all those programmers and show them your map. Do a Shockwave presentation or Powerpoint or get a Live Band. Your point is to make everyone beleieve you're the king.
Tell them your idea, I bet it will look alot better since you planned it.
Also be sure to look at other people's ideas. If they're better than yours, buy a dunce cap and sit in the corner.

String = "Step 5: (are you still there)"
You have a list of components, now you have to make practical of those.
Make your list of components into solid objects. Create a function for a text box, an image for the arrow, and a blank in the Copyright notice. Thank goodness you had that list, so one by one convert the text on your list to real time components.

Step 6 = new Step("WHOA");
Add the components to your program using your map. Then connect them with a list of buttons, checks, and hyperlinks.
This is sort of like making a webpage.

Step 7:
Debug the program. You'll get a mountain of errors :). If this was someone elses' idea, tell him it doesn't work. And use that as an excuse to recall a meeting. (TIME WASTERS!)
If it was yours, slowly debug each, don't worry, its okay to start at step one...100 years isn't that long.

System.exit(8);
Here is the point where you can add extras. For example, docs, a REAL copyright, logo, add ons, etc.
But if your team would not like to do that (lazy asses) then you're done. YAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAY!

You're done! Your program is ready to be sold to the world! See if it SUCKS!!!!! LOL :)
And that is the end of Programmers Weekly Project Edition.
Hope it helped.
mmmm....  that was helpful

:-(
...billyea, I hope you won't mind me waiting until some more helpful comments like the previous ones come along before I jump in to accept yours...
okie, I don't...much
wait a second...what do you mean my comment's not helpful
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
P.S. Cheer up, a Project without constant changes is either a Shelf Product, or simply a dead project ;)
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
P.S. Igonore my first comment, it was too complicated. :)
Ok thanks everybody...don't think I'll get any more comments here... Points split! :)
Hehehe! Millions of smilies! :) :) :) Thanks again people! :)
Hope we helped :)
Yes! :)