Promet Source met with SFWMD to discuss the client’s vision for their site, and see what potential features needed be included.
In order to help SFWMD schedule budgeting and management needs for the project, Promet Source took a phased approach to the project, and set phases and milestones so that both parties could keep track of the project progression.
To help with identifying which pages were visited most on the previous site, Google Analytics data from the old site was analyzed. This showed that permits, current weather, and water data pages were highly visited, and should receive close attention when it came to design, navigation, and functionality. It also confirmed that mobile devices were running into problems when using the site.
Promet Source also analyzed the old site and asked the client to fill out a survey about web design trends they like and dislike, to see what direction they wanted to take the design.
Enhanced Content Management
Content is a driving force for this particular site, with many pages, documents, and media being added or updated on a regular basis by the SFWMD staff. This meant enhanced tools for managing content and editorial workflows were needed so that content could be added and managed in a nuanced way.
Because SFWMD is a government site, it also needed to adhere to Section 508 of the Rehabilitation Act. Section 508 sets forth standards for users with disabilities who may be accessing the site with a screen reader or other assistive technology. This needed to be taken into consideration in the design phase, as well as the training phase so SFWMD staff know how to continue to adhere to these standards as new content is added.
SFWMD also wanted to minimize the usage of custom modules and code, so a decision was made to utilize existing Drupal 8 modules and code whenever possible, instead of developing or depending upon custom modules.
Speed and Reliability
Lastly, site speed and reliability needed improvement. Drupal 8 can be configured to maximise efficiency, but consideration of the site’s traffic and the choice of web host played a factor in decision-making as well.
Recommended Development Environment
To ensure development went smoothly, Promet Source used Acquia’s recommended development environments, and version control system workflow. This meant separate development (dev), staging (stage), and production (prod) servers, and the usage of Git to control code revisions and enable easy rollbacks if any committed code causes problems.
In Git, individual branches were also used to develop and test new code and updates before they are merged into the main codebase.
Technical Solution & Modules Used
Below is a selection of solutions and modules used in this project, and notes on why they were chosen for inclusion.
Solutions and Modules for Site Administration
SFWMD’s non-IT staff members were involved in keeping the site updated, and new content would be added regularly, their Drupal 8 site needed to be easy to use.
In order to facilitate this, Promet Source selected Acquia Lighting as the Drupal 8 distribution, because it comes with a selection of proven modules to help manage editorial workflows like the ones SFWMD wished to implement. Using a vetted Drupal 8 distribution removes the possibility that two modules in it might not work well together, and cuts down on development time as individual modules don’t have to be discovered and vetted.
Another benefit is Acquia’s positions as a longstanding member of the Drupal community. This means Acquia Lightning will continue to be maintained, which will benefit SFWMD in the long term as updates will continue to be made available even as the site ages.
Acquia Lightning Modules
Workbench Moderation is one useful module included in Acquia Lightning. It helps implement an editorial workflow for content, so it can be approved by a specific person before going live on the website. This will allow SFWMD to make sure no unapproved content ends up on their site.
The Diff module allows users with sufficient permissions to view different versions of content side-by-side to view changes. This saves time when approving content.
Panels, Page Manager, and Panelizer help Drupal site builders make custom layouts for pages.
Scheduled Updates allows content creators to unpublish content (and make other changes) on a predetermined time and date.
The Video Embed Field module allows embedding videos into content by using a YouTube or Vimeo url. Content creators won’t have to upload the video file directly to their Drupal instance.
All of these Acquia Lightning modules together make a very editor-friendly Drupal backend.
In addition to the modules included with Acquia Lightning, Promet Source selected a few others to help with day-to-day administration of SFWMD’s Drupal 8 site.
Views is now a core module in Drupal 8, but it was used heavily with this site to construct an Events calendar for the site, as well as display governing board member lists and other board-related pages.
The Google Analytics module was installed to understand the needs of visitors to the new site.
Solutions and Modules for Site Functionality
These modules and services help provide functionality that impacts site visitors, that that they use when interacting with the SFWMD site.
Apache Solr Search was selected by Promet Source to handle search requests. Because SFWMD has so much content, some of it in documents or PDFs, a more robust search solution than Drupal’s default was needed. Solr is able to efficiently search through a vast amount of data quickly and return relevant results.
Acquia Cloud was selected as the hosting solution to ensure site responsiveness even if it comes under heavy load. Because Acquia specializes in Drupal, they are also better-equipped to deal with any uniquely-Drupal issues that might arise.
Promet Source used Acquia BLT to help with the development process.
BLT prevents developers from committing invalid code, comes with unit tests, libraries, and configuration to get automated testing working quickly. It also syncs local development with other development environments, and helps manage dependencies to produce a production-safe build.