User talk:Harikrishna: Difference between revisions

Page contents not supported in other languages.
From KDE TechBase
mNo edit summary
mNo edit summary
Line 53: Line 53:


== Usecases ==
== Usecases ==
* [[Environment changing focus when user switching activity]]
* [[Changing focus when user switches activity]]
* [[Intelligent suggestions by the system]]
* [[Intelligent suggestions by the system]]
* [[Knowledge reuse]]
* [[Knowledge reuse]]

Revision as of 11:30, 27 August 2008

Dikku - the User Context framework

This section is track the discussions on the implementation of "User Context" in KDE. For a more general discussion of context in Nepomuk, check out here.

What is Context?

Though there are numerous definitions of Context, we would like to refine the important aspects of context as

  • where you are (location),
  • what you are doing (activity),
  • who you are with (contacts), and
  • what resources and devices are nearby...

Why Dikku?

Typically Desktop applications and widgets have been available as just normal tools which are in no way more "intelligent" than their physical counterparts (ok, apart from their ability to undo things ;)

They have just been heaped with functionality which adds to the clutter the user is already facing with the growing information-overload he already faces. They do not do anything that will help the user to reduce his overload, apart from what he tells them to do. So, something has to be done to tackle this now, when things are becoming more mobile!!

Continuing the passion for desktop innovation with KDE, we want to induce in our apps the "intelligence" to adjust themselves to the work the user is currently doing. Hence ....

Dikku is a new user context framework that exposes the current user activity and location to both plasma widgets as well as other applications.

Terms Used

Dikku means direction in Tamil; when we get lost we generally establish context of where we are based on direction. Currently when we are lost in information, we could look forward to Dikku for assisting us ;) So, I think the name fits. Any suggestions ?

Activities are a "more casual" term for things that range from adhoc grouping of apps and widgets for a purpose(like in virtual desktops) or projects (which have deadlines, tasks and resources).

Current Plans

Currently we plan to track the following information in Dikku:

  • the current task/project/activity the user is working on
  • the list of all currently known activities
  • geographical location of the user
  • whatever else we dream up ... =)

and allow for:

  • the creation of new activities
  • the association of resources with an activity


As Nepomuk project has already handled the bulk of work by doing a lot of research in this area, we can just reuse whatever is possible from them (the beauty of open source !)... Check out related Nepomuk links

Overview

The Architecture of Dikku can be split into three major parts:

1. Data Model - how the information is stored. We plan to use existing Nepomuk ontologies here

2. Learning Model - how the system observes the user, understands what he is doing and learns to suggest things to the user and other interested agents (apps and widgets)

3. User Interaction Model - how the interested agents adjusts themselves according to the system suggestion; and how the user deals the system and possibly corrects its assumptions to start getting results!


Usecases