Procedural Issues

Modularisation and Plugs-in->

Splitting the task into de-coupled sections has many benefits. Recently, Plug-in architectures have become popular. As well as allowing others to extend the program, there are development advantages too

Model ->

Note that in an Object-Orientated situation, things might not develop as outsiders (or older programmers) might expect - if data-structures are hidden away inside objects, detailed decisions about data-structures may be deferred. Top-down design is complicated by the fact that there may be no "top".

Monitoring Progress ->

Some monitoring is needed, both for your own benefit and to keep others happy. The choice of model affects how easily progress can be monitored. If no "book-keeping" is done, the unproductive time and 'admin' overhead increase rather than decrease as the project progresses. For small groups, the cost of computing metrics is 3-8% initially dropping to 1% (Pressman, p.100). Records are also a way to cover yourself if things go wrong. Note than some statistics (e.g. lines of code produced per day) might be more useful as propaganda than as progress indicators. Of course, that doesn't stop them being useful to you. Especially if you're using O-O techniques you can bamboozle the boss with impressive complexity metrics (members per class, depth of inheritance tree, number of children, number of operations overridden, percent of public and protected, etc).
Updated April 2011 with help from James Matheson
Tim Love