Dimensions of Mobile Computing - University of...

Post on 03-Jun-2020

4 views 0 download

transcript

Dimensions of Mobile Computing

Alexander Nelson

August 27, 2019

University of Arkansas - Department of Computer Science and Computer Engineering

Reminders

Course Mechanics

Course Webpage:

sites.uark.edu/ahnelson/csce-4623-mobile-programming/

Syllabus is on the website.

Course Communication:

https://csce4623-uark.slack.com/

This slack channel is to be the primary mode of communication

1

Homework - Due Friday by Midnight

Sign up on the Slack website

Use your UARK username as the slack username.

Download Android Studio

https://developer.android.com/studio/index.html

Video will be on the website by end of day today. Send screenshot

of android studio in direct message to my slack user (ahnelson)

5% of the first project grade.

2

Survey Results

Class Level: 6 Junior, 42 Senior, 10 Graduate

30 iOS, 28 Android

Team/Solo: 24 Team, 13 Solo, 17 Either

Friday Lectures:

Type 1st 2nd 3rd %1st Plan

Traditional Lecture 10 17 28 18% 2-3 Fridays

“Transitive” Classroom 20 21 14 36% 5 Fridays

Dedicated Project Time 25 17 13 45% 6 Fridays

3

Survey Results – Apps

4

Survey Results – Hopes

5

Survey Results – Hopes

Single Occurrences:

approach become build capabilities career coding comfortable

component computer confident cool credit current doing

ecosystem environment Everything feel frameworks front-end fun

fundamentals general grade hobby hours hybrid IDE’s Improved

incorporate industry infrastructure inspiration interest job load

marketable means monopoly moving native New outside overall

passing personal phones platforms popular practice primary

principles produce product provides pursue re-building Renewed

required smaller/mobile smartphones stand-alone systems

techniques time UI user using

6

Mobile Dimensions

Why is Mobile Programming Challenging?

User InterfaceDesign

NetworkingWLAN and WPAN

OperatingSystems

Web andCloud Services

Built-InSensors

Limited HardwareResources

7

What about Mobile Computing?

Reza B’Far - Mobile Computing Principles (2005)

8

ahnelson
Oval
ahnelson
Oval

Mobility and Location

Advantage:

Accomodate logic based on locale

Not unique to mobile

Ex. POS systems and sales tax

9

Mobility and Location

Advantage:

Accomodate logic based on locale

Not unique to mobile

Instead:

Accomodate logic based on changing

locale

10

How do mobile devices localize?

GPS:

Localization by message time-of-flighta

Cellular:

Localization by time-of-flight or signal

strength

WiFi:

Crowdsourced information from Wi-Fi

basestations

Measure by ToF, RSSI, or Angle (for

MIMO based routers)

aPlus special and general relativity

11

Quality of Service

The downside of mobility!

• Loss of network connectivity

reliability

• Bad Weather/Solar Flares/ # of

concurrent users

12

Quality of Service

The downside of mobility!

• Loss of network connectivity

reliability

• Bad Weather/Solar Flares/ # of

concurrent users

Must be able to operate even when

disconnected or during bouts of

connectivity cycles!

13

What about Mobile Computing?

Reza B’Far - Mobile Computing Principles (2005)

14

ahnelson
Oval
ahnelson
Oval

Battery

15

Battery

11Mehdi Niroomand, Hamid Reza Foroughi, “A rotary electromagnetic

microgenerator for energy harvesting from human motions,” Journal of Applied

Research and Technology, Volume 14, Issue 4, 2016, pp. 259-267

16

Battery

2

2https://bambooapps.eu/blog/electric-vehicle-landscape-road-to-2025

17

Battery

18

Battery

19

Battery

Since 2010, battery capacity has increased 4x while CPU

benchmark has only improved ∼2x

3

(Network speed has also increased ∼ 4x during 2010-2019)

3MS Paint Magic!

20

Bottom Line:

Battery density improvement isn’t keeping up

with power requirements

20

Battery Constraints

Heaviest single component:

iPhone 7: 27.7g/138g = 20%

iPhone XS: 39.5g/177g = 22.3%

Large amount of space!

21

What about Storage?

Two rules of thumb:

• Smaller is almost always better

• If possible, let the user choose what to cache

Local cache smooths out network reliability

22

What about Mobile Computing?

Reza B’Far - Mobile Computing Principles (2005)

23

ahnelson
Oval
ahnelson
Oval

Enabling Varied UI Patterns

Screen size?

• Phone

• Tablet

• Phablet?

Input?

• Finger

• Stylus

• On-Screen Keyboard

• Voice

• Gestures?

Assumptions on input and output mechanisms are difficult

24

Enabling Varied UI Patterns

1. Designers have difficulties learning the user’s tasks

2. Tasks and domains are complex

3. A balance must be achieved among the many different design

aspects (e.g. Standards, Graphics, Technical writing,

internationalization, performance, levels of detail, social

factors, implementation time)

4. Existing theories and guidelines are insufficient

25

Enabling Varied UI Patterns (continued)

5. Iterative design is difficult

6. Real-Time requirements for handling input events

7. Difficult to test UI software

8. Languages do not support for user interfaces

9. Added difficulty of modularization of UI software

26

Platform Proliferation

In the days of PDAs & similar handhelds this was a larger issue

however

27

Platform Proliferation

In the days of PDAs & similar handhelds this was a larger issue

however

The problem of multiple platforms still exists

Number of OS versions being supported

Number of hardware providers is even larger

28

What about Mobile Computing?

Reza B’Far - Mobile Computing Principles (2005)

29

ahnelson
Oval

Active Behavior

Passive transactions are initiated by the user

while

Active transactions are initiated by the system

30

Active Transactions

Active transactions can be defined by these properties:

1. Transaction initiated by system, user is given an opportunity

to respond

2. Require timely response from user

3. Interactions are sequential and serial

4. Between system and a single user

Example: Some 2-Factor authentication schemes

31

”Active Transactions are an absolute essential

part of mobile application development mainly

because of the lack of FOCUS on the part of

the user while the user is mobile.”

31

What about Mobile Computing?

Reza B’Far - Mobile Computing Principles (2005)

32

Readings

Meyers 1993 - User Interfaces

Satyanarayanan 1996 - Fundamental Challenges of Mobile

Computing

Read these by Monday, and be prepared to discuss

33