A sad fact: 70 percent of development projects fail.
Of those that succeed, 80 percent of total costs come after the release. You know what I mean. Aren’t you the one who just told your tech team, who are almost done with the project, to add that new, cutting-edge feature?
Failures don’t happen by accident. They happen because too many development projects are done “the way we’ve always done it.” There’s an adage: “The definition of insanity is to keep doing things the same way but expect a different result.” You want to ensure your project succeeds. You want it to be cost-efficient. OK, then you need a new and better management method.
Imagine you’re building a new house. You wouldn’t have a crew begin construction, then pop in each day to tell the foreman what to change. Instead, you’d spend time thinking about all the functions and features you want to have, the style, the materials –everything. You’d get advice from professionals. You’d test the soil for contamination. You’d think ahead and anticipate as much as possible. Why? If you didn’t, it would cost a lot more to change things later than to do them right the first time. Changes would take time and cost money. The more thinking and planning you do in advance, the fewer changes you’ll want or need.
You prioritize. Nobody selects bathroom tiles before the building site is selected. Plans are finalized and then put in writing. That way, time and money aren’t wasted installing the wrong tile in the kitchen and then changing it. It’s a sequential process with a great deal of up-front planning. As construction proceeds, inevitably there are going to be a few things you couldn’t anticipate. But to keep budget, time, and sanity, under control, you anticipate and document as much as possible in advance.
Like building a house, the best way to manage a development process is with well thought-out and well-documented iterative phases. The optimum system has four phases.
The first is wireframe. A wireframe is a skeletal rendering of every click-through possibility on your site — a text-only action, decision, or experience model. Its purpose is to maintain the flow of the logical and business functions by identifying all the entry and exit points on every page of the site. The goal is to ensure both your needs and your visitors’ needs will be met.
During wireframing, the focus is on what you want the site to do. You don’t get distracted by how it should be done. Design issues are premature. If you’re thinking you want something yellow and round on the screen before all functions have been identified and documented — along with all their interrelationships — you will skew the final design and probably have to change it.
The second phase is storyboard. You develop mock-ups of potential design schemes that support the flow of all actions identified in the wireframe. It looks a lot like an enhanced flow chart, with pages representing each web page. Each sheet describes the page and contains a summary of content, layout, graphics, and objectives. Objectives? Yes — the two objectives of every page are to motivate customers to continue to take action and to make it easy for them to do so.
Arrange the pages in the logical order of the buying process, with arrows between them. These arrows become the links that help customers navigate your site, find what they want, and benefit from it. Different arrows represent different outcomes, based on how customers might move through the site (primary trajectories, secondary, etc.).
This is critical planning! It helps you understand the nuances of your site. More important, it ensures that users see, understand, and do what you intend in a way that feels natural.
The third phase, whose early segments can occur in tandem with storyboarding, is prototype. Develop an operational model of the application, which will allow you to see exactly how the system looks and functions.
Make changes now — it’s easy and it’s cheap. Look at things from different angles; solicit opinions from staff and end users. Iterate as often as it takes for the app to be right. Changes now are cheap — nothing has been spent on programming.
The end result is a prototype freeze; you have a model of exactly how the final site will operate and look. You can now create a complete specification of the final deliverable for the programming team. After programming begins, changes–often referred to as “scope creep”–will be very expensive and time consuming. Of course, that won’t be an issue because you’ve already made all the changes much earlier in the process. Right?
The final phase is development, where the goal is to deliver the finished product. Because the planning, iterations, and specifications were done in advance, this is where your approach to development really shines: fast turnaround, cost control, and delivery of what you expected.