I am currently working with our lead developer at Headscape to streamline the process of building and deploying content managed web sites. Part of this process revolves around seperating out the different aspects of a sites development to make it easier for multiple people to work on the site at the same time and to standardise some elements which had previously been bespoke to individual projects.
Current working process
Normally a web project runs something like this:
- Establish initial design concepts
- Work on the Information architecture
- Create the site templates (XHTML) and style (CSS) for the site based on the designs and information architecture
- Populate the site with content
- Make the site live
Obviously this is hugely over simplified but you get the idea. However the problem with this approach is two fold:
- It is a fairly linear process which involves each phase being dependant on the previous steps being completed
- The site templates (XHTML) and style (CSS) have to be made bespoke each time to fit the project
A new working process
The process we are moving to helps to solve both of these problem areas. By seperating not only the presentation from the content but also the content from the structure you can start to standardise even more of the process. Let me explain:
Standardising the structure
As all the content is held in the content management system there is no need for the site templates (XHTML) to be bespoke for every project. These site templates no longer contain content but rather only define the structure of the site. After all the majority of sites contain the same basic structural content such as navigation bars, content areas and the like. By consistantly naming these areas you can then just use style sheets to change the way this structure is presented.
This approach means that instead of having to build the site templates and styles from scratch each time, you can have a basic predefined template which are then tweak accordingly. Obviously some changes will need to be made. The style in particular would have to be altered quite considerably for each project, nevertheless basic features such as column layouts could be predefined. The site templates would require only minor tweaking on a per project basis to take into account issues such as some clients wanting their news templates categorised by subject while others would want it organised by date.
This approach would also allow a lot more stages of the project to happen independantly. For example the person populating the content can do so even before the design is finalised because they can still navigate the unstyled site and see the content they have entered. The added bonus of this is that the designer can play around with different designs directly on the final structure and content. This means he can see exactly how his designs will work with real content instead of endless blocks of dummy text.
The result of all of this is that an average content managed web site could be produced considerably faster and using less internal resources to do it.
If you are interested in knowing more about seperating out the different layers of web design I highly recommend this article on the subject.