Nailing down requirements is important for any web site project but it's something folks seem to forget about when building Drupal sites. Maybe it's because Drupal is so maleable, or maybe it's that people assume Drupal can do it so why bother really fleshing out the specs before building?
Not knowing the specs before building is a bad idea even if you are using the world's greatest CMS.
A simple example is quotes. Clients love quotes from people they've worked with, don't they? Heck, I love quotes too, or at least I fell in love with them while building this site.
Quotes are a great example for why you should fully flesh out requirements because they can be handled in a couple different ways. I've worked on projects where quotes were directly tied to a page, meaning when a certain page was called, the quote viewed on the page is always the same, whether it appears in the center or a column, or whatever. I've also worked on sites where the quotes were totally random. Usually this means the quotes are in a particular column but any quote could show on any page for that theme/content type. There is also this site, where some quotes are totally random and some are drawn randomaly from a smaller group. For example, the quotes in the left column of this site can be any quote pulled from all my quotes, but the center quote on project pages are randomly drawn from ones that are related to the project.
That's three distinct ways to render quotes, and while similar, they all need to be handled in a different way by Drupal. I find quotes related to a page are best handled by creating a CCK field for a content type. Random quotes can be drawn from a pool of quotes via a view. The related views can also be a view but they require a CCK type for a content type so each can be chosen as being related to a certain node.
Laura Lee W., Owner MyBeak Social Media
Greatly exceeded my expectations.!! I'm very happy with this provider. He is professional, reliable and really knows his stuff. I highly recommend him to people looking to develop an idea for a website. Thank you SO much and best of luck. :)