One of the keys to my personal success as a web developer has been that I have been able to consistently create quality designs quickly.
Before jumping into the details I want to emphasize the importance of having a methodology or process. You need a base approach for attacking web design because this allows you to develop tools that you reach for consistently – fonts, CSS scripts, WordPress themes – and a series of general steps you follow to go from start to finish. You’ll refine it as you go, but you’re going to get lost fast if you have multiple projects to juggle and you do each design differently.
You also have to know when to adapt to specific client needs. Rapid Prototyping isn’t the end-all method for web development. Sometimes you need a more structured approach that involves a lot more requirements gathering and diagraming prior to writing a single line of code. So don’t get too sold on this one approach. It covers about 95% of my design needs, though, so I stick with it.
Rapid Prototyping Methodology
Rapid Prototyping is a specific process for website development. There are variations on the theme, of course, but generally you have three, iterative (repeating) steps:
- Requirements
- Model
- Review
Step 1: Requirements gathering is mostly an interview process with the users of the site. In my case, this is usually the business owner, but sometimes I develop back-end systems for employees to use. So these people will need to be interviewed as well so I know what they need me to build for them.
Step 2: Make a model is when I go in there and make a mock-up version of their site or specific tools. I’ll build out dummy forms, use placeholder text, and generic images to get the general layout and concept in place.
Step 3: Review by the users is when I show the client the prototype. This is when they click around and see how things look and feel.
Once they’ve reviewed the prototype, I start over with requirements gathering again because they’re going to have feedback and ideas. These are requirements that need to be incorporated into the design.
Importance of Interviewing
One of the most important skills you will need to develop – and this goes for all forms of development – is interviewing. I can’t tell you how many times I’ve had to come in and cleanup the work of another developer, and when I met with the client they were thrilled that I actually took the time to discuss their needs in detail.
I wonder how anyone can develop to meet the requirements of a client without an interview. Some larger firms will use an initial form or survey to gather some general requirements, but that should lead to finding the right person to send in for the interview process.
Don’t shy away from getting in there with the clients. You’re going to get much better information and build a much stronger connection with the client when you take that time to talk with them directly.
Set Expectations with Your Client
Another very critical component to success with a Rapid Prototyping method is that of setting expectations with your clients. Tell them up front about your methodology. Let them know when you’ve created forms that don’t function – they’re just to make sure all the inputs are there.
I typically put some kind of message on the web page to make sure the client knows what I need tested – it just takes a few seconds to drop an HTML paragraph text above a form that gives them some direction.
Leave Room for Scope Creep
One down side of the Rapid Prototyping method is that you will almost always run into scope creep. This is the technical term for the client wanting more stuff, more forms, more pages, more functionality. They usually want all this stuff without a corresponding increase in the cost of your time to make all this new stuff.
So I ALWAYS include, in a bid or proposal, an hourly rate for additional requirements. I also make it clear that I will get approval before switching over to an hourly rate for a project. Since most of my clients ask for a price up front, this becomes a very important little thing I can do to make sure I don’t come away working at half or less of my normal rate.
By adding an hourly rate for additional requests, this also tends to put the brakes on random functionality that my clients may not really need. The Rapid Prototyping process is awesome for getting new insights and bringing ideas that have been in the back of my clients’ heads to life. So they naturally get more ideas – the creativity starts to flow – and before long they have a whole new list of things they want done.
That’s great! If they’re willing to pay you to do it all. In most cases, they’re happy to lay down a few extra bucks to get the ideas implemented, but on ocassion I’ve had a client slow down and stick with the budgeted requirements.
Comparing Rapid Prototype Development with Other Methodologies
One last point I want to make is to clarify that some software design methodologies consider rapid prototyping to be an early stage of design verification. For example, the classic “waterfall model” looks like this:
- Requirements Analysis
- System Design
- Program Design
- Code Development
- Unit Testing
- Integration Testing
- System Testing
- Acceptance Testing
- Maintenance
… and other variations on that theme. Prototyping would only be steps 1-3 in that model. I incorporate all the development and testing into model development and review – stages 2 and 3 of my general Rapid Prototyping methodology.
I say all that to point out that this is a formal methodology that some clients will want you to understand and may require you to be able to articulate. Know your process. Knowing other ways of getting the job done can help if you have to work with a team or are part of a bigger program.
Another software development methodology you’re probably going to run into is Agile Software Development. The primary difference – and there are a lot of other differences – is that Agile development is team-based in most cases. There is a big emphasis on collaboration. But some of the similarities are using prototypes and iterations of software and designs, like this Rapid Prototyping methodology I explain.
In the next installment…
In the next part of this series I’ll discuss some specific techniques you can apply. I’ll look at some specific skills you’re going to need to make Rapid Prototyping work for you.
The post Rapid Prototyping: A Model For Killer WordPress Sites appeared first on YinPress.