Mapping Item Dependencies Across ArcGIS Enterprise with Python and d3

01-09-2018 12:37 PM

Mapping Item Dependencies Across ArcGIS Enterprise with Python and d3

Authors: Seth Lewis, Ayan Mitra, Stephanie Deitrick

Presentation Title: Mapping Item Dependencies Across ArcGIS Enterprise with Python and d3

Organization: City of Tempe

Address: 20 E 6th St, 3rd Floor, Tempe, AZ 85821

Phone: 480-350-8781


Presenter Biography

Seth Lewis is the Enterprise GIS and Open Data Administrator for the City of Tempe. Ayan Mitra is a GIS developer and consultant with Geospatial Research & Solutions at Arizona State University.


Using the ArcGIS API for Python, ArcGIS REST API and the d3 Javascript library, the City of Tempe has developed a web application which tracks item dependencies from the webGIS level through ArcGIS Server and on to the enterprise geodatabase. In this presentation attendees will learn how the City of Tempe developed this innovative solution to dependency and change management and what insights may be gleaned by those organizations looking to map their enterprise's item dependencies.

How It Works

Using the ArcGIS API for Python and the ArcGIS REST API we generate an enterprise-wide inventory of all webmaps, ArcGIS Server REST services and enterprise geodatabase feature classes and tables. Then, using SQL, we create web services which expose those relationships via the browser for use in a custom web application.

The web application provides full text searching of the enterprise at any level. Selecting a webmap in the table will reveal not just the items which that webmap is relying on  (see below) but also a count of the number of web service and enterprise geodatabase layers used in the webmap. The extent of the selected webmap is also rendered using ESRI Leaflet.

Using the d3 Javascript library we build off of Mike Bostock's collapsible tree diagram to construct bi-directional graphs showing which REST services and geodatabase layers a given webmap depends on. In reverse we show which REST services and webmaps a given geodatabase layer is consumed in. This allows a user to estimate the possible impact of a change made at one level of the enterprise (e.g. a schema change may impact dozens of REST services and webmaps).


Here's a link to our slide deck: Google Slide Deck Link

This is amazing! Any chance it's going to make its way to Github?

This looks so useful. Please share!?

Seth, I'm also interested, if you could share!

Version history
Revision #:
1 of 1
Last update:
‎01-09-2018 12:37 PM
Updated by: