Open source critical asset management system to help with climate resilience

Many cities and states can identify at least a subset of their critical assets.  However, experience suggests that they may have one or more major omissions:

  • They may not fully have identified all the critical items (aka critical assets) which could affect their disaster resilience;
  • They may not fully understand the risk that each asset faces and how well placed it is to deal with that risk;
  • They may not understand how those assets are interconnected & the compound consequences that may result.

These omissions may lead to “failure chains” which can significantly weaken resilience, placing lives and livelihoods at risk.

The needs are to identify potential “failure nodes” within the network that could trigger failure chains and plan to mitigate the risks that these pose.

We set out to build a simple software tool that enables cities and states to:

  • Inventory their critical assets and assemble key data about them;
  • Identify the hazards to which each asset is exposed;
  • Map the relationships between assets, both spatial and dependency-based;
  • Identify potential “failure chains” between assets in different systems, and the risks involved;
  • Use this output in other tools – emergency control room systems for example, or risk analysis tools;
  • Prioritize and plan mitigation/investment programs.

The pilot has been launched with the Caribbean Island of Dominica. CAMS is helping them to improve their climate resilience by better understanding and mapping failure chains. 

Dominica was devastated by Hurricane Maria in 2017. The category five hurricane destroyed 90 percent of the Island’s structures and crops. Months after the storm much of the population had no power and the economy was struggling to get back to its feet. Dominica, no stranger to tropical storms having been the victim of major storms in 2010, 2013, and 2015, realized they were on the frontline of climate change and committed to increasing their resilience. 

The technology behind CAMS

Below is an overview of the technology used to build CAMS. The source code is available in the CAMS GitHub repository.

The database

CAMS is built on TerminusDB which is an open-source document graph database.

Fundamentally TerminusDB is a graph database, but the nodes of the graph are JSON documents. The schema language, based on a simple JSON syntax, enables you to automatically convert objects into a graph. This means you get the best of both worlds, the ease of developing with JSON with the complex modeling capabilities of knowledge graphs.

Schema-driven UI

TerminusDB automatically creates configurable document display and editing interfaces from the schema. The front end of CAMS has been developed using the TerminusDB document UI SDK. This allows for rapid prototype development.

The frontend

In addition to the TerminusDB UI SDK, the application has been built using the React JS library, and Leaflet, an open-source JavaScript library for interactive maps, together with mapviewer that is part of the SDK that enables you to layer documents onto a map.

Query

The underlying functionality to bring asset relationships to the forefront of CAMs is achieved using a datalog query language to concisely express complex patterns over arbitrary data structures and break any document down into a precise set of triples. These queries help CAMS users visualize their asset relationships to plan for and respond to extreme weather events.

Roadmap

Mobile application

The MVP includes a responsive website that works across devices. One fundamental feature that is next on the priority list is to develop a mobile application that has the ability to work offline. During disasters, connectivity cannot be guaranteed, so the ability for first responders to be able to use CAMS during a hurricane is paramount.

Automated alerts

As part of the MVP, contact owners and their contact details are stored within the database and made available to CAMS operators so they can manually contact them to warn of potential failures in the asset infrastructure that may impact them. To enhance this service, CAMS requires an automated messaging system via email and SMS to send messages to relevant asset owners impacted by impending hurricanes and other events.

Directed graph views based on D3

The CAMS team is in talks with various cities about adopting the application to improve their climate resilience. Cities, as you can imagine, have many assets in close proximity to one another. In order for operators to visualize connections between assets in environments where there is a significant density of assets and connections, the application should introduce the option to force a directed graph view based on the D3 visualization library.

Event Modeling 

Better understand the likely impacts of specific hazards on assets. Use past events to model how the impact is likely to occur in the future. 

A practical way to contribute to climate change mitigation 

CAMS is the only open-source climate resilience asset management system out there and is an exciting project involving lots of skilled people with varied technical backgrounds. The roots are grounded in doing good and providing value for free. If you’re interested, visit GitHub and get involved.

Table of Contents

Talk to the team
If you've got questions or want to be part of the TerminusDB community, come say hi on Discord.
Community