Web developments are not all the same. Some take extensive planning which significantly reduces project risk and creates higher quality outcomes; while others smaller projects are less expensive and faster to produce if the development uses "rapid development prototyping". Interweaving tailors the process to the project - ensuring that square pegs aren't shoved into round holes.
For complicated projects every one of the following processes is followed - usually sequentially. Although most projects won't require this level of project management - it is instructive to understand the nature of structured development to ensure you have thought through everything in the beginning. Have you really considered your choices? Can we help?
Consultation – a freestyle meeting where we listen more than we speak. It is about hearing what the client’s real needs are and not just what they want. Discovering these unrealized requirements is crucial to the final solution.
Expectation – defines the outcomes of the client brief with specific detail on discovery, post-meeting research, and reviews. It unpacks the initial brainstorming of ideas and possibilities. Comparing what is “realistic, efficient and valuable” to “unnecessary, expensive, and time consuming”.
Quotation – the quotation is a preliminary estimate of the work which has been outlined cognizant of the fluctuation of functionality, quality, time, and budgetary constraints. The method for quotation is value-based in consideration of outcomes and can be tailored to any size project and budget.
Engagement – the engagement agreement defines the purpose, scope, and output of our interactive engagement for consulting, development, and engineering services rendered.
Research – a deconstructive examination of existing websites, internet data, best practice processes, client material, available technology, and market information to provoke ideas, create models, and comparisons. Usability studies are done at this stage if there is an existing website.
Vision – combined knowledge, experience, and data from the client and independent research culminates into the vision for the path forward. Based on market, needs, economic, and value-chain analysis a visual representation of the project parameters is produced and reviewed with the client.
Requirements – a clear mutual understanding of what the project intends to build in order to yield specific outcomes. Its high-level objectives are described in user scenarios, expected external behaviours, testing, quality assurance, standards, scope, time constraints, inputs, outputs, interoperability, creative guidance, functionality, and characteristic ideals. The development blueprint is based exclusively on the requirements.
Scope – once projects are clearly described it becomes clear which features are essential and which ones users are unlikely to use. Time and budgetary constraints are reviewed and a final feature set is defined. The quotation is updated and tightened to ensure a successful project.
Creative – early stage prototyping of creative concepts, corporate branding, look & feel, usability guidance, and style schemas. The vision begins to emerge into concrete visual objects, colours, and web illustrations.
Function – describes the allocation of screen space to functional modules, defines navigation trees, creates content protocols, adds website widgets, and interactions with the technical layer. Site maps, administration, regulatory and compliance areas are defined. Screen layouts are printed to a story board.
Logic – defines formulas, security hierarchies, database architecture, algorithms, application interface specifications, program languages, hosting requirements, accessibility, testing regime, and all other aspects of “code”. Where complicated custom programming is required they are described, formulas written, and languages selected before the construction process begins.
Data – most information displayed on the website - including text, images, video, audio, user data, numeric data, and product information is stored in the database. The means by which data is stored, indexed, retrieved and cached make a fundamental difference to the performance and security of the project. The data specification optimizes pathways for speed, and ensures adequate backup of information occurs.
Assembly – a great deal of the technical work has been created in the past. The “reuse” of this work is common practice similar to the reuse of concrete forms, or building jigs. Object oriented programming, now the most common form of internet development, reuses objects (functional modules) to do most of the brute work. This stage of the process combines these objects with the creative and functional schemes and a website is born. Reused programming saves you significant time and money.
Program – most websites require work that is not standard. Just like generic brands at the grocery store – assembly programming has the same ingredients but isn’t quite the same as the big brands. What it may lack are programmed elements that tie the website together, add functionality that hasn’t been commonly programmed, or there is a need to create something completely new. This work is highly flexible and almost anything can be done – at a cost. If you can’t find the work in a code library, this is where the magic happens.
Database – if the presentation layer (creative) is a projects skin, its logic layer (programming) is its brain, functional layer its skeleton, and the data is the substance of the body. That data is stored and retrieved from the database. Unlike the past when most of the information for a website was stored in files, contemporary websites store almost all their content in the database.
Content – the text, images, brand, and multimedia on your website. The benefits of reusing programming, systems, and documentation is in stark contrast to the need for the originality of content. Content that is reused in many places online tends to devalue the site and search engines dislike reused content. At this stage in the process the projects content is created, collected, and uploaded into the website.
Hosting – a domain name is the real estate where you build your website. Fundamental to success, the effectiveness of your marketing and brand recognition will be strongly influenced by the choice of domain name. An excellent domain name can make or break your website strategy. Your website and email also needs to be hosted on a web server – its home. Your domain name is how users locate that web server. Depending on the specifications and user needs of your website, database, and scale – hosting packages vary.
Documents – documentation now comes in all sorts of presentations. User documentation, video, forums, and screen captured tutorials are just a few. Like programming documentation is now largely generic. Custom documentation can be expensive, but new technologies now exist to produce them at a fraction of previous costs.
Testing – the last step before a website goes live to production is testing. Testing includes checks for adherence to accessibility and web construction standards. Although object oriented programming and reuse tends to standardize the output of websites – anything can happen. It is important to test the website using various operating systems, screen resolutions, web browsers, and computer configurations. It’s virtually impossible for websites to be perfect in all configurations, but the vast majority of users should have a consistently good experience.
Usability – this testing ensures that the objectives of the project have been reached. Once the website has been fully constructed and filled with content and many new features – the user experience needs to be assessed. These tests are particularly instructive if previous benchmark tests have been performed in the research stage of the process.
Search – the cheapest form of marketing a website is search engine optimization (SEO). If Google and Yahoo, the dominant search engines, can effectively download, index, and read your website information it dramatically improves its chance of being listed in organic search results and being listed. This is free traffic and highly sought after. SEO can help stack the cards in your favour.
Advertise - search engines all offer paid advertising on a key phrase or banner basis. Ads are show next to the search results on their websites, appear as ads inside the content of web pages, and are often shown on parked domain names. These marketing campaigns can be excellent at attracting the right customers and driving traffic to your website. There are also a number of “cost per acquisition” programs which only charge you when you sell something to an online user.
Social – social marketing is a key element to any website strategy. There are mechanisms online that enable users to “recommend” your website to other users. These users then potentially visit your website and generate traffic that you don’t have to pay for. Recommended users are more likely to purchase than users with no history of interaction with your website. Socialization also extends to creating link popularity. Link popularity is the primary means for Google and Yahoo to rank your website in search engine listings. Social management extends heavily into generating relationships with other websites to list your website in reference.
Training – training includes internal and external engagement. Although most websites are now designed to be self administered by novice users, those administrators still need to have some basic training. Whether it’s personal, video, or documentation based training – administrators won’t be able to fully utilize your website unless they are properly trained.