Wiki source code of Help Desk

Last modified by Vincent Massol on 2024/02/26 17:53

Show last authors
1 {{toc start="2"/}}
2
3 == Rationale ==
4
5 [[XPertNet (XPN)>>http://www.xwiki.com]] is taking part in the [[Nepomuk>>http://nepomuk.semanticdesktop.org]] research project together with [[Mandriva>>http://www.mandriva.com]]. One of the XPN contribution consists in creating a community help desk with semantic and P2P capabilities, putting into practice the Nepomuk components (see list below). In the frame of the Nepomuk context, the help desk will be experimented in particular by the community of Mandriva users. A detailed analysis of the Mandriva case study is available from the following report: [[NEPOMUK Deliverable D11.1>>http://nepomuk.semanticdesktop.org/xwiki/bin/view/Main1/D11%2D1]].
6
7 == Use cases ==
8
9 === Typical online help desk workflow ===
10
11 Joe can submit questions online. Others can answer. The worklow used is a typical help desk workflow: question and answer submission, categorization, notification, search and escalation.
12
13 Note: we may consider the use of the library [[org.semanticdesktop.fsm>>http://dev.nepomuk.semanticdesktop.org/browser/trunk/java/org.semanticdesktop.fsm]] for implementing possibly complex workflows.
14
15 === Document annotation capabilities ===
16
17 Hellen is browsing a discussion relating to the use of a the ATI x800 XL graphic card on a dual screen. She rates one of the answer brought as very useful. She also tags the author of that answer, Erin, as a master in the area of "graphic cards". She indicates that the thread relates to ATI hardware, dual screens, graphic cards, and to the specific ATI x800 XL model. Thanks to this metadata, the thread will pop up among the first results when other users search for similar issues.
18
19 === Local annotation ===
20
21 This use case illustrates a typical interaction between a semantic desktop and the help desk. The help desk consists of general resources aiming at helping users to achieve specific tasks or to solve technical problems. Users willing to customize these resources for their own use, typically to create their own documented task list for achieving a given complex activity such as the set up of a private virtual network, are able to do so by using the Nepomuk semantic desktop to derive local semantic graphs and personal semantic task lists from the help desk resources.
22
23 Each user is able to import semantic graphs from the help desk repository to their individual workspace. Users have the possibility to enhance the public graphs locally by adding concepts and relations that make sense to them, involving local desktop resources, for the purpose of learning and memorizing.
24
25 This means that the semantic desktop lets the user associate a set of help desk resources and local notes with specific tasks she's doing regularly on her computer. The Nepomuk desktop allows to draw the link between the action pattern and the resources, and pops up the existing resource links when appropriate.
26
27 === Rating of experts and of resources ===
28
29 Users can rate experts and resources.
30
31 === Social networking ===
32
33 Users can form groups on the help desk, and comment on each other's wall.
34
35 === Search based on recommendations by persons trusted by the user. ===
36
37 As Kim uses the Mandriva help desk more and more, he gets to know a large number of users and experts, who progressively become good acquaintances whom he trusts. Kim decides to create a group "friends" on the help desk, and adds his best online mates to the group.
38
39 In creating such a group of friends, Kim can narrow his search to the resources (knowledge base pages, experts, questions and answers, or web sites) that are rated as interesting resources by his network of friends. This feature lets Kim discover more efficiently new trustful experts and resources that may are of interest to him. While browsing available resources, Kim also gets the information on what his friends think about the resources he's browsing.
40
41 === Ad'hoc learning material creation ===
42
43 The help desk knowledge base contains a set of resources on various topics that can be harnessed for the creation of learning material taking into account constraints related to the profile of the target audience, such as the technical level of the participants, the duration of the learning session, and the language to be used.
44
45 The semantic search engine makes it possible to easily retrieve resources matching a set of criteria reflecting the audience profile and timing constraints. Then, the help desk allows to combine documents using portions of different help desk resources.
46
47 === Prompting contextual help ===
48
49 This use cases illustrates how the user context can be taken into account by the Nepomuk context manager for firing appropriate events aiming to assist the user in achieving his current activity. Kim just bought a new camera from Logitech. While he plugs his camera into the USB port of his computer, an assistant offers him to read the memo that he has entered about USB components, or to browse the resources related to this camera available in the help desk knowledge base. Kimhas the possibility to:
50
51 * read tutorials in his language on how to take the most of this camera. He can choose to read tutorials that are available either in the community knowledge base or across his personal network of relationships knowledge bases
52 * read articles describing identified issues and workarounds related to the use of this given camera with his laptop model.
53
54 === Command line interaction ===
55
56 It should be possible to interact with the help desk directly from the command line.
57
58 === Email integration ===
59
60 Users should for instance be able to interact with the system from an email client.
61
62 * An email is sent to the customer when a response is brought to the submitted issue
63 * Customers can submit cases by email
64
65 === P2P capabilities ===
66
67 Users should be able to share their local data with their friends: this will let them share personal wiki pages and the related metadata with others.
68
69 === Other use cases and features ===
70
71 ==== Roles and workflow ====
72
73 * Submit, assign, prioritize, escalate issues
74 * Various persons and group of persons interplay with the system, with different right levels.
75
76 Example: a given group of technicians will be allowed to bring support to a given set of customers
77
78 * Assignment of a case to a technician or group of technicians
79 * Automatic escalation of cases when not closed in a given period of time
80 * Track multiple projects for multiple teams within a single installation
81 * Track critical system metadata, including time spent per action, due dates, and estimated time to completion.
82 * Lock the incidents to make sure several staff members are not working on the same case at the same time.
83 * Case view: each staff member must see the list of the incidents which need a reply and the list of incidents
84
85 assigned to him.
86
87 * Based on a rule/workflow system, some cases must be automatically updated. Example: Cases submitted by a given organization,
88
89 or in the frame of a given contract must be automatically set to "support level 3" and affected to a given group of technicians.
90
91 ==== Case assignment ====
92
93 * Manual + automatic case assignment. Possibility to define custom rules for automatic assignment
94 * Rights to reassign
95
96 ==== Case updates ====
97
98 * Who is allowed to update a case
99 * Who should be notified when a case is updated
100 * Calculation of time spent on each case and how it will effect representative?s productivity report and how is
101
102 has to be linked with escalation mechanism.
103
104 ==== KB integration ====
105
106 * Integration with a wiki based knowledge base, so that the products supported are linked to the knowledge base
107
108 containing solutions to common problems.
109
110 ==== Reporting ====
111
112 * Time tracking
113 * Statistics per category / issue level / team (for example: Sound problems / Drive problems / RAID problems /
114
115 Apache problems etc)
116
117 * Gantt charts
118 * Printable view of a case thread
119
120 ==== Rights management ====
121
122 see who can update/close/reopen/move etc. issues
123
124 == Components and ontologies ==
125
126 === Components ===
127
128 Beside the [[XWiki platform components>>Design.Architecture V2]], the XWiki help desk will use the following components and ontologies:
129
130 (% style="list-style-type: square" %)
131 * [[RdfRepository>>http://dev.nepomuk.semanticdesktop.org/browser/trunk/java/org.semanticdesktop.nepomuk.comp.rdfrepository]]: this component is an API for storing and querying metadata
132 * HelpDeskWorkflow: this component will manage the state of question and answers (we may consider using [[this FSM implementation>>http://dev.nepomuk.semanticdesktop.org/browser/trunk/java/org.semanticdesktop.fsm]])
133 * XWikiRdfExtractor: this component crawls an XWiki database and converts the metadata into RDF statements.
134 * Annotator: this component will make it possible to annotate resources for the purpose of tagging, rating, adding various metadata. Annotations can be brought either online, or on a local desktop
135 * [[PSEW>>http://nepomuk-eclipse.semanticdesktop.org/xwiki/bin/view/Main/PSEW]]: PSEW stands for P2P Semantic Eclipse Workbench. It includes XEclipse. It is a general workbench for working with metadata related to local or remote resources.
136 * [[FolkPeer>>http://nepomuk.semanticdesktop.org/xwiki/bin/view/Main1/D5%2D1]]: this component can identify similarities across metadata
137 * GridVine: this component is a P2P RDF indexing system. It is described in [[this paper>>http://citeseer.ist.psu.edu/aberer04gridvine.html]].
138
139 === Data models for annotation ===
140
141 Nepomuk has designed various data models that will be used for adding metadata to resources. These data models are available from [[the NEPOMUK ontology page>>http://www.semanticdesktop.org/ontologies/]]. They consist of the following:
142
143 (% style="list-style-type: square" %)
144 * the NEPOMUK Annotation Ontology (NAO): NAO is an ontology for annotation, providing vocabulary which is commonly required to annotate resources on the semantic desktop. NAO includes graph metadata vocabulary for describing, or annotating, existing named graphs.
145 * the NEPOMUK Information Element (NIE): NIE is set of ontologies provide vocabulary for describing information elements which are commonly present on the semantic desktop: NIE (core) - NEPOMUK Information Element Core Ontology, NFO - NEPOMUK File Ontology, NCO - NEPOMUK Contact Ontology, NMO - NEPOMUK Message Ontology, NCAL - NEPOMUK Calendar Ontology, NEXIF - NEPOMUK EXIF Ontology, NID3 - NEPOMUK ID3 Ontology
146 * NEPOMUK's Representational Language (NRL): Designed on top of RDF, it addresses certain limitations on the part of RDF/S. In particular it includes support for Named Graphs, which although being a widely-popular notion, have not been supported by any representational language so far. It is also based on a view concept for the tailoring of ontologies. This view concept turned out to be of additional value, as it also provides a mechanism to impose different semantics on the same syntactical structure.
147 * SKOS http://www.w3.org/TR/2005/WD-swbp-skos-core-guide-20050510/
148
149 == Proposal ==
150
151 (% style="list-style-type: square" %)
152 * Create a new JIRA project for describing use cases, tasks, requirements
153 * Describe further the use cases
154 * Create a first application implementation
155 * Link the implementation with the PSEW prototype
156
157 === Data model ===
158
159 See [[Design.HelpDeskDataModel]]
160
161 == Other help desk systems ==
162
163 See [[Design.HelpDeskWatch]]
164
165 == Roadmap ==
166
167 (% style="list-style-type: square" %)
168 * 30 September 2007: release of a first implementation of the help desk
169 * 15 October 2007: release of a report assessing the prototype from the user point of view
170 * 30 October 2007: release of the second implementation, and presentation of the system
171
172 at the [[eChallenges Conference>>http://www.echallenges.org/e2007/default.asp?page=schedule-view&schedule.expanded=yes&schedule.day.pos=3]].
173
174 == Notes ==
175
176 The features of an help desk are close to the ones of an issue tracker. We may consider evolve the features to a set of core functionalities from which we could derive two products: XWiki help desk and XWiki issue tracker.
177
178 == Other help desk pages ==
179
180 {{velocity filter="none"}}
181 #foreach($childDocName in $xwiki.searchDocuments("where doc.parent='$doc.fullName' order by doc.name"))
182 #set($childDoc = $xwiki.getDocument($childDocName))
183 * [[$childDoc.displayTitle>>$childDoc.fullName]]
184
185 #end
186
187 {{/velocity}}
188
189 == Other related tools ==
190
191 Issue tracking tools:
192
193 * [[JIRA>>http://www.atlassian.com/software/jira/]]
194 * [[Eventum>>http://dev.mysql.com/downloads/other/eventum/features.html]]

Get Connected