Company websites are tools more than anything else. Sure, they can be used as mere placeholders, but that is just a fraction of their potential. Websites provide the opportunity to refine your first impression to a client. They can have their message improved over time and updated to suit the needs of a company.
Generally speaking designing the website is separate from developing it. Design is the culmination of research performed beforehand. Usually, a process called “discovery” takes place in which the client is asked about the sites’ purpose in the customer’s business. Ultimately it is the client’s needs that drive the sites’ requirements.
When the requirements are sussed out, the design begins starting with the wireframe. A wireframe is nothing more than a “skeleton” of the site that gives a high-level overview of the sites’ pages and navigation. If the site will have some sophisticated functionality, this is potentially where that functionality will have its first mockup. Wireframes have no visuals nor should they. Their purpose is to isolate the functionality of the site.
All of this discovery and refinement helps to ensure that the product not only meets the clients’ needs but that it can be developed within a defined scope and budget. Alterations made to the visuals or, to a larger extent, the functionality, can take lots of time later on. Consider discovery the allegory to “measure twice, cut once.”
Software architecture can be decided upon, and visuals can finally begin to take shape.
Now everyone starts to get excited. Humans are very visual when it comes to projects and seeing the designs tends to alleviate some agita. During the refinement of the visuals inevitably the project requirements will be updated. It is to be expected. There’s something about having visuals in front of you that helps to see the process through the eyes of the user. In that regard, this is why we use a development system known as agile development. It is a developmental process characterized by repeated refinement of the requirements over the course of the project.
On the other end of the project, the software will be taking shape. Usually, for a website a starting CMS (content management system) will be decided upon and modifications will be made to the CMS in regards to the requirement. The ultimate goal in deciding on one CMS or programming language over another is to minimize the need for modifications while still adhering the clients’ standards and overall technology environment. At this point, this is also where test servers will be set up, and the details on the production server will be nailed down.
The marrying of the approved designs and the CMS architecture is known as front-end development. Now the final product begins to take shape. This is also where testing begins in earnest and the delivery date is confirmed. If required this is also when the client’s team will be trained on the use of the system.
As the project winds down and the delivery is on the horizon decisions are made regarding ongoing support and handoffs. Typically the relationship continues in some way after the project’s completion.