As a developer you'll probably find yourself frequently asked 'how much does a web site cost?' - we looked at this in a recent article on how much you should charge to do a web development project where we covered what areas should be considered. Today we'll be looking at one of those considerations in more detail - scoping the project.
Scoping a project properly will often dictate it's success, and how that success is perceived by your client. Clients' will often think of web sites in terms of visible pages and can struggle to understand the varying complexity that different functionality can add. A clearly defined project specification that demonstrates the project scope will improve the communication between you and the client and help them to understand how your time will be spent.
Project scope defines the deliverables of the project so that the client's expectations are synchronised with your intentions.
What's the difference between project scope and project requirements?
Scope and requirements are often interchangeably used terms, most likely as they are intrinsically linked. At a simple level, the requirements are a list of expectations provided by the client, that the product is expected to fulfil. From these requirements you work out the 'Project Scope', which will dictate what is and what is not expected to be completed as part of the project. To simplify further, the requirements are essentially a feature list, and the scope refers to the actions that will be completed to achieve those features.
Requirements and scope will usually be combined into some form of project functional specification, which outlines the requirement features and scope of realising these requirements.
Product and Project scope
A little more terminology before we move on, here is a definition to understand the difference between product and project scope.
- Product Scope - the features and functionality that define the product or service.
- Project Scope - the work required to deliver the product or service defined in the product scope.
Why is project scoping important?
So why is project scoping so important? Why not just gather a general list of requirements from your client and discuss it as you go?
Web development projects are notorious for over-running, and a large part of the blame for this is poor planning. Not fully understanding the scope of your project is likely to lead to array of issues...
Problems of no project scope:
- Scope creep
- Inaccurate time scales
- Additional costs
- Reduced profitability
Incorrect expectations of time scales and cost will have a negative impact on your relationship with your client. This in turn will affect the perceived success of the project and affect the potential for future work.
Benefits of project scoping
- More accurate client expectations
- Easier to plan and manage work load
- More accurate deadlines
- Reduced hidden costs
A well scoped, well documented project should ensure both you and the client are on the same page in terms of expectations and deadlines. Discussing the project in detail will also reveal hidden work that either you or the client may not have considered.
Scope creep is the concept of additional requirements being added to the project that were unexpected. This often occurs when work is started and either the developer realises additional work is needed to fulfil a requirement, or the client realises there is additional features they were expecting but hadn't discussed. This is generally considered a bad thing as it can impact cost, deadlines and product quality.
Scoping a web design project
So we've covered what constitutes as project scope, product scope, how this fits in with requirements, and why it's worthwhile - so what do we actually need to do?
Scope, Cost and Schedule
When gathering requirements from your client, here are some of the higher level areas you'll wish to consider to allow you to scope the project properly:
- What type of project is it?
Are you developing a single landing page, a 5-page marketing site, an e-commererce platform, a bespoke application? This first question will give you an indication of scale.
- How much time do you have?
If the client is working to a fixed time scale this may affect what's included in the scope of the first phase of the project.
- What is the budget for the project?
Some of the requirements may need to be scaled back to fit in the available time for the allocated budget.
Understanding what the client wants
When you have a good understanding of the type of project and the available time and budget, you can then spend more time on the specifics of the project with the knowledge of your constraints.
Here's some areas you'll want to cover:
- Gather a list of goals and objectives for the project so you understand what is most important to the client - what is the purpose of this project?
- Gather a granular list of requirements for each section, it can help to use user stories in the format of 'As a user type, I want to goal description so that reason for requirement.' This method helps the client to consider who benefits from the requirement and what is it's purpose.
- Gather a list of the non-functional requirements - what browsers and devices need supporting? Will the site be responsive? Are there any specific technology requirements?
- What are the deliverables? Get a list of expectations that would deem the project complete and successful.
- Responsibilities - documenting who is responsible for what will help you understand the scope of your role in the project - are you expected to write any content for the site? Set up the hosting? What is the support and maintenance agreement?
Negative Scope / Exclusions
As a developer you'll be more aware of the hidden costs of development that might not occur to your clients. Web hosting costs for example might be something the client would automatically assumed was covered. From experience there will also be other areas that you know is rarely discussed until later in the project, such as data migration. Discussing 'Negative Scope' or project exclusions helps to avoid a disconnect between you and the client over what will and won't be delivered as part of the project. Accurate client expectations is key to maintaining a good relationship.
Pitfalls to avoid when scoping a project
- Don't be ambiguous - get granular details for the requirements and be specific
- Don't make assumptions, discuss any questions with the client
- Get the final specification agreed in writing and signed off by all parties
Writing a proposal
Once you've gathered requirements and scoped out a project, you may wish to present a summary and guide to your work methodology in a project proposal. Take a look at our PDF Project Proposal Generator for creating professional PDFs.