For anyone thinking of developing a medium to large sized website, I hope you
find the following helpful and useful.
For any programmers out there, you may have heard of the Software Development
Life Cycle, well the Website Development Life Cycle is basically the same thing.
A 6-step process.
Those 6 steps are:
1. Website Requirements and Analysis
2. Specification of Requirements
3. Site Structure and Design
4. Website Construction and Testing
5. Marketing (SEO / PPC / etc)
6. Analysis of Statistics and Maintenance.
I will explain each step further. For the purpose of this WDLC tutorial, assume
that the medium - large website will be developed in PHP with a MySQL Database
(this seems to be the most popular; probably because it's good and free).
Step 1. Website Requirements and Analysis.
Running an affiliate website is in-fact the same as running any business. If you
have a solid business plan and you stick to it, your chances of success are far
greater than developing a website with no goals and plans.
You need to determine exactly who your targeted audience is. What age group do
they fit in? What gender will the majority of your targeted visitors be? What
income level will they have? What personalities will they have?
These things are very important when developing your website requirements and
analysis - this is the foundation of your website. Knowing who they are will
help you understand what they need, in terms of what kind of functionality
should your website provide them with, that they will require? Will they need
product reviews? Will they be searching for the lowest prices? Etc.
Based on this you can write all the functionalities of your website, all the
requirements your website must fulfil. These requirements and the analysis of
your target user will help you with the next steps.
Step 2. Specification of Requirements
Here you will go through each and every one of the requirements you wrote down
in step 1 and for each you will develop a use-case. A use-case is where you will
determine 'what will the user do/ what action will the user take'. Here's an
example of a use case:
User Begins at Home Page --> User clicks on Featured Item Image --> User sees
item description --> User goes to merchant site via aff. Link
User Begins at Home Page --> User searches via the provided search --> User
doesn't find the item they want --> User leaves.
The first example is something we do want to happen. The second example is
something we don't want to happen. This is why we write these use-case scenarios
down, so that now we know if the user doesn't find what they're looking for,
perhaps we can offer an 'alternative' which is related to what they're looking
for. A good example of this would be Adsense. If you have bold text saying
'Search for Bright Blue Widgets returned 0 results', Adsense underneath that
will most likely have relevant results to 'Bright Blue Widgets'. It may not be
as good as making a sale, but it's better than the user plainly leaving your
Other requirements you need to consider are your own requirements of the
website. What happens when the website grows and you no longer need only 5
merchants, you now need 50. How can you add new merchants, how do you determine
which products will show in results first. How will you delete non-performing
merchants or those who support parasites? Once you have identified what you will
need and what the user will need, you're ready plan the website structure and
Step 3. Site Structure and Design
Ok, so you know what your website needs and what it should do. Now, you're still
not ready to go develop the site. You need to plan the structure and design it
Sketch a rough design out, analyse it, ask some people who you know and fit your
target audience, post an image of your design in here, etc. Make sure the design
you've drawn or sketched will fit the resolution of your visitors, find out what
colors match your visitor, find out where to put that 'sign in' or 'send this to
a friend' link, where should the banner go, etc?
Next consider the future of the website. When developing your database schema
(structure of database) use things that will make your life simpler in the
future. Here's an example of something that has saved me many hours:
A merchant is not performing, I want to remove this merchant and all their
products, or at least disable the merchant for now. So I have my database set up
similar to this:
Fields: merchant_id name url email affiliate_manager disabled
Notice the 'disabled' field (I keep it as an integer type field).
It is usually set to 0. If I realise that Overstock didn't perform well for
I simply open up PhpMyAdmin or my Admin-Script and set that field for
Overstock to 1. This merchant is now disabled and their items will not be shown.
How do you make sure the products from this merchant don't come up? When loading
items from your database, for example you have an sql query such as:
mysql_query("select * from products, merchants where products.merchant_id =
merchant.merchant_id ....... etc .......");
And then you add to that query something like:
" and merchant.disabled = 0 ".
Now, whenever you disable a merchant, they are still your merchant, but you wont
display any of their products until you set them back to disabled = 0.
That's just one way you can help to reduce your work load in the future.
Once you've planned out your database, you should think about the structure of
your site; will each section be unique and run separately, or can one script
load each section dynamically, with values from a database and query string,
Now that you have your design ready (and make sure it's consistent), and you
have the structure of your website and database planned out, you are finally
ready to develop the website.
Step 4. Website Construction
I guess this step is self-explanatory. All you really need to do is remember to
stick to the site structure and design you created in step 3 and develop it to
match all the requirements you discovered in step 1.
This is also the place where you should consider using (if on Apache-server) the
mod rewrite to create search engine friendly url's, if you believe it helps
(most search engines can read urls with query strings- or at least up to 3
values in the query string).
With each section of the website you develop, make sure you check it or run it
with the use-case scenario's you created in Step 2. If you develop the search
function, use it and test it to make sure it does match all the scenario's you
discovered in Step 2.
Once the whole site is completed, test it as a whole, not only for page errors,
spellchecking etc, but also check it alongside each and every use-case scenario
you have from Step 2.
It may seem like a lot of work so far, but this pays off in the end, not only in
having a more user-friendly website which works well, converts well and makes
money, but also in your time. This will all mean less maintenance and updating
from you in the future.
Next we do some marketing.
5. Marketing (SEO / PPC / etc)
Ok so you have a very well designed, functional, well-planned, well-though out
and well-structured website. How will people find it? Is it well optimized for
Make sure you use heading tags, bold tags, place your targeted keywords higher
up, use alt tags, etc but do not at any time substitute the user-friendly design
for a better SEO'd website. Why? Because then it won't convert as well. Do you
prefer 1000 visitors of which only 10 click-through and buy. Or 50 visitors of
which 10 click-through and buy? (Consider bandwidth and future growth - if you
have 1000 now, you need 2000 to make 20 sales, but if you have 50 now, you only
need 100 to make 20 sales, etc.).
Whilst optimizing for natural search engine rankings, think about pay-per-click
marketing (which is a whole new thread on its own, so I won’t talk about it).
Also try and find some forums which are related to the website you built, become
an active user/poster. Do not spam at any time.
Make some flyers, hand them out at busy places in your town/city etc. This
should all be in your business-plan you created before you even considered Step
1. Marketing is a rather large area and there are many, many great places online
that will help you with some great tips, ABW being one of them.
Use the resources you have. Once you're getting visitors, move on to step 6.
Step 6. Analysis of Statistics and Maintenance.
Ok congratulations by now you should have a functional website receiving some
targeted traffic and converting well. How well is it really converting?
This is the stage where you look at your statistics, and by statistics I mean
run every figure you have through something like excel and figure out just how
good or bad things are.
Check out your payment reports, find out how many click-throughs you've sent to
each merchant, how well a merchant converts them, how many visitors you received
etc. Analyse these numbers,
find out for each visitor how many will buy. Find out which merchants aren't
Now for maintenance. Since you've done the number crunching and realised
merchant (XXXXX) did not perform well, you want to disable them for the next
month and give other merchants a better chance to see how they perform. Simple,
if you followed the little tip in step 3, you can easily disable the merchant
and go about your business. What a time saver.
Phew, seems like a lot of work. It is, unless you want a half-a#*ed website that
doesn't perform too well. But it's only a lot of work until take-off. As you can
see, maintenance is very, very easy if you take the right steps in making all
simple and perhaps automated (i.e.; if you use data feeds).
I hope this tutorial helps some of you to earn more, perform better and work
smarter, not harder.
If you disagree with anything, or have something to add, feel free to do so.
Rashid Imran Bilgrami
CEO Best Visualization