17 Jul 2012 Spacer Web development lifecycle
Back to blog home

Web development lifecycle

In the past, conversations with friends and clients have led to me telling them that I am an application developer. Most people don't know what this means, so sometimes I say programmer, which is often, but not always, more easily understood.... then I explain that I work in web development, which does not always make things clearer.

The confusion is that my role doesn't involve the writing of HTML, or the visual design process, but those unfamiliar with the industry often do not realise what else is involved in the process of creating a website. In fact, before I came to work at Zeroseven, I was not fully aware of the different roles needed to develop a site from start to finish.

So in this article I will be writing about the development lifecycle, with a focus on how my own role as an application developer interacts with the steps of that cycle. The intention is that this insight allows you to further understand what shapes a website, and specifically, that the process of creating a website involves a range of different individuals with different skills, and an overlap of those skills to produce a fleshed-out, quality product.


Requirement gathering and specification:
When a client comes to Zeroseven, our first step is to translate what they want into what they truly need. Our client consultant Elizabeth has written an article about this in The Truth About Technical Specifications, which I would encourage you to read for a fuller understanding of this part of the process. The gist of this step is to determine what everything on the site must DO.


Visual design and HTML coding:
In the second step, client-approved wireframes and specifications are handed over to our digital designers, who create Photoshop mock-ups of all the pages required on the website. These pages have to meet customer criteria (such as branding and preferred style), and deliver a good experience to the end user, without going beyond the actual possibilities of what can be displayed on a webpage. To achieve this, digital designers need a good understanding of both customer requirements and HTML guidelines.

Once these designs are approved, they are translated into HTML by our user interface developers. They must ensure the design matches the code, down to the pixel; that the pages function within the content management system; and that the project is compatible with a variety of browsers and devices.


Application development:
Application development is my main duty. Once a site is handed to me, it is viewable in a web browser, and if it's integrated into a content management system, the copy can be edited. For some, but hardly all sites, this is the end of the process. But a website tends to have other functionality that goes beyond just viewing content. Some sites are online stores, some communicate with complex databases, some integrate with Google maps and other external services, and some are entirely original and need unique features built from scratch. At the very least, sites have contact forms, and newsletter subscription forms, which send emails to site administrators, and sometimes record to databases.

To achieve these requirements efficiently, an application developer must be very analytical; the ability to recognise commonly reused patterns, or exceptions that need only be handled a few times, is of great importance.

 Of the sites listed in our portfolio  the St John Service Management Database and HardenUp   are a couple of the most application development intensive. The St John database is an intricate timetable and scheduling tool, while HardenUp interfaces extensively with Facebook and other social media services. The requirements of these sites go far and beyond what is possible with just HTML and Flash, and would not be possible without application developers to bridge the gap between the website interface that users see, and the logic going on behind it.

The most rewarding, but challenging, applications we build are those that interface with external applications, and it is this link to other products and businesses that makes our custom projects so powerful.

Any external application linked to within a website uses what we call an API (Application Programming Interface). API's allow developers to access databases and services that would normally be outside a small company's ability to manage. For example, some of our online stores use external product databases which application developers must connect to, to display product information, pricing and stock. For a more exotic example, sites such as Witness King Tides also use external interfaces to manage user submitted photos.

The internet at its heart is all about information, so the ability to exchange information with external services is invaluable, and a core part of online application development.

Zeroseven accomplishes its programming tasks with ASP.NET: a programming framework, created by Microsoft, using C#: a programming language, also created by Microsoft.

When building the complex functionality needed for a lot of our work, the application developer needs a thorough understanding of the project's requirements and a working knowledge of how to make minor modifications to the HTML (from the initial step) in order to accomplish their goals.


While I've placed this step at the end, testing is an ongoing process that happens during all steps in the development lifecycle. The term "testing" is generic, but includes ensuring that all the requirements have been met; that functionality reacts as expected; that everything matches the original visual design; and that everything works across multiple browsers and devices.

Testing is a task taken on by all staff at each step, but it is important that a person tests more than their own work, as your own faults and errors can often be invisible to you.


Deployment involves moving the project from our local, offline environment, to a live, user-ready one. There are two different deployments that happen near the end of the project. The first is a preview, strictly for the client, to review and enter content; the second, of course, is when the site becomes available for use by the general public.

Deployment is often, but not always, carried out by the application developer, as some sites have special technical requirements that their hosting providers must meet. This includes the recommendation of an appropriate hosting company, the transfer of files and databases to the new hosting, and an appropriate amount of retesting once the live environment is ready to go.


The development lifecycle does not necessarily have to occur in this order, although what I've described is our typical process. There are instances where application development occurs before HTML coding or visual design; for example, when a difficult programming requirement needs to be determined as possible before the rest of the work can begin. The length of time each step takes can vary greatly, depending on the requirements for a site; some are simple visually but very complicated logic-wise, while some of the simplest sites from a programming perspective can be remarkably intricate visually.


Last Word:
This brief overview gives you some idea of what to expect, who's involved, and what's going on under the hood, when you work with Zeroseven for your next project.

POSTED IN General / Zeroseven



5/19 Musgrave Street
West End, QLD 4101


07 3844 0001




Your monthly newsletter of the latest in digital trends, articles and tips for your business.


Who we are

Who we are

We're a passionate bunch of internet professionals with a complementary set of skills that go together on any one website project. Our team of client consultants, designers, developers and project managers nurture your project from start to finish.

A website is the calling card of an organisation and utilising quality website design and development will boost the effectiveness of the site. We can build you a website or online project that will appeal to your target audience and promote your brand, enhanced with appropriate technology to create a rewarding user experience on every platform.