Creating web applications

to help showcase the value of your GIS data and analysis

Matt Peters / @mattagrc
Steve Gourley / @steveagrc
Scott Davis / @sthomasdavis

Introductions

Larry, Curly and Moe at AGRC the state of Utah's GIS shop

Think before you leap

What about that parachute? The one your Mom gave you

The GIS Mind

Don't kill the messenger!

Goals

Define success for the project in a page or less

Requirements/User stories

As a type of user, I want some goal so that some reason

Don't forget to define success!!

Create a scope that will satisfy all stakeholders.

Data and Process Flow Charts

Where did that data come from?

And What am I trying to do?

Parting the Clouds

Each challenge may have a different approach to a unique solution

Just how long will this development process take?

Eons, Many Eons

AGOL - web map

fundamental building block

AGOL - web map

grades

Security Effort Cost Flexibility Technical Debt

web app templates & story maps

don't code, configure

config


define({
  //Default configuration settings for the application. This is where you'll define things like a bing maps key,
  //default web map, default app color theme and more. These values can be overwritten by template configuration settings and url parameters.
  "appid": "",
  "webmap": "24e01ef45d40423f95300ad2abc5038a",
  "oauthappid": null, //"AFTKRmv16wj14N3z",
  //Group templates must support a group url parameter. This will contain the id of the group.
  "group": "",
  //Enter the url to the proxy if needed by the application. See the 'Using the proxy page' help topic for details
  //http://developers.arcgis.com/en/javascript/jshelp/ags_proxy.html
  "proxyurl": "",
  "theme": "#f7f8f8",
  "color": "#4c4c4c",
  "title": null,
  "drawerSize": null,
  "bingKey": "", //Enter the url to your organizations bing maps key if you want to use bing basemaps
  //Defaults to arcgis.com. Set this value to your portal or organization host name.
  "sharinghost": location.protocol + "//" + "www.arcgis.com",
  "units": null,
  //If your applcation needs to edit feature layer fields set this value to true. When false the map will
  //be dreated with layers that are not set to editable which allows the FeatureLayer to load features optimally.
  "editable": true,
  "edittoolbar": false,
  "basemap": false,
  "alt_basemap": null,
  "home": true,
  "locate": false,
  "locatetrack": false,
  "search": true,
  "locationSearch": true,
  //When searchExtent is true the locator will prioritize results within the current map extent.
  "searchExtent": false,
  "searchLayers":[{
      "id": "",
      "fields": []
  }],
  "scale": true,
  "helperServices": {
    "geometry": {
      "url": null
    },
    "printTask": {
      "url": null
    },
    "elevationSync": {
      "url": null
    },
    "geocode": [{
      "url": null
        }]
  }
});
					

beware!

Mapbox

web app templates & story maps

grades

Security Effort Cost Flexibility Technical Debt

web app builder

leveling up configuration

widgets

work flow

authoring

Stan McShinsky (@smcshinsky)

Presentation Links

web app builder

grades

Security Effort Cost Flexibility Technical Debt

custom development

the last frontier

job security

~$100 an hour

User Experience

smooth, seamless, sexy

exactly what is necessary

have it your way

don't let an out of the box solution dictate your business process or workflow

access

user approval
  • Allow for advanced user permission workflows
  • Give different capabilities to different user types

integrations

  • With custom API's
  • Into custom applications

Integrate with custom API

Integrate into existing website

customizations

Make it pretty

Specific work flow

Advanced work flow

Advanced work flow

Advanced work flow

Advanced charting

Routing


					http://locate.utah.gov/#x=422705&y=4512007&scale=144448
					
  • Shareable urls
  • Initialize the state of an application

Printing

aversions

policies restrict the use of the cloud

don't trust the cloud

don't like arcgis online

want something prettier

want something faster

want something more specific

custom development

grades

Security Effort Cost Flexibility Technical Debt

Summary

Solution Security Effort Cost Flexibility Technical Debt
AGOL
Story Maps
Builder
Custom

goo.gl/dKwsBd

Matt Peters / @mattagrc
Steve Gourley / @steveagrc
Scott Davis / @sthomasdavis

questions?

we have stickers!