200 likes | 344 Views
Requirements Elicitation for the Design of Context-aware Applications in a Ubiquitous Environment. Introduction. Interaction in the future The trend of human computer interaction (HCI) Beyond desktop computers Ubiquity – so common: anywhere, anytime that no one would notice their presence
E N D
Requirements Elicitation for the Design of Context-aware Applications in a Ubiquitous Environment
Introduction • Interaction in the future • The trend of human computer interaction (HCI) • Beyond desktop computers • Ubiquity – so common: anywhere, anytime that no one would notice their presence • Context become important • Any information that can be used to characterize the situation of entities that are considered relevant to the interaction between a user and an application • Big difference in software design • Different requirements under different context
Benefits of Context • Reduce input cost, effort, and time • Provide exciting user experience through new and convenient features • Better support cooperative application in different environment by, say, context sharing of partners
New Software Design Challenges • Move from humans vs. computers to humans vs. context-aware environments • Multimodal interactions • Multiple devices • Specifying and resolving possible conflicts of requirements • Ubiquitous activities are not so task-centric – more difficult in determining requirements • “Knowledge in the world” and sensors
Requirements elicitation methodology • Determine the different target groups of users • Estimate the typical contexts of these groups (especially those that possibly affect the system’s interactions) • For each of these contexts, enlist the requirements specific for the context. • Determine the users’ activities during the process of using the system. • For each activity, see how different contexts (from step 2) may impact on its interactions and determine the required adaptation • For each context-aware feature, detail the desired context-aware capabilities. • Make sure that the context-aware capabilities match and satisfy all the requirements elicited from step 3. Otherwise, it would mean that some required context-aware feature are missing and we should re-iterate from step 5 to handle those unaddressed requirements.
Computing Contexts Consideration • Available devices – multimodal, multiple procession • CPU – device limitation => server side • Memory - device limitation • Screen size – trans-coding, XSL • Energy • Bandwidth … => Often trade-off required => Fast technology improvement
User Contexts Consideration • Preference • Purpose • User calendar • Personal information • Facilities (e.g., vehicle, tools, belongings…) • Disability • Elderly and children users … => Requires “intelligence” in software, e.g., matchmaking, ranking, recommendations, etc.
Physical Contexts Consideration • Location • Time • Destination • Traffic condition • Physical limitations • Weather … => Sensors => “high level” information gathering (e.g., web crawlers, database interfaces…)
A scenario in 2010 Weather report: Rainstorm Temperature: 10~15。C Recommendation: Take an umbrella 7:00am Weather report: Rainstorm Temperature: 10~15。C Recommendation: Bring an umbrella
A scenario in 2010 (2) Good morning, Alice, login finished 9:00am
A scenario in 2010 (3) Reminder: You have an appointment at Restaurant A with Bob at 12:00am. 11:30am Here is the map. Turn left… Where is the way?
A scenario in 2010 (4) Sync. Download. Done. Let’s make another appointment 1:00pm Wirelessnetwork PDA Office computer Wired network Cell phone Personal computer
A scenario in 2010 (5) Recommendation: Restaurant B Alice curry Chris pizza Reminder: Chris is here. 5:00pm I love the food Recommend a restaurant nearby
A scenario in 2010 (6) Welcome back home, Alice. Turn on the light. 8:00pm Remote control: Turn on the heat!
Open Issues • Natural Interface • Relationship and conflicts of various contexts • Reasoning model • Privacy • Evaluation techniques
Conclusion • Notion of extended context • Requirements elicitation for ubiquitous application design • A meta-model and methodology • Reconciling user context requirements under different contexts with context awareness capabilities of the available features. • Analysis of some typical context-aware requirements and design considerations
Further and Ongoing work • Application in ubiquitous tourist assistance system • MAIS architecture for implementation • Three-tier view approach for implementation • Ubiquitous collaboration and agent-based computing
Q&A Thank you!