Spartan Experience Appcse498/2017-08/schedules/all-hands-mee… · •REST API with AWS Lambda...

12
From Students… …to Professionals The Capstone Experience Project Plan Spartan Experience App Team Michigan State University Roy Perryman Scott Swarthout Patrick Pale Nayana Kodur Ryan Johnson Department of Computer Science and Engineering Michigan State University Fall 2017

Transcript of Spartan Experience Appcse498/2017-08/schedules/all-hands-mee… · •REST API with AWS Lambda...

Page 1: Spartan Experience Appcse498/2017-08/schedules/all-hands-mee… · •REST API with AWS Lambda (Python 3.6) •Web scraping public MSU websites Python web scraping script Cron-based

From Students…

…to Professionals

The Capstone Experience

Project PlanSpartan Experience App

Team Michigan State UniversityRoy Perryman

Scott SwarthoutPatrick Pale

Nayana KodurRyan Johnson

Department of Computer Science and EngineeringMichigan State University

Fall 2017

Page 2: Spartan Experience Appcse498/2017-08/schedules/all-hands-mee… · •REST API with AWS Lambda (Python 3.6) •Web scraping public MSU websites Python web scraping script Cron-based

Functional Specifications

• Mobile app to enhance student and visitor experience at MSU

• Provides info in a user-friendly format

Dining hall menus and hours

Building and parking lot hours, locations, maps

Events on campus

Twitter feed of official MSU accounts

Context- sensitive info

oSpecific to user’s location and the time of day

The Capstone Experience Team Michigan State University Project Plan 2

Page 3: Spartan Experience Appcse498/2017-08/schedules/all-hands-mee… · •REST API with AWS Lambda (Python 3.6) •Web scraping public MSU websites Python web scraping script Cron-based

Design Specifications

• Design both iOS and Android platforms

Adheres to their specific design guidelines

• User-friendly, easily navigable, visually appealing, consistent across all devices

• Includes relevant information for students and visitors (building locations, dining hall menus)

• Includes personalized information based on the user’s location and the time of the day

The Capstone Experience Team Michigan State University Project Plan 3

Page 4: Spartan Experience Appcse498/2017-08/schedules/all-hands-mee… · •REST API with AWS Lambda (Python 3.6) •Web scraping public MSU websites Python web scraping script Cron-based

Screen Mockups: Home Screen

The Capstone Experience Team Michigan State University Project Plan 4

iOS vs. Android:• Bottom toolbar vs.

top tab layout

Features:• Time until next class• Directions to next class• Events near you• Dining halls near you

Page 5: Spartan Experience Appcse498/2017-08/schedules/all-hands-mee… · •REST API with AWS Lambda (Python 3.6) •Web scraping public MSU websites Python web scraping script Cron-based

Screen Mockups: Social & Campus Tabs

The Capstone Experience Team Michigan State University Project Plan 5

Social Tab:• MSU Twitter Feed

Campus Tab:• Buildings• Parking lots• Dining halls• Sparty’s

Page 6: Spartan Experience Appcse498/2017-08/schedules/all-hands-mee… · •REST API with AWS Lambda (Python 3.6) •Web scraping public MSU websites Python web scraping script Cron-based

Screen Mockup: Navigation Drawer

The Capstone Experience Team Michigan State University Project Plan 6

Specific Views• Home• Buildings• Dining halls• Events• Search the app capability• Emergency contacts• Settings for personalization

Page 7: Spartan Experience Appcse498/2017-08/schedules/all-hands-mee… · •REST API with AWS Lambda (Python 3.6) •Web scraping public MSU websites Python web scraping script Cron-based

Technical Specifications

• Integrating Multiple Data Sources Events RSS feed Twitter API Eat at State website Google Maps Places API

• REST API with AWS Lambda (Python 3.6)• Web scraping public MSU websites Python web scraping script Cron-based scheduling of scraper

• Context-based information Relational database for flexible querying (PostgreSQL) Incorporates location, events, and personal schedule

The Capstone Experience Team Michigan State University Project Plan 7

Page 8: Spartan Experience Appcse498/2017-08/schedules/all-hands-mee… · •REST API with AWS Lambda (Python 3.6) •Web scraping public MSU websites Python web scraping script Cron-based

System Architecture

The Capstone Experience Team Michigan State University Project Plan 8

Page 9: Spartan Experience Appcse498/2017-08/schedules/all-hands-mee… · •REST API with AWS Lambda (Python 3.6) •Web scraping public MSU websites Python web scraping script Cron-based

System Components

• Hardware Platforms Apple iPhone

Android Phone

• Software Platforms / Technologies iOS App Developer (Xcode 9) with Swift 4

Android Studio 3.0 with Java

Python 3.6

AWS Lambda

AWS API Gateway

PostgreSQL Database

The Capstone Experience Team Michigan State University Project Plan 9

Page 10: Spartan Experience Appcse498/2017-08/schedules/all-hands-mee… · •REST API with AWS Lambda (Python 3.6) •Web scraping public MSU websites Python web scraping script Cron-based

Testing

• Staged test releases

• Features shared with MSU IT Team for feedback

• Private beta test once feature complete

Other capstone students, friends, faculty

• Google Play Beta testing and Apple Testflight

The Capstone Experience Team Michigan State University Project Plan 10

Page 11: Spartan Experience Appcse498/2017-08/schedules/all-hands-mee… · •REST API with AWS Lambda (Python 3.6) •Web scraping public MSU websites Python web scraping script Cron-based

Risks

1. Different levels of access between separate university services

Solution: Take an inventory of which services are feasible to use and prioritize them

2. No well-defined list for context-sensitive information categories

Solution: Present a list of possible categories to our client and prioritize them

3. RHS just updated the dining hall website, so the RSS Feeds may not still exist

Solution: Implement web-scraping techniques

4. No team experience working with beacon push notifications

Solution: Find example applications and implement a simple prototype utilizing the technology

The Capstone Experience Team Michigan State University Project Plan 11

Page 12: Spartan Experience Appcse498/2017-08/schedules/all-hands-mee… · •REST API with AWS Lambda (Python 3.6) •Web scraping public MSU websites Python web scraping script Cron-based

Questions?

The Capstone Experience Team Michigan State University Project Plan 12

?

? ??

?

?

?

?

?