Final Project
Plan and build a map-centric application
Write a planning document for a final project, then build the project in iterations. The overall requirement is a website or app that uses geographic information.
- Choose a topic
- Write a planning document
- Find or create geographic information
- Choose how to present it online
- Develop iteration 1
- Develop iteration 2
- Develop iteration 3
- Submit
Topic
Choose a topic
Choose a topic that is feasible for a class project. It should be something you can present through a website or app with maps or other geographic information.
For ideas:
- Something related to a hobby
- Something from your job
- Your graduate research topic or your advisor’s
- Places you have visited
- ArcGIS Online Living Atlas
- Class data sources wiki
Planning
Write a planning document
Before building the project, submit a planning document with these three parts:
- Overview
- User stories
- Product backlog
Overview
Briefly describe:
- the topic
- the intended user or audience
- the geographic information you plan to use
- what the project should help the user do
You do not need to decide every technical detail yet, but you should decide the purpose, the users, and the scope.
User stories
Write “user stories” that describe your audience/users/customers, what they need, and why they need it. These stories will later be turned into features in your app, and they drive the initial development. Features you add to your app, like an “add data” button, an extra layer, an export to PDF button, etc., should be in response to user’s needs as expressed in the user stories.
Use this format:
As a [type of user], I want to [do something], so that [reason or goal].
User stories should describe what people need to do with the project, not just technical features.
1. As a resident, I want to tap on a park and see its name and amenities, so that I can decide whether it is worth visiting. 2. As a parent, I want to locate playgrounds near my neighborhood, so that I can decide where to bring my children. 3. As a visitor, I want to view parks near major roads, so that I can easily get there.
Product backlog
A backlog converts the user stories into a to-do list of work. Write a backlog of concrete items you can actually build, test, and check off. It can be helpful to prioritize work by grouping them by must-have, should-have, and could-have items.
Writing example
Must have - Add a map showing park locations. - Include park names in the dataset. - Include amenity information for each park. - Configure a popup so users can tap a park and see its name and amenities. - Symbolize or label playground locations clearly. - Make it possible to identify playgrounds near a neighborhood. - Show major roads on the map. - Make it possible to see which parks are near major roads. Should have - Add a legend explaining parks, playgrounds, and roads. - Add search so users can find a neighborhood or park by name. - Add a filter so users can show only parks with playgrounds. - Adjust the map scale and extent so roads and parks are easy to interpret together. Could have - Add directions or an external link for navigation. - Add photos of parks. - Add parking information. - Add a mobile-friendly layout for easier use on a phone.
Data
Find or create geographic information
You may create your own dataset or use existing sources such as web services. If needed, convert the data into a form that works for Web GIS and host it online.
Choose datasets that support your user stories.
Presentation
Choose how to present the information online
Make decisions based on what works best for your topic:
- Can your topic be presented with a single map or multiple maps?
- Will you create a Story Map, a blog, a custom website, or something else?
- Can you include images or video?
- Will it be designed as a portfolio of work?
- Will you document your metadata on an ArcGIS Online item page or explain it in the project itself?
- What colors, fonts, logos, backgrounds, map symbols, and basemaps will set an appropriate tone for your topic?
Use the tools that best fit your project. You may use ArcGIS Online, Leaflet, GitHub Pages, or another approach. Configure the project so that users can understand and interact with the geographic information.
Iteration 1
Build a minimum viable product
Create the smallest useful working version of the project. Test after each step you take or new feature you add. This can include saving, previewing, and publishing maps and apps.
At the end of each iteration, you should have a working app–not finished, but something online and operational that you can link to, even with a limited set of features and data.
Iteration 1 could include:
- a working project URL
- a title and short explanation
- at least one working map or app component
- at least one dataset/layer/basemap/web service
- evidence that at least one important user story is starting to work
Iteration 2
Improve functionality and content
Continue working through the top items in your backlog. Improve the usefulness and clarity of the project.
This may include:
- better popups, labels, and layer names
- more layers, maps, or interface elements
- search, filtering, legends, or other controls
- better symbology and presentation
- more support for your user stories
Iteration 3
Refine, test, and complete the project
Finish the most important remaining backlog items. Improve the user experience and test the project carefully.
Focus on things such as:
- fixing broken links or access problems
- testing on mobile and desktop
- fixing spelling, naming, and labeling problems
- improving clarity and visual consistency
- making sure the site clearly communicates its topic and purpose
Submit
- Your planning document
- The final project URL
- A short changelog describing what changed across iterations
- A short retrospective describing what changed overall during development from the original plan
If your project has multiple pages or apps, create a landing page that acts as a single point of entry.