19
CPET 565 Mobile Computing Systems CPET 565 Mobile Computing Systems Middleware Middleware Lecture 12 Lecture 12 Hongli Luo Hongli Luo Indiana University-Purdue University Fort Wayne Indiana University-Purdue University Fort Wayne

CPET 565 Mobile Computing Systems Middleware Lecture 12 Hongli Luo Indiana University-Purdue University Fort Wayne

Embed Size (px)

Citation preview

Page 1: CPET 565 Mobile Computing Systems Middleware Lecture 12 Hongli Luo Indiana University-Purdue University Fort Wayne

CPET 565 Mobile Computing SystemsCPET 565 Mobile Computing Systems

MiddlewareMiddlewareLecture 12Lecture 12

Hongli Luo Hongli Luo Indiana University-Purdue University Fort WayneIndiana University-Purdue University Fort Wayne

Page 2: CPET 565 Mobile Computing Systems Middleware Lecture 12 Hongli Luo Indiana University-Purdue University Fort Wayne

Introduction Mobile MiddlewareIntroduction Mobile Middleware What is Mobile MiddlewareWhat is Mobile Middleware Mobile Middleware for EnterpriseMobile Middleware for Enterprise Three major types of middlewareThree major types of middleware

• AdaptationAdaptation• AgentsAgents• Service DiscoveryService Discovery

Page 3: CPET 565 Mobile Computing Systems Middleware Lecture 12 Hongli Luo Indiana University-Purdue University Fort Wayne

Introduction Mobile MiddlewareIntroduction Mobile Middleware What is Mobile MiddlewareWhat is Mobile Middleware DefinitionDefinition

• ““Middleware is software that supports mediation Middleware is software that supports mediation between other software components, fostering between other software components, fostering interoperability between those components across interoperability between those components across heterogeneous platforms and varying resource heterogeneous platforms and varying resource levels,” – Fundamentals of Mobile and Pervasive levels,” – Fundamentals of Mobile and Pervasive Computing, by Adelstein, Gupta, Richard III, and Computing, by Adelstein, Gupta, Richard III, and Schwiebert, McGraw-Hill, 2005 Schwiebert, McGraw-Hill, 2005

Page 4: CPET 565 Mobile Computing Systems Middleware Lecture 12 Hongli Luo Indiana University-Purdue University Fort Wayne

Introduction Mobile Middleware – Introduction Mobile Middleware – What is Mobile MiddlewareWhat is Mobile Middleware

Definition from Definition from http://www.bitpipe.com/tlist/Mobile-http://www.bitpipe.com/tlist/Mobile-

Middleware.htmlMiddleware.html • Mobile middleware allows for the implementation of Mobile middleware allows for the implementation of

distributed applications connecting mobile and distributed applications connecting mobile and enterprise applications over wireless networksenterprise applications over wireless networks

Provide the “black box” technology that connects Provide the “black box” technology that connects mobile devices on the front lines of the mobile devices on the front lines of the enterprise to the back-end applications running enterprise to the back-end applications running on corporate serverson corporate servers

Page 5: CPET 565 Mobile Computing Systems Middleware Lecture 12 Hongli Luo Indiana University-Purdue University Fort Wayne

Middleware for EnterpriseMiddleware for Enterprise Example ApplicationsExample Applications

• Wireless email Wireless email • Speech middlewareSpeech middleware• Firewall and mobile VPN (Virtual Private Network)Firewall and mobile VPN (Virtual Private Network)• Network connectivity Network connectivity • Device managementDevice management• Enterprise AccessEnterprise Access

CRM (Customer Relationship Management)CRM (Customer Relationship Management) EAI (Enterprise Application Integration)EAI (Enterprise Application Integration) Enterprise data & information integrationEnterprise data & information integration Insurance ClaimInsurance Claim

Page 6: CPET 565 Mobile Computing Systems Middleware Lecture 12 Hongli Luo Indiana University-Purdue University Fort Wayne

From “Mobile Middleware: The Next Frontier in Enterprise Application Integration” by Tamara Kanoc

Page 7: CPET 565 Mobile Computing Systems Middleware Lecture 12 Hongli Luo Indiana University-Purdue University Fort Wayne

Introduction Mobile MiddlewareIntroduction Mobile Middleware Challenges in developing and deploying a Challenges in developing and deploying a

mobile applicationmobile application• Variety of wireless networks availableVariety of wireless networks available• Variety of devices and mobile operating platformsVariety of devices and mobile operating platforms• Need to communicate with roaming workers Need to communicate with roaming workers • Disparity between the LAN environment and the Disparity between the LAN environment and the

mobile environmentmobile environment• Difficulty in extending enterprise applications into the Difficulty in extending enterprise applications into the

fieldfield Security, scalability, reliability, easy integration, multiple Security, scalability, reliability, easy integration, multiple

network and platform supportnetwork and platform support

Page 8: CPET 565 Mobile Computing Systems Middleware Lecture 12 Hongli Luo Indiana University-Purdue University Fort Wayne

Introduction Mobile MiddlewareIntroduction Mobile Middleware Benefits of mobile middlewareBenefits of mobile middleware

• Speeds development and deployment cyclesSpeeds development and deployment cycles• Reduces risk by offering a field proven solutionReduces risk by offering a field proven solution• Creates application once and run it over any network Creates application once and run it over any network

or deviceor device• Provide efficient and reliable communicationsProvide efficient and reliable communications• Mobile middleware also providesMobile middleware also provides

Guaranteed message deliveryGuaranteed message delivery Push messagingPush messaging Data securityData security roamingroaming

Page 9: CPET 565 Mobile Computing Systems Middleware Lecture 12 Hongli Luo Indiana University-Purdue University Fort Wayne

Middlewares for EnterpriseMiddlewares for Enterprise Oracle, Oracle, http://www.oracle.com/index.html http://www.oracle.com/index.html

CTO Summit, CTO Summit, http://www.oracle.com/events/ctosummit/index.html http://www.oracle.com/events/ctosummit/index.html

• Successful Mobile Strategies, 11 minutes Successful Mobile Strategies, 11 minutes Mobile Field Service, Mobile Field Service,

http://www.oracle.com/applications/service/mobfsrv_cont.htmlhttp://www.oracle.com/applications/service/mobfsrv_cont.html

• enables customer service agents to access and enables customer service agents to access and update key information via both hand-held and update key information via both hand-held and

laptop devices.laptop devices.

Page 10: CPET 565 Mobile Computing Systems Middleware Lecture 12 Hongli Luo Indiana University-Purdue University Fort Wayne

Middlewares for EnterpriseMiddlewares for Enterprise Sybase – iAnywhere Solutions, Sybase – iAnywhere Solutions,

• Leading provider of mobile enterprise, database and Leading provider of mobile enterprise, database and RFID software technologyRFID software technologyhttp://www.sybase.com/ianywherehttp://www.sybase.com/ianywhere

• Mobile Enterprise Mobile Enterprise http://www.sybase.com/products/mobileenterprisehttp://www.sybase.com/products/mobileenterprise

• RFID Anywhere: RFID Anywhere: http://www.sybase.com/products/rfidsoftware/rfidanywhttp://www.sybase.com/products/rfidsoftware/rfidanywherehere

RFID Anywhere is a flexible software infrastructure that RFID Anywhere is a flexible software infrastructure that integrates business logic and processes with a variety of integrates business logic and processes with a variety of automatic data collection and sensor technologies, automatic data collection and sensor technologies, including RFID, barcodes, mobile devices, PLCs, etc.including RFID, barcodes, mobile devices, PLCs, etc.

Developers and integrators can focus on writing business Developers and integrators can focus on writing business logic, not low-level hardware interfaces.logic, not low-level hardware interfaces.

Page 11: CPET 565 Mobile Computing Systems Middleware Lecture 12 Hongli Luo Indiana University-Purdue University Fort Wayne

Middlewares for EnterpriseMiddlewares for Enterprise Nokia, Mobile Middleware – Nokia IntellisyncNokia, Mobile Middleware – Nokia Intellisync http://usa.nokia.com; http://usa.nokia.com; Support more than 400 different mobile Support more than 400 different mobile

devices from over 6 different OSdevices from over 6 different OS• Palm, Symbian, Windows Mobile, Windows OS, Palm, Symbian, Windows Mobile, Windows OS,

PocketPC, SyncML, BREWPocketPC, SyncML, BREW Connect, sync and extend solutions with Connect, sync and extend solutions with

Microsoft Exchange, Lotus Domino, Novell Microsoft Exchange, Lotus Domino, Novell Groupwise, IMAP/POP3 email interface Groupwise, IMAP/POP3 email interface

Page 12: CPET 565 Mobile Computing Systems Middleware Lecture 12 Hongli Luo Indiana University-Purdue University Fort Wayne

Middlewares for EnterpriseMiddlewares for Enterprise IBMIBM Net’s future is mobile middleware, December Net’s future is mobile middleware, December

7, 2006, eWeek, 7, 2006, eWeek, http://www.eweek.com/article2/0,1895,2069820,00.asphttp://www.eweek.com/article2/0,1895,2069820,00.asp

• Data-sharing middleware platform for mobile Data-sharing middleware platform for mobile devicesdevices

• Code name: Infinity Code name: Infinity based on a number of industry-standard technologies, based on a number of industry-standard technologies,

including XML, HTTP, HTML, JavaScript, and Bluetooth including XML, HTTP, HTML, JavaScript, and Bluetooth technologytechnology

Page 13: CPET 565 Mobile Computing Systems Middleware Lecture 12 Hongli Luo Indiana University-Purdue University Fort Wayne

Middlewares for EnterpriseMiddlewares for Enterprise Sprint Campus Connect, Sprint Campus Connect,

http://www.sprint.com/business/http://www.sprint.com/business/ Novell Novell

• Novell GroupWise - http://www.novell.com/groupwiseNovell GroupWise - http://www.novell.com/groupwise a cross-platform collaborative software, a cross-platform collaborative software, offering e-mail, calendaring, instant messaging and document offering e-mail, calendaring, instant messaging and document

managementmanagement

• Mobility Solutions Mobility Solutions Groupwise Mobile Server Groupwise Mobile Server Blackberry Enterprise Server for Novell GroupwiseBlackberry Enterprise Server for Novell Groupwise

SAPSAP SiebelSiebel

Page 14: CPET 565 Mobile Computing Systems Middleware Lecture 12 Hongli Luo Indiana University-Purdue University Fort Wayne

AdaptationAdaptation TasksTasks

• Adapt behavior and expectations to conserve scare Adapt behavior and expectations to conserve scare resourcesresources

• Adjust quality of service (QoS) – guarantee Adjust quality of service (QoS) – guarantee performanceperformance

How should adaptation be supported?How should adaptation be supported?• Monitor resources Monitor resources • adapt appropriatelyadapt appropriately

Typically does not change its core behaviorTypically does not change its core behavior Increase or decrease the fidelity of the dataIncrease or decrease the fidelity of the data

Page 15: CPET 565 Mobile Computing Systems Middleware Lecture 12 Hongli Luo Indiana University-Purdue University Fort Wayne

AdaptationAdaptation

Measures for middleware adaptation Measures for middleware adaptation strategiesstrategies• FidelityFidelity

The degree to which a data item available to an The degree to which a data item available to an application matches a reference copyapplication matches a reference copy

Perceived quality and consistencyPerceived quality and consistency

• Agility Agility An adaptation middleware’s responsiveness to An adaptation middleware’s responsiveness to

changes in resource levelschanges in resource levels

• ConcurrencyConcurrency Multiple concurrent applications run on the mobile Multiple concurrent applications run on the mobile

devicesdevices

Page 16: CPET 565 Mobile Computing Systems Middleware Lecture 12 Hongli Luo Indiana University-Purdue University Fort Wayne

AgentsAgents Allowing programs to move autonomously Allowing programs to move autonomously

about a network in order to access remote about a network in order to access remote resourcesresources

• Migrate to servers -> access data or computational Migrate to servers -> access data or computational resources -> migrate again -> return to home baseresources -> migrate again -> return to home base

BenefitsBenefits• Disconnection is easily supportedDisconnection is easily supported• Access to large amount of data to solve problemAccess to large amount of data to solve problem• Allow the functionality of servers to be expanded Allow the functionality of servers to be expanded

dynamicallydynamically Without modifying a server’s code Without modifying a server’s code

Page 17: CPET 565 Mobile Computing Systems Middleware Lecture 12 Hongli Luo Indiana University-Purdue University Fort Wayne

AgentsAgents Examples of mobile codesExamples of mobile codes

• Browsers support Javascript, Java appletsBrowsers support Javascript, Java applets• Applets travel from server to client and are Applets travel from server to client and are

executed on the clientexecuted on the client Mobile agentsMobile agents

• Move freely about a networkMove freely about a network• Make decisions on where to travel nextMake decisions on where to travel next• Perform computations and collect dataPerform computations and collect data• Communicate with other agentsCommunicate with other agents• Create new agentsCreate new agents

Page 18: CPET 565 Mobile Computing Systems Middleware Lecture 12 Hongli Luo Indiana University-Purdue University Fort Wayne

AgentsAgents Mobile agents to search a set of databasesMobile agents to search a set of databases Steps:Steps:

• Dispatch agents to database servers or to machines Dispatch agents to database servers or to machines close to the serversclose to the servers

• Agents perform queries against the database Agents perform queries against the database serversservers

• Agents sift the resultsAgents sift the results• Agents return home and deliver the resultsAgents return home and deliver the results

AdvantagesAdvantages• Save the bandwidthSave the bandwidth• Continuous network connectivity is not requiredContinuous network connectivity is not required• Executed on more powerful computersExecuted on more powerful computers

Page 19: CPET 565 Mobile Computing Systems Middleware Lecture 12 Hongli Luo Indiana University-Purdue University Fort Wayne

Service DiscoveryService Discovery Dynamically discovering and advertising Dynamically discovering and advertising

servicesservices Extend the client-server paradigmExtend the client-server paradigm

• Dynamic discovery of servicesDynamic discovery of services• Dynamic interaction between clients and servicesDynamic interaction between clients and services

Discover needed service on-demandDiscover needed service on-demand• E.g., wireless access point, printerE.g., wireless access point, printer

Service Discovery ProtocolService Discovery Protocol