專利名稱:對(duì)用戶應(yīng)用的協(xié)作幫助的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及對(duì)用戶應(yīng)用的幫助的領(lǐng)域。具體地,本發(fā)明涉及提供對(duì)用戶應(yīng)用的協(xié)作幫助。
背景技術(shù):
工作于應(yīng)用上的用戶可能在操作該應(yīng)用時(shí)需要幫助。這尤其適用于集成開發(fā)環(huán)境(IDE),其中,用戶使用對(duì)計(jì)算機(jī)程序員提供綜合工具的軟件應(yīng)用來開發(fā)軟件。在IDE中工作的計(jì)算機(jī)程序員或開發(fā)者可能遇到需要幫助的問題。諸如內(nèi)置幫助系統(tǒng)的當(dāng)前的幫助服務(wù)提供對(duì)常見問題的標(biāo)題和解決方案的靜態(tài)列表。找出哪個(gè)或哪些頁面專用于用戶的特定問題經(jīng)常是耗時(shí)的。建議的頁面經(jīng)常不相關(guān)。
發(fā)明內(nèi)容
根據(jù)本發(fā)明的第一方面,提供了用于對(duì)用戶應(yīng)用的協(xié)作幫助的方法,包括:生成消息,該消息反映用戶在使用用戶應(yīng)用時(shí)的經(jīng)驗(yàn);將該消息發(fā)送到協(xié)作幫助服務(wù)器,以與其他用戶分享該消息;以及從該服務(wù)器接收響應(yīng),其提供關(guān)于與在該消息中反映的用戶的經(jīng)驗(yàn)類似的、一個(gè)或多個(gè)其他用戶的經(jīng)驗(yàn)的信息。根據(jù)本發(fā)明的第二方面,提供了用于對(duì)用戶應(yīng)用的協(xié)作幫助的方法,包括:接收消息,該消息反映用戶在使用用戶應(yīng)用時(shí)的經(jīng)驗(yàn);存儲(chǔ)該消息和來自其他用戶的其他消息;在存儲(chǔ)的消息中搜索來自其他用戶的類似消息;返回消息,其提供關(guān)于與在所接收的消息中反映的用戶的經(jīng)驗(yàn)類似的、一個(gè)或多個(gè)其他用戶的經(jīng)驗(yàn)的信息。根據(jù)本發(fā)明的第三方面,提供了用于對(duì)用戶應(yīng)用的協(xié)作幫助的計(jì)算機(jī)軟件產(chǎn)品,該產(chǎn)品包括包含計(jì)算機(jī)可讀程序代碼的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),計(jì)算機(jī)可讀程序代碼被配置用來:生成消息,該消息反映用戶在使用用戶應(yīng)用時(shí)的經(jīng)驗(yàn);將該消息發(fā)送到協(xié)作幫助服務(wù)器,以與其他用戶分享該消息;以及從該服務(wù)器接收響應(yīng),其提供關(guān)于與在該消息中反映的用戶的經(jīng)驗(yàn)類似的、一個(gè)或多個(gè)其他用戶的經(jīng)驗(yàn)的信息。根據(jù)本發(fā)明的第四方面,提供了用于對(duì)用戶應(yīng)用的協(xié)作幫助的計(jì)算機(jī)軟件產(chǎn)品,該產(chǎn)品包括包含計(jì)算機(jī)可讀程序代碼的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),計(jì)算機(jī)可讀程序代碼被配置用來:接收消息,該消息反映用戶在使用用戶應(yīng)用時(shí)的經(jīng)驗(yàn);存儲(chǔ)該消息和來自其他用戶的其他消息;在存儲(chǔ)的消息中搜索來自其他用戶的類似消息;返回消息,其提供關(guān)于與在所接收的消息中反映的用戶的經(jīng)驗(yàn)類似的、一個(gè)或多個(gè)其他用戶的經(jīng)驗(yàn)的信息。根據(jù)本發(fā)明的第五方面,提供了用于對(duì)用戶應(yīng)用的協(xié)作幫助的系統(tǒng),包括:收集組件,用于收集用戶在使用用戶應(yīng)用時(shí)的經(jīng)驗(yàn)的事件;消息生成組件,用于生成消息,該消息反映用戶在使用用戶應(yīng)用時(shí)的經(jīng)驗(yàn);消息傳送基礎(chǔ)結(jié)構(gòu),用于將該消息發(fā)送到協(xié)作幫助服務(wù)器,以與其他用戶分享該消息,并用于從該服務(wù)器接收響應(yīng),其提供關(guān)于與在該消息中反映的用戶的經(jīng)驗(yàn)類似的、一個(gè)或多個(gè)其他用戶的經(jīng)驗(yàn)的信息。根據(jù)本發(fā)明的第六方面,提供了用于對(duì)用戶應(yīng)用的協(xié)作幫助的系統(tǒng),包括:消息傳送基礎(chǔ)結(jié)構(gòu),用于接收消息,該消息反映用戶在使用用戶應(yīng)用時(shí)的經(jīng)驗(yàn);聚合組件,用于存儲(chǔ)該消息和來自其他用戶的其他消息;搜索組件,用于在所存儲(chǔ)的消息中搜索來自其他用戶的類似消息;該消息傳送基礎(chǔ)結(jié)構(gòu)返回消息,其提供關(guān)于與在所接收的消息中反映的用戶的經(jīng)驗(yàn)類似的、一個(gè)或多個(gè)其他用戶的經(jīng)驗(yàn)的信息。
在說明書的所附部分,具體指出并清楚地要求了被視為本發(fā)明的主題。當(dāng)與附圖一起閱覽時(shí),通過參照下面的詳細(xì)描述,本發(fā)明的操作的組織和方法以及其對(duì)象、特征和優(yōu)點(diǎn)可被最佳地理解,附圖中:圖1是根據(jù)本發(fā)明的系統(tǒng)的框圖;圖2是可實(shí)現(xiàn)本發(fā)明的計(jì)算機(jī)系統(tǒng)的框圖;圖3是根據(jù)本發(fā)明的一方面的方法的流程圖;圖4是根據(jù)本發(fā)明的另一方面的方法的流程具體實(shí)施例方式將理解,為了說明的簡(jiǎn)化和清楚,圖中示出的元素不一定是按比例繪制的。例如,為了清楚起見,某些元素的尺寸可相對(duì)于其他元素而放大。此外,在適當(dāng)考慮的情況下,可在附圖中重復(fù)附圖標(biāo)記,以指示對(duì)應(yīng)的或類似的特征。在下面的詳細(xì)描述中,闡明了大量特定細(xì)節(jié),以便提供對(duì)本發(fā)明的完全理解。然而,本領(lǐng)域的技術(shù)人員將理解,可在無這些特定細(xì)節(jié)的情況下實(shí)現(xiàn)本發(fā)明。在其他實(shí)例中,未詳細(xì)描述公知的方法、過程和組件,以便不混淆本發(fā)明。描述了如下這樣的方法、系統(tǒng)和計(jì)算機(jī)程序產(chǎn)品:其中使用與當(dāng)前正在執(zhí)行的操作和任何當(dāng)前錯(cuò)誤相關(guān)的消息對(duì)軟件應(yīng)用的用戶提供幫助。在被聚合并與其他用戶的經(jīng)驗(yàn)相比較的消息中,反映用戶在使用軟件應(yīng)用時(shí)的經(jīng)驗(yàn)和任何所產(chǎn)生的錯(cuò)誤通知。響應(yīng)消息向用戶提供解決方案。這可適用于由用戶提供輸入或創(chuàng)建內(nèi)容、隨后將其呈現(xiàn)給系統(tǒng)的另一個(gè)部分或以某種方式驗(yàn)證的任何情形。使用的消息充分小,且具有低的創(chuàng)建和傳送開銷,以便例如不會(huì)由于使得屏幕暫停而影響用戶。這樣的小消息被稱為微消息。網(wǎng)絡(luò)上的聚合系統(tǒng)以序列方式存儲(chǔ)所有消息,以用于將來的引用。如果系統(tǒng)注意到用戶正在生成看起來類似于現(xiàn)有的其解決方案已知的已知模式(pattern)和/或錯(cuò)誤的消息序列,則系統(tǒng)觸發(fā)響應(yīng)。該響應(yīng)可為某種上下文幫助或技巧(tips)。該響應(yīng)還可包括到正在進(jìn)行類似事情的人以及已完成任務(wù)的人的鏈接,使得可在主題專家之間產(chǎn)生實(shí)時(shí)協(xié)作。該響應(yīng)還可包括來自相關(guān)的web搜索的結(jié)果、文章或有關(guān)標(biāo)題的“如何(how to)”。例如,可應(yīng)用所述方法的情形的一個(gè)實(shí)施例是用于在集成開發(fā)環(huán)境(IDE)中工作的各個(gè)開發(fā)者。在IDE中,寫代碼行的用戶創(chuàng)建內(nèi)容,并且,后續(xù)或并行的步驟是編譯,其將通過或失敗??蓱?yīng)用所述方法的情形的另一個(gè)示例實(shí)施例是用于服務(wù)器管理控制臺(tái)的web應(yīng)用的創(chuàng)建,其中,通過服務(wù)器管理控制臺(tái)來管理web應(yīng)用。例如,使用WebSphere應(yīng)用服務(wù)器(WAS)管理控制臺(tái)(WebSphere是國(guó)際商業(yè)機(jī)器公司的商標(biāo))來在將web應(yīng)用的內(nèi)容部署到服務(wù)器上之前驗(yàn)證web應(yīng)用的內(nèi)容。這通過創(chuàng)建被稱為WAR (web應(yīng)用存檔)文件的特定類型的壓縮文檔來完成,然后經(jīng)由管理控制臺(tái)部署該壓縮文檔。在此情況下,控制臺(tái)確定所創(chuàng)建的WAR文件是否有效。參照?qǐng)D1,框圖示出了所述系統(tǒng)100的示例實(shí)施例。系統(tǒng)100包括客戶機(jī)系統(tǒng)110,用戶可向其輸入內(nèi)容。客戶機(jī)系統(tǒng)110可包括輸入接收器115,用于從用戶101接收用戶輸入116??蛻魴C(jī)系統(tǒng)110還可包括驗(yàn)證器組件111,其可包括錯(cuò)誤消息生成器113。客戶機(jī)系統(tǒng)110可支持用于附加特征的插件。例如,在一個(gè)實(shí)施例中,客戶機(jī)系統(tǒng)110可為以是IDE,用于接收用戶代碼并驗(yàn)證代碼,包括生成錯(cuò)誤消息。該IDE可包括源代碼編輯器、編譯器、構(gòu)造自動(dòng)器(automator)、以及調(diào)試器。該IDE可包括圖形用戶界面,用戶101經(jīng)由圖形用戶界面在該IDE中操作。該IDE可包括其他組件,諸如版本控制系統(tǒng)、類瀏覽器等。在另一個(gè)實(shí)施例中,客戶機(jī)系統(tǒng)110可以是服務(wù)器管理控制臺(tái),用于接收并驗(yàn)證來自用戶101的web應(yīng)用,包括生成錯(cuò)誤消息。所述客戶機(jī)系統(tǒng)110包括微消息傳送機(jī)構(gòu)120,其可為對(duì)客戶機(jī)系統(tǒng)110的插件的形式,或被集成到客戶機(jī)系統(tǒng)110中。微消息傳送機(jī)構(gòu)120可包括微消息傳送基礎(chǔ)結(jié)構(gòu)121,用于在網(wǎng)絡(luò)上發(fā)送和接收微消息。微消息傳送機(jī)構(gòu)120可包括:收集組件122,用于收集操作序列;以及消息生成組件124,用來形成消息,以作為微消息發(fā)送。收集組件122可自動(dòng)確定哪些操作要作為微消息發(fā)送。微消息傳送機(jī)構(gòu)120的收集組件122可取決于應(yīng)用。收集點(diǎn)可對(duì)應(yīng)于原子網(wǎng)絡(luò)操作(atomic work operations),例如,在IDE的情況下,嘗試編譯代碼將是一個(gè)點(diǎn),于是將是任何所導(dǎo)致的錯(cuò)誤。替代地,在向?qū)?wizard)中的接下來的步驟(通過窗口、或者如在服務(wù)器管理控制臺(tái)的情況下那樣的一系列網(wǎng)頁)將是作為消息被發(fā)送。系統(tǒng)100可包括協(xié)作幫助服務(wù)器130,協(xié)作幫助服務(wù)器130可包括聚合機(jī)構(gòu)131,用于從客戶機(jī)系統(tǒng)110上的多個(gè)微消息傳送機(jī)構(gòu)120接收并聚合微消息132。例如,從用戶正在操作的多個(gè)IDE。微消息132可與用戶或客戶機(jī)系統(tǒng)的提供對(duì)用戶的聯(lián)系細(xì)節(jié)的引用的標(biāo)識(shí)符133 (例如,即時(shí)消息傳送或電子郵件細(xì)節(jié))一起被記錄。協(xié)作幫助服務(wù)器130可包括搜索機(jī)構(gòu)140,用于在聚合的微消息132中搜索類似的模式??墒褂矛F(xiàn)有的數(shù)據(jù)挖掘/知識(shí)共享來在協(xié)作幫助服務(wù)器130上搜索類似的操作序列,以傳遞回到客戶機(jī)系統(tǒng)。搜索機(jī)構(gòu)140可包括響應(yīng)組件141,響應(yīng)組件141可包括上下文響應(yīng)組件142,用于生成上下文幫助,其為用戶要執(zhí)行的可能的后續(xù)步驟的形式。響應(yīng)組件141還可包括聯(lián)系響應(yīng)組件143,用于獲得并轉(zhuǎn)發(fā)已生成了具有類似模式的微消息132的另一個(gè)或另一些用戶的聯(lián)系信息。聯(lián)系響應(yīng)組件143可在向當(dāng)前用戶轉(zhuǎn)發(fā)即時(shí)消息傳送聯(lián)系細(xì)節(jié)形式的其他用戶的聯(lián)系信息之前,檢查其他用戶當(dāng)前是否在線。協(xié)作幫助服務(wù)器130還可包括外部搜索機(jī)構(gòu)150,外部搜索機(jī)構(gòu)150包括查詢生成組件151,用于從微消息132動(dòng)態(tài)地生成因特網(wǎng)/內(nèi)聯(lián)網(wǎng)搜索查詢。外部搜索機(jī)構(gòu)150還包括因特網(wǎng)/內(nèi)聯(lián)網(wǎng)瀏覽器152,用于使用所生成的查詢來進(jìn)行搜索。外部搜索機(jī)構(gòu)150可包括響應(yīng)組件153,用于從因特網(wǎng)/內(nèi)聯(lián)網(wǎng)查詢返回最高命中(top hit)。外部搜索機(jī)構(gòu)150可搜索特定的數(shù)據(jù)庫(kù),例如,教育課程數(shù)據(jù)庫(kù),以便為用戶找到適當(dāng)?shù)膸椭n程。協(xié)作幫助服務(wù)器130可包括微消息傳送基礎(chǔ)結(jié)構(gòu)160,用于將所生成的響應(yīng)發(fā)送回到客戶機(jī)系統(tǒng)Iio的微消息傳送基礎(chǔ)結(jié)構(gòu)121,以便經(jīng)由響應(yīng)顯示組件123來向用戶101
顯不O所述系統(tǒng)的實(shí)施例可使用Eclipse IDE(Eclipse是The Eclipse基金會(huì)的商標(biāo)),其具有利用微消息傳送基礎(chǔ)結(jié)構(gòu)的定制插件。該插件與在網(wǎng)絡(luò)上運(yùn)行的服務(wù)器通信?,F(xiàn)有的微消息技術(shù)可被用來將信息中繼到服務(wù)器、以及還將信息傳遞回到用戶??墒褂媚軌騻魉秃瓦f交消息的任何消息傳送系統(tǒng)。例如,微消息傳送技術(shù)可包括Twitter(Twitter是Twitter公司的商標(biāo))或MQ遙測(cè)傳輸(MQTT)協(xié)議(MQ和MQTT是國(guó)際商業(yè)機(jī)器公司的商標(biāo))。在一個(gè)示例實(shí)施例中,可使用諸如Twitter的微博消息傳送系統(tǒng)。在Twitter消息傳送系統(tǒng)上發(fā)送的、使用Twitter應(yīng)用編程接口的“Tweets”包括少于140個(gè)字符的短消息串,并使用HTTP (超文本傳送協(xié)議)被發(fā)送到消息傳送服務(wù)器。在另一個(gè)實(shí)施例中,可使用輕量的發(fā)布/訂閱消息傳送,諸如MQTT協(xié)議(其使用TCT套接字作為網(wǎng)絡(luò)傳送技術(shù))、以及定義的消息結(jié)構(gòu)(例如,包括報(bào)頭、內(nèi)容等)。當(dāng)用戶執(zhí)行任務(wù)、并可能接收到錯(cuò)誤消息時(shí),通過網(wǎng)絡(luò)傳送微消息。服務(wù)器接收消息,并在內(nèi)部將所述消息編目/存儲(chǔ)。在存儲(chǔ)了所述消息之后,服務(wù)器在其數(shù)據(jù)庫(kù)中搜索與從其他用戶接收到的消息模式類似的消息模式。如果發(fā)現(xiàn)匹配,則服務(wù)器發(fā)送回其分析結(jié)果。這可包括:.建議可能的后續(xù)步 驟的上下文幫助; 來自動(dòng)態(tài)生成的因特網(wǎng)或內(nèi)聯(lián)網(wǎng)搜索查詢的最高命中,包括適當(dāng)?shù)慕逃n程的細(xì)節(jié);.到已成功進(jìn)行了類似任務(wù)且在線的其他用戶的即時(shí)消息傳送鏈接;以及.到其他主題專家的電子郵件鏈接?;谟脩舻膭?dòng)作/輸入,這樣的操作模式實(shí)時(shí)繼續(xù)。參照?qǐng)D2,用于實(shí)現(xiàn)諸如客戶機(jī)系統(tǒng)和協(xié)作幫助服務(wù)器的本發(fā)明的方面的示例系統(tǒng)包括適于存儲(chǔ)和/或執(zhí)行程序代碼的數(shù)據(jù)處理系統(tǒng)200,數(shù)據(jù)處理系統(tǒng)200包括至少一個(gè)處理器201,其通過總線系統(tǒng)203直接或間接耦接到存儲(chǔ)元件。存儲(chǔ)元件可包括在實(shí)際執(zhí)行程序代碼期間采用的本地存儲(chǔ)器、大容量存儲(chǔ)裝置、以及高速緩存,高速緩存提供至少某些程序代碼的暫時(shí)存儲(chǔ),以便減小在執(zhí)行期間必須從大容量存儲(chǔ)裝置檢索代碼的次數(shù)。存儲(chǔ)元件可包括系統(tǒng)存儲(chǔ)器202,其為只讀存儲(chǔ)器(ROM) 204和隨機(jī)存取存儲(chǔ)器(RAM)205的形式。基本輸入/輸出系統(tǒng)(BIOS) 206可被存儲(chǔ)在R0M204中。系統(tǒng)軟件207可被存儲(chǔ)在RAM205中,系統(tǒng)軟件207包括操作系統(tǒng)軟件208。軟件應(yīng)用210也可被存儲(chǔ)在RAM205中。系統(tǒng)200還可包括:主存儲(chǔ)部件211,諸如磁硬盤驅(qū)動(dòng)器;以及次存儲(chǔ)部件212,諸如磁盤驅(qū)動(dòng)器和光盤驅(qū)動(dòng)器。驅(qū)動(dòng)器及其關(guān)聯(lián)的計(jì)算機(jī)可讀介質(zhì)提供用于系統(tǒng)200的計(jì)算機(jī)可執(zhí)行指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其他數(shù)據(jù)的非易失性存儲(chǔ)。軟件應(yīng)用可被存儲(chǔ)在主存儲(chǔ)部件211、次存儲(chǔ)部件212、以及系統(tǒng)存儲(chǔ)器202上。使用經(jīng)由網(wǎng)絡(luò)適配器216到一個(gè)或多個(gè)遠(yuǎn)程計(jì)算機(jī)的邏輯連接,計(jì)算系統(tǒng)200可在網(wǎng)絡(luò)環(huán)境中操作。
輸入/輸出裝置213可直接地或通過中間的I/O控制器耦接到系統(tǒng)。用戶可通過諸如鍵盤、定點(diǎn)裝置或其他輸入裝置(例如,麥克風(fēng)、操縱桿、游戲板、衛(wèi)星接收器、掃描儀等)的輸入裝置將命令和信息輸入到系統(tǒng)200中。輸出裝置可包括揚(yáng)聲器、打印機(jī)等。顯示裝置214也經(jīng)由諸如視頻適配器215的接口連接到系統(tǒng)總線203。該系統(tǒng)可在內(nèi)聯(lián)網(wǎng)或因特網(wǎng)或其組合的環(huán)境下操作。用戶可取決于承擔(dān)的項(xiàng)目、以及諸如是否正在使用開源軟件的其他因素來選擇哪個(gè)更適合。參照?qǐng)D3,流程圖300示出了所述方法的方面。用戶在例如IDE或用于服務(wù)器管理控制臺(tái)的開發(fā)web應(yīng)用的軟件應(yīng)用中操作(301)??沈?yàn)證(302)用戶的操作,并適當(dāng)?shù)厣?303)錯(cuò)誤消息??捎涗?304)事件序列,諸如輸入序列、輸入結(jié)果序列、錯(cuò)誤消息等。確定(305)序列是否要作為消息而發(fā)送??赏ㄟ^預(yù)定義的準(zhǔn)則來執(zhí)行該確定
(305),所述準(zhǔn)則包括消息長(zhǎng)度、序列中的輸入等。如果確定(305)消息尚未準(zhǔn)備好發(fā)送,則處理繼續(xù)監(jiān)視所記錄的事件序列。如果要發(fā)送消息,則形成(306)事件序列作為消息。通過適當(dāng)?shù)膫鬏攨f(xié)議來傳送(307)消息。在示例實(shí)施例中,消息在預(yù)定大小之下,且經(jīng)由微博系統(tǒng)或微消息傳送發(fā)布/訂閱系統(tǒng)來作為微消息而被發(fā)送。在用戶的會(huì)話期間,可形成(306)并傳送(307)多個(gè)消息??赏ㄟ^返回消息來接收(308)結(jié)果。所述結(jié)果可采用不同形式,包括上下文信息309,例如,事件序列中的后續(xù)步驟、或用來幫助用戶的校正后的事件序列。通過信息結(jié)果的頻率來對(duì)上下文信息結(jié)果309排序。因此,在更經(jīng)常使用的成功結(jié)論中產(chǎn)生的步驟在所述結(jié)果中排序更高。結(jié)果的另一個(gè)形式可以是聯(lián)系信息310,其使用戶能夠聯(lián)系根據(jù)同樣的事件序列工作的其他用戶。聯(lián)系信息310可以是電子郵件、或具有用戶當(dāng)前是否在線的指示的即時(shí)消息傳送。結(jié)果的另一個(gè)形式可以是來自因特網(wǎng)或內(nèi)聯(lián)網(wǎng)搜索的結(jié)果311,其中,已將事件序列變換為因特網(wǎng)或內(nèi)聯(lián)網(wǎng)搜索查詢,并且,返回了結(jié)果命中。參照?qǐng)D4,流程圖400示出了在協(xié)作幫助服務(wù)器上執(zhí)行的所述方法的方面。接收(401)與用戶的操作相關(guān)的事件序列的形式的消息,其還可包括錯(cuò)誤消息。可存儲(chǔ)(402 )該消息,并且,可選地,可對(duì)該消息編目。還可記錄(403 )對(duì)消息來源的引用,其包括生成該消息的用戶的聯(lián)系信息。可對(duì)所存儲(chǔ)的消息執(zhí)行(404)搜索,以搜索包括類似事件模式的消息??烧业?405 )類似消息并通過頻率對(duì)類似消息排序(406 )。可作為應(yīng)答消息來形成(407 )排序后的類似消息,并將其作為上下文結(jié)果傳送(408)回到用戶的系統(tǒng)??蓹z索(409)類似消息的聯(lián)系信息,并將其作為應(yīng)答消息而形成(407)并將其作為聯(lián)系信息結(jié)果而傳送(408)回到用戶的系統(tǒng)??蛇x地,與存儲(chǔ)的消息的搜索(404)同時(shí)地,可將接收到的消息變換(410)為查詢項(xiàng),并且,在因特網(wǎng)或內(nèi)聯(lián)網(wǎng)中搜索(411)查詢項(xiàng)??煞祷?412)排序后的搜索結(jié)果,并將其作為應(yīng)答消息而形成(407),并將其作為因特網(wǎng)或內(nèi)聯(lián)網(wǎng)結(jié)果而傳送(408)回到用戶的系統(tǒng)。下面給出所述方法和系統(tǒng)的使用的工作示例。
在一個(gè)示例中,用戶在IDE中創(chuàng)建java類(Java是Sun Microsystems公司的商標(biāo)),并編譯它。.用戶在他們的IDE中執(zhí)行“新類(New Class)”向?qū)А?用戶向向?qū)峁┰擃惖幕炯?xì)節(jié),例如,名稱、超類類型、封裝等。.用戶在類中鍵入用于方法本體、成員變量等的某些代碼。.用戶編譯他們已創(chuàng)建的類,并被通知編譯錯(cuò)誤。.作為響應(yīng),IDE向協(xié)作幫助服務(wù)器發(fā)送微消息,其包括有關(guān)錯(cuò)誤類型的信息。.協(xié)作幫助服務(wù)器將用戶的操作及其結(jié)果與內(nèi)部知識(shí)庫(kù)及其他潛在外部源(例如,Google,其為Google公司的商標(biāo))相比較。.如果協(xié)作幫助服務(wù)器識(shí)別出(spot)已知的使用模式、或具有用來提供回用戶的信息,則該服務(wù)器通過微消息來響應(yīng)IDE,該微消息可能包括到該信息的指針、鏈接、文檔
坐寸ο.IDE隨后向用戶呈現(xiàn)此信息。在第二示例中,用戶部署web應(yīng)用。.用戶在應(yīng)用服務(wù)器管理控制臺(tái)中啟動(dòng)web應(yīng)用部署向?qū)А?br>
.用戶完成基本信息,諸如:存檔文件名、數(shù)據(jù)源名稱、JNDI綁定等。.隨著其進(jìn)行通過向?qū)У拿總€(gè)頁面,系統(tǒng)將微消息發(fā)送到聚合服務(wù)。.用戶嘗試部署web應(yīng)用,但接收到錯(cuò)誤。.作為響應(yīng),管理控制臺(tái)向協(xié)作幫助服務(wù)器發(fā)送微消息,其包括有關(guān)錯(cuò)誤類型的信
肩、O.協(xié)作幫助服務(wù)器將用戶的操作及其結(jié)果與內(nèi)部知識(shí)庫(kù)及其他潛在外部源(例如,Google)相比較。.如果協(xié)作幫助服務(wù)器識(shí)別出已知的使用模式、或具有用來提供回用戶的信息,則所述服務(wù)器通過微消息來響應(yīng)管理控制臺(tái),該微消息可能包括到該信息的指針、鏈接、文檔
坐寸ο.管理控制臺(tái)隨后向用戶呈現(xiàn)此信息。在第三示例中,用戶通過工具(例如,經(jīng)由某一形式的在線、或軟件的預(yù)訂段)來提交費(fèi)用報(bào)銷。也許存在使提交失敗的某些丟失或不匹配的信息。 很多web應(yīng)用是必須依次完成的一系列頁面。類似于先前的示例,這樣的應(yīng)用可能使協(xié)作幫助服務(wù)器動(dòng)態(tài)地生成對(duì)應(yīng)用用戶的上下文敏感的幫助。提供有關(guān)使用向?qū)У挠脩舻牧硪皇纠?用戶A啟動(dòng)向?qū)?,并且,如前地,所有步驟被傳遞給協(xié)作幫助服務(wù)器。.用戶A在嘗試部署時(shí)得到錯(cuò)誤消息。.用戶A校正錯(cuò)誤,并成功地重新部署。此序列已被協(xié)作幫助服務(wù)器記入并記住。.當(dāng)用戶B啟動(dòng)同一向?qū)r(shí),協(xié)作幫助服務(wù)器注意到正在提供類似或相同的信息流,并可通過向用戶建議接下來的正確的后續(xù)步驟來預(yù)先取代用戶即將到來的失敗。所述方法和系統(tǒng)向遇到問題的計(jì)算機(jī)用戶(例如,開發(fā)者)提供了幫助、技巧、指導(dǎo)和網(wǎng)絡(luò)。該途徑用來在廣泛的用戶集之間共享所有信息和錯(cuò)誤消息。當(dāng)共享的消息指示問題發(fā)生的共同線程時(shí),兩個(gè)或更多用戶可被匹配,并彼此取得聯(lián)系。當(dāng)用戶解決了問題、或具有對(duì)問題或任務(wù)的反饋時(shí),他/她可創(chuàng)作技巧、幫助或指導(dǎo),可將其與接收到顯示類似問題的消息的用戶共享。用戶可有效地共享他們執(zhí)行任務(wù)和他們以自動(dòng)方式執(zhí)行的后續(xù)步驟的經(jīng)驗(yàn)。這可被提供作為背景處理,而無需用戶的輸入。依次聚合操作系列確定其他用戶是否正在執(zhí)行相同類型的操作。該方法是動(dòng)態(tài)的,且成功和錯(cuò)誤情形均對(duì)可用的知識(shí)庫(kù)有貢獻(xiàn)。另外,該方法將真實(shí)的人置于彼此直接即時(shí)聯(lián)系中,而不是回流靜態(tài)數(shù)據(jù)。任務(wù)的成功/失敗自動(dòng)使用戶在將來成為對(duì)另一個(gè)用戶的幫助的提供者。用戶通過成功地完成任務(wù)來對(duì)系統(tǒng)作出貢獻(xiàn),隨后,所述任務(wù)的信息變得對(duì)可能經(jīng)歷與類似任務(wù)有關(guān)的問題的其他用戶可用。該系統(tǒng)是雙向聚焦的,并還可基于隨著時(shí)間人們?cè)谧鍪裁炊鴦?dòng)態(tài)更新,于是,改善了建議。提供了用戶協(xié)助方法,其中,在應(yīng)用的用戶群體之間共享信息和錯(cuò)誤消息,并且,在消息模式之間進(jìn)行匹配,以將一個(gè)用戶置于與面對(duì)類似問題的另一用戶的聯(lián)系中。產(chǎn)品創(chuàng)建者可搜索(trawl)與他們的系統(tǒng)相關(guān)的消息,以查看哪里的人正在遭遇問題,例如,創(chuàng)建無功能的代碼的向?qū)?、或意外的使用模式。產(chǎn)品創(chuàng)建者可接收對(duì)于在他們的應(yīng)用中執(zhí)行的共同任務(wù)的建議,其可從“向?qū)А被蛑笇?dǎo)的任務(wù)流獲益,并且,如果總是需要特定序列,則對(duì)API的建議改變。隨后,已被其他用戶咨詢的專家可貢獻(xiàn)解決步驟,其將在用戶遇到問題時(shí)被返回到用戶。協(xié)作幫助系統(tǒng)可作為服務(wù)而被提供給網(wǎng)絡(luò)上的客戶。本發(fā)明可采用完全硬件實(shí)施例、完全軟件實(shí)施例或包含軟件和硬件元素的實(shí)施例的形式。在優(yōu)選實(shí)施例中,本發(fā)明以軟件實(shí)現(xiàn),軟件包括但不限于固件、駐留軟件、微碼等。本發(fā)明可采用可從計(jì)算機(jī)可用或計(jì)算機(jī)可讀介質(zhì)訪問的計(jì)算機(jī)程序產(chǎn)品的形式,所述介質(zhì)提供由計(jì)算機(jī)或任意指令執(zhí)行系統(tǒng)使用或與其結(jié)合的程序代碼。為了此描述的目的,計(jì)算機(jī)可用或計(jì)算機(jī)可讀介質(zhì)可為可包含、存儲(chǔ)、傳遞、傳播、或傳輸程序以便由指令執(zhí)行系統(tǒng)、設(shè)備或裝置使用或與其結(jié)合的任何設(shè)備。介質(zhì)可為電、磁、光、電磁、紅外、或半導(dǎo)體系統(tǒng)(或裝置或器件)、或者傳播介質(zhì)。計(jì)算機(jī)可讀介質(zhì)的示例包括:半導(dǎo)體或固態(tài)存儲(chǔ)器、磁帶、可移除計(jì)算機(jī)盤、隨機(jī)存取存儲(chǔ)器(RAM)、只讀存儲(chǔ)器(ROM)、硬磁盤、以及光盤。光盤的當(dāng)前示例包括光盤只讀存儲(chǔ)器(CD-ROM)、光盤讀 / 寫(CD-R/W)、以及 DVD??稍诓槐畴x本發(fā)明的范圍的情況下對(duì)前述內(nèi)容作出改進(jìn)和修改。
權(quán)利要求
1.一種用于對(duì)用戶應(yīng)用的協(xié)作幫助的方法,包括: 生成消息,該消息反映用戶在使用用戶應(yīng)用時(shí)的經(jīng)驗(yàn); 將該消息發(fā)送到協(xié)作幫助服務(wù)器,以與其他用戶分享該消息;以及 從該服務(wù)器接收響應(yīng),其提供關(guān)于與在該消息中反映的用戶的經(jīng)驗(yàn)類似的、一個(gè)或多個(gè)其他用戶的經(jīng)驗(yàn)的信息。
2.根據(jù)權(quán)利要求1所述的方法,包括: 接收創(chuàng)建的內(nèi)容的用戶的輸入; 驗(yàn)證所創(chuàng)建的內(nèi)容,并生成任何錯(cuò)誤消息; 并且,其中,生成消息包括所創(chuàng)建的內(nèi)容和任何錯(cuò)誤消息。
3.根據(jù)權(quán)利要求1所述的方法,其中,消息由以下組中的一個(gè)或多個(gè)形成:事件序列、輸入序列、結(jié)果序列、錯(cuò)誤消息。
4.根據(jù)權(quán)利要求1所述的方法,其中,該響應(yīng)中的信息是上下文信息,其提供對(duì)在該消息中反映的用戶的經(jīng)驗(yàn)的 解決方案。
5.根據(jù)權(quán)利要求1所述的方法,其中,該響應(yīng)中的信息是其他用戶的聯(lián)系信息,用來提供用戶之間的直接協(xié)作。
6.根據(jù)權(quán)利要求5所述的方法,其中,該聯(lián)系信息指示用戶當(dāng)前是否在線。
7.根據(jù)權(quán)利要求1所述的方法,其中,來自該服務(wù)器的響應(yīng)提供其他用戶的經(jīng)驗(yàn)的排序的列表。
8.根據(jù)權(quán)利要求1所述的方法,包括:從該服務(wù)器接收響應(yīng),其包括對(duì)基于該消息的查詢的因特網(wǎng)或內(nèi)聯(lián)網(wǎng)搜索的結(jié)果。
9.根據(jù)權(quán)利要求1所述的方法,其中,發(fā)送該消息和接收響應(yīng)通過微消息傳送基礎(chǔ)結(jié)構(gòu)進(jìn)行。
10.一種用于對(duì)用戶應(yīng)用的協(xié)作幫助的方法,包括: 接收消息,該消息反映在用戶使用用戶應(yīng)用時(shí)的經(jīng)驗(yàn); 存儲(chǔ)該消息和來自其他用戶的其他消息; 在所存儲(chǔ)的消息中搜索來自其他用戶的類似消息; 返回提供關(guān)于與在所接收的消息中反映的用戶的經(jīng)驗(yàn)類似的、一個(gè)或多個(gè)其他用戶的經(jīng)驗(yàn)的信息的消息。
11.根據(jù)權(quán)利要求10所述的方法,其中,該響應(yīng)中的信息是上下文信息,其提供對(duì)在該消息中反映的用戶的經(jīng)驗(yàn)的解決方案。
12.根據(jù)權(quán)利要求10所述的方法,其中,存儲(chǔ)該消息包括存儲(chǔ)對(duì)該消息的來源的引用,并且,該響應(yīng)中的信息是其他用戶的聯(lián)系信息,用來提供用戶之間的直接協(xié)作。
13.根據(jù)權(quán)利要求12所述的方法,其中,該聯(lián)系信息指示用戶當(dāng)前是否在線。
14.根據(jù)權(quán)利要求10所述的方法,包括:通過頻率來對(duì)所存儲(chǔ)的其他用戶的經(jīng)驗(yàn)的消息進(jìn)行排序。
15.根據(jù)權(quán)利要求10所述的方法,包括:對(duì)基于該消息的查詢進(jìn)行因特網(wǎng)或內(nèi)聯(lián)網(wǎng)搜索。
16.一種用于對(duì)用戶應(yīng)用的協(xié)作幫助的計(jì)算機(jī)軟件產(chǎn)品,該產(chǎn)品包括包含計(jì)算機(jī)可讀程序代碼的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可讀程序代碼被配置用來:生成消息,該消息反映用戶在使用用戶應(yīng)用時(shí)的經(jīng)驗(yàn); 將該消息發(fā)送到協(xié)作幫助服務(wù)器,以與其他用戶分享該消息;以及從該服務(wù)器接收響應(yīng),其提供關(guān)于與在該消息中反映的用戶的經(jīng)驗(yàn)類似的、一個(gè)或多個(gè)其他用戶的經(jīng)驗(yàn)的信息。
17.一種用于對(duì)用戶應(yīng)用的協(xié)作幫助的計(jì)算機(jī)軟件產(chǎn)品,該產(chǎn)品包括包含計(jì)算機(jī)可讀程序代碼的計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可讀程序代碼被配置用來: 接收消息,該消息反映用戶在使用用戶應(yīng)用時(shí)的經(jīng)驗(yàn); 存儲(chǔ)該消息和來自其他用戶的其他消息; 在所存儲(chǔ)的消息中搜索來自其他用戶的類似消息; 返回提供關(guān)于與在所接收的消息中反映的用戶的經(jīng)驗(yàn)類似的、一個(gè)或多個(gè)其他用戶的經(jīng)驗(yàn)的信息的消息。
18.一種用于對(duì)用戶應(yīng)用的協(xié)作幫助的系統(tǒng),包括: 收集組件,用于收集用戶在使用用戶應(yīng)用時(shí)的經(jīng)驗(yàn)的事件; 消息生成組件,用于生成消息,該消息反映用戶在使用用戶應(yīng)用時(shí)的經(jīng)驗(yàn); 消息傳送基礎(chǔ)結(jié)構(gòu),用于將該消息發(fā)送到協(xié)作幫助服務(wù)器,以與其他用戶分享該消息,并用于從該服務(wù)器接收響應(yīng),其提供關(guān)于與在該消息中反映的用戶的經(jīng)驗(yàn)類似的、一個(gè)或多個(gè)其他用戶的經(jīng)驗(yàn)的信息。
19.一種用于對(duì)用戶應(yīng)用的協(xié)作幫助的系統(tǒng),包括: 消息傳送基礎(chǔ)結(jié)構(gòu),用于接收消息,該消息反映用戶在使用用戶應(yīng)用時(shí)的經(jīng)驗(yàn); 聚合組件,用于存儲(chǔ)該消息和來自其他用戶的其他消息; 搜索組件,用于在所存儲(chǔ)的消息中搜索來自其他用戶的類似消息; 該消息傳送基礎(chǔ)結(jié)構(gòu)返回提供關(guān)于與在所接收的消息中反映的用戶的經(jīng)驗(yàn)類似的、一個(gè)或多個(gè)其他用戶的經(jīng)驗(yàn)的信息的消息。
20.根據(jù)權(quán)利要求19所述的系統(tǒng),其中,該聚合組件存儲(chǔ)對(duì)該消息的來源的引用,并且,響應(yīng)中的信息是其他用戶的聯(lián)系信息,用來提供用戶之間的直接協(xié)作。
全文摘要
提供用于對(duì)用戶應(yīng)用的協(xié)作幫助的方法、系統(tǒng)和計(jì)算機(jī)產(chǎn)品。該方法包括生成消息,該消息反映用戶在使用用戶應(yīng)用時(shí)的經(jīng)驗(yàn);將該消息發(fā)送到協(xié)作幫助服務(wù)器,以與其他用戶分享該消息;以及從該服務(wù)器接收響應(yīng),其提供關(guān)于與在該消息中反映的用戶的經(jīng)驗(yàn)類似的、一個(gè)或多個(gè)其他用戶的經(jīng)驗(yàn)的信息。消息可由以下組中的一個(gè)或多個(gè)形成事件序列、輸入序列、結(jié)果序列、錯(cuò)誤消息。響應(yīng)中的信息可以是上下文信息,其提供對(duì)在消息中反映的用戶的經(jīng)驗(yàn)的解決方案,并且該信息可包括用戶的聯(lián)系信息,用來提供用戶之間的直接協(xié)作。
文檔編號(hào)G06Q90/00GK103154997SQ201180048241
公開日2013年6月12日 申請(qǐng)日期2011年9月7日 優(yōu)先權(quán)日2010年10月4日
發(fā)明者A.泰勒, D.S.倫肖, A.J.皮爾金頓, I.O.帕特里奇 申請(qǐng)人:國(guó)際商業(yè)機(jī)器公司