Georgia.gov website collage
Why Drupal was chosen: 

When 85 executive branch agencies and 1,400 state and local government entities depend on you for IT infrastructure and network services, efficient and cost effective flow of information is critical. Georgia Technology Authority (GTA) recognized that their expensive proprietary CMS would not provide a long-term enterprise content management solution and turned to Drupal to transition their websites’ current platform to a more flexible system.

GTA chose Drupal because it is cost effective and proven in the public sector as a secure and scalable content management system. GTA required a CMS that non-technical content administrators could easily use with the ability to manage content and diverse functionality at an enterprise scale. They recognized that Drupal had the unique capability to provide the power and flexibility to enforce consistency across all agencies while still providing unique functionality for each agency.

Describe the project (goals, requirements and outcome): 

Utilizing the OpenPublic Drupal distribution as a starting point, Phase2 and the GTA team devised a strategy to migrate, rebuild, redesign, and support the State of Georgia’s outdated content management system, and transform it into a single cohesive system. All 49 sites were completed on time and within budget. In addition, because of the user-friendly and intuitive qualities of the platform, 14 additional sites have been created independently by GTA content administrators.

Requirements:
Prior to building their new platform, GTA hosted more than 60 sites in Vignette 6 and 7 for the state's agencies. The number of stakeholders in the project was extremely high due to so many sites involved. Although the migration could be planned and executed, convincing the stakeholders to move their sites to the new platform required feature parity with the older systems, as well as new features to make the transition worthwhile for GTA agencies.

Ultimately, this meant that there were some specific platform requirements:

  • A single code base with multiple databases so that updates and new features could be easily distributed to sites that are unique
  • Features for security and role-based permissions to meet the State of Georgia's existing high standards
  • Google Search Appliance across all agency sites to provide integrated search results with platform and non-platform sites
  • Improved ease of use and reliability
  • More consistency in design and features, without compromising flexibility for agencies
  • New features to help agencies fulfill their communication goals needed to be included

Specific sites, such as Georgia.Gov and the Georgia Bureau of Investigation, required unique features to support use-cases specific to each agency’s mission and purpose. As the main portal for Georgia’s platform, Georgia.gov required a specific content type to catalogue all state agencies and counties. Georgia’s Bureau of Investigation publishes specific case information to the public with a custom interface for site visitors. This required building a new content type and a set of views to allow visitors to filter the information and find specific cases. In addition, this content needed to be discrete so that it could be deployed and enabled for only this particular site.

Open Public provides a solid foundation to build a Drupal platform, including a Features-based architecture. By setting up the codebase to heavily use the Features module, we were able to create a shared code repository that still allows for unique functionality for different agencies or use cases. As mentioned previously, the Georgia Bureau of Investigation uses a "Case" content type with some specialized views. To include this feature in the platform, the view and content type were wrapped up in a Features-based module distributed to all sites, but only enabled for the Bureau of Investigation sites. This pattern was repeated throughout the project to deliver targeted functionality on top of a single unified code base.

The platform includes infrastructure solutions that deliver not only important business values, but can also lower the cost of development and ownership for individual agencies. None of the use cases above are atypical for any governmental agency, but might be difficult for an individual agency to build or deploy by themselves. The shared code base ensures that even the smallest agencies get first class features.

site architecture diagram

One of our goals was to add some additional functionality to provide some incentive for agencies to go through the difficult migration process:

  • YouTube Video integration: Some agencies put video content on YouTube to help cross-promote it, but had to fall back on using embed codes and other things to place YouTube content on their sites. A new video content type combined with the Video Embed module made cross-listing video as easy as copying a URL. The result is that agencies can continue to use the popular video service, and still get a beautiful video gallery on their own site.
  • Photo Galleries: Photo Galleries are a common request and appear in several forms. We built a straightforward, easy-to-use gallery and some nice promotional features for individual photos in custom listings and spaces. A custom feature shows all photos uploaded to the site in a stream at the bottom of the main media page. This provides a gallery-like experience when adding photos to content.
  • Events: Previously, agencies were generally relying on iFrames to pull in Google calendars or similar. While this is still possible, the new platform has an Events content type with time and location information, and boxes and listings to promote upcoming events automatically for content creators. Given that most agencies have a steady, but modest stream of important events, this integrated calendar provides a perfect solution for publicizing events and making available a history of past events.
  • Webforms: We provided webforms and node embed to help agencies put forms anywhere on their site. This is slowly being used to replace many third-party web forms so that agencies can control their own data. In addition, we created a custom module “webform_deter “ to screen visitor submissions for patterns associated with personally identifiable information. This simple step makes it less likely that anonymous visitors might expose information that they do not need to when contacting state agencies. In addition, it integrates with the existing web forms so the existing data from third party web forms is now easily managed within the CMS with additional features.

Beyond empowering agencies and codifying some of the more advanced social-media engagement that agencies were using, the added functionality should make content creation easier. As a result, citizens of Georgia can expect information to flow more easily.

Migration:
As mentioned, the Georgia Technology Authority had 60 agency sites that needed to be migrated from a mix of Vignette 6 and 7, with some unique configurations in each. In order to accommodate the migration, a subset of the team, lead by our partners at MediaCurrent, began developing migration scripts using OpenPublic as the target destination. This allowed the team to begin working on the migration while information architecture and site building was underway for the GTA platform.

The benefits of having a working Drupal site to migrate content into so early in the project were numerous. Not only did it allow the migration team to build and test core Drupal migrations (menus, for instance), but it was an excellent way to check the information architecture against the content.

With the goal of avoiding as many unexpected issues as possible during the actual migrations, we incorporated a pre-validation round where content could be inspected, edited, and, if necessary, re-run on a development environment. The content editors completed pre-validation on the development environment, then turned the sites over to the GTA web team for pre-validation on a staging environment.

The final process involved a two-pass human check of all content, fixing many small errors in the original system, and a final content review by GTA and the agency in-house team. Throughout this process, all content received additional improvements as deemed necessary by the agencies. The result was that the human labor of a content audit could be distributed a bit more, and many menu and content updates were done directly in the new CMS prior to launch.

Beyond the technical migration script, the migration module (Migrate) was used to provide many useful features:

  • Tracking the URL of the original content for comparison
  • Creating a temporary checkbox to indicate migrated vs. original content in the new system
  • Creating robust logs for the migration of each individual node

A complete content survey of over 34,000 pieces of content is impossible, but a content audit combined with careful review of errors and unexpected data meant that nothing was lost in the transition to the new site.

Mobile and Design
Style Tiles, (a design tool created by Phase2 alum Samantha Warren) helped us quickly create eight separate themes without having to create full comps for each department’s site by giving agencies a set of “tiles” to choose from and make alterations to, instead of fully designed “comps” that would require multiple design iterations. The team developed a design system consisting of two compositions for each theme, with the front-end team using Style Tiles to style the sites. Providing GTA agencies with flexible designs to pick from saved a lot of time up front. These design strategies were essential to efficiently designing all of Georgia.gov’s 55 sites.

style tiles

The future of the GTA Platform can best be seen in the responsive, mobile-first, design of the new GeorgiaGov. The site is built on the same codebase as all agency sites, but has some additional features, and a design that leverages the underlying technologies more fully.

responsive

The GTA team set out to design a site that would be the "face" of the Georgia web presence and give citizens a web destination that could be reached from any device to get to any agency site or content. The result was a simple, elegant design that put search first and looks good on mobile to desktop clients. GeorgiaGov uses the one-box feature of the Google Search Appliance and some custom indexing in Drupal to provide type-ahead matching and search suggestions. Search results pages are divided up to show useful FAQ-like information as well as links to any agencies related to the search.

The overall implementation for mobile search consists of three pieces:

  • Custom search content type called "Popular Topics" that have indexed aliases and keywords based on search analytics
  • Auto-suggest powered by a custom Drupal index of the content weighting aliases and keywords to get fine tuned results
  • Google Search Appliance matching based on, among other things, metaphone matching to screen out differences in pluralization and spelling that might inhibit semantic matches

The result has been a dramatic decrease in the amount of searching necessary to find key content, and much more traffic direction to content on GeorgiaGov or to agency sites for specific questions. GTA's usability testing showed an overall decrease in search times by users as well as completion of common tasks like looking up information on driver's licenses and permits.

GeorgiaGov has become a destination site for quickly finding content from all agencies, and its responsive design makes it friendly for all types of devices. It is an example of taking a base platform and extending it for specific use cases. GeorgiaGov is also a great example of extending technologies for all related sites, including custom responsive design and tight integration with other web services such as Google Search to provide a better experience for site visitors.

This project was a team effort, the GTA web team took a very active role in the platform development, design and migration of sites. Their outstanding attention to detail was applied to every phase of the project, and is a large part of its success. Their team brought impressive design skill and strong testing to the project, along with an intimate knowledge of the needs of each website.

Hosting Service
Hosting for this project was provided by Acquia Cloud. Acquia Cloud was chosen as both a proven solution for security and performance, with an optimized environment for large scale Drupal sites and multi-site configurations.

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

Field collection:
Field Collections were used through the GTA project, namely to put structured information together into a group. This powered complex slides for rotators (each slide has images, links, and text), locations, and provided multiple file and link options when entering data (e.g., entering a node reference or a URL).

Formatter field:
Sometimes content types are used to provide content creators with different layouts or features for what is fundamentally the same data. This can work well or simplify content creation, but in some instances it's better to present one type of content with lots of display options. We used Formatter Field to build one content type and data structure for lists, but then gave content creators the options to switch between different options; such as alphabetical listings, FAQ listings and data tables.

Purge & Expire:
State Agency websites can serve up vital content that needs to be ready as soon as it's published. At the same time, they require a good caching strategy to provide a fast experience to site visitors. To ensure that the update is re-cached once content is published, the team used Purge and Expire. This way, the varnish cache is immediately cleared when content is added or updated. In addition, we wrote special rules for these modules to trigger cache clears for ancillary content.

Video Embed:
This module was used in conjunction with a new video content type, to give Georgia’s content administrators the ability to cross-list videos by merely copying a URL. This way all video footage on all agency sites will be displayed consistently on a beautiful video gallery.

OpenPublic:
The OpenPublic suite was used as the foundation of GTA’s platform. We implemented several of the base content types that were used across the platform. In addition, the standard functionality and standard security features that come with Open Public were heavily used across all agency sites.

Migrate:
Migrated Content Fields Attachment, Migrated Content Flag, and Migrate UI - These modules were all used to help manage the migrated content from Vignette to Drupal.

Context UI:
Used heavily for homepage customization.

Organizations involved: 
Community contributions: 
Project team: 

Team Members Involved:

Phase2 Technology:
Project Management:
Eric Johnson, Felicia Haynes, Nate Parsons, Mike Morris, Rich Tolocka
Development:
Chris Johnson, Rob Bates, Tirdad Chaharlengi, Felix Silberstein, Josh Caldwell
Design:
Dave Ruse, Samantha Warren
Content Migration/Analysis:
Shawn Mole, Dana Morris, Catharine McNally, Jeannette Miller, Danielle Miller, Tom Neff, Sharon Smith, Danielle Sheffler, Alex Ghareeb, Kyle Flanagan,

MediaCurrent:
Jeff Diecks
VP, Professional Services
James Rutherford
Lead Drupal Architect
Jay Callicott
Product Manager, Lead Architect

Acquia:
Jonathan Webb

Image of Georgia's Platform architecture
Homepage displayed on an ipad

Comments

Great case study. Covers a lot of common requirements that come up. I just wanted to add that the Link module allows you to use an internal URL. When coupled with the LinkIt module you can add auto-completion / node lookup to your link fields. This would eliminate the need for two separate fields (or three + an additional entity if you include the field collection item).

The theme is so nice and simple. One of the main points i should mention about this theme is attracting user to follow thew internal links of site. I mean when a users enters website, he feels he entered a friendly website and likes to spend time on website. Also the font is beautiful. Can you please tell the name of used font? Is it custom?

Doubt is the father of invention..... Hubmesh | download converter

Awesome design. The template is beautiful
However 60+ sites with a single codebase and multiple databases? Happy that you guys implemented it. I see the sites are used with some heavy modules. I see purge and expire modules are effectively used for caching purposes.
The site search implementation is awesome

--
I am a PHP programmer. moving to become drupal programmer

The site has a clean and simple design. The navigation is excellent; going from one internal page to another to find information is very easy. Cheers!

Dupal is great though i am newbie i got to know about drupal this is really awesome.