Strategies for Integrating Utility System Operational Data into ArcGIS Server Applications

1,977 views
1,799 views

Published on

An overview of simple techniques for bringing non-spatial business data into ArcGIS Server applications.

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,977
On SlideShare
0
From Embeds
0
Number of Embeds
8
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Strategies for Integrating Utility System Operational Data into ArcGIS Server Applications

  1. 1. Strategies for Integrating Utility System Operational Data into ArcGIS Server ApplicationsDavid SpeightTrue North Geographic TechnologiesSCARC 2011 – Columbia, SC <br />
  2. 2. Introductions<br /><ul><li>True North
  3. 3. Esri Gold Partner
  4. 4. BP of the Year 2010 for Southeast Region
  5. 5. Located in Murfreesboro, TN
  6. 6. Business Partner with Azteca, Microsoft
  7. 7. Me
  8. 8. Electric distribution utility background
  9. 9. 18+ yrs experience with ESRI/Esri
  10. 10. IT manager for water utility
  11. 11. Electric, water/ww, gas, public works</li></li></ul><li>Overview<br /><ul><li>Target Audience
  12. 12. Utility/public works GIS users
  13. 13. ArcGIS Server users
  14. 14. Web API users
  15. 15. Flex Viewer, Resource Center templates, Sharepoint Web Parts
  16. 16. Developers and non-developers
  17. 17. Outline
  18. 18. Definitions
  19. 19. Considerations
  20. 20. Strategies
  21. 21. Scenarios*
  22. 22. Questions</li></li></ul><li>Disclaimers<br /><ul><li>Covering technical strategies…..no politics
  23. 23. Most examples are Flex/Flex Viewer, but applicable to all web APIs
  24. 24. Assuming some experience with ArcGIS Server – publishing services, customizing templates
  25. 25. Quick look at a few coding and non-coding options.</li></li></ul><li>What is “Operational Data” ??<br /><ul><li>Esri Best Practices
  26. 26. Base layers
  27. 27. Background data…i.e. street, topo, imagery
  28. 28. Cached for performance
  29. 29. Operational layers
  30. 30. Frequently edited/changed…i.e. infrastructure, inspections, work activity
  31. 31. Dynamic</li></ul>ArcGIS Server in Practice Series: ArcGIS Server Web Mapping Application for Municipal/Local Govt.<br />http://downloads2.esri.com/support/whitepapers/other_/ArGISWebMapMuni_LocalGovt.pdf<br />
  32. 32. What is “Operational Data” ??<br /><ul><li>Today’s Definition
  33. 33. “Stuff that doesn’t normally live in your geodatabase”
  34. 34. CIS – billing transactions, account activities, consumption data
  35. 35. AVL – current and historical vehicle locations
  36. 36. SCADA – system status, performance, and load
  37. 37. Document Management
  38. 38. Work Management – work history, costs, asset conditions, performance reporting, inspections
  39. 39. Security – camera feeds, facility access
  40. 40. Financial systems</li></li></ul><li>Why Operational Data?<br />“Due to the shifts towards collaboration, transparency of operations and data quality, MSD’s productivity in key areas has definitely improved….Previously silo-oriented employees are coming together to discuss how data should flow between them and willingly changing processesto accommodate this new approach.”<br />“An amazing result to experience was the monitoring of a large wet weather event through our system using the real-time Flow Monitor graphs on the MSD Flex Viewer. ….. Besides the ability to watch this information in real-time in a geospatial visual format, the resulting discussions were unique in that many more eyes and therefore perspectives were brought to the table to discuss issues and opportunities based on the event than ever were captured before.”<br />Kathryn Brewer<br />Metropolitan Sewer District of Buncombe County, NC<br />
  41. 41. Start by Asking Questions<br /><ul><li>Understand your operational data
  42. 42. “Where does this data live?”
  43. 43. “How often does it change?”
  44. 44. “How big is it?”
  45. 45. “Is it inherently spatial? If not, can we make it spatial?” a.k.a “Does it have geometry?”
  46. 46. Understand the end user
  47. 47. “How do we want to present this? How will the user interact with the data?”
  48. 48. “Where will the end user be? Office? Field?”
  49. 49. “What is the expectation for update frequency?”
  50. 50. Consider the technical implications</li></li></ul><li>Know Your Toolbox<br /><ul><li>Operating System
  51. 51. Task scheduling
  52. 52. Web server
  53. 53. ArcGIS Server (assumed)
  54. 54. Publish services
  55. 55. Run GP scripts
  56. 56. Enterprise geodatabase (assumed)
  57. 57. DB job scheduling
  58. 58. Spatial data types?
  59. 59. Tools for data import/export
  60. 60. XML </li></li></ul><li>Know Your Toolbox (cont.)<br /><ul><li>Target application
  61. 61. Flex Viewer
  62. 62. Silverlight Viewer (coming soon)
  63. 63. ArcGIS Explorer Online
  64. 64. ArcGIS for Sharepoint
  65. 65. Others……
  66. 66. Development environment?</li></li></ul><li>Common Steps<br />Locate/query/filter the source data to be integrated<br />Add geometry and redefine /create attributes<br />Create output data for the app<br />Appearance & behavior<br />
  67. 67. Define<br />Common Steps (cont.)<br /><ul><li>Business Databases
  68. 68. How do we connect?
  69. 69. What tables, columns do we need?
  70. 70. How do we acquire geometry?
  71. 71. Geocode?
  72. 72. Relate to geodatabase feature?
  73. 73. How does this data change?
  74. 74. How much data is there?
  75. 75. Business Documents
  76. 76. Business Applications</li></li></ul><li>Common Steps (cont.)<br /><ul><li>Crunch the data
  77. 77. Add geometry if needed
  78. 78. Existing XY
  79. 79. Geocode
  80. 80. Look up from existing GDB features
  81. 81. Geoprocessing
  82. 82. Calculate new attributes
  83. 83. Push into output format
  84. 84. Spatial data types are handy</li></ul>Transform<br />
  85. 85. Common Steps (cont.)<br /><ul><li>Create output that will be consumed by the application
  86. 86. Published feature class in a map service
  87. 87. GeoRSS feed
  88. 88. Custom XML feed
  89. 89. Web service with XML or JSON response</li></ul>Publish<br />
  90. 90. Common Steps (cont.)<br /><ul><li>Hook the output up to the app and define behavior
  91. 91. Symbology
  92. 92. Standard cartography
  93. 93. Custom graphics
  94. 94. Heat map
  95. 95. Clustering
  96. 96. Refresh rate
  97. 97. Transparency
  98. 98. Custom coding</li></ul>Present<br />
  99. 99. Define<br />Common Steps (cont.)<br />Transform<br />Sometimes the steps happen differently…<br />Publish<br />Present<br />
  100. 100. Scenarios<br />Configuration<br />Push data into db table and publish as XY events<br />Push data into GDB feature class<br />Export custom XML feeds<br />Build .NET web service <br />Customization<br />
  101. 101. Scenario #1 - Outage Management Data<br /><ul><li>User
  102. 102. Electric cooperative
  103. 103. Telvent Outage Management
  104. 104. GIS Environment
  105. 105. ArcGIS Desktop 9.3.1
  106. 106. ArcGIS Server 9.3.1
  107. 107. SQL Server 2005
  108. 108. Needs
  109. 109. Display active events from SQL tables in outage management database in Flex widget</li></li></ul><li>Scenario #1 - Outage Management Data<br />
  110. 110. Scenario #1 - Outage Management Data<br />LiveLayer Widget (Flex Sample Viewer)<br />Query Widget (Flex Viewer)<br />
  111. 111. Scenario #2 - Work Management Data<br /><ul><li>User
  112. 112. Municipal public works department
  113. 113. Stormwater, wastewater, streets, traffic, trash
  114. 114. Cityworks MMS
  115. 115. GIS Environment
  116. 116. ArcGIS Desktop 9.3.1/10
  117. 117. ArcGIS Server 10
  118. 118. SQL Server 2008
  119. 119. Needs
  120. 120. Managers need to view active and historical work history in a web-based dashboard (no desktop software)
  121. 121. Service Requests
  122. 122. Work Orders</li></li></ul><li>Scenario #2 - Work Management Data<br /><ul><li>Considerations
  123. 123. Cityworks work tables have existing XY values from geocoding
  124. 124. Want maximum flexibility to use data in multiple clients
  125. 125. Dataset is large (500K+ points in one table) – too big for XY layer?
  126. 126. Want to update incrementally throughout the workday
  127. 127. Have full control over the structure of the transformed dataset
  128. 128. Approach
  129. 129. Create a geodatabase using SQL geometry instead of native SDE geometry
  130. 130. Create feature classes in the geodatabase for service request and work orders
  131. 131. Use T-SQL to write stored procedures to update the geodatabase feature classes from the source Cityworks tables
  132. 132. Schedule stored procedure to run throughout the day to update the geodatabase – KEEP FEATURES AS NON-VERSIONED
  133. 133. Faster than using a GP script – stay at the DB level</li></li></ul><li>Scenario #2 - Work Management Data<br />
  134. 134. Scenario #2 - Work Management Data<br />Flex Sample Viewer / LiveLayer Widget<br />
  135. 135. Scenario #2 - Work Management Data<br />ArcGIS for Sharepoint / ArcGIS Explorer Online<br />
  136. 136. Scenario #3 – AVL Data<br /><ul><li>User
  137. 137. Water utility district
  138. 138. Radio-based vehicle tracking system
  139. 139. GIS Environment
  140. 140. ArcGIS Desktop 9.3.1
  141. 141. ArcGIS Server 9.3.1
  142. 142. SQL Server 2005
  143. 143. Needs
  144. 144. Supervisors and field technicians need to be able to see locations of crews and other techs
  145. 145. Need to filter vehicles by group</li></li></ul><li>Scenario #3 – AVL Data<br /><ul><li>Considerations
  146. 146. Both field and office accessing web application
  147. 147. Keep app security simple
  148. 148. Need frequent updates (every minute)
  149. 149. AVL data in existing SQL Server database, but coordinates are WGS84, not State Plane
  150. 150. Approach
  151. 151. Create SQL stored procedure to transform & output current AVL records as XML dataset
  152. 152. Schedule task to execute stored procedure and write the XML file to a web-accessible location
  153. 153. Create custom Flex widget to read XML and refresh at user-defined interval</li></li></ul><li>Scenario #3 – AVL Data<br />Custom Flex Widget (similar to GeoRSS Widget)<br />
  154. 154. Scenario #4 – Customer Information Data<br /><ul><li>User
  155. 155. Electric cooperative
  156. 156. SAP CIS
  157. 157. GIS Environment
  158. 158. ArcGIS Desktop 9.3.1
  159. 159. ArcGIS Server 9.3.1
  160. 160. SQL Server 2005
  161. 161. Needs
  162. 162. Need to be able to search customer tables from SAP, provide a list of results, and map customer locations</li></li></ul><li>Scenario #4 – Customer Information Data<br /><ul><li>Considerations
  163. 163. Need to be able to search against multiple attributes
  164. 164. Complex multi-table join to navigate from customer record to actual GDB feature in order to find geometry
  165. 165. Multi-step process
  166. 166. Approach
  167. 167. Create a .NET web service that can be called from Flex
  168. 168. Method to search SAP tables
  169. 169. Method to navigate tables to find geometry from GDB feature
  170. 170. Custom Flex widget</li></li></ul><li>Scenario #4 – Customer Information Data<br />
  171. 171. Scenario #4 – Customer Information Data<br />Custom Web Service / Custom Flex Widget<br />
  172. 172. Wrap-up<br /><ul><li>Many ways to get data from A to B….use what you know
  173. 173. Maximize out-of-the-box functionality
  174. 174. Look at Esri Resource Center templates for ideas/examples of how to use widgets (Infrastructure Group & Public Safety Group)</li></li></ul><li>Questions/Info<br />http://www.slideshare.net/tngeo<br />dspeight@tngeo.com<br />

×