|
||
Myth 1) Software must be designed in detail before development starts, so that a clear plan can be out-layed.
The truth) The more complex a design, the more like software the design itself is. By perfecting a design, then writing the software to that design, you're effectively writing the work twice. Instead, by doing just some simple design sketches and data modelling rather than a book-like design, a good development team can create a shell for the software and efficiently refine it towards the finished product. This process of refinement creates natural prototypes, allows easy adaptation when issues that would be unforseen by a design arise (or brought up as fresh concerns by a client), and the total process takes significantly less time. To pull this off requires a close team, skill, and experience, but it is by far the best option for the majority of situations.
Myth 2) There are programmers, designers, analysts, and users.
The truth) By structuring development so that all developers get some exposure to each part of the development process, skills may be shared and greater insight may be gained. If developers are encouraged to actually use the software then they can use that expertise to think of improvements that otherwise would not come to light.
Myth 3) A happy team is a productive team.
The truth) A team of people with a wide variety of natural skills, experience and concern, that criticises each other and argues vehemently over the smallest details, will bring up and resolve issues that otherwise would never be tackled. A furnace of relentless argument is the best way to forge understanding and reach perfection.
Myth 4) It's important we understand our direction and don't compromise with it.
The truth) Life is compromise, and compromise is not a weakness. There will always be issues (such as efficiency, budget, ease-of-use, power, scope, and the need for easy internationalisation) that cannot be simultaneously met without such compromise.
Myth 5) We know what the client wants, we know what the issues are.
The truth) Without constant re-evaluation, it is easy to lose track of the objective. Developers are often faced with problems to solve that they consider the issues, when those are in fact separated from the actual market goals and can become totally irrelevant. Developers must always understand the market goals and be able to adapt when other things change, or even the goals themselves change.
Myth 6) Bigger is better. Features are cool.
The truth) Features can easily confuse users, and their actual value should always be considered against the cost of confusion. In some cases it is sensible to actually remove working features due to such concerns.
Myth 7a) The customer is always right.
The truth) Most customers try hard not to look ignorant in front of software developers, and hence phrase their suggestions in a technical way. The effect is that often suggestions aren't really appropriate, because they're not founded on a solid understanding of technical issues.
Myth 7b) The customer is often wrong.
The truth) Although customers needs are often not best met by doing literally what they say, they always know what they want and why they want it - and usually for very good reason. Understand them and adapt what they say, discuss with them, but never ignore them.
Myth 8) Comment your code a lot.
The truth) Good code needs hardly any commenting, because sensible uses of naming and white-space are better alternatives. Comments should only ever explain the non-obvious, or provide standard API documentation.
Myth 9) Such and such is needed, such and such is great.
The truth) A bad workman blames his tools. Whilst some development tools aid development substantially, a good developer can do great results in most things served to them. There are a few exceptions, like Microsoft Access, or assembly language, but generally speaking the difference in quality results is much more due to the skills of the developers than the quality of their tools.
Myth 10) The customer will understand if there's an efficient and easy-to-use interface.
The truth) The interface doesn't just need to be easy-to-use, it needs to be navigatable without an overall systems understanding. Screens need to be self-describing.
Last week we talked about how a bad website can do your business more harm than good. That column brought several emails asking what is the key to building an effective business website. I replied with the same answer I always give: building an effective business website is a simple matter of definition.
Before the first graphic is drawn or the first line of code is written, you must define the website's budget, purpose, target audience, design, navigation, and content. And when that's all said and done you must define the marketing that will bring visitors to your site.
It sounds easy, but you'd be amazed at how many really bad business websites there are out there. Yours might even be one of them. If so, listen up. For nearly ten years now my company has been building and rebuilding websites for every kind of business you can imagine: from mom-and-pops to multinationals. We've designed (or redesigned) a couple hundred websites and along the way I have come to the conclusion that most business websites do a pitiful job of working for their owners.
What's that, you didn't know your business website should work for you? You think it should just sit on a server somewhere taking up digital space and collecting digital dust?
Wrong. Every website, business or otherwise, must serve a purpose, and that's usually where most websites falls short. They serve no purpose because the website owner never gave much thought to it. It's not the website's fault. A website is inanimate. It is only what you make it. The only life a website has is the one given to it by its designer and owner. If the human element doesn't do a good job of defining the building blocks, the website will serve no purpose and eventually die a digital death.
Building an effective business website isn't brain surgery, thank goodness, since that's how I make a nice percentage of my living. Building an effective, well-designed website that works for its owner, that actually serves a purpose, is all about definition.
Define the Budget
Every website, no matter how large or small, must have a realistic budget, with “realistic” being the key word. I can't tell you how many times I've sat with a potential client as they listed off the eight million cool things they wanted their website to do, only to find out that their budget was just a few hundred dollars. I always feel like saying, “Well you just wasted three hundred dollars of my time, so here's your bill…”
Define the Purpose
Every website must have a purpose. Purpose drives everything: the audience, the design, the navigation, the content, and the marketing. I could do an entire column on purpose, but suffice it to say that there are five categories of purpose under which most websites fall: the purpose to inform, to educate, to entertain, to generate leads, to sell, or a combination thereof. If you fail to define the purpose of the website, all else is just wasted effort.
Define the Target Audience
Your target audience refers to that segment of the public that you hope to attract to the site. For example if you sell shoes, your target audience would be anyone with feet. Taking it a step further, if you only sold women's shoes, your target audience would be women (with feet) Why is defining your target audience so important? If you have no idea who your audience is, how can you expect to design a website that will appeal to them? Your target audience could be customers, investors, job seekers, info seekers, etc. Define your target audience, then figure out how to serve them.
Define the Design
Website design theory has changed over the last couple of years, primarily because the search engines now ignore graphic heavy websites and give preference to those that take a minimalistic approach to design. If you look at some of the big boy websites like GE, Oracle, Raytheon, HP, and others you will see that in many cases the only graphic on the homepage is the company's logo. Search engines now give higher preference to websites that offer keyword-rich text over flashy graphics. Don't fight the design trend. You will lose.
Define the Navigation
Bad navigation is the number one reason website visitors abandon a website. Navigation refers to the chain of links the visitor uses to get around your site. If your site has an illogical navigational hierarchy or too few or too many links or is simply impossible to get around, you've got problems. We live in a microwave society. We stand in front of the microwave tapping our foot and glaring at our watch wondering why it takes so damn long for a bag of popcorn to pop. Why can't a three-minute egg be done in thirty seconds? If it takes a visitor more than 3 clicks to get to any page on your site, your navigation needs improvement.
Define the Content
Content refers to the information on your website, be it graphics, text, downloadable items, etc. Since the top search engines no longer use HTML Meta tag data to index websites, it is vital that your website content be text heavy, succinct and well-written to appeal to the search engine spiders.
Define the Build Method
Next, who will build the website for you? Will you do it yourself using one of the point and click website builders or will you hire the kid next door? Will you hire a freelance designer or a professional firm? Budget usually dictates the build method, but be warned, when it comes to website development, you get what you pay for. Sure, the kid next door will throw up a site for you if you buy them a pizza or make your daughter go to the prom with them, but you will end up a with a website that looks like and performs like it was designed by the kid next door.
Define the Marketing
If you build it, will they come? Not on your life, at least not without a good marketing campaign. Your website should become a part of all your marketing efforts, online and off.
Put the website address on your business cards, brochures, letterhead, and all collaterals. Include the address in your ads; print, TV and radio. If you prefer to do online marketing, figure out where your target audience surfs and advertise there.
If marketing is foreign to you, do yourself a favor and call in an expert. Many businesses fail because they simply do not know how to market their products and services effectively. This is also the downfall of most business websites.
Here's to your success!