University of Maryland at College Park Department of Geographical Sciences GEOG 477/ GEOG777: Mobile GIS Development

Similar documents
INST Database Design and Modeling - Section 0101 Spring Tentative Syllabus

CS 235AM, Mobile Application Development: Android Spring 2016

CSCI 201L Syllabus Principles of Software Development Spring 2018

CSCI 6312 Advanced Internet Programming

Network Security

San Jose State University College of Science Department of Computer Science CS151, Object-Oriented Design, Sections 1, 2, and 3, Spring 2018

San Jose State University College of Science Department of Computer Science CS185C, Introduction to NoSQL databases, Spring 2017

San Jose State University College of Science Department of Computer Science CS151, Object-Oriented Design, Sections 1,2 and 3, Spring 2017

Web Development: Client Side

San José State University Computer Science Department CS49J, Section 3, Programming in Java, Fall 2015

San José State University Department of Computer Science CS-174, Server-side Web Programming, Section 2, Spring 2018

Computer Science Technology Department

CS 241 Data Organization using C

INFS 2150 (Section A) Fall 2018

Syllabus Class schedule Section 1: Tuesdays 9:00 11:50 Section 2: Tuesdays 1:00 3:50

KOMAR UNIVERSITY OF SCIENCE AND TECHNOLOGY (KUST)

Syllabus Revised 01/03/2018

Instructor: Anna Miller

THE UNIVERSITY OF TEXAS AT AUSTIN MIS373 e-discovery and Digital Forensics SPRING 2015 Unique#: (03883) VERSION: 1/23/2015

San José State University Computer Science Department CS157A: Introduction to Database Management Systems Sections 5 and 6, Fall 2015

Office Hours: (By Appoint Only)

LIS 2680: Database Design and Applications

Web Programming Spring 2010

San Jose State University College of Science Department of Computer Science CS185C, NoSQL Database Systems, Section 1, Spring 2018

Course and Contact Information. Course Description. Course Objectives

ISM 324: Information Systems Security Spring 2014

Art 645 Introduction to Web Site Design Los Angeles City College

Course and Contact Information. Course Description. Course Objectives

Developing Web Applications and Services Course Syllabus Fall 2015

Advanced Topics in Database Systems Spring 2016

Murach's HTML and CSS3 3 rd Edition By Boehm, Anne Fresno, Calif Publisher: Mike Murach & Associates, 2015 ISBN-13:

Computer Science Technology Department

Welcome. Orientation to online CPS102 Computer Science 2 (Java 2)

ITP489 In-Memory DBMS for Real Time Analytics

COURSE SYLLABUS FOR. COMP-297 Web Page Design: Adobe Dreamweaver

GET 433 Course Syllabus Spring 2017

THE UNIVERSITY OF TEXAS AT AUSTIN MIS373 e-discovery and Digital Forensics SPRING 2015 Unique#: (03665) VERSION: 2_011718

CMPE 152 Compiler Design

San José State University Department of Computer Science CS049J, Programming in Java, Section 2, Fall, 2016

Computer Science Technology Department

ESET 349 Microcontroller Architecture, Fall 2018

Faculty of Information School of Graduate Studies University of Toronto St. George Semester: Winter 2017 INF2191H User Interface Design

CMPE 152 Compiler Design

CS 200, Section 1, Programming I, Fall 2017 College of Arts & Sciences Syllabus

San José State University College of Science / Department of Computer Science Introduction to Database Management Systems, CS157A-3-4, Fall 2017

CASPER COLLEGE COURSE SYLLABUS MSFT 1600 Managing Microsoft Exchange Server 2003 Semester/Year: Fall 2007

AE Computer Programming for Aerospace Engineers

San José State University Science/Computer Science Database Management System I

MCOM 6336 Digital Media Spring 2014

Course and Contact Information. Catalog Description. Course Objectives

Oklahoma State University Oklahoma City ITD 1113: Windows Expert User Syllabus Fall, 2014

San José State University College of Science/Department of Computer Science CS 152, Programming Language Paradigms, Section 03/04, Fall, 2018

CS 3270 Mobile Development for Android Syllabus

Rochester Institute of Technology Golisano College of Computing and Information Sciences Department of Information Sciences and Technologies

COSC 115: Introduction to Web Authoring Fall 2013

ITP454 Enterprise Resource Planning, Design, and Implementation

Spring CISM 3330 Section 01D (crn: # 10300) Monday & Wednesday Classroom Miller 2329 Syllabus revision: #

CMPE 280 Web UI Design and Development

Advanced Relational Database Management MISM Course S A3 Spring 2019 Carnegie Mellon University

CSC 111 Introduction to Computer Science (Section C)

Advanced Client-Side Web Programming CSCI 491/595 Syllabus Fall 2018

CS/SE 153 Concepts of Compiler Design

There is no required text book for this course. Online reading material, videos, and PowerPoint slides etc. will be provided via Canvas.

Geography 3300: Transportation Security

San Jose State University College of Science Department of Computer Science CS151, Object-Oriented Design, Sections 1 and 2, Spring 2016

ITP454 Enterprise Resource Planning, Design, and Implementation

South Portland, Maine Computer Information Technology. Web Site: blackboard.smccme.edu. Course Syllabus

Computer Science Technology Department

CSCE 441 Computer Graphics Fall 2018

CARTO UNIVERSITY GROUP. Syllabus GEO 445/545 Computer-assisted Cartography Winter December 18, 2013

Del Mar College Master Course Syllabus. UNIX System Administration Course Number: ITSC1358

COSC 115A: Introduction to Web Authoring Fall 2014

San José State University Computer Science CS 122 Advanced Python Programming Spring 2018

Introduction to Information Technology ITP 101x (4 Units)

WEB INTERACTIVITY AND ENGAGEMENT

Fundamentals of Computer Science CSCI 136 Syllabus Fall 2018

CPS352 Database Systems Syllabus Fall 2012

CMPS 182: Introduction to Database Management Systems. Instructor: David Martin TA: Avi Kaushik. Syllabus

MGMT 4336 Networks & Data Communication Section D10

ESET 369 Embedded Systems Software, Fall 2017

San José State University Department of Computer Science CS151, Section 04 Object Oriented Design Spring 2018

CMSC 132: Object-Oriented Programming II. Administrivia

Please note: If you already have an active SAM 2016 Account from another CAWT course, you do not need to purchase another SAM Code for this course.

Database Systems: Concepts, design, and implementation ISE 382 (3 Units)

A: 90% - 100% B: 80% - <90% C: 70% - <80% D: 60% - <70% F: < 60% Important Dates:

Web Programming Fall 2011

Syllabus. ICS103: Computer Programming in C 2017 / 2018 First Semester (Term 171) INSTRUCTOR Office Phone Address Office Hours

Web Client Side Programming

Geography 4150/5150. Teaching Assistant: Chenjun Ling Office: McEniry 427 Office Hours: Tuesday 2:30-4:40pm

Introduction to UNIX

CIS 3308 Web Application Programming Syllabus

CSE 336. Introduction to Programming. for Electronic Commerce. Why You Need CSE336

1. Query and manipulate data with Entity Framework.

San Jose State University - Department of Computer Science

Web II CE 2413C 01 CE 2414N 01 Spring 2013

San José State University Department of Computer Science CS 166 / SE 166, Information Security, Section 4, spring, 2017

CPS352 - DATABASE SYSTEMS. Professor: Russell C. Bjork Spring semester, Office: KOSC 242 x4377

CS/SE 153 Concepts of Compiler Design

PELLISSIPPI STATE COMMUNITY COLLEGE MASTER SYLLABUS ROUTING/SWITCH CONFIGURATION CSIT 2750

Computer Science Technology Department

Transcription:

University of Maryland at College Park Department of Geographical Sciences GEOG 477/ GEOG777: Mobile GIS Development Instructor: Dr. Ruibo Han Office: LeFrak Hall (LEF) 1111B Email: ruibo@umd.edu (preferred) Phone: 301-314-1343 Office hours: Mon 1:00pm 2:00pm Schedule of Classes Lecture: MW 11:00am - 11:50am LEF 1201 Lab: W 12:00pm - 2:00pm LEF 1138 General information about the course Do you carry maps to the field? Do you use maps and mobile devices to engage with your community? Do you leverage maps and apps on mobile devices when in the office and on the go? Advances in mobile computing and Cloud GIS have introduced new ways that GIS technology can be leveraged on mobile devices and extended the capabilities of traditional GIS with a higher level of portability and flexibility. This course is designed as an introduction to mobile GIS, to the programming concepts underlying mobile GIS development, and more importantly, to the design and implement of a mobile GIS application. The rapid progress of smartphones and tablets also introduced the variety of platforms (Android, ios, Windows Phone, etc.), among which applications written in native languages are generally not compatible. The development of mobile apps is generally classified into web app development and native app development. This course covers how to develop, test, and publish mobile GIS native apps working across two mobile platforms: Android and ios. This course will also try to leverage the capabilities of JavaScript, Swift, Google maps, ArcGIS Server and runtime SDK to developing and publishing mobile GIS web apps. The prerequisites for this course include Math 140/220, GEOG 306, 373, 376 or another advanced course (GEOG 473, 475, or 476) for Geographic Information Systems (GIS). Students taking the course must be familiar with geographic data structures, basic GIS concepts, and demonstrate basic understanding of object-oriented programming under GIS environment. For graduated registered under GEOG777, there is a personal final project instead of a team project for undergraduate students, and the scope of knowledge covered in personal final projects is expected to be more advanced. Learning outcomes for the course Upon a successful completion of the course the students will be able to: Evaluate the pros, cons, and major challenges of developing and working with mobile GIS applications. Understand the key differences and similarities between various mobile GIS devices. Understand mobile application development and deployment process. Build mobile native apps using Google Maps API. Understand ArcGIS Server and mapping services for mobile apps. 1

Build mobile native apps using ArcGIS Runtime SDKs. Course materials There is no required textbook for this class since we will be using the most recent online resources, and tablets that run android and ios will be loaned to registered students at no cost. Android emulator and ios simulator can be used to develop and test mobile apps in a lot of cases, however, some map APIs won t work on emulators. When you deploy native apps to App Store and Android Apps Market after completing native app development you need to use a smartphone or a tablet (ipad or android tab). In this class you must be comfortable with searching for resources to understand the concepts and terms that are new to you. Web searches and discussion boards are usually good places to find the up-to-date information pertaining to mobile devices and GIS applications on various platforms. These technologies are all constantly updated so we will all be learning together throughout the semester. Optional textbooks: Eric Pimpler, Mark Lewin (2017) Building Web and Mobile ArcGIS Server Applications with JavaScript - Second Edition. ISBN: 9781787280526 Harvey M. Deitel, Paul Deitel (2016) Android: How to Program, Third Edition. ISBN: 978-0134444307. Additional web-based sources: Official website to download and learn about android SDK http://developer.android.com/index.html Google Maps API for ios, Android, and web https://developers.google.com/maps/ ArcGIS APIs and runtime SDKs https://developers.arcgis.com/en/ Other Useful References W3Schools online web tutorial, http://www.w3schools.com/ W3Schools HTML5 tutorial, http://www.w3schools.com/html5/default.asp W3Schools JavaScript tutorial, http://www.w3schools.com/js/default.asp W3Schools CSS3 tutorial, http://www.w3schools.com/css3/default.asp W3Schools SVG (Scalable Vector Graphics) tutorial, http://www.w3schools.com/svg/default.asp YouTube Data API, https://developers.google.com/youtube/v3/ Flickr APIs, http://www.flickr.com/services/api/ PhoneGap, http://phonegap.com/ ios Dev Center, https://developer.apple.com/devcenter/ios/index.action Course communication The main course communication will be carried out through the Canvas within the University of Maryland Enterprise Learning Management System (ELMS; https://elms.umd.edu). All students enrolled in the course have access to the system. In 2

addition to communications, Canvas will be used by the instructor to post assignments and grades and by the students to submit their assignments. Class structure The class structure includes two 1-hour lecture (including lab), and one 2-hour lab period per week. Lab sections will meet in LEF 1138. Lecture component Attendance for lectures in mandatory and will be recorded during the lecture. Lab component The course includes a lab component, which will be right after the lecturing component on Wednesdays. During the lab exercises the students will work individually to practice skills developed in the class. All deliverables as described in each lab assignment should be submitted to the Canvas by the posted deadlines. Late submissions are subject to 5% penalty per day. Labs will contribute 60% to the total grade for the course. There will be a total of 6 lab exercises. Each lab is worth 10% of the total grade. Provisional outline of topics covered in the course and exams Please note that modifications may be introduced to the schedule as the semester progresses. Updated schedules will be made available to all students via Canvas as soon as possible. Week Lecture Topic 1 24, 29-Jan 31-Jan Overview of Mobile App Development 2 5-Feb 7-Feb Java Programming Overview and Android Overview 3 12-Feb 14-Feb Android Application Components 4 19-Feb 21-Feb Interface Design 5 26-Feb 28-Feb Persistent Data & Location Based Services 6 5-Mar 7-Mar Google Maps API 7 12-Mar 14-Mar ArcGIS Server and Service Publishing 8 19-Mar 21-Mar Reading Week 9 26-Mar 28-Mar ArcGIS Runtime SDK for Android 10 2-Apr 4-Apr ArcGIS Runtime SDK for Android II 11 9-Apr 11-Apr IOS Development 12 16-Apr 18-Apr Interface Design 13 23-Apr 25-Apr Mobile GIS in IOS Development 14 30-Apr 2-May Monetizing Apps and Publishing Apps 15 7-May 9-May Course review, summary, Project presentation Final Project 3

Final Project will present a combination of in-class and out-of-class work and assessment. Various components of the final project will be graded independently and will produce a single cumulative grade for the final project (100 points worth 35% of the total grade for the course). In the Final Projects you will: 1. Design a mobile GIS application (either android or ios) for a specific purpose and audience of your choice. 2. Select and implement your chosen mobile GIS application in your production environment. 3. Implement capabilities for the user based on your application s purpose and goals. 4. Produce a final product that demonstrates the results of your final project work. The Final Project will have 2 components for marking (Proposal 25 points, presentation 75 points): 1. Proposal one-page description of the proposed project. 2. Presentation oral presentation: the plan and purpose of the project; the mobile GIS app; a description of the development and implementation of the application; issues encountered while completing the project; a demo of the mobile GIS application and its capabilities. Grade determination The total grade in the course will be comprised of the grades for the 6 labs (60%), the course project (40%). The general guidelines for letter grades will be as follows: 97 A+ 100, 93 A <97, 90 A- <93, 87 B+ <90, 83 B <87, 80 B- <83, 77 C+ <80, 73 C <77, 70 C- <73, 67 D+ <70, 63 D <67, 60 D- <63, 60 < F. Minor adjustments may be introduced to the general scheme to allow for students grade distribution. Expectations of students in the class Class attendance is required. Students should be aware that most of the material covered in the class is not available in the optional textbook and will be presented in lectures only. Students are strongly encouraged to take careful notes during the lectures. Students are expected to treat each other with respect. Disruptive behavior of any kind will not be tolerated. Students who are unable to demonstrate civility with one another, the teaching assistants, or the instructor will be subject to referral to the Office of Student Conduct or to the University Campus Police. You are expected to adhere to the Code of Student Conduct. In this class, students will be allowed and encouraged to use their personal computers or other means of technology to take class notes and complete practice exercises. Campus Policies It is our shared responsibility to know and abide by the University of Maryland s policies that relate to all courses, which include topics like: Academic integrity Student and instructor conduct Accessibility and accommodations 4

Attendance and excused absences Grades and appeals Copyright and intellectual property Please visit www.ugst.umd.edu/courserelatedpolicies.html for the Office of Undergraduate Studies full list of campus-wide policies and follow up with me if you have questions. Get Some Help! You are expected to take personal responsibility for you own learning. This includes acknowledging when your performance does not match your goals and doing something about it. Everyone can benefit from some expert guidance on time management, note taking, and exam preparation, so I encourage you to consider visiting http://ter.ps/learn and schedule an appointment with an academic coach. Sharpen your communication skills (and improve your grade) by visiting http://ter.ps/writing and schedule an appointment with the campus Writing Center. Finally, if you just need someone to talk to, visit http://www.counseling.umd.edu. Everything is free because you have already paid for it, and everyone needs help all you have to do is ask for it. 5