What is Pervasive computing ?. Pervasive computing is computing power that enables software applications available anytime and anywhere. Personal Digital Assistant (PDA) and cell phone are the first widely available and used pervasive computing devices. . traditional applications VS mobile applications .
1. Pervasive and Mobile Computing: A 3-tier Architecture Yanyun lu
2. What is Pervasive computing ? Pervasive computing is computing power that enables software applications available anytime and anywhere.
Personal Digital Assistant (PDA) and cell phone are the first widely available and used pervasive computing devices.
3. traditional applications VS mobile applications The behavior and use of traditional applications (desktop) is greatly influenced by the input explicitly provided by its users
dealing with traditional desktop interfaces, developers could give users applications that took advantage of high bandwidth, large screens with extended graphics capabilities, and rich input methods.
4. traditional applications VS mobile applications mobile users have to interact with applications on small screens with limited graphics capabilities and minimal bandwidth.
pervasive applications must provide the user with relevant and timely information that enables them to act on that information while minimizing the navigation and text entry needed.
pervasive applications must become adaptive to the intent of the users and their environment in order to make mobile workforce more effective.
5. What is the key to make mobile workforce more effective? context is a key to achieve this goal
context is the aggregate knowledge of mobile user or device’s state.
including location, situation, surroundings, and user’s preferences and activity
6. existing research and industry approaches addressing the context adaptation problems As mobile devices or users move from one location to another, pervasive applications must adapt themselves to new environments
Sentient Computing framework , Hewlett-Packard’s Cooltown project , PIMA and so on
7. Disadvantage of those approaches
These approaches mainly support a specific task
None of them provide a suitable architectural framework that includes the following capabilities:
(i) gathering context information from a variety of sources, such as corporate system, wireless service providers, indoor and outdoor location information;
(ii) easily adapting themselves to existing IT infrastructure and enterprise applications;
(iii) adapting current software development process, therefore providing a generic approach to minimize the developers’ learning curve.
8. A three-tier architecture The 3-tier model is designed to better resolve the issues that exist in the framework solutions described before.
3-tier architecture takes a variety of context sources (not just location-aware)
This architecture is made up of three separate layers (namely, Collection, Analysis and Action)
9. Some useful background knowledge Context-aware Pervasive Computing
A pervasive computing system that strives to be minimally intrusive has to be context-aware. It must be cognizant of its user’s state and surroundings, and must modify its behavior based on this information.
A key challenge is obtaining the information needed to function in a context-aware manner .
Examples of such information including position, orientation, the identities of people nearby, locally observable objects and actions, and emotional and physiological state.
10. Some useful background knowledge Context Model
Context model is designed based on the activities identified by the business analyst.
Context model designed and created in conjunction with the data model and uses similar terminology and modeling techniques to minimize the learning curve.
11. Some useful background knowledge Three main components of the context model
(1) similar to database entities they could be a person, place, or thing.
(2) the difference is they are considered relevant to the behavior of the application.
(3) have unique keys and can also have properties associated with them, which store more static information which is needed to make a state determination.
(4) Entities also have a lease or lifespan within the context server. If the entity is no longer relevant it should no longer exist in the context server.
12. Some useful background knowledge 2. Relationships
(1) Relationships link entities together in the context server.
(2)one principle link between two entities and it is a directed link (e.g., Employee ATTENDS Meeting).
13. Some useful background knowledge 3. States
the most critical part of the context model and serve as the differentiator between a data model and a context model
Their role is to capture an entity or relationship’s current circumstance or situation.
14. Some useful background knowledge The context designer must make some decisions and tradeoffs in determining what information to model.
Everything can be modeled as an entity in the context model, but there must be a state change affecting that entity, otherwise it has no value in the context model.
A good rule for modeling is to design the model you believe will represent the context of the scenario.
15. THREE-TIER ARCHITECTURE MODEL
16. THREE-TIER ARCHITECTURE MODEL As shown in Figure 1 , three layers include:
(i) Collection layer:
identifies and collects the user’s context and environment data by deploying sensors to connect to the data from enterprise applications, environmental sources, or other content providers.
(ii) Analysis layer:
manages and interprets context data and references it at any time and updates it accordingly with minimal involvement from the user. Interpreters can be deployed within the context server to mediate conflicting context information, abstract higher–level context states or predict context state information based on history, preferences, and intent.
(iii) Action layer:
takes the information managed by the context server and uses it to change the behavior of an application, such as presentation, navigation, and application logic. The platform provides the capabilities to send actionable alerts to multiple devices, alter the user interface, or make requests and queries based on context state information and/or events.
17. Collection Tier - How to Get Context Data? The collection tier is the most critical tier in the three-tier approach. Its role is to gather context data from a variety of sources and implement the Context Model components based on that data.
In building this tier, the developer must consider that context data comes from static, dynamic, environment, and predictive sources (show in Table 1 next page)
18. Collection Tier - How to Get Context Data?
19. Gathering context related information: The collection layer focuses on two main components to gather context related information:
20. Sensors and Adapters in collection tier Adapters are not unique to context servers; they are conduits to existing enterprise and third–party data sources that gather context information.
Ideally, they are the same adapters used in existing web and client applications.
Rather than build our own adapter layer, we will use existing adapter frameworks that organizations have already spent a considerable amount of time and effort to implement.
The sensor is the critical component in the collection tier. The sensor gathers data from the adapter and creates, updates, or deletes information in the context server.
21. Analysis Tier The analysis tier provides the framework to manage context entities, relationships, and states within the context server.
Interpreters are components within the analysis tier that focus on reading context state information, applying application or business logic, and setting a higher level or derived context state.
22. Action Tier Based on these context states, specific actions are triggered in response.
The action tier affects the behavior of an application based on the previously preformed analysis
Our goal in achieving this is to focus on three action areas: presentation, navigation, and application logic.
23. Action Tier Once the context server has determined that state change has occurred it can act on that state in different ways
(i) Presentation: Actions that cause the content or format of the application to change as the person is using it.
(ii) Navigation: Actions that minimize the needed navigation path a user has to perform based on a proactive context event.
(iii) Application Logic: Enables the developer to alter the behavior and rules for accessing and using specified applications and services.
24. Action Tier Presentation and Navigation affects the application’s user interface based on context data. Sample actions include:
When the user is driving, change the presentation mode from text to voice.
Display menu options that are only relevant to the user’s current situation and intent.
The system indicates the best way for salesperson “A” to contact salesperson “B” (cellphone, e–mail, landline phone of meeting place, etc.).
25. CONCLUSION A three-tier architecture divides the process of building pervasive applications into three stages: Collection, Analysis, and Action.
In this building process, collecting contextual information is the most critical part because of the variety of the context sources as well as the complexity of the human behavior.
Despite the context collection challenges, three-tier approach enables developers to address a number of mobility scenarios, reduces developers’ learning curve by adapting normal software development process to build context-aware applications that focus on the user’s activity
Using three-tier approach enables pervasive applications to easily adapt to existing IT infrastructure and enterprise applications
 Michel Barbeau, “Mobile, Distributed, and Pervasive Computing”, Handbook of
Wireless Networks and mobile computing (Ivan Stojmenovic, edit), Wiley, Jan. 2002
 G.D. Abowd, “Software Engineering Issues for Ubiquitous Computing”, in
proceedings of the 1999 International Conference on Software Engineering,
 Yuval Boger, “Context Awareness and Mobile Computing”, Pocket PC Summit,
 M. Satyanarayanan, “Pervasive Computing: Vision and Challenges”, IEEE Personal Communications, August 2001
 Karen Henricksen, Jadwiga Indulska and Andry Rakotonirainy, “Infrastructure for
Pervasive Computing: Challenges”, 2001
 Jerey Hightower and Gaetano Borriello, “Location Systems for Ubiquitous
Computing”, Aug. 2001
 Guanling Chen and David Kotz, “A Survey of Context-Aware Mobile Computing
Research”, Dartmouth Computer Science Technical Report TR2000-381, 2000
 M. Weiser, “Some Computer Science Issues in Ubiquitous Computing”, July 1993
 Guruduth Banavar, James Beck, Eugene Gluzberg, Jonathan Munson, Jeremy
Sussman, Deborra Zukowski, “Challenges: an application model for pervasive
computing”, 6th Proc annual Intl. Conference on Mobile Computing and Networking
MOBICOM 2000, August 2000
 Want, Z. and Garlan, D., “Task-Driven Computing”, Technical Report, CMU-CS-
00-154, School of Computer Science, Carnegie Mellon University, May 2000.
 Harter, A. et al., “The Anatomy of a Context-Aware Application”, Proceedings 5th
Annual Intl. Conference on Mobile Computing and Networking (MobiCom’99),
 Kindberg, T. et al., “People, Places, Things: Web Presence for the Real World”,
http://www.cooltown.hpl.hp.com, Hewlett- Packard Labs Technical Report HPL-
 Blair, G,. Blair, L., Issarny, V,. Tuma, P,. Zarras, A,. “The Role of Software
Architecture in Constraining Adaptation in Component-Based Middleware
Platforms”, Middleware 2000 Proc LNCS 1795 – IFIP/ACM NY, USA, April 2000
 Esler, M. et al., “Next Century Challenges: Data-Centric Networking for Invisible
Computing”, Proceedings 5th Annual Intl. Conference on Mobile Computing and
Networking (MobiCom’99), August 1999.
 N.M. Belaramani, Y. Chow, V.W. Kwan, “A Component-based Software
Architecture - For Pervasive Computing”, 2001
 Thomas Phan, Lloyd Huang, Chris Dulan, “Challenge: Integrating Mobile Wireless
Devices Into the Computational Grid”, http://pcl.cs.ucla.edu/pub/papers/mobicom02,
30. Proposed questions What is Pervasive computing ?
31. Proposed solution Pervasive computing is computing power that enables software applications available anytime and anywhere.
32. Proposed questions
What are the three layers of the THREE-TIER ARCHITECTURE MODEL ?
33. Proposed solution Collection, Analysis and Action
34. Proposed questions What is the key to make mobile workforce more effective?
35. Proposed solution context is the key
Context is the aggregate knowledge of mobile user or device’s state including location, situation, surroundings, and user’s preferences and activity.
36. Thank you