It is less expensive and certainly more efficient to get requirements right the first time. It is a truism that trying to change a computer system AFTER it has been built can be much more expensive than having done it right the first time. This is even true of systems built using Content Management Systems like WordPress – although WP does make this much easier!
Oftentimes the reasons why systems are built that end up having to be changed is because we don’t ask the right questions, and listen to what the client THINKS they want – not what they really NEED. As techs we can also sometimes be caught up with all the bells and whistles that can be built into a system, rather than concentrating on what is actually needed and the business processes involved.
If you were a tractor-mower salesman trying to sell to a potential customer, you might be tempted to blind them with features – particularly if you were hustling a more expensive model.
You might ask questions like:
What power engine do you want?
How wide a blade do you need?
Do you want power start for the mower?
These are issues that need to be resolved, but your potential customer may not have a clue how to answer them. How much BETTER would it be if you asked questions like this:
How BIG is your yard?
Is there any slope on your lawn?
Are there any trees in the way?
You can see that these are questions your customer can easily answer, and will guide you as to the best model for the job. Similarly, questions about computer systems and websites should be couched in terms that show an understanding of the goal a potential client wants to achieve, rather than blinding them with science and techno-babble.
Asking the right questions instead of selling a bill of goods can ensure that you get the Requirements right the first time.
Recently we were asked to (do a very difficult task) on a (ridiculously short timeline). Well, it honestly doesn’t matter what the particular tasks was, it highlighted the importance of planning.
When developing a WordPress website or plugin (which we do a lot of), it is critical to plan WHAT you are doing before just starting to code.
In our projects, we tend to use the ‘Rule of Thirds’. 1/3 Planning, 1/3 Coding, 1/3 Testing and Revisions.
That Planning phase is the most important. Without an agreed plan, the odds of development meeting customer expectations are very slim.
When we build something, we need to understand the business goals of the website or plugin. We like to wireframe and flowchart site templates and user flows before even thinking about coding.
Think about it like this: Would you build a house without a blueprint? Imagine the surprises. Oh wait, you mean we need outlets in every room? Oh, yeah, we need a Washer and Dryer hookup. You can imagine the mistakes all the contractors and subcontractors would make without the right blueprint.
It is hard enough building a house WITH a blueprint. Without a blueprint, which is signed off and agreed by the homeowner, it is VERY unlikely your house will meet your expectations.
You also need a blueprint for development. Some of our business comes from people who say “We worked with this developer and it just isn’t working right”. In most of these cases, there was never a Specification written or at least a functionality list.
That means the initial developer, in almost all cases, just started building a site without really understanding the business goals.
One sad example was when a customer’s site was delivered from another developer, they realized it wasn’t built responsively, so it looked terrible on phones and tablets. It turns out that was never discussed during the development, but assumed by the customer. The developer, never having that requirement explicitly, built the site without responsiveness built in.
So the summary of this is: Planning is not an option, it is a requirement. At a minimum, write down the functionality that will be delivered and make sure that both parties agree on it before you write any code.
So your project is going along well. You’ve worked with a developer to establish the feature list of each page of a site. (With Quadshot, if you’re lucky.)
Then just as you are about ready to launch the site, suddenly it strikes…
[cue scary and intense music now]
FEATURE CREEP! Run!!!
Ok, so imagine you have been contracted to build a house. The project is almost done, and the home owner says, “Oh, I’d like a circular staircase in the back corner of the house instead of the straight near the front door. I’d also like Central Air Conditioning installed. That’s not too hard, right?”
At these moments it is often beneficial if there are no power tools present.
Feature Creep kills more project timelines than anything else, except perhaps bad Quality Assurance. (that’s for another post)
There are a few ways we at Quadshot have learned to avoid these circumstances that devour time and money and we’ll share them with you right here.
How To Avoid Feature Creeps
1. Have a formal specification and design sign-off
If the customer has a chance to be involved in the specifications, wireframes and design of a site we often consider that a good thing and welcome the input. To further that, having signatures on a paper or boxes checked on an electronic document themselves forces accountability.
Verbally saying yes is one thing. When someone has to sign, they really pay attention to what they are agreeing to.
By this simple action, extra attention and involvement is given by the stakeholders to the forthcoming procedures and developments. By adding your personal mark to a document the mind is focused on what is important, both for the present and the future.
2. Complete transparency to the development process
Customers that see a development site and have access to each day’s tasks are able to see things along the way and request adjustments. This helps the contractor ensure that the customer’s expectations are exactly met by reality.
This also puts a shared responsibility between the developer and the customer for the outcome.
3. Make change a formal process
We want the best for our customers and that means allowing the customer to be able to make good financial decisions. If a change will cost $180 or $2500, that’s a big difference and the customer has the right to know how much a change to their website will change their budget.
What we do is we have a Change Request Process and during our daily or weekly meetings on a project you simply review those Change Requests with how much that impacts project cost and timeline.
While customers have every right to change their mind, it isn’t fair to have that be the burden or cost put on the developer when this occurs. This is why an open line of communication is needed for every change and a happy transaction.
4. Decide what is Required and ‘Nice to have’
Henry Ford used to say, “People can have the Model T in any color – so long as it’s black.” We often say, “You can have any website you want, so long as you have the time and money”.
Anything that deviates from the original contract and project description also deviates the original estimate. During a project it is not uncommon for a customer to come up with several ideas to add to a site.
That tends to clarify what is important and what is a ‘nice to have’ for initial site launch. Unlike Henry Ford’s Model T, we live in the digital age and you can always add on to your website in the future.
5. Communicate Regularly (and don’t be afraid to Ask Questions)
Whether through a project tool (we use Basecamp) , Skype, screen sharing (we use join.me) or the good old telephone, communicating regularly throughout a project can stave off feature creep.
We have regular, set meetings with clients. The frequency of the meeting depends on the complexity of the project.
On this point, there is NO shame in asking questions from either side of the fence. It is a shame when a question isn’t asked.
By following these simple rules above you’ll probably find that your project stress will be much lower and success rate much higher.
We have been working for some time on a Celebrity Publishing Platform (“Platform”, for confidentiality project naming is changed) project for one of our clients, BuzzMedia and I am happy to announce that it is finally seeing the light of … well, the LCD screens around the internet. Last week, we finalized its release and we couldn’t be more proud.
We created this Platform from the ground up, along with other useful tools for BuzzMedia over the past three years. To see this creature finally released into the wild was a proud day.
This time around, BuzzMedia needed a tool that could expedite publishing of new content that could handle the sheer number of celebrities they deal with on a daily basis.
It was a long series of fitting square pegs into round holes. The task of this project was to create a new software tool that could handle the load of BuzzMedia – which is far from your everyday publishing norm that platforms like WordPress are used to.
In the past, we have created new features from the ground up and which had later been implemented in core WordPress. There are features that were required for this project , that are still not part of the core platform, but we were able to create these features.
One of the most complicated features of this platform was allowing users to automatically be shared across all celebrity blogs using WordPress Network Mode and the main site. The main site is NOT on WordPress Network Mode, and is actually a completely separate install of regular WordPress.
This obstacle was difficult to overcome because of the way that site access is stored in the database. The short and long of this is we had to trick WordPress Network Mode into automatically copying all the permissions from the main site and use them for every site in Network Mode. It would be lengthy and complicated to explain in detail, but that is the basic idea.
Now, because every celebrity can’t be a brilliant developer and I can’t be a celebrity, we developed another feature into the Celebrity Publishing Platform that adds speed and ease to creating a new celebrity blog. We developed a custom WYSIWYG (what you see is what you get) style editor which will be used to quickly customize many aspects of the theme itself.
The goal was to reduce publishing time and automate as much of the deployment as possible. Think of it as a complete custom layer on top of WordPress that saves non-technical people a lot of time.
This Platform also includes all the features we have created for BuzzMedia over the past several years. Many of these features are administrative and editorial features. Some however are forward facing, like the unique endless gallery experience. These features were included because they are part of the BuzzMedia standard now.
All in all, this new product helps our valued customer achieve its goals and makes their editors lives easier. The first Celebrity Blog launch on this platform went smoothly. This product is a powerful new tool that will streamline professional Celebrity Blog site creation and management.
In almost every conversation with a customer about theme selection or design, someone on the call mentions “we’d like it to look more like Apple”.
Well, this usually means that they’d like a clean site with lots of white space and a focus on their product.
Apple does this VERY well, and your product probably not as much. Why? Because you are not Apple. It also turns out that once a person’s website depends on a bunch of white space and great product shots they don’t actually like their website anymore.
What makes Apple’s site so great anyways? First of all, Apple’s brand is recognizable wherever you go in the world because of the products. Everyone has or has seen an iPod, iPhone, iPad, Macbook, or some other various product they have put out and everyone has adopted. The younger generation has been lovingly termed the iGeneration for a reason, and not just because ‘i’ can stand for internet. The recognition is what customers are really asking for.
Secondly, Apple’s brand is not recognizable from their website look and feel, but rather the look and feel of the website reflects the recognizable design of their product.
While browsing through the Apple website, you’ll note similarities between Apple products and their website. Note the clean layout and the rectangular rounded edges of the buttons – looks a lot like the iPhone, iPad or iPod, right? Notice the similarity of font usage from the products and the site itself?
Last of all, to bring even more of a focus on the Apple product line, a large product shot is found on almost every page. You are seeing these products that you use on a daily basis and you like using that so feelings of attachment and emotion are brought your user experience with the site. So, really all you are seeing is a company site that reflects the products that they produce and not only are they doing it well, but most users are already engaged because of a positive prior experience.
Now, imagine you are selling garden hoses, t-shirts, TVs or some other highly competitive product. Apple dominates their product categories so while you can just drop in any product into the look and feel of the Apple site, it probably won’t make sense to the eye. Not to mention the customer definitely won’t be getting the brand recognition you are striving for unless you are at the top of your forward-thinking product category.
The bottom line is this: companies spend millions of dollars creating a recognizable brand. When you develop your site, it should look like your site with your branding. It should not feel like some other brand, but should look like and enhance YOUR brand, product or service.
I would suggest that this practice is actually detrimental to the growth of a new site to have it look too much like a famous and world-recognized brand and any developer who agrees to this is probably not looking out for the customer’s best interests.
Don’t try to be Apple. They’re good at being Apple. You are probably not, because you are not Apple. You are good at being you so, BE YOU.
This is by far the most common question we get here at Quadshot.
It is a natural question to ask. While we wish it was a clear-cut answer, with a simple set of check-boxes like a Sushi menu, it’s not that simple.
Think about a website as you would a house: Imagine you are in the market to buy a house. You call a Realtor and ask, “How much does a house cost?” The realtor will likely respond with an obvious question, “What kind of house are you looking for?”
Do you prefer 2 or 5 Bedrooms? Do you want Central Air Conditioning? If you live in Las Vegas, you definitely do. Do you want a pool? How many square feet? What kind of roof? The questions seem to go on, but you need to know what you are looking for.
Well, this is much like asking, “How much does a website cost?”
Along the vein of the house analogy, we can however give some options, like buying a house.
You can buy a pre-made home with very few options. If you have ever seen a ‘planned community’ you’ll see many houses look alike. This is akin to the Henry Ford’s Model-T philosophy: You can have any color as long as it’s black.
Similarly, you can choose a ‘prefab’ website. There are many companies that make themes with some limited choices of layout, color schemes – unlike Henry Ford – and some pre-made functionality.
PROS: Cheap and there are many Themes available.
CONS: Limited to the functionality of the Theme as well as the layout and structure of the site. The choices are limited and this is not for a high traffic site.
Sometimes you can buy a home and choose several options. In that same planned community, you might (if your HOA allows) opt for a pool, special siding, custom doors, a den instead of a large garage, etc. This allows your house to be unique.
In website development, we can start with a ‘framework’ and develop very customized functionality based on that framework. This is a common approach our customers take.
You get the benefit of having a robust starting point, but adding custom plugins (functionality) and design (theme customization).
Designers and Consultants like this option since it keeps costs reasonable while providing flexibility.
PROS: Cost-Effective, Customized and Short Project Timelines
CONS: Limited to what you can customize based on selected Theme/Framework, dependence on open-source functionality to work as-is.
You want a mansion on a hill. Or perhaps a beautiful house in the woods overlooking a lake. In either case, your brand needs to stand out.
Starting with a project plan and custom designs, we build a complete ground-up Theme, Templates, customized plugins and scaling/caching architecture to create a unique customer experience.
Our media, news and entertainment clients often choose this to handle the immense traffic they draw. Half a billion page views? No problem …
PROS: Completely custom to your needs. Dedicated project management, developers, systems and QA. Scalable. Stable.
CONS: Cost. Time to market depends on project scope.