DAFWA Homepage

The Department of Agriculture & Food (DAFWA) provides support to Western Australia’s agrifood businesses through services and partnerships.

Like a lot of organisations and businesses, their website is the primary channel for communication and reference. The website therefore aims to provide comprehensive information about DAFWA and its services including research and scientific data, programs and partnerships, applications and tools, state legislative materials and laboratory services.

The previous website was built in 2006 and suffered a number of issues including being difficult to navigate and search, outdated content that was poorly presented, lack of support for modern browsers and devices (mobile), non-compliance with WCAG Accessibility standards and from the staff perspective, difficult to publish and maintain.

Why Drupal was chosen: 

The department reviewed a range of different products including Wordpress, Joomla, Umbraco and DotNetNuke. Ultimately they settled on Drupal due to the following reasons:

  • non-vendor lock-in license (GPL)
  • out of box support for web and accessibility standards
  • strong security and granular user permissions system
  • ability to be customised and extended whilst remaining on the upgrade path
  • ability to integrate easily with third party systems
  • usage by other Western Australia state departments including the Public Sector Commission and WA Museum.
  • flexibility to mass migrate content from other systems automatically
  • easy to acquire and maintain underlying software stack (Linux, Apache, MySQL, PHP)
Describe the project (goals, requirements and outcome): 

In October 2012, the DAFWA Gateway project commenced with the following goals:

  • to design and develop a website platform using Drupal that suited the Departments requirements for content types, content publishing workflow, and 3rd party integrations,
  • to design a look and feel that was consistent with Corporate Branding requirements, compliant with Western Australian Government Framework guidelines and met Web Content Accessibility Guidelines (WCAG) 2.0.
  • setup server infrastructure to support Drupal and it’s technology stack.
  • train existing technical staff in Drupal so that they may take over when the project is completed.

Please see the "Why these modules chosen" section below on the technical details of the Drupal implementation.

In early 2013, a separate project commenced which involved auditing and prioritising all the content from the old website. Training of all staff to perform data entry tasks into Drupal and content publishing workflow was also conducted.

In January 2014 the Drupal website went live and the project team was extended to work on implementing the Departments intranet using Drupal yet again (perhaps another case study will be submit to d.o shortly!).

For the month of February 2014, the number of visits increased by almost 50%, and the number of pages per visit and time spent on the site almost doubled.

Modules/Themes/Distributions
Why these modules/theme/distribution were chosen: 

Multi-category - Taxonomy & Menus

The new website's primary goal was to be easy to navigate and search. Drupal's core Taxonomy system was a staple for meeting this requirement, allowing a multi level hierarchy, content to be associated with multiple relevant terms, and to be used in Search Filters as well as landing pages. The websites main vocabulary "Topic" covers the main subject area's of DAFWA, and you'll recognise this in the topical areas of the mega menu navigation. The menu also has a section of curated content and links under "Tools & Services" and "About us", which was separated from Taxonomy in the IA.

Landing pages - Search API

The topic landing pages were built using Search API (Solr) with Views and Facets API. This allowed users to filter down by other topics or search, without having to leave the landing page. See example landing pages: Wheat, Beef Cattle and Diseases. We used Search API over ApacheSolr due to the ability to easily create Facets search filters and its integration with Views.

Microsites - Organic Groups

We also needed the ability to have microsites for things like programs, projects, initiatives and partnerships. For this requirement we used the Organic Groups module so that each microsite could have its own custom managed menu, logo and custom sidebars. You can see an example of this on the MyCrop microsite.

Multipage content - Smart Pager

Some of the DAFWA content items (nodes) were potentially very length in the number of pages they contained, e.g. research papers or annual reports. To allow this sort of content to be easier to maintain we used the Smart Pager module so that all the pages of these papers and reports could reside in the one Drupal node. A custom module was also written to generate a table of contents automatically. You can see an example here: Crop Diseases: forcast and management.

Content Publishing Workflow - Workbench

The content publishing workflow needed to support the ability for all staff to create content, Project Managers to review content, and Corporate Communications to approve and publish content. Further more these roles were separated within the department by branch. These two requirements lent themselves to the Workbench Moderation and Workbench Access modules respectively. Some custom developed code was written to improve the usability of the workflow notices and forms, support for email and toolbar notifications and workflow checklists.

Theme & Layout - Zen, Panels, Panelizer, Display Suite

We used Zen as a base theme because of the flexible Zen Grids layout system, out of box responsive features and SCSS support. We also created the majority of our graphics in SVG format to support high DPI screens such as retina displays. On the Drupal side, we used Panels and Panelizer for controlling and customising the landing page and node layouts, and Display Suite for customising node view modes.

Personalisation - Homebox

A lot of work also went into the Dashboard that users can customise (like d.o) to display calendars, articles of interest or weather stations. This was built using a number of custom modules and the homebox module.

Third Party Integrations

A large part of the project also involved integrating with existing third party systems. Thanks to to the existing Drupal LDAP module, integrating with Active Directory was fairly straight forward. We had a lot of struggles trying to get Single Sign On working (being Linux to Windows) but achieved this after a lot of experimentation using the apache mod_kerberos extension.

DAFWA also uses the proprietary DMS solution - Objective. Documents can be created in Objective and once approved, can be flagged for use by the external website. Through the Objective Webtalk API we can capture these flagged documents and pull their meta data and data across for usage on the website.

Migration

A number of existing websites existed in DAFWA already. Most of the content of these had to be re-written but we were still able to write some Migrate module profiles to pull these across and mark them as drafts. The beauty of the Migrate module was that we could re-migrate these again and again whilst development was occurring.

Development workflow and tools

Drupal development work was exported to code using Features and Strongarm. A separate feature existed for each content type and included all components related to that content type such as views for listings, fields, panels and any custom code.

Like most development workflows these days, all developers and designers had their own LAMP or WAMP stack on their own machine. Each time a developer committed and pushed, the git post commit hook would trigger Jenkins to deploy changes to our central development environment where non-developers could review and test new features. Developers optionally worked on their own branch, but to have changes show up in the central development environment, the work had to be merged into "develop" following the well known branching model from nvie.com.

Project team: 

The technical team consisted of:

As well as develop the website, we were also tasked with training up existing permanent technical staff to eventually take over maintenance of the website. The services of Chris Skene of PreviousNext were also employed to assist in the technical training phase.

Screenshot of landing page