Web Map: Trials & Tribulations for Small-Shops Provisioning - Presented by: Rob Grant, GIS Supervisor and Mike Buller, GIS Developer/Analyst April ...

Page created by Dwayne Harris
 
CONTINUE READING
Web Map: Trials & Tribulations for Small-Shops Provisioning - Presented by: Rob Grant, GIS Supervisor and Mike Buller, GIS Developer/Analyst April ...
Web Map: Trials & Tribulations for
Small-Shops Provisioning
Presented by:
Rob Grant, GIS Supervisor and Mike Buller, GIS Developer/Analyst
April 17, 2018
Web Map: Trials & Tribulations for Small-Shops Provisioning - Presented by: Rob Grant, GIS Supervisor and Mike Buller, GIS Developer/Analyst April ...
Web Map: Install-Configure-Play

  Presented by:
  Rob Grant, GIS Supervisor
  Mike Buller, GIS Developer/Analyst

April 17, 2018
Web Map: Trials & Tribulations for Small-Shops Provisioning - Presented by: Rob Grant, GIS Supervisor and Mike Buller, GIS Developer/Analyst April ...
Agenda

  The CVRD and its web map history.

  Organizational structure.

  Challenges and how we solved them.

  What does the future hold?

April 17, 2018
Web Map: Trials & Tribulations for Small-Shops Provisioning - Presented by: Rob Grant, GIS Supervisor and Mike Buller, GIS Developer/Analyst April ...
Web Map: Trials & Tribulations for Small-Shops Provisioning - Presented by: Rob Grant, GIS Supervisor and Mike Buller, GIS Developer/Analyst April ...
Board of Directors                   Brian Carruthers
                                               Chief Administrative Officer

                                                                                 Allison Nelson
                                                                               Executive Assistant

             Mark Kueber                   Hamid Hatami                              Ross Blackwell                   John Elzinga
          General Manager                 General Manager                          General Manager                  General Manager
      Corporate Services            Engineering Services                        Land Use Services                Community Services
         Department                     Department                                 Department                       Department

•    Finance                      • Asset Management                         • Community & Regional          •   Public Safety
•    Human Resources              • Capital Projects                           Planning                      •   Facilities & Transit
•    Information Technology         Management                               • Development Services          •   Arts & Culture
•    Legislative Services         • Environmental Services                   • Economic Development          •   Cowichan Lake Recreation
•    Procurement                  • Recycling & Waste                        • Building Inspection & Bylaw   •   Island Savings Centre
                                    Management                                 Enforcement                   •   South Cowichan
                                  • Water Management                         • Parks & Trails                    Recreation

    April 17, 2018
2007
                         2008
                         2009

10 years in the making
                         2010
                         2011
                                                   Silverlight and HTML5

                         2012
                                                                           Latitude Geographics Hosted

                         2013
                         2014

                                  Latitude Geographics Hosted
                         2015

                                        Planning for in-house
                                                                                                         Brief History

                                 ELA for Geocortex Essentials
                         2016

                                Migrate web map from Latitude

                                  Geocortex Essentials - 3 sites
                         2017

                                       ArcGIS Online – 1 site

                                Geocortex Essentials - 3 sites

                                      ArcGIS Online – 2 sites
                         2018

                                D e v e l o p i n g Ta r g e t e d W e b M a p s
Problems to be Overcome

   • Historical CVRD GIS person skill set: lots of GIS analyst
     experience; some IT experience; little to no
     programming/development experience.

   • Messy architecture somewhat a result of “let’s throw it
     against the wall and see what sticks”.

April 17, 2018
Learning Outcomes

  • Be creative but methodical when troubleshooting.

April 17, 2018
Learning Outcomes

  • Be creative but methodical when troubleshooting.
  • Keep your environments organized and “clean”.

April 17, 2018
Learning Outcomes

  • Be creative but methodical when troubleshooting.
  • Keep your environments organized and “clean”.
  • IT support and knowledge required…whether from co-
    workers or yourselves.

April 17, 2018
Starting Environment
                              The world-at-large (the internet).
maps.cvrd.bc.ca (port 6443)                   ISP                  geocortex.cvrd.bc.ca (port 5050)

    April 17, 2018
Starting Environment
                              The world-at-large (the internet).
maps.cvrd.bc.ca (port 6443)                   ISP                  geocortex.cvrd.bc.ca (port 5050)

                                                                                  • CVRDWEB

                                                                                  • Hosts multiple websites
                                                                                    on multiple ports (not
                                                                                    GIS-specific). IIS.
                                                                                  • Hosts Geocortex
                                                                                    Core/Essentials.
                                                                                  • Hosts multiple
                                                                                    instances of Geocortex
                                                                                    HTML5 Viewer.
                                                                                  • Production &
                                                                                    development sites.

    April 17, 2018
Starting Environment
                                        The world-at-large (the internet).
          maps.cvrd.bc.ca (port 6443)                   ISP                  geocortex.cvrd.bc.ca (port 5050)

• CVRDMAP                                                                                   • CVRDWEB

• ArcGIS Server.                                                                            • Hosts multiple websites
• IIS.                                                                                        on multiple ports (not
• No SDE connections.                                                                         GIS-specific). IIS.
• Some FGDB copied to                                                                       • Hosts Geocortex
  server.                                                                                     Core/Essentials.
• Some FGDB on                                                                              • Hosts multiple
  network share.                                                                              instances of Geocortex
• Also hosted a                                                                               HTML5 Viewer.
  development SQL                                                                           • Production &
  Server instance.                                                                            development sites.

              April 17, 2018
Starting Environment
                                        The world-at-large (the internet).
          maps.cvrd.bc.ca (port 6443)                   ISP                  geocortex.cvrd.bc.ca (port 5050)

• CVRDMAP                                                                                   • CVRDWEB

• ArcGIS Server.                                                                            • Hosts multiple websites
• IIS.                                                                                        on multiple ports (not
• No SDE connections.                                                                         GIS-specific). IIS.
• Some FGDB copied to                                                                       • Hosts Geocortex
  server.                                                                                     Core/Essentials.
• Some FGDB on                                                                              • Hosts multiple
  network share.                        • CVRDSQL                                             instances of Geocortex
• Also hosted a                                                                               HTML5 Viewer.
  development SQL                       • SQL Server.                                       • Production &
  Server instance.                      • ArcGIS concurrent                                   development sites.
                                          license server.
                                        • IIS.

              April 17, 2018
Starting Environment
                                        The world-at-large (the internet).
          maps.cvrd.bc.ca (port 6443)                   ISP                           geocortex.cvrd.bc.ca (port 5050)

• CVRDMAP                                                                                            • CVRDWEB
                                                              • CVRDFILE

• ArcGIS Server.                                                                                     • Hosts multiple websites
                                                              • File server.
• IIS.                                                                                                 on multiple ports (not
                                                              • File geodatabases
• No SDE connections.                                                                                  GIS-specific). IIS.
                                                                served by AGS.
• Some FGDB copied to                                                                                • Hosts Geocortex
                                                              • IIS.
  server.                                                                                              Core/Essentials.
                                                              • Also hosted
• Some FGDB on                                                                                       • Hosts multiple
                                                                development
  network share.                        • CVRDSQL                                                      instances of Geocortex
                                                                Geocortex instance.
• Also hosted a                                                                                        HTML5 Viewer.
  development SQL                       • SQL Server.                                                • Production &
  Server instance.                      • ArcGIS concurrent                                            development sites.
                                          license server.
                                        • IIS.

              April 17, 2018
Starting Environment
                                        The world-at-large (the internet).
          maps.cvrd.bc.ca (port 6443)                   ISP                           geocortex.cvrd.bc.ca (port 5050)

                                        • RANDOM DESKTOPS
• CVRDMAP                                                                                            • CVRDWEB
                                                              • CVRDFILE
                                        • Automated/manual
• ArcGIS Server.                          processes (e.g.                                            • Hosts multiple websites
                                                              • File server.
• IIS.                                    publishing).                                                 on multiple ports (not
                                                              • File geodatabases
• No SDE connections.                                                                                  GIS-specific). IIS.
                                                                served by AGS.
• Some FGDB copied to                                                                                • Hosts Geocortex
                                                              • IIS.
  server.                                                                                              Core/Essentials.
                                                              • Also hosted
• Some FGDB on                                                                                       • Hosts multiple
                                                                development
  network share.                        • CVRDSQL                                                      instances of Geocortex
                                                                Geocortex instance.
• Also hosted a                                                                                        HTML5 Viewer.
  development SQL                       • SQL Server.                                                • Production &
  Server instance.                      • ArcGIS concurrent                                            development sites.
                                          license server.
                                        • IIS.

              April 17, 2018
Messy
             mix!
                                           Starting Environment
                                        The world-at-large (the internet).
          maps.cvrd.bc.ca (port 6443)                   ISP                           geocortex.cvrd.bc.ca (port 5050)

                                        • RANDOM DESKTOPS
• CVRDMAP                                                                                            • CVRDWEB
                                                              • CVRDFILE
                                        • Automated/manual
• ArcGIS Server.                          processes (e.g.                                            • Hosts multiple websites
                                                              • File server.
• IIS.                                    publishing).                                                 on multiple ports (not
                                                              • File geodatabases
• No SDE connections.                                                                                  GIS-specific). IIS.
                                                                served by AGS.
• Some FGDB copied to                                                                                • Hosts Geocortex
                                                              • IIS.
  server.                                                                                              Core/Essentials.
                                                              • Also hosted
• Some FGDB on                                                                                       • Hosts multiple
                                                                development
  network share.                        • CVRDSQL                                                      instances of Geocortex
                                                                Geocortex instance.
• Also hosted a                                                                                        HTML5 Viewer.
  development SQL                       • SQL Server.                                                • Production &
  Server instance.                      • ArcGIS concurrent                                            development sites.
                                          license server.
                                        • IIS.

              April 17, 2018
Problem #1: public web map PORTS!

   • External access to public web maps…maps.cvrd.bc.ca
     on 6443, geocortex.cvrd.bc.ca on 5050 (unencrypted, so
     replacement for 80).
   • Why 5050? Historical…lack of machines, 80 already
     occupied by another non-GIS enterprise web app, lack of
     support from ISP, lack of knowledge, random selection,
     and so on…

April 17, 2018
Problem #1 symptoms.

   • Non-standard ports have to be entered in web browser
     address bar as part of URLs.
   • IT departments from external organizations would often
     block CVRD maps site due to non-standard ports (5050
     is actually a port used by an older messaging service).

April 17, 2018
Solution #1: certificates and Web
                             Adaptor.

   • CVRD obtained CA certificates for maps.cvrd.bc.ca and
     geocortex.cvrd.bc.ca.
   • Geocortex Essentials moved off 5050 to 443 (expected
     web browser port).
   • Web Adaptor installed on CVRDMAP as reverse proxy to
     map services on 6443.

April 17, 2018
Port/Encryption Changes
                                          The world-at-large (the internet).
          maps.cvrd.bc.ca (port 443, SSL)                 ISP                geocortex.cvrd.bc.ca (port 443, SSL)

• CVRDMAP                                                                                           • CVRDWEB

• ArcGIS Server.                                                                                    • Hosts multiple websites
• Added Web Adaptor                                                                                   on multiple ports (not
  on 443.                                                                                             GIS-specific). IIS.
• IIS.                                                                                              • Hosts Geocortex
• No SDE connections.                                                                                 Core/Essentials.
• Some FGDB copied to                                                                               • Hosts multiple
  server.                                                                                             instances of Geocortex
• Some FGDB on                                                                                        HTML5 Viewer.
  network share.                                                                                    • Production &
• Also hosted a                                                                                       development sites.
  development SQL
  Server instance.

              April 17, 2018
Problem #2: messy environments.

  • Production machines for some software doubled as
    development/test machines for other software.
  • Often undocumented, and knowledge often resided with
    people no longer available.
  • Little to no automation of repeatable periodic processes.

April 17, 2018
Problem #2 symptoms.

   • Any process/installation/database found always had
     same questions…Dev? Test? Prod? Used at all?
   • Non-production processes running on production
     machines adversely affect production processes.
   • Scripts, toolboxes, other artifacts scattered all over.
     Things getting missed…
   • Long/inconsistent lag time from production data updates
     to web map updates.
   • People working outside of regular business hours.
April 17, 2018
Solution #2: mass environment cleanup
                 & automation.

   • ALL non-production software, data, and processes
     removed from production machines.
   • Identifying/creating appropriate dev/test environments.
     Leveraging Hyper-V where possible.
   • Prod machines tweaked for suitability to now-defined
     roles.

April 17, 2018
Solution #2: mass environment cleanup
            & automation continued.

   • File server was given 2nd role as automation server.
   • Developed Python toolkit leveraging arcpy and existing
     Model Builder toolkits for common tasks that can run
     unattended.
   • Web map publication; analyze; compress; index rebuilds;
     audits; schema maintenance; backups; exports.

April 17, 2018
Automation changes
                                          The world-at-large (the internet).
          maps.cvrd.bc.ca (port 443, SSL)                 ISP                geocortex.cvrd.bc.ca (port 443, SSL)

                                • RANDOM DESKTOPS
• CVRDMAP                                                                                           • CVRDWEB
                                                               • CVRDFILE
                                • Automated/manual
• ArcGIS Server.                  processes (e.g.                                                   • Hosts multiple websites
                                                               • Jenkins & ArcGIS
• Added Web Adaptor               publishing).                                                        on multiple ports (not
                                                                 Desktop…automation.
  on 443.                                                                                             GIS-specific). IIS.
                                                               • File server.
• IIS.                                                                                              • Hosts Geocortex
                                                               • File geodatabases
• No SDE connections.                                                                                 Core/Essentials.
                                                                 served by AGS.
• Some FGDB copied to                                                                               • Hosts multiple
                                                               • IIS.
  server.                                                                                             instances of Geocortex
                                                               • Also hosted
• Some FGDB on                                                                                        HTML5 Viewer.
                                                                 development
  network share.                                                                                    • Production &
                                                                 Geocortex instance.
• Also hosted a                                                                                       development sites.
  development SQL
  Server instance.

              April 17, 2018
Environment clean-up
                                          The world-at-large (the internet).
          maps.cvrd.bc.ca (port 443, SSL)                 ISP                geocortex.cvrd.bc.ca (port 443, SSL)

                                • CVRD DESKTOPS
• CVRDMAP                                                                                           • CVRDWEB
                                                               • CVRDFILE
                                • ArcGIS Desktop.
• ArcGIS Server.                • Web maps.                                                         • Hosts multiple websites
                                                               • Jenkins & ArcGIS
• Added Web Adaptor                                                                                   on multiple ports (not
                                                                 Desktop…automation.
  on 443.                                                                                             GIS-specific). IIS.
                                                               • File server.
• IIS.                                                                                              • Hosts Geocortex
                                                               • File geodatabases
• No SDE connections.                                                                                 Core/Essentials.
                                                                 served by AGS.
• Some FGDB copied to                                                                               • Hosts multiple
                                                               • IIS.
  server.                       • CVRDSQL                                                             instances of Geocortex
                                                               • Also hosted
• Some FGDB on                                                                                        HTML5 Viewer.
                                                                 development
  network share.                • SQL Server.                                                       • Production &
                                                                 Geocortex instance.
• Also hosted a                 • ArcGIS concurrent                                                   development sites.
  development SQL                 license server.
  Server instance.              • IIS.

              April 17, 2018
Problem #3: the BIG one.

  • CVRD web maps had a problem with Geocortex
    Workflows.
  • The workflows would randomly start throwing errors.

April 17, 2018
Problem #3 symptoms.

  • The maps (i.e. map services) in the public web maps
    continue working, yet…
  • None of the Geocortex workflows work.
  • Problem would occur seemingly randomly and would last
    for varying lengths of time…5 minutes to 40 minutes.
  • Despite assistance from both Esri and Latitude, the root
    cause had not yet been discovered after 4 months of
    this.

April 17, 2018
Troubleshooting: where to begin?

  • My starting point…new to CVRD environment; new to
    Geocortex software; experienced with Esri software;
    know enough IT to be dangerous.
  • Initial observation…when error was occurring, it only
    affected Geocortex workflows, not map services.
  • First theory…workflows are configured incorrectly in
    terms of map service URLs. Cleanup required?

April 17, 2018
Map service clean-up
                                          The world-at-large (the internet).
          maps.cvrd.bc.ca (port 443, SSL)                 ISP                geocortex.cvrd.bc.ca (port 443, SSL)

                                • CVRD DESKTOPS
• CVRDMAP                                                                                           • CVRDWEB
                                                               • CVRDFILE
                                • ArcGIS Desktop.
• ArcGIS Server.                • Web maps.                                                         • Hosts multiple websites
                                                               • Jenkins & ArcGIS
• Added Web Adaptor                                                                                   on multiple ports (not
                                                                 Desktop…automation.
  on 443.                                                                                             GIS-specific). IIS.
                                                               • File server.
• Some FGDB copied to                                                                               • Hosts Geocortex
  server.                                                                                             Core/Essentials.
                                                                                                    • Web Adaptor to
                                • CVRDSQL                                                             CVRDMAP on internal
                                                                                                      name.
                                • SQL Server.

              April 17, 2018
Troubleshooting: next steps.

   • The workflow errors were still periodically happening
     after the map service clean-up.
   • Since environment clean-up had eliminated the
     configuration as the source of the error, next step was to
     take a close look at Geocortex…time to learn.
   • What is the difference between a map in a Geocortex
     HTML Viewer versus a Workflow in a Geocortex HTML
     viewer?

April 17, 2018
Learning Geocortex

• Starting point…experienced application developer
  (desktop/mobile/web/.NET). Lots of ESRI development
  experience.
• Recognized that Geocortex has 2 main components…
  •     Web client. HTML/CSS/Javascript, uses ArcGIS Javascript API.
  •     IIS .NET server process. Uses ArcGIS .NET Runtime.
• Implication…ArcGIS Server map services are accessed
  from 2 different paths in a Geocortex implementation.

April 17, 2018
Geocortex Architecture: Basic

 Geocortex

                                                                               ArcGIS Server
web browser
client (HTML                   Geocortex .NET IIS application
   Viewer).                 Static client content     Active server content.
                            (HTML, CSS, Javascript)

        April 17, 2018
What Was Working
                                      Client map service requests.

 Geocortex

                                                                                ArcGIS Server
web browser
client (HTML                Geocortex .NET IIS application
   Viewer).              Static client content         Active server content.
                         (HTML, CSS, Javascript)

        April 17, 2018
What Wasn’t Working (Sometimes)

 Geocortex

                                                                            ArcGIS Server
web browser
client (HTML                Geocortex .NET IIS application
   Viewer).              Static client content     Active server content.
                         (HTML, CSS, Javascript)
                                                            Geocortex
                                                            Workflows
        April 17, 2018
Learning Geocortex Workflows

  • Next step…how to debug Geocortex Workflows?
  • Reviewed workflows in question and Geocortex
    Workflow Designer and realized…it is UX meant to
    emulate .NET (C# or Visual Basic)
    programming…without programming.
  • However, many programming constructs are included as
    workflow components, and one can even add C# code
    snippets into workflow configuration.

April 17, 2018
Debugging Geocortex Workflows

  • Identified 1 workflow for debugging purposes, to keep
    things simple.
  • Added a try/catch workflow component around the part
    we knew was failing, which was invocation of ArcGIS
    Server REST endpoint.
  • Added logging to explicitly lay out REST call, exception
    message, and stack trace.
  • Now we play the waiting game…

April 17, 2018
Debugging
Geocortex
Workflows

      April 17, 2018
Results of Error Capture

   • The next time the workflow errors were happening, we
     reviewed our Geocortex logs for the workflow
     information, and found this interesting statement:

   The server at geocortex.cvrd.bc.ca is not accepting
   connection requests.

April 17, 2018
Let’s review our clues…

   • We know map services continue working, so requests
     from web clients to geocortex.cvrd.bc.ca are fine.
   • Requests from the IIS application to
     geocortex.cvrd.bc.ca are sometimes not working.
   • Same endpoint name, so…how is this possible?

April 17, 2018
Let’s review our architecture…
                                  The world-at-large (the internet).
                                                  ISP                geocortex.cvrd.bc.ca (port 443, SSL)

• CVRDMAP                                                                                    • CVRDWEB

• ArcGIS Server.                                                                             • Hosts multiple websites
• Some FGDB copied to                                                                          on multiple ports (not
  server.                                                                                      GIS-specific). IIS.
                                                                                             • Hosts Geocortex
                                                                                               Core/Essentials.
                                                                                             • Web Adaptor to
                                                                                               CVRDMAP on internal
                                                                                               name.

              April 17, 2018
Keyed in on server name in error…
                               The world-at-large (the internet).
                                               ISP                geocortex.cvrd.bc.ca (port 443, SSL)

• CVRDMAP                                       geocortex.cvrd.bc.ca                      • CVRDWEB

• ArcGIS Server.                                                                          • Hosts multiple websites
• Some FGDB copied to                                                                       on multiple ports (not
  server.                                                                                   GIS-specific). IIS.
                                                                                          • Hosts Geocortex
                                                                                            Core/Essentials.
                                                                                          • Web Adaptor to
                                                                                            CVRDMAP on internal
                                                                                            name.

              April 17, 2018
Let’s add our IT knowledge to the clues…

    • Outside the CVRD intranet, geocortex.cvrd.bc.ca DNS
      resolves to the ISP-hosted IP address.
    • Inside the CVRD intranet, geocortex.cvrd.bc.ca SHOULD
      resolve to the internal machine to which the ISP port-
      forwards requests to geocortex.cvrd.bc.ca.

April 17, 2018
Formulated a theory…

  • Is it possible that when the error is occurring the IIS
    application running the Geocortex Workflow, which is
    hosted on an internal machine, is actually resolving
    geocortex.cvrd.bc.ca to the external IP address instead
    of the external one?
    •      This could create a request loop…

April 17, 2018
Test the Theory

  • Wrote a .NET console application that tested the ArcGIS
    Server endpoint that was reporting as being
    unreachable, but with multiple different host names…
    •      Internal IP address, in octets.
    •      Internal machine name.
    •      geocortex.cvrd.bc.ca name
  • If correct, when running this on the server hosting the
    Geocortex IIS process during period when error is
    occurring, first 2 should work, last should not.
  • Once again, we play the waiting game…

April 17, 2018
Theory proving correct…

   • The next time the error was occurring, ran the console
     application on the machine hosting Geocortex Essentials
     IIS application…and results were as predicted.

   • DNS name resolution not always returning expected
     internal IP address on IIS hosting machine.

April 17, 2018
Expounding upon theory.

   • Discovered that web host had multiple DNS servers
     configured. First was our normal internal one, then
     about 10 others, some external.
   • Therefore, during these error periods, either our internal
     DNS server stopped responding altogether, or was not
     responding in a timely manner…so web host switched to
     a non-internal DNS server that resolved to external IP
     address, causing request loop.  (MY) ROOT CAUSE

April 17, 2018
Fixing the problem.

   • Need to make geocortex.cvrd.bc.ca ALWAYS resolve to
     internal IP address when resolved on Geocortex hosting
     machine.
   • DNS configuration problems handed off to IT, but in the
     meantime, didn’t want to wait, so…

   • %WINDIR%\system32\drivers\etc\hosts

April 17, 2018
Solution

   • HOSTS file overrides all DNS configuration with simple
     machine name / IP address lines.
   • Added the internal address of geocortex.cvrd.bc.ca
     during a period when the error was occurring.

   • Result: error stopped happening immediately, and has
     never occurred since.

April 17, 2018
Current Environment
                               The world-at-large (the internet).
                                               ISP                geocortex.cvrd.bc.ca (port 443, SSL)

                               • CVRD DESKTOPS
• CVRDMAP                                                                                 • CVRDWEB
                               • ArcGIS Desktop.
• ArcGIS Server.               • Web maps.                                                • Hosts multiple websites
• Some FGDB copied to                                     • CVRDFILE                        on multiple ports (not
  server.                                                                                   GIS-specific). IIS.
                                                          • Jenkins & ArcGIS              • Hosts Geocortex
                                                            Desktop…automation.             Core/Essentials.
                                                          • File server.                  • Web Adaptor to
                               • CVRDSQL                                                    CVRDMAP on internal
                                                                                            name.
                               • SQL Server.

              April 17, 2018
Lessons Learned (Learning Outcomes,
                  Revisited)

  • Be creative but methodical when troubleshooting.

April 17, 2018
Lessons Learned (Learning Outcomes,
                  Revisited)

  • Be creative but methodical when troubleshooting.
  • Keep your environments organized and “clean”.

April 17, 2018
Lessons Learned (Learning Outcomes,
                  Revisited)

  • Be creative but methodical when troubleshooting.
  • Keep your environments organized and “clean”.
  • IT support and knowledge required…whether from co-
    workers or yourselves.

April 17, 2018
Future for CVRD GIS

  • We’ve now got a stable base for expansion.
  • Virtual machines; OS/DB upgrades.
  • Full ArcGIS Enterprise build-out. Geocortex Analytics.
  • Desktop  web as much as possible.
  • Enabling workflows for internal departments (e.g. parks;
    utilities)…web and/or native apps, online & offline.
  • ArcGIS Pro: geometric networks  utility networks.
  • Keep being creative…how can GIS be useful, ubiquitous,
    and seamless organization-wide?

April 17, 2018
Thank you for your time.

  • Questions?

April 17, 2018
© 2018 Esri Canada Limited. All rights reserved. Trademarks
provided under license from Environmental Systems
Research Institute, Inc. Other product and company names
mentioned herein may be trademarks or registered
trademarks of their respective owners. Errors and omissions
excepted.
You can also read