Dimensions of Mobile Computing
Alexander Nelson August 24, 2021
University of Arkansas - Department of Computer Science and Computer Engineering Reminders Course Mechanics
Course Webpage: https://ahnelson.uark.edu/courses/ csce-4623-mobile-programming-fall-2021/ 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 (Dr. Nelson) 5% of the first project grade.
2 Mobile Dimensions Why is Mobile Programming Challenging?
User Interface Networking Design WLAN and WPAN
Operating Web and Systems Cloud Services
Built-In Limited Hardware Sensors Resources
3 What about Mobile Computing?
Reza B’Far - Mobile Computing Principles (2005)
4 Mobility and Location
Advantage: Accomodate logic based on locale Not unique to mobile
Ex. POS systems and sales tax
5 Mobility and Location
Advantage: Accomodate logic based on locale Not unique to mobile
Instead: Accomodate logic based on changing locale
6 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
The downside of mobility! • Loss of network connectivity reliability • Bad Weather/Solar Flares/ # of concurrent users
8 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!
9 What about Mobile Computing?
Reza B’Far - Mobile Computing Principles (2005)
10 Battery
11 Battery
1 1Mehdi 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
12 Battery
2
2https://bambooapps.eu/blog/electric-vehicle-landscape-road-to-2025
13 Battery
14 Battery
*Somewhere around 40B transistors 15 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!
16 Bottom Line: Battery density improvement isn’t keeping up with power requirements
16 Battery Constraints
Heaviest single component: iPhone 7: 27.7g/138g = 20% iPhone XS: 39.5g/177g = 22.3% iPhone 12 Pro: ∼40g/189g = ∼22% Large amount of space!
17 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
18 What about Mobile Computing?
Reza B’Far - Mobile Computing Principles (2005)
19 Enabling Varied UI Patterns
Input? Screen size? • Finger • Phone • Stylus • Tablet • On-Screen Keyboard • Phablet? • Voice • Gestures?
Assumptions on input and output mechanisms are difficult
20 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
21 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
22 Platform Proliferation
In the days of PDAs & similar handhelds this was a larger issue however
23 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
24 What about Mobile Computing?
Reza B’Far - Mobile Computing Principles (2005)
25 Active Behavior
Passive transactions are initiated by the user while Active transactions are initiated by the system
26 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
27 ”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.”
27 What about Mobile Computing?
Reza B’Far - Mobile Computing Principles (2005)
28 Readings
Meyers 1993 - User Interfaces Satyanarayanan 1996 - Fundamental Challenges of Mobile Computing
Read these by Monday, and be prepared to discuss
29