What is the process for building a new website?

Contents

Generally, the process follows a similar pattern every time. Although, every developer has their own take on the process. When I work with a client on a new website, we start with the Discovery phase. Second is the Design phase. Third is Development. Then, the Testing phase. Finally, Deployment. These are the stages of the Software Development Lifecycle. Whatever the project, you will likely go through each of these stages.

The Software Development Lifecycle

The Software Development Lifecycle is the generally accepted approach to building software. Website projects will often follow a similar process. There are two main approaches to the Software Development Lifecycle. Waterfall and Agile. 

Waterfall refers to a one-and-done approach. As a waterfall flows in one direction, so does your project. You must complete each stage before moving on to the next. Once the project finishes, you maintain the product with minor updates and patches. Major updates will follow a similar waterfall structure.

In Agile, you follow the same process as Waterfall but in many iterations. You build an MVP (Minimum Viable Product) then iterate on and improve the product. Technically, you never have a "finished" product, just a new version. This approach makes your product more adaptable to changing requirements. I took an agile approach to my website. I wanted to iterate and improve my site as I gathered more data about what was and wasn't working. The agile approach means I can refine and improve my website over time.

What does each stage look like?

Discovery Phase

This phase is a deep dive into what the client needs, wants and hopes to avoid. The aim here is to gain a clear idea of the functional and non-functional requirements of the end product. We discuss everything from third-party integrations to site content to competitor websites.

When I worked with Paul Cooney, we focussed a lot on the site's look. We felt it was important for people to get an understanding of Paul and how he does business through his site. That was our focus. His website was not to be the focal point of his business, but still needed to leave an impact on visitors. We talked at length about his design tastes. We went beyond web design to artists and even fashion designers. The more we discuss and the more I know, the more effective I can be.

Each Discovery phase can take different paths depending on the client's needs. Spending time on this phase can feel frustrating at times. I have to gain a clear idea of what the client wants. It informs every other phase of the project. Without an effective Discovery phase, I have less to work with and am more likely to get things wrong.

Design Phase

At this point, I usually look forward to getting stuck into the design. Here, I can transform ideas into tangible design prototypes. Imagine someone scribbling ideas at a desk, then screwing them up and throwing them into a bin. That is what I do but in a digital world. I create a few mockups for the Home page. Decide what I like and what I don't. Then I start again. Each time, keeping the good stuff and discarding the bad. Once I find a good solution, I present it to the client. I will work through any feedback they have. Once they are happy, I create the remaining pages. We follow a similar feedback process until the client signs off the design. Following approval, we move to the next phase.

Development

This phase is about building the website.

These days, most sites use a CMS (Content Management System). Understanding how data flows from the back to the front end is vital here. When configuring a CMS, it is vital to understand the content the client wants to produce. Again, this goes back to the Discovery phase. A clear understanding of the website content and the variance needed within it is vital. It not only dictates how you configure the CMS but the CMS you choose as well.

In the Development stage, I usually build the front end and CMS at the same time. I focus on one page at a time. Configure the data. Then, connect it to the front end.

As the front end starts to come together, I often notice parts of the design that don't work as well in situ. It is not uncommon to make minor design tweaks while building the site.

Over the years, my experience and know-how have grown. As such, I have got much quicker in this phase. Sometimes, I have to integrate some third-party software that I am less familiar with. Doing so can add more time to this phase. Generally speaking, the website will be ready for testing within a week or two.

Testing

Some people include testing as part of the Development phase. I like to separate them. The Testing phase is where we put the website through its paces. In today's world, there are hundreds of different browsers and devices. We need to know that your website performs well in every case.

For the Testing phase, I set up a staging site away from the live domain. Here, I run cross-browser tests to make sure the site works well everywhere. The staging site lets the client see their site in the flesh for the first time. They can play around with it and provide any feedback and final touches to add. When the client and I are happy, it is time to deploy the website.

Deployment

Barring any mishaps, this is the shortest stage. If the client already has a website running, we replace the code. A brand-new website will need some server configuration to get the website running. Often, clients use managed hosting services like GoDaddy and Hostinger. The process is much easier this way. We outline the deployment procedures in Discovery to make this process seamless. 

Once the site is live, we can breathe again. There is no better feeling than that first day of your new website. You can't stop looking at it. You wonder where it might take you and where you might take it. It's exciting. I love sharing that with my clients.

What happens at the end of a website project?

I don't like the end of a website project to be "Goodbye" with the client. Building relationships is why I like freelancing. I want my clients to feel they can rely on me for future help and maintenance. A website is a living being in many ways. It requires nurturing and maintenance beyond D-Day (Deployment Day). At the end of my website projects, the journey is only beginning.