Running a successful development project – the five documents you really need

As outlined in my previous article “Documentation: boring – yes, essential – absolutely!”, documentation, although unexciting, forms a key part of any project. It helps to keep things on track and protects both you and your client. In this article I’ll look at the five documents you need to run a successful development project from start to finish.

Document 1 – Statement of Work

The statement of work is your kick-off document. It’s purpose is to get a high-level agreement on what you are going to deliver prior to the main work beginning. As a minimum, your statement of work should define the key deliverables and your terms of engagement (your rates, where you will work, what expenses you will charge for, whether you are working alone or bringing in additional resource). Ideally, it should also include some protection for your work, setting out compensation rates should the project be scrapped prior to completion and payment milestones (i.e. development tasks that trigger payments). By getting agreement on these, you can start work confident in the knowledge that both you and the client are working to the same agenda.

Document 2 – Wireframes

Wireframes aren’t usually seen as an essential document, but they make my list for a simple reason: clients aren’t usually technical people. The functional specification, as we shall see, is the more important document for development, but most clients simply can’t read them without falling asleep. That’s why wireframes are so useful, they are a visual representation of the deliverable that can be produced quickly and without the need for coding (what do you mean you’ve started coding before knowing the full specification – shame on you ;-) ). They are also useful for helping the developer to understand the user journeys involved in the system. There are lots of tools available online to help you create wireframes, but you can sketch them if you feel more confident. Once you’ve got your wireframes in place, run through them with the client and get them to sign-off on the concept; it’s the big document next and you don’t want any changes half way through.

Document 3 – Functional Specification

For the developer, working alone or in a team, this is the main document. A good functional specification is worth its weight in gold, as it contains the single source of guidance for the project. Within a functional specification, each piece of functionality required for the successful build of the system must be fully defined without any ambiguity. Using the wireframes as a reference, the functional specification will describe the workings of each screen, from input validation to login procedures and error handling. Writing a functional specification is not easy, and can be onerous, but is essential. It provides the basis for successful testing and acceptance and can stop ‘scope-creep’ in its tracks. If you can, try to go through the functional specification with the client, especially if there are any logical calculations or data processing that is represented in the wireframes. This won’t be easy, but it does help a project to run smoothly – pick out the main areas they need to look at or provide a client-facing “executive summary” up front to help them through.

Document 4 – Project Plan

The Project Plan defines the delivery schedule for the project. Although this will focus mainly on development milestones, such as the end of development, testing and go-live, it should also include payment milestones if these have not already been included in the Statement of Work. Project plans serve a dual purpose, they define timescales, but they also allow you to show the impact of changes on the project delivery date. The Project Plan is all about setting expectations for the client and protecting your time.

Document 5 – Project sign-off

This document is often missed from a project, but it’s important as it forms a clean break between development and production. The document itself is simple, you just need the client’s signature and a reference to the original Statement of Work, but its impact is greater. With a project sign-off document in place, there is no argument over charging for work, as anything post-signing is chargeable work (unless you decide otherwise) – a good situation to be in.

These five documents provide a complete overview of the project, both from the perspective of the developer and the client. They provide clarity around the deliverables and the timescales, and protect from the dreaded ‘scope-creep’ (I haven’t covered Change Management in this article, that’s for another time). They also engender trust, as a professional approach to a project gives the right impression to existing and potential clients.

Just one more?

Of course, there is one document that isn’t on the list that most freelancers would say is the most important: the invoice. It’s the one document we’re always happy to create and to submit to the client. Hopefully, with this set of documents by your side, submitting your invoice will be the easiest thing you have to do all project and there will be very little issue about getting it paid!

What documents do you use in your projects? Do you have a different set of essential documents? What’s the most important document in your armoury? Do you agree with our list? Let us know in the comments.

20 top web design and development trends for 2013

20 top web design and development trends for 2013

.NET Magazine posted its annual predictions article today. There are some great thoughts here, and if last year’s effort is anything to go by, it will be bang on target. So for all you developers and designers out there – go take a look!

As an aside, my own contribution to this years article – thanks to Craig Grannell for asking my thoughts – is discoverability. It’s something I may cover in a post, as I believe its going to be a key area for the big content producers this year. As the amount of content increases (apps, videos, etc), finding the right content becomes more and more difficult. The company that cracks this problem is going to really reap the benefits.

* UPDATE *

Following on from yesterday’s article, I was particularly pleased to see the following article on PandoDaily this morning: “Game discovery platform Chartboost is on fire, scores Sequoia in $19 million Series B“. Maybe we won’t have to wait too long for this prediction to manifest!

Also, for those looking for additional information on 2013 Web Development trends, check out HTMLCut’s “Trends, Expectations, and Truth About Web Design 2013” – it’s a good overview of all the 2013 trends and tips articles published over the last few weeks.

What do you think will be this year’s trends? Do you agree with .NET? I’d love to hear your thoughts.