CSE 335 SUHAIL GHAFOOR Fall 2017 FINAL PROJECT PRESENTATION C S E - - PowerPoint PPT Presentation

cse 335
SMART_READER_LITE
LIVE PREVIEW

CSE 335 SUHAIL GHAFOOR Fall 2017 FINAL PROJECT PRESENTATION C S E - - PowerPoint PPT Presentation

CSE 335 SUHAIL GHAFOOR Fall 2017 FINAL PROJECT PRESENTATION C S E 3 3 5 - F A L L 2 0 1 7 INTRODUCTION Suhail Ghafoor - Final project presentation A simple app that lets the user view earthquakes around the world on either a map or a


slide-1
SLIDE 1

CSE 335 Fall 2017

SUHAIL GHAFOOR FINAL PROJECT PRESENTATION

slide-2
SLIDE 2

Suhail Ghafoor - Final project presentation

C S E 3 3 5 - F A L L 2 0 1 7

INTRODUCTION

A simple app that lets the user view earthquakes around the world on either a map or a simple list. The user can also choose a particular earthquake and view more details about it.

P I C T U R E U S E D W I T H P E R M I S S I O N O F T H E P H O T O G R A P H E R

slide-3
SLIDE 3

Suhail Ghafoor - Final project presentation

C S E 3 3 5 - F A L L 2 0 1 7

WORKFLOW

slide-4
SLIDE 4

Suhail Ghafoor - Final project presentation

C S E 3 3 5 - F A L L 2 0 1 7

Features that we learned in class that I could have implemented in this project but could not due to time limitations. There were features that I wanted to implement but did not know where to begin. Implementing features that were required by the project criteria.

DESIGN DECISIONS

TIME SKILL GRADING

slide-5
SLIDE 5

Design

slide-6
SLIDE 6

Suhail Ghafoor - Final project presentation

C S E 3 3 5 - F A L L 2 0 1 7

HOME VIEW

  • Initial screen of the app
  • Two options, either view earthquakes as a list
  • r on a map.
  • Option to refresh data.
  • Shows the amount of earthquakes currently

stored on the phone.

  • Data fetched from earthquake.usgs.gov
slide-7
SLIDE 7

Suhail Ghafoor - Final project presentation

C S E 3 3 5 - F A L L 2 0 1 7

MAP VIEW

  • Shows recent earthquakes on a map.
  • When a pin is tapped/selected then it shows

the magnitude.

slide-8
SLIDE 8

Suhail Ghafoor - Final project presentation

C S E 3 3 5 - F A L L 2 0 1 7

TABLE VIEW

  • Shows recent earthquakes in a list.
  • Displays location, time and magnitude.
slide-9
SLIDE 9

Suhail Ghafoor - Final project presentation

C S E 3 3 5 - F A L L 2 0 1 7

DETAILED VIEW

  • Shows details about a single earthquake with

an annotation on the map.

  • Allows the user to toggle between normal

map view and satellite view.

slide-10
SLIDE 10

Suhail Ghafoor - Final project presentation

C S E 3 3 5 - F A L L 2 0 1 7

WEB VIEW

  • Shows more details about the earthquake on

the website of the API.

  • Spinner linked to web view delegate method

‘didFinish’.

slide-11
SLIDE 11

Suhail Ghafoor - Final project presentation

C S E 3 3 5 - F A L L 2 0 1 7

CLASS DIAGRAM

COREDATA ENTITY MODEL (SWIFT) COCO TOUCH CLASS COCO TOUCH PARENT CLASSES

slide-12
SLIDE 12

Suhail Ghafoor - Final project presentation

C S E 3 3 5 - F A L L 2 0 1 7

MVC ARCHITECTURE DIAGRAM

slide-13
SLIDE 13

Example Section Break

C O N C L U S I O N S

slide-14
SLIDE 14

Suhail Ghafoor - Final project presentation

C S E 3 3 5 - F A L L 2 0 1 7

01 SETTINGS PANE

Single settings pane with the ability to change units, set location of interest and push notifications.

02 PUSH NOTIFICATIONS 03 REAL TIME UPDATES 04 MAP OVERLAY 05 SORT AND FILTER 06 NEARBY EARTHQUAKES

FEATURE WISH LIST

Push notification that pushes to user if there was a massive earthquake anywhere in the world. Option to turn on real time updates so the app is constantly updating data while viewing map view. A circular overlay on map which roughly shows the affected area of the earthquake. Option to only view earthquakes of certain types and sort by time or magnitude. Option to only show earthquakes that happen in X radius of the user’s current location.

slide-15
SLIDE 15

Suhail Ghafoor - Final project presentation

C S E 3 3 5 - F A L L 2 0 1 7

LESSONS LEARNED

  • The best class in terms of learning a practical

and desirable skill.

  • Project heavy approach works great.
  • Less freedom when coding but much faster

compared to conventional programming.

  • Difficult to google issues due to frequent

changes in swift.

  • Keep final project simple.
  • Class forms a good base if entering the world
  • f mobile apps in future.
slide-16
SLIDE 16

Thank you.