Sector(s)
Team Members
Project Team
Mike Redman – Project Manager
Jason Murray – DevOps/Drupal Developer
Robert Ashley – Drupal Developer
Joshua Lilly – User Experience Designer
Visit the site
Visit the siteOrganizations Involved
Community contributions
Simple Interactive Maps
Mobomo modernized USGS Store, optimized the user experience, and transitioned the site to a cloud computing solution.
Goals: USGS Store serves as an E-Commerce platform within the Department of Interior that sells maps, recreational passes, educational products, and thousands more products. In compliance with the federal CIO’s requirements to implement a “Cloud First policy” regarding IT services and applications, USGS Store wanted to upgrade to a cloud computing solution while also increasing its operational efficiencies, reliability, and accessibility. USGS Store’s established site operated on SAP, with over one thousand reseller business partners, over thirty-three thousand general public customers, over two hundred and sixty thousand products, and over $3M in sales. They sought a solution to modernize their site, enhance their customers’ experience, and increase site efficiency.
Requirements: Building site reliability into USGS Store, our DevOps, technical architects, and engineers designed and developed systems for USGS Store that are scalable, resilient, and self-healing. We built confidentiality, integrity, and availability into the new site. We identified during Discovery that moving to a containerized solution would be beneficial, as USGS Store was using an aging virtual machine environment that resulted in excess cloud resources and a cumbersome deployment process that hindered iteration and patching processes. Additionally, while modernization and efficiencies were a primary focus, the existing map locator tool was a pain point for USGS stakeholders and end users, so we added the redesign of this tool to the project scope.
Outcomes: As USGS Store is an established e-commerce site with a vast customer, product, and vendor catalog, our team determined it was more cost effective to migrate the site to Drupal, retain the catalog in SAP, and transfer the backend to AWS EKS and other services provided by CHS. Utilizing best practices from the U.S. Digital Services Playbook and cloud service providers including Cloud Architecture Frameworks and the Twelve-Factor App Methodology, our team structured our approach from an “Everything-as-Code” and Infrastructure-as-Code (IaC) mindset with key tools for each sprint iteration of the CI/CD cycle. Dev and staging vulnerability patching occur frequently, providing adequate time to perform testing/validation of application performance/stability prior to patching production while maintaining compliance with scanning results. All infrastructure changes are performed within the dev environment and are vetted prior to being promoted to upstream environments.
We supported the platform by creating a web interface that would be easy to use and manage during inventory turns (add, edit, delete USGS products), EAN/ISBN product numbers that would be associated, searchable, and reportable, multiple picture capabilities, URLs for accessing free digital product downloads, compatibility/accessibility to third party vendor orders (fulfillment, status, tracking, etc.), configuration of billing options, comprehensive reporting status (including trend analysis) and inventory management, capacity to host over two hundred and fifty thousand products/sell over thirty thousand products monthly/accommodate spikes in sales. The architecture we developed for USGS Store was tested in November of 2022 with a large traffic surge when the Department of Interior announced free lifetime passes for all veterans and gold star families – during which time, the site performed without any downtime or service degradation.
By migrating to a completely containerized solution sitting atop AWS, Elastic Kubernetes Service (EKS), and other cloud hosting services, we were able to reduce their cloud costs by 30%, reduce virtual machine usage by 50%, and decrease the mean time to respond with application releases by 95%. Furthermore, deployments and changes to the application are now performed in one to two minutes (down from thirty to forty minutes) and server upgrades and patches (in an automated AWS maintenance window and/or through manual patching) are performed in real-time with zero effect on the end user experience.
As mentioned previously, develop a modernized, fully functional tool, capable of using a map feature to zoom into a specific GIS location and translating that selection into printable/salable maps.
Drupal was chosen for its ability to be customized. The USGS Store utilizes SAP for their back-office ERP system. During our assessment there were no modern enterprise CMS’s with an existing integration for SAP. Therefore Drupal was chosen because it provided all the other required features and allowed us to write our own custom SAP integration.
The SAP Integration was developed as a set of API calls to allow for a close-knit integration with SAP. This workflow supports SSO with SAP, passing of order and customer data from Drupal to SAP, and allowing SAP to handle customer master and payment data. The API is being expanded to allow for greater functionality within the E-Commerce Store including management of inventory, customers, and historical transactions.
Technical Specifications
Drupal version:
Theme was custom developed to match USWDS standards and allow for look and feel requested by the USGS Store team.
27 Custom Modules developed primarily around supporting integrations with: SAP, ElasticSearch, SheerID Identity Verification. Additional functionality created with a custom login page, and customizations to the Drupal Commerce workflow.