kingjr3 said:
Start simple, then add functionality such as forums and galleries. Taking on too many tasks will just cause you to lose focus. Prioritize what they would like and then implement those by priority. Gather feedback during the entire process to make sure your client is satisfied, as most often their ideas will change mid-stream and you will be able to adjust accordingly.
really, this gets to the heart of s/w development process, which gets even more complicated when someone bids a project.
on one hand, the client probably wants to scope out the entire project, regardless of how much is bid on at a time, just so they can plan. it's also useful for the consultant to know the eventual destination, since so much of s/w design relies on it.
but to keep the project under control, from a planning and budgeting standpoint, the waterfall method really does apply. i.e. sign off on the requirements before starting work, otherwise work must be redone, as you've said. but the benefit to the consultant is the ability to use the signed-off requirements as a way to avoid scopecreep.
otoh, it's difficult to decide everything beforehand, as things are learned during the development process. minds are often changed for good reasons, and the bigger and more complicated the whole endeavor is, the more it's likely to change.
personally, as a developer, i hated the waterfall method. i liked prototyping for the areas no one was really sure about. but then again, i never bid projects, i always did time and materials, and that lowered my risk significantly.
there's really no right or wrong; it depends on the situation. but it's always worthwhile to figure out how the project should proceed before it actually does.