Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling
 
PerlMonks  

Re: Starting a Large Project

by George_Sherston (Vicar)
on Feb 12, 2002 at 17:11 UTC ( #144909=note: print w/ replies, xml ) Need Help??


in reply to Starting a Large Project

Here's another twist on the good advice above. Right at the start of all the big projects I've done (I confess - this is not very many) I write a description of what it's going to do in language my mother could understand. Something like

When you switch it on you see... Then, you can press a button called "Foo", and if you do that you'll see... On this page you have some information about Blah, and several options: a link to "Bar", a button marked "Baz"...

After I've done that, I usually find that I've exposed any stupid assumptions I was hiding under technical generalisations, and I have a pretty good idea of how it breaks down into subroutines (and where code re-use is likely to happen). And as a bonus I have the basis of a pretty informative set of comments to imbed into the programme.

George Sherston


Comment on Re: Starting a Large Project
Re: Re: Starting a Large Project
by defyance (Curate) on Feb 12, 2002 at 18:00 UTC
    /me is taking notes...

    Seriously, I'm printing this stuff off.

    -- Yes, I am a criminal. My crime is that of defyance.
      I read this question as "How do I look really good when this project is over?"

      See, I know that's probably the way it sounded, but to explain myself a little, that is not my intention at all. My ultimate goal with this project is to make someone's life just a little bit easier anyway I can. Now I will mention that yes, I would like to get some recognition for this, and the money is a plus, that has been made known. I don't think I stressed the initial reason, however, for accepting this project. Even before I first entered the world of Technical Support, and Programming, My ultimate goal in life was to make things easier for someone, somewhere. Not many people have such a strange goal, but I do, and that's what led me to programming. I'm ecstatic that I'm finally getting the chance to do it! That's why I wanted as much advice about this as possible, I don't want to screw it up, and not accomplish a lifelong goal!

      I'm sure this sounds like a line of bull to most of you, but this is truly from the heart!

      -- Yes, I am a criminal. My crime is that of defyance.
Re: Re: Starting a Large Project
by punch_card_bob (Initiate) on Feb 12, 2002 at 18:19 UTC
    defyance,

    There's nothing I could add regarding the technical aspects of your project, beyond the excellent advice above.

    On the other hand, there may be a few points to draw out concerning career advancement.

    Wheterh you are in an organization or consulting, it can be very advatageous if the people for whom you're designing feel confident and comfortable, not just when all ends well, but throughout the whole process. You want your superiors/clients to say "He had it under control the whole time, we were never exposed to risks."

    That means using the user-input / planning / sign-off / validation steps mentioned in other posts as, in fact, public banners advertising your project management competence. Get user input by distributing written invitations, with copies to management. Distribute your plan, with copies to management. Confirm the sign-off in writing, with copies to management. Etc. You might even start out by publishing your intended steps so people know what to expect.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://144909]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others about the Monastery: (10)
As of 2014-12-25 05:29 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    Is guessing a good strategy for surviving in the IT business?





    Results (159 votes), past polls