The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

107
The iphone Projection keyboard MyVu Portable projectors Andriod The iPad Mobile Computing 1

Transcript of The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

Page 1: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

1

The iphone

Projection keyboard

MyVu Portable projectors

Andriod

The iPad

Mobile Computing•

Page 2: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

2

Chapter Outline

• Definition • Trends of computing • Mobile devices • Mobile computing issues & Challenges • Mobile computing applications & platforms• Mobile OS

Page 3: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

3

What is computing?

The activity of performing computations.OR

Computing can also be defined as the activity of using computer hardware and software for

some purpose .

Page 4: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

Computing TrendSize

Number

One Computer for Many People

(Mainframe Computing)

One Computer for One Person

(PC Computing)Many Computer for One

Person

(Pervasive Computing)

1960’s 1980’s 2000’s

Page 5: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

5

Existing computing paradigms Personal Computing

Distributed

Computing

Mobile Computing

Pervasive Computing Autonomic

Computing

Parallel Computing

Cloud Computing

Super

Computing

Page 6: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

6

Computing Paradigms…

Personal computing system– refers to the use of personal computers

for Computation.

Characterized by – Local software installation, – Local system maintenance– Customizable to user needs– Very low utilization

Page 7: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

7

Computing Paradigms…

Distributed computing : – refers to the use of distributed systems to solve

computational problems.

Distributed system – consists of multiple autonomous computers that

communicate through a computer network. – it appears to its users as a single coherent system.

Page 8: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

8

• Distributed computing example: surfing the web from different terminals on university . Each web page consists of hypertext, pictures, movies and elements anywhere on the internet

Page 9: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

9

Distributed computing…

Page 10: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

10

Distributed computing…

Distributed systems are characterized by:remote information access (Message passing )High availability (replication , mirrored execution, ...)

fault tolerance (atomic transactions, consistency …)Security

Page 11: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

11

Computing Paradigms…

Parallel Computing– Calculations of large problems are divided into

smaller parts and carried out simultaneously /concurrently on different processors.

Characterized by – Shared memory (to exchange information

between processors)

Page 12: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

12

Parallel Computing

Page 13: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

13

Computing Paradigms…What is Mobile Computing? Mobile

Able to move freely. usually Wireless is need to move freely .

Computing The activity of performing computations.

A simple answer => • Performing computation in mobile units

Page 14: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

14

Mobile Computing

• Using:– small size portable computers, hand-helds and other

small wearable devices,• To run stand-alone applications (or access

remote applications) via:– wireless networks: IR, BlueTooth, W-LANs, Cellular, W-

Packet Data networks, SAT. etc.• By:– nomadic or mobile users (animals, agents, trains, cars,

cell phones, ….)

Page 15: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

15

Mobile Computing

Three basic components Networks: communication Devices and computing units :mobile Applications : Computation

Page 16: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

16

Computing Paradigms…

Pervasive/ Ubiquitous computing is about the invisible and everywhere (every

time) computing– Ubiquitous= “seeming to be in all places”– Pervasive= “present or noticeable in every part of

a thing or place”

Page 17: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

17

Pervasive computing …

Characteristics Invisible: tiny, embedded, attachable…Everywhere: wireless, dynamically configurable,

remote access, adapting, …

“It is about making computers so embedded, so fitting, so natural that we use them without even thinking about them.”

Page 18: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

18

Pervasive computing Example

• A simple example is the automatic adjustment of heating, cooling and lighting levels in a room based on an occupant’s profile.

• refrigerators "aware" of their suitably tagged contents, able to both plan a variety of menus from the food actually on hand, and warn users of stale or spoiled food.

Page 19: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

19

Pervasive computing

Characterized by :Context Awareness (physical location, physiological

state, emotional state,….. distraction-free)Ad-hoc NetworksSmart Spaces,(equipped with visual and audio sensing

systems ) Smart Sensors, Wearables…

Page 20: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

20

Cloud Computing

• “Cloud computing provides computation, software, data access, and storage services that do not require end-user knowledge of the physical location and configuration of the system that delivers the services.”

• Cloud computing characteristics: Agility, Reduced Cost, Device And Location Independence, On-demand Scalability And Performance

Page 21: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

21

Cloud computing

http://en.wikipedia.org/wiki/File:Cloud_computing.svg

Page 22: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

22

• Mobile Devices

Page 23: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

23

Mobile devices

• A mobile device (a.k.a. handheld device, handheld computer) is a pocket-sized computing device, typically having a display screen with touch input or a miniature keyboard.

• Due to the rapid advancement of the technology its hard to make a specific classifications of mobile devices.

Page 24: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

24

Different types of mobile devices

• Laptop– Notebook– Netbook– Ultra-Mobile PC

• Communication devices– pager– Smartphone– PDA &Pocket PC– cell phone – Cordless phone

• Tablet PC• E-book readers

Page 26: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

26

Mobile devices…

• Laptop in general – is a small personal computer designed for

portability.– Usually all of the interface hardware(ports, graphics

card, sound channel, etc.,) are built in to a single unit.

– Contain batteries that can power the device for some periods of time.

– upgrade is usually difficult/impossible. ( Keyboard / display)

Page 27: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

27

Laptop…

Notebook• Screen -(10” and above)• Purpose- (multi- purpose)• Weight – (light)• Computing power (high )– heavy multi-tasking loads e.g creating and editing

HD video or computer aided engineering SWs.– contain high capacity batteries.

Page 28: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

28

Laptop…

Netbook • Screen -(7”-10”)• Purpose – (limited,.. internet, basic applications)

• Weight – (very light)• Computing power (low )– Used for basic applications. E.g. Office applications – Longer battery life.

Page 29: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

29

Laptop…

Ultra mobile-pcs(UMPCs)• Screen -(4”-7”)• Purpose– (very limited,…, Internet, veiw info)

• Weight –(very very light)• Computing power (very low )– Used for basic applications. E.g. Office applications – Longer battery life.

• UMPCs are pocketable!• reduced specification (lack CD-drive, LAN )

Page 30: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

30

Communication devices…

• Pager• Beeper– because of the sound it made

• Voice Tone Pagers– Recorded Voice message.

• Numeric Pagers– can display up to twenty digits at a time.

• Alphanumeric Pagers– modified versions of numeric pagers with

sophisticated display to accommodate text

Page 31: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

31

Communication devices…

• Two-way Alphanumeric pagers– are alphanumeric pagers capable of both

sending & receiving text messages.

• Still used in• emergency services .fire & police stations. • large hospital complex, where cellular coverage is

often weak or nonexistent• Fancy Restaurant( waiting staff )

Page 32: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

32

Communication devices…

Mobile phone/cellphone• Provides– voice communications, – Short Message Service (SMS),– Multimedia Message Service (MMS),

• newer phones also provide – Internet services • Web browsing, instant messaging capabilities & • e-mail.

Page 33: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

33

Communication devices…

PDA: Personal Digital Assistant– designed primarily to provide the functionality of

maintaining appointments, tasks, contacts, etc.– usually pen-based,(use a stylus rather than a keyboard

for input)• Today PDAs function as a– cellular phone, fax sender, Web browser and personal

organizer.• Traditional PDAs have not had phone or fax services• Pocket PC: A type of PDA/smartphone which runs

WindowsMobile as its operating system.

Page 34: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

34

Smart Phones

Page 35: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

35

Communication devices…

Smart phone• traditional PDA + cellular phone– combines standard phone features,

such as making and receiving phone calls, with computer functionality.

• Incorporates– Wi-Fi access, email, calendars and – GPS

• let you store information & install programs

Page 36: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

36

Smart phone Functionality

• Voice calls (of course), Video calls• Local File Storage• Internet/Cloud Services• Office Computing• eBook Reader• Multimedia Player• Digital Audio/Video Recorder• Location Based Services• Context awareness

Page 37: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

37

Communication devices…

• Cordless telephone is a telephone with a wireless

handset that communicates via radio wave with base station connected to a fixed telephone line

Page 38: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

38

Mobile devices… Tablet PC– portable personal computer equipped with

a touch screen as a primary input device and designed to be operated and owned by an individual.

– use virtual keyboards and handwriting recognition for text input through the touchscreen.

– Tablet PCs also can be connected to a full-size keyboard and monitor

Page 39: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

39

• Two main types of tablet PCs:• Convertible -look a lot like normal laptops

except the screen can be rotated all the way around and laid down flat across the Keyboard.• Slate- looks like a flat screen without a

keyboard

Page 40: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

40

Tablet PC…

• advantage– Great mobility– Save money• stationer costs stays in your pocket

– digital ink • record your handwriting and drawings

Page 41: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

41

Mobile devices…

• E-book reader– portable electronic device that

is designed primarily for the purpose of reading digital books and publication.

Support- Text to Speech- Internet Capabilities( Wi-Fi ,3G)

Page 42: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

42

• Application

Page 43: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

43

Mobile computing application

• Transport– position and tracking via GPS– prevent accidents, navigation system.– Tourist navigation

• Emergencies/ Disaster relief– early transmission of patient data to the hospital,

current status, first diagnosis.– earthquakes, hurricanes, fire etc.

Page 44: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

44

Mobile computing application…

• Business– M-Commerce: mobile E-commerce /shopping …– M-Banking: offer mobile access to financial and account

information.– Advertising: using SMS is becoming very popular in our

country.– Traveling salesperson

• Entertainment, education– outdoor Internet access – multi user games– M-learning : E-learning

Page 45: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

45

Dashen bank

• The first mobileBanking service in

Ethiopia

Page 46: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

46

Mobile computing application…

• Location aware – find services in the local environment, e.g. printer– nearest cash ATM/ shop / restaurant/hotel

• Web access & Communication– outdoor Internet access– Electronic Mail– Chatting

• Application Services in general – push: e.g., breaking news info– pull: e.g., nearest cash ATM

Page 47: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

47

NextBus: Customer Service

• The Problem– Buses in San Francisco have difficulty keeping to 20

minute schedule during rush hours– Posted schedule becomes meaningless

• The Solution– Bus riders carrying Internet-enabled cell phone or

PDA helps:• Find estimated arrival time at each stop, digitally in real time• Soon location-based advertisements will pop up—you have time to

get a cup of coffee before the bus arrives—Starbuck’s is 200 feet to the right

Page 48: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

48

NextBus (cont.)

• The Results– Passengers in San Francisco are happy with the

system• Worries about missing the bus are diminished• May discover they have time for a cup of coffee

before the bus arrives– Bus company can:• Schedule better• Arrange for extra buses when needed• Improve operations

Page 49: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

49

NextBus Operational Model

Page 50: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

51

Activity

• State one mobile application idea that you will develop as your course project .

• Start thinking about What you will do ?

Page 51: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

52

Comparison to Wired Net.• Wired Networks- high bandwidth- low bandwidth variability- can listen on wire- high power machines- high resource machines- need physical

access(security)- low delay- connected operation

• Mobile Networks- low bandwidth- high bandwidth variability- hidden terminal problem- low power machines- low resource machines- need proximity- higher delay- disconnected operation

Page 52: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

53

Home work

• Read about – Microsoft Surface

– The sixth Sense by MIT

Page 53: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

54

Today

• Mobile OS • Mobile computing issues & Challenges • Mobile applications development

Page 54: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

55

Mobile OS

• is the operating system that controls a mobile device similar in principle to an operating system such as Windows, Mac OS, or Linux that controls a desktop computer or laptop.

Page 56: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

57

Types of Mobile OS

• Symbian– Market share(2010): 37.6%( #1 ) – License : open source– Company: Nokia.– CPU Architecture: ARM– Programmed in: C++– Application store: Symbian Horizon,Ovistore(10000+)– Package manager: Nokia Ovi Suite– Other: multi-touch, easily affordable cost

Page 57: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

58

Symbian (Nokia)• Pros– Massive global reach

• Leads WW market with 62% of smartphone traffic

– being open source could help accelerate pace of innovation

• Issues– Limited reach in the US– Application distribution more difficult today vs.

iPhone’s app store – Manufacturer dependent

Page 58: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

59

Types of Mobile OS

• Android– Market share(2010): 22.7% – License : open source– Company: Open Handset Alliance(Google).– CPU Architecture: ARM, x86– Programmed in: C, C++, Java– Application store: Android market(100,000+)– Package manager: APK– Other: multi-touch, Linux

Page 59: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

60

Android (Google)• Pros:– Open source => accelerate pace of

innovation– Manufacturer-independent => could help

accelerate consumer adoption– Technology support (e.g., touchscreen,

GPS, accelerometer, video and still cameras)

• Issues:– Late to market relative to iPhone

Page 60: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

62

Gyroscope

• A gyroscope is a device for measuring orientation, based on conservation of angular momentum.

• 2010: $5, based on MEMS technology

• a single part with gyroscopic sensors and an accelerometer

• output up to six full degrees of freedom.

Page 61: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

63

Proximity sensor

• A proximity sensor detects the presence of nearby objects without physical contact

Page 62: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

64

Sensors

• Ambient Light Sensor• 3D Accelerometer• Proximity Sensor• Temperature and Pressure Sensor

Page 63: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

65

Types of Mobile OS

• BlackBerry RIM OS– Market share(2010): 16.0% – License : Proprietary– Company: Research in motion (RIM).– CPU Architecture: ARM– Programmed in: Java– Application store: Blackberry App World(30000+)– Package manager: Blackberry Desktop Manager– Other: not multi-touch, push email service

Page 64: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

66

BlackBerry OS (RIM)• Pros:

– Large reach and data-hungry user base• Leads US market with 31% of smartphone traffic • #3in WW market with 11% of smartphone traffic

– Developers not limited to single distribution channel• Issues:

– Less Developer momentum– Application distribution more difficult today vs.

iPhone’s app store – Users more email focused vs. web consuming iPhone

users– RIM / hardware dependent

Page 65: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

67

Types of Mobile OS

• Apple iOS– Market share(2010): 15.7%– License : Proprietary– Company: Apple.– CPU Architecture: ARM– Programmed in: C, C++, Objective-C– Application store: Apple App Store(300,000+)– Package manager: iTunes– Other: Mac OS X, multi-touch, for iphone ,ipod touch

ipad, Apple Tv only

Page 66: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

68

iPhone OS (Apple)• Pros:

– Strong user growth and data-hungry user base• More than 10 million iPhones sold

– Application store creating a vibrant app ecosystem with great momentum• More than 3K applications (~20% free)• More than 1 million downloads

– Powerful technology (e.g., multi-touch, GPS, accelerometer)

• Issues:

– App approval process is largely a black-box to developers– Apps viewed as competitive to Apple are often shut down– App store is the only authorized distribution channel– Apple / hardware dependent

Page 67: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

69

Types of Mobile OS

• Windows Mobile– Market share(2010): 4.2%– License : Proprietary– Company: Microsoft.– CPU Architecture: ARM– Programmed in: C++– Application store: Windows Marketplace for Mobile– Package manager: Windows Mobile Device Center/

ActiveSync– Other: multi-touch, Windows CE

Page 68: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

70

Windows Mobile• Pros

– Strong user reach• #2 in US market with 30% of smartphone traffic

– Manufacturer independent – >18K apps– Windows Mobile 7 support refurbish UI and multi-

touch• Issues

– Less developer enthusiasm vs. that for iPhone and Android

– Application distribution more difficult today vs. iPhone’s app store

Page 69: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

71

Types of Mobile OS

• Others – Palm OS- mobile operating system initially

developed by Palm– webOS – Mobile operating system from HP/Palm– Bada - Mobile operating system developed by

Samsung Electronics– MeeGo OS – from Nokia and Intel (open source,

GPL)

Page 71: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

73

More on Mobile OS• Metrics

– AdMob metrics (http://www.admob.com/s/solutions/metrics)

– Opera State of the Mobile Web Report (http://www.opera.com/mobile_report/)

• Mobile OS introductions / summaries– http://en.wikipedia.org/wiki/Symbian_OS– http://en.wikipedia.org/wiki/IPhone_OS– http://en.wikipedia.org/wiki/Windows_Mobile– http://en.wikipedia.org/wiki/Google_Android– http://en.wikipedia.org/wiki/BlackBerry_OS

• Comparison / analysis– http://www.brighthand.com/default.asp?newsID=14142– http://www.osnews.com/story/20329/SDK_Shoot-Out_Andr

oid_vs_iPhone– http://weblog.infoworld.com/fatalexception/archives/2008/

09/sdk_shootout_an.html– http://www.alleyinsider.com/2008/10/iphone-app-store-s-b

rutal-reality-get-viral-or-don-t-quit-your-day-job

Page 72: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

78

Mobile computing issues & Challenges

• Location issues • Connection Quality• Device limitations• Active transaction• Security risks • Wide variety terminals and devices with

different capabilities

Page 73: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

79

Challenges

• Location – Device location is always changing– Mobility: challenges and opportunities– Localization & Location sensitivity

Page 74: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

80

Location…

• Localization is the ability of the architecture of the mobile application to accommodate logic that allows the selection of different business logic, level of work flow, and interfaces based on a given set of location information commonly referred to as locales.

• E.g Location in Ethiopia currency ETB , TAX… e-commerce Web sites are able to take into account the different taxation rules depending on the locale of the sale and the location of the purchase

Page 75: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

81

Location…

• Location sensitivity is the ability of the device and the software application to first obtain location information while being used and then to take advantage of this location information in offering features and functionality.

Page 76: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

82

Colleting location

• methods for collecting location– Prompt the user to select the location – Using the device( GPS, signal strength and

triangulation can be used to come up with some approximate location information, depending on the cellular network)

• Techniques – Triangulation – Proximity– scene analysis

Page 77: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

84

Location-Based Applications (LBAs)

• Examples:

Location-based recommendations, geo-tagging GeoLife: shopping list when near a grocery storeTrafficSense: real-time traffic conditionsFieldworker assistant

• Location expresses context of user– Facilitates content delivery

Page 78: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

85

Page 79: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

86

Connection ….

• Quality of Service– Wireless connection is used usually – mobility means loss of network connectivity

reliability.– Frequent Disconnection – Variable Bandwidth( indoor , outdoor)– Heterogeneous Networks (2G,3G, Satellite, wifi..

Page 80: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

87

Frequent Disconnections

· Handoff blank out (>1ms for most cellulars)· Drained battery disconnection· Voluntary disconnection (turned off to

preserve battery power, also off overnight)· Theft and damage (hostile environment)· Roam-off disconnections

Page 81: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

88

Connection….

• Address Migration– Existing applications send packets to a fixed network

address– Need to support dynamically changing “local”

addresses as mobile device moves through network

Mobile IP• Apps should stop & resume must know how to

deal with lack of reliable connectivity.– E.g user traveling in a train and downloading report

using his PDA while passing through a tunnel .

Page 82: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

89

Solution variable Bandwidth

» Caching is a good idea, e.g., web cache– Asynchronous/spool-oriented applications, like mail or printing

» Trickle back data when bandwidth is available– Disconnected file systems:

• Applications adaptation to changing quality of connectivity» High bandwidth, low latency: business as usual» High bandwidth, high latency: aggressive pre fetching» Low bandwidth, high latency: asynchronous

• Vertical handoff in case of heterogeneous network.

Page 83: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

90

Device limitation

• Device limitation – Power– Storage– CPU– user interface

Page 84: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

91

Device limitation …

• Mobile device are small!– Physical limitation => Display , Memory, Cpu,

Power… limitations – The heaviest part of mobile devices are batteries

Page 85: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

92

Mobile Computers

• CPUs– Multiple cores– Mega Hertz. 1 Giga Hertz new

• RAM– 512 MB, common in 2011– in Giga Bytes new

• Persistent Storage– 32 GB MicroSD common in 2011

Page 86: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

93

Limitations of the Mobile Computer

· Short battery lifetime (max ~ 5 hours)· Subject to theft and destruction => unreliable· Highly unavailable (normally powered-off to

conserve battery)· Limited capability (display, memory, input

devices, and disk space)· Lack of de-facto general architecture: hand-

helds, communicators, laptops, and other devices

Page 87: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

94

• Support for multiple platforms

?????

Page 88: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

95

Device limitation …

• Varying user interface – some alternative interfaces are voice user

interfaces, smaller displays, stylus and other pointing devices, touch-screen displays, and miniature keyboards

– For example, drivers who want to get some directions to their destination may use a data-enabled cellular phone.

– Most apps must be multichannel /multimodal

Page 89: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

96

Active transaction

• Active transaction– most stationary applications, passive systems

because they are in a passive state, waiting for some external signal from the user to tell them to start doing some particular thing..

– then comes message based system any one participant in the system could send a message to another participant in the system. and, if desired, in an asynchronous manner.

Page 90: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

97

Active transaction..

• Later came the idea of push. In the push model of communication, an information producer announces the availability of certain types of information, an interested consumer subscribes to this information, and the producer periodically publishes the information (pushes it to the consumer).

• There is much in common between the concepts of messaging systems and push systems. The principle difference is that messaging systems are asynchronous by definition. This requirement does not exist for push based systems. Push systems, by definition, are active systems.

Page 91: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

98

Active transaction…

• we will define active transactions as those transactions initiated by the system. Active transactions may be synchronous or asynchronous.

• Synchronous transactions are time dependent transactions.

Page 92: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

99

Mobile software development(WHY?)

• Motivation In Africa:– + 1 billion people– + 30 million computers– + 264 million mobiles

• Largest growth rate of mobile subscribers• For most Africans/Ethiopians , our mobile is

our only computing device!

Page 93: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

100

Mobile Application Marketplaces

•  Google, Apple, Nokia, Palm, etc. have mobilemarketplaces where one can sell applications.

–  Application delivery over the Network!•  Apple iPhone App store:

–  350,000 applications–  1 Billion downloads !–  $1 Million USD a day in sales!

Page 94: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

101

Mobile Software Development• Challenges–Different Operating Systems.–Different Screen Size.

• are a challenge even on the same OS

–Different Input methods.• Keyboard (Keypad – Keyboard – Soft

Keyboard),• TrackBall/Joystick, Pen (Handwriting), Touch,• Microphone (Voice Command), Camera

(Image Recognition), GPS

Page 95: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

102

–Different Hardware Architectures.•most dominant architectures in the

market of CPUs is the ARM architecture

–Limited computing capabilities.–Lack of good language support–Security • Always shared medium

Page 96: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

103

Mobile Software Development

• Solutions to Challenges– Multi Modal Interface.

• E.g Combining the face and speech recognition together helps to increase speech recognition accuracy and lower word error rate

– Simplified Algorithms (Speed ).– Data Compression (Size & Speed).– Programming Language Selection.– Screen independent graphical coordinates or layout

managers.– Unicode Support– Encryption and authentication

Page 97: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

104

Mobile Software Development

• Programming Languages– C/C++, .NET, Java ME, FlashLite, SilverLight Mobile– JavaFX, HTML/WML/JAVASCRIPT/AJAX

• selection is same reasons for using them on the desktop.• Some languages are for web,• some are for performance, • some for portability,• some of skills and preferences.

Page 98: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

105

Architecture( Manged Vs. native)

• If you write programs for the mobile devices you should plan to work in the Compact Framework using “managed” code

• This makes your programs– Portable– Safe– Easy to write

Page 99: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

106

Native (unmanaged) code

• compiled for the specific hardware in the device

• Has direct access to the processor instruction set

Page 100: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

107

Managed Code

• Programs execute within a managed environment

• Code is not produced for a specific target hardware

• Code is validated before execution

Page 101: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

108

So, Rules To Code By

• Use Managed Code wherever possible• Good reasons to use Native Code:– You *really* want speed– You *really* want to drive the hardware directly– You are being paid *really* large sums of money

to do it

Page 102: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

109

Why Android?

• Open source • Easy to develop • Wide tech support • Android is going to be the #1 Mobile Os in the

market by 2014 !

Page 103: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

110

Developers Toolkits…

• To start to develop you need:– JDK– Eclipse IDE– ADT plug-in– Android SDK

Page 104: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

111

Mobile Application

•  Group project developing mobile app and demo.

• A chance to demonstrate your creativity!

• Surprise price for the Best App!

Page 105: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

112

Application Categories

•  Informational–  Converters, weather, area-guides, finance–  Location-based

•  Data Entry–  Business records, medical records, exercise–  Send info to server for aggregation?

•  Multimedia–  Camera, video, music, photos, ringtones

•  Shopping–  m-commerce, compare prices

Page 106: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

113

Application Categories

•  (Social) Networks–  IM, MySpace, Facebook

•  Communication–  Skype, VoIP, SMS

•  Business productivity–  spreadsheets, inventory

•  Utilities–  Torch (flashlight), notepad, stopwatch

•  Games

Page 107: The iphone Projection keyboard MyVuPortable projectors Andriod The iPad Mobile Computing 1.

114

Summary

• Computing Trend• Existing computing paradigms• Mobile computing applications• Different types of mobile devices • Mobile OS • Mobile Software Development