August 5, 2014

7 +1 steps to plan a successful Drupal website

Author photo
Oroszvári Péter
Co-founder and CEO

According to our experience the most usual approach for clients with web development needs is to contact multiple agencies with more or less vague ideas - asking for quotes, and then selecting a choice based on price. This approach is doomed to fail for two reasons.

7 +1 steps to plan a successful Drupal website

According to our experience the most usual approach for clients with web development needs is to contact multiple agencies with more or less vague ideas - asking for quotes, and then selecting a choice based on price. This approach is doomed to fail for two reasons:

  • Without a precise specification of requirements, agencies will have to base their quotes entirely on guesses.
  • The client is missing out on the value that the agency could have added if they were involved in the discovery and planning as well.

We believe that a much better approach is to choose an agency based on their portfolio and history and consult them to narrow down the list of features - they can help you in thinking through the service you want to build both structurally and functionally. This way they will have a better understanding of your needs, and with this knowledge it will be easy to transform these ideas into an awesome product. With several years of experience and many successful projects behind our backs I am now confident that the developers at Cheppers truly understand what makes a web development process successful. Below I will walk you through the steps that are usually taken to prepare plans for a successful web project.

1. Project budget

Before you begin, you should decide how much money you want to spend on your website. There are three kinds of costs to consider in your plan:

  1. Preparation & planning costs, including cost of graphic designs.
  2. Development costs.
  3. Post-launch costs. Hosting, maintenance, support, development of new features and modifications on current functionality.

If you are not an expert, you probably won’t have a clue how to divide your budget between these, and no. 3 is a little bit hazy anyway because you just don’t know yet what kind of new features you might want after the launch, but it is still a good idea to try and come up with at least an estimate. Consultants take your available budget into consideration and tell you in advance what can be covered by it and what should be delayed or skipped in this phase. Furthermore they can suggest possible alternatives for certain features to make sure the whole project fits into your budget.

2. Planning

Think through and define at least these four things:

  • What is the purpose of the website or the service?
  • What is the goal you want to accomplish with your website?
  • Who is the target audience?
  • What is the main message?

If you are uncertain in these topics, it will be a lot more challenging to create the scope. Review your needs, get to know your competitors, and figure out what makes you different and better.

3. Functionality

Figure out and plan thoroughly what functions and features you need. E.g. if you need a webshop, go through the registration, purchase and payment process step-by-step, try not to miss anything.

4. Sitemap

Collect the typical pages of your website. In case of a webshop this would be the main page, the category pages, a product page, a search page, pages with static content (for company introduction, information about payment process, privacy policy etc.), and also the pages for the payment and checkout process. Once you have all of the pages in front of you, it is easy to create a sitemap to show page hierarchy.

Don’t forget - your website is not for yourself, but for your customers: they will be the users, so the structure should be logical to match their understanding - the main goal is not to match your own process. Remember, an external consultant can help you with this process as well.

plan a successful Drupal website

5. Design brief

To create an awesome website design that matches your concept, it is important to make the designer understand your thoughts and ideas. This is the point when you have to decide if you want a responsive website which also works on tablets and mobile phones as well. We call this ‘design brief’. It is also helpful if you can create a list of some websites that you really like, and especially if you can also put into words why you like them. The information above can be put together easily by yourself or with the help of a consultant. This will facilitate your potential partner’s task to provide you with an appropriate cost estimate. If the estimate oversteps your possibilities, you can still point to an acceptable budget and by reducing the functional requirements, the price can be reduced as well.

6. Wireframe

Once you have collected the information mentioned in the points above, the process of creating the website’s wireframes can finally start. This is built based on your requests and needs, to create a good overall user experience of your website. The wireframes contain each page element without an actual graphical design - this gives you an overview of the page layout and structure and how the different items and blocks will be displayed. It is a lot easier to implement modifications at this stage than when it is fully designed and developed, furthermore the functional and planning deficiencies can also be discovered easily in this phase, thus saving you time and money.

plan a successful Drupal website 2

7. Final specification

When the wireframes are finished and accepted, then the graphic design phase begins. This includes all final specifications, including all known and discovered details of the functionality and structure, as well as the design layout details. When all of this information is available, the developers can start working on estimating the amount of development hours needed to provide you with an accurate development cost estimate. Please note - no matter how you look at it, point 6 and 7 can be done only by professionals - so you need to be prepared to give them an assignment.

+1 What about if you want to re-do an already existing website?

A. Switch to Drupal

If the website is not created with Drupal, there is not much use in reusing the existing code. If you don’t want to implement large changes on the website design, then most of the previously mentioned viewpoints are available - thus the planning process is easier and quicker. If you want to migrate the content (so you don’t have to reupload the articles and products manually), a migration plan must be created as well.

B. If you already have a Drupal site

If your website is created in Drupal and you would like to extend it with new functionalities but there is no existing documentation of the current structure, then the new developers need to first review exactly what’s under the hood. In case of more complex systems this might take days. As a result, the site review we create is a report that includes all issues and concerns the developers found in the system. Sadly there are a lot of poorly built sites and systems that have unnecessary modules installed out there, and sometimes the code itself is not documented at all, thus it requires time to discover why and how a task was solved by the previous developer. It carries a great danger to work on a website without a proper site review, moreover it is not possible to estimate a job like this with 100% certainty. I hope this blogpost gave you a useful overview of the pre-development tasks.

If you feel like you have a good idea that you want realized, or an idea that should be developed, feel free to get in touch with us!

Related posts

Streamlining Drupal Development with AWS Services

Learn how AWS services like CodeCommit, CodeBuild, CodeDeploy, CodePipeline, Copilot, and CodeStar can help developers streamline their Drupal development workflows and deliver high-quality applications faster and more efficiently.

Improving Drupal Performance on AWS with ProxySQL and Amazon Aurora MySQL

Learn how to overcome Drupal's MySQL scalability issues on AWS and achieve horizontal scaling using ProxySQL and Amazon Aurora MySQL read replicas.