999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

軟件實驗室智能管理系統的研究與實現

2013-05-03 11:03:26黎孟雄郭鵬飛
實驗技術與管理 2013年6期
關鍵詞:進程實驗教學信息

黎孟雄,郭鵬飛

(1.江蘇師范大學 連云港校區計算機系,江蘇 連云港 222006;2.連云港師范高等專科學校 計算機系,江蘇 連云港 222006)

在計算機各專業都開設有軟件類課程,其教學特點是在強化課堂理論教學的同時注重學生的實踐技能和創新能力的培養。學生在軟件實驗室的實驗課上進行編程設計訓練是實踐教學環節的重要組成部分,對加深相關理論知識的理解和到實踐知識的快速轉化起著不可或缺的積極作用。但由于軟件實驗課本身的特殊性導致在實驗過程管理上具有相當的難度,比如:(1)學生在實驗課上玩游戲、QQ聊天和看網絡視頻等行為難以監控[1];(2)軟件程序抄襲和不良編程風格的糾查工作繁重、低效。因此,針對軟件實驗室管理過程中的特點設計一個功能強大的智能管理系統,不僅可以降低教師的管理強度,提高實驗課教學效率,也符合實驗教學管理過程的信息化發展趨勢,而且對于推進軟件實驗的教學改革同樣意義重大。

1 系統體系結構及功能

軟件實驗室智能管理系統的總體結構主要包括4個核心部分:實驗教學文檔管理、學生上機行為監控、實驗作業代碼檢測和自動答疑機器人。

(1)實驗教學文檔管理。教學文檔是指與實驗相關的文件資料,包括實驗教學計劃、實驗教學資料、單元實驗任務表、項目實驗設計書、學生實驗報表、模塊開發卷宗、項目開發總結報告等電子文檔的上傳、下載和自動分類管理。

(2)學生上機行為監控。對學生機的所有軟件運行狀態進行監控和分析,系統如果發現有玩游戲、QQ聊天、上網娛樂等跟實驗教學無關的上機行為,就會立刻將該學生的計算機鎖屏,同時以彈屏消息通知到教師機,并記錄下來作學生平時成績的參考。

(3)實驗作業代碼檢測。對學生提交實驗作業的軟件源代碼進行防抄襲和編程規范檢查,系統會自動對所有同一實驗程序源代碼的相似性進行判斷,對相似度超過一定閾值的作業文件拒絕接收并予以警告;另外會對接收的源程序中存在的不良編程風格問題進行糾查,并及時以信息報告的形式反饋到學生機供學生分析和改正。

(4)自動答疑機器人。在實驗過程中大部分學生遇到的所謂難點都是些常見問題,或在實驗教學資源庫中可查詢到滿意答案的問題,為了減輕教師咨詢的工作量和降低學生檢索難度,系統還設計了能實時在線進行輔助答疑的智能導學機器人。機器人在對會話語言的理解和擬人化方面采用了自動分詞和自然語言生成技術,在個性化輔助教學上采用了基于模糊聚類的推理機制,還采用了機器學習技術以使導學機器人能自動更新和完善FAQ知識庫。

2 系統關鍵技術的設計

2.1 非法進程監控

對學生機上運行的程序進行自動監視就需對被監視端系統中所有開啟的進程進行監控。學生機在開機后實驗室管理系統在后臺運行時進程監控程序首先會調用合法進程列表和非法進程列表,進程列表可以在教師機上動態更新,進程列表包含了進程ID、進程映像名稱、進程全路徑、進程描述以及該進程的相關動態鏈接庫DLL等詳細信息[2]。教師可以把上課所需的軟件 Visual Studio、SQL Server、Visual Basic、Turbo C、DELPHI、PhotoShop等軟件的進程設為合法進程,把使命召喚、極品飛車、反恐精英、孤島驚魂、QQ游戲、暴風影音、風行電影、MSN、騰訊QQ等游戲、娛樂和聊天軟件的進程設為非法進程。

監控程序隨后將創建實時攔截的新進程,并獲取該進程相應的信息,包括當前進程的映像名稱和全路徑;同時攔截該進程所調用的動態鏈接庫DLL,獲取相應加載的動態鏈接庫信息,如動態鏈接庫的名稱及其全路徑等;然后將所獲得的當前進程的映像名稱及其全路徑、動態鏈接庫名稱及其全路徑等信息與合法進程列表中的信息進行比對,如果所有信息相符,表示該進程是合法進程,允許繼續運行,如果不相符,則再跟非法進程列表進行匹配,如果是非法進程,終止其運行,否則列為可疑進程上報到教師機作進一步核查。

在具體實現時,操作系統中的進程快照句柄及進程信息獲取是通過Tlhelp32.h中定義的函數CreateToolhelp 32Snapshot()、Process32First()和 Process32Next()來予以實現[3],TerminateProcess()函數用來終止指定的非法進程及其所有線程。

函數CreateToolhelp32Snapshot()為指定的進程、進程使用的堆[HEAP]、模塊[MODULE]、線程[THREAD]建立一個快照[snapshot]:

HANDLE WINAPI CreateToolhelp32Snapshot(DWORD dwFlags,//用來指定快照中需要返回的對象,可以是TH32CS_SNAPPROCESS等DWORD th32ProcessID//一個進程ID號,用來指定要獲取哪一個進程的快照,當獲取系統進程列表或獲取當前進程快照時可以設為0)

函數Process32First()用來得到快照鏈表中第一個進程的信息,Process32Next()用來得到快照鏈表中下一個進程的信息。這樣,利用函數Process32First()和Process32Next()即可對操作系統中所有已經開啟的進程實現枚舉遍歷。

2.2 網頁內容監控

網頁內容監控程序是利用基于BHO鉤子技術開發的瀏覽器擴展插件來實時截獲網頁,該插件依附于瀏覽器窗口啟動,捕獲瀏覽器核心控件 WebBrowser的事件參數,得到用戶的上網信息,以此實現監控。

網頁內容監控的任務是根據學生機有效的上網訪問記錄URL地址獲取其所指向網頁的Web頁面。網頁通常包括2個方面的內容:一是網頁的主題信息,如奧運會賽事報道網頁中的體育新聞內容等信息;另一些則是導航、廣告、版權等與主題無關的信息,也稱之為噪音內容。在對截獲的Web頁面內容進行分析之前,必須先對其進行清洗降噪[4],不然會導致抽取的被監控網頁的特征詞不夠明顯,降低監控程序的性能和精度。

降噪之后程序利用經典的TF*IDF(Term Frequency * Inverse Document Frequency)算 法[5-7]對Web頁面文檔進行中文詞性分詞處理,得出頁面文檔的分詞結構,把副詞、助詞、連詞、介詞、嘆詞、擬聲詞等虛詞(如“非常、很、的、著、也、因為、所以、啊”這些對抽取文檔主題特征沒有幫助的詞)去除,計算剩下詞的TF*IDF值,根據設定的閾值提取作為被監控頁面的文檔特征詞。

特征詞被抽取出來后可以跟敏感詞列表進行匹配、比對。敏感詞列表也可以在教師機動態更新,可以包含如“游戲、電影、電視劇、綜藝、音樂、動漫、笑話、小說”等需要被監控的違例詞。學生機打開游戲網頁時被監控界面如圖1所示。

圖1 學生機游戲網頁被監控界面圖

2.3 作業代碼檢測

作業代碼檢測是指程序代碼防抄襲檢查和編程規范檢查。

(1)程序代碼防抄襲檢查也被稱為代碼相似性檢測或副本檢測,商業上經常應用于軟件知識產權保護和軟件信息檢索等方面,主要技術方法有屬性計數法(attribute counting)和 結 構 度 量 法 (structure metrics)。SIM、YAP系列、MOSS[8]和JPlag[9]都是當前著名的程序相似性檢測系統,都是基于結構度量法。此外還有基于案例推理、PDG圖和神經網絡的一些檢測方法,效果也相當不錯。考慮到學生編寫程序作業時的風格特點和實際情況,如果采用過于嚴格的商業檢測技術可能會產生大量誤判。針對學生作業代碼中的整段復制、重命名標志符、改變表達式操作符和操作數、等價變換程序控制結構、增加冗余語句、代碼塊重排和修改注釋等常見抄襲方法,實驗室管理系統使用了更為合理和適度的、基于抽象語法樹的防抄襲技術,該系統支持多種編程語言,符合軟件實驗室的多種編程開發環境。

基于抽象語法樹的防抄襲檢測過程分預處理、代碼轉換和相似度計算3個步驟:①預處理即系統對源代碼進行格式化,如刪除所有空行、多余的空格和注釋語句,包括統一表達式操作符等;②代碼轉換就是將預處理后的代碼文本經過詞法和語法分析后轉換成對應的抽象語法樹,從而為相似度計算提供規范的數學模型;③相似度計算采用貪婪式字符串匹配算法(greedy string tilin),該算法用來解決文本中字符串或者提交的文本文件之間的相似性問題[10]。系統會對相似度超過設定閾值的作業拒絕接收并發出警告,同時把該情況記錄下來上傳到教師機。

(2)編程規范檢查主要是系統對學生上交的作業進行代碼風格的自動糾查,目的是幫助學生養成良好的編程風格以保持代碼的可擴展性、易讀性及高維護性,檢查內容包括命名規范、排版布局、注釋和代碼結構等。該模塊的設計是基于開源工具NSIQCpp-Style[11],其內置了47條C/C++語言編程規范檢測規則,由于采用規則和分析引擎分離的技術架構,所以開發人員可以修改配置文件filefilter.txt來增、刪適合自己風格的自定義規則。分析引擎采用觸發的方式分析源碼,不包含具體的語法風險,所以適合于大多數編程環境,支持批量文件檢測。調用命令如下:

參數-o output_file_name指定輸出報告文件(只有—output設置為cvs或xml時才有效),如果缺省,則在源碼目錄下生成nsiqcppstyle_result.xxx報告;如果指定多個源碼目錄,就可以通過此選項指定報告文件的位置和名稱;參數-output=(csv|xml|vs7|emacs)指定輸出報告格式。

2.4 答疑機器人

答疑機器人模塊的邏輯結構包括應用表現層、邏輯處理層和數據存儲層3層。

(1)應用表現層主要負責機器人和學生用戶的交互。當學生需要提供咨詢或導學服務的時候,可通過對話方式在聊天窗口中輸入請求語句或感興趣的話題,如果機器人通過智能會話模塊不能反饋給學生滿意的信息,則機器人將起到中轉作用把學生的會話信息發送給教師,由教師提供人工咨詢、輔導服務。

(2)邏輯處理層主要負責會話信息數據的分析處理。智能會話模塊首先把學生的自然語言進行數據預處理和非法文本過濾,然后進行分詞,根據該學生的學生模型信息了解其個性化信息,如果學生咨詢的是常規的問題,則從FAQ知識庫中予以檢索反饋(機器人還可以通過學習機跟學生和教師互動獲取知識來不斷豐富FAQ知識庫);如果學生請教的是教學方面的問題,則根據其學識水平由推理機從云端教學資源庫中進行模糊聚類,推薦給學生最優的答案;如果從教學資源庫和FAQ知識庫中都不能得到反饋信息的話,則啟動內置的垂直搜索引擎從Internet上進行檢索。

(3)數據存儲層主要負責系統后臺數據的存儲管理。由于云計算所帶來的資源共享優勢,教學資源庫可以部署在云端數據庫服務器上,而FAQ知識庫可以就近部署在本地數據庫服務器上。

邏輯處理層中的分詞詞典是機器人分析處理用戶自然語言的基礎,也是智能會話模塊在聊天反饋信息中擬人化時自然語言生成算法的核心。經過對比測試研究,在多種開源分詞器中,答疑機器人模塊中嵌入了中國科學院計算技術研究所研制的漢語詞法分析系統ICTCLAS(Institute of Computing Technology,Chinese Lexical Analysis System)[12],該分詞器還支持新詞識別和用戶詞典。答疑機器人功能界面見圖2。

圖2 答疑機器人功能界面圖

3 結束語

本文針對軟件實驗室的教學管理和信息化過程中面臨的問題,以降低教師管理強度和提高實驗課教學效率為目標,設計并實現了軟件實驗室智能管理系統。實際應用情況證明:該系統能對學生在編程實驗過程中進行有效監控,基本杜絕了學生在實驗課上玩游戲、上網娛樂和程序代碼抄襲等學風不端行為。由于機器人在答疑時未能根據學生的學識水平進行個性化答疑和推薦答案,所以,在未來對管理系統中答疑機器人的進一步研究中將在監測學生模型和以往聊天記錄進行分析推理的同時,結合基于知識庫的錯誤診斷模型,以能夠準確地探測定位到學生在軟件實驗過程中的錯誤知識點,在運行出錯時給出錯誤原因分析,并把定位的相關知識點信息反饋給學生模型,以便及時地動態調整推理機制。

[1]林先津.機房實驗教學管理系統學生狀態監控的設計與實現[J].實驗技術與管理,2011,28(10):96-99.

[2]孟慶倩,李清寶,魏珉.基于 Windows環境進程監控的設計與實現[J].信息工程大學學報,2007,8(1):26-29.

[3]徐江峰,邵向陽.基于HOOK API技術的進程監控系統設計與實現[J].計算機工程與設計,2011,32(4):1330-1333.

[4]吳思竹,張智雄.基于網頁特征識別的噪音網頁過濾方法研究[J].情報理論與實踐,2011,34(4):111-114.

[5]王園,龔尚福.基于二次TF*IDF的互信息文本特征選擇算法研究[J].計算機應用與軟件,2011,28(4):129-131.

[6]Tang Xijin,Yoshida T,Wen Zhang.TFIDF,LSI and multi-word in information retrieval and text categorization[C]//IEEE International Conference on Systems Man and Cybernetics,2008:108-113.

[7]Ho Chung Wu,Robert Wing Pong Luk,Kam Fai Wong,et al.Interpreting TF-IDF term weights as making relevance decisions[J].ACM Transaction on Information Systems,2008,26(3):10-13.

[8]Schleimers S,Wilkerson D,Aiken A.Winnowing:Local Algorithms for Document Fingerprinting[C]//Proceedings of the ACM SIGMOD International Conference on Management of Data,2003:76-85.

[9]Prechelt L,Malpohl G,Philippsen M.Finding plagiarisms among a set of programs with JPlag[J].Journal of Universal Computer Science,2002,8(11):1016-1038.

[10]張麗萍,劉東升,李彥臣,等.一種基于AST的代碼抄襲檢測方法[J].計算機應用研究,211,28(12):4616-4620.

[11]NSIQCppStyle User’s Manual[EB/OL].[2012-07-10].http://dev.naver.com/projects/nsiqcppstyle/.

[12]中科院計算技術研究所.漢語詞法分析系統(ICTCLAS)[CP/OL].[2012-07-15].http://ictclas.org/.

猜你喜歡
進程實驗教學信息
小議初中化學演示實驗教學
甘肅教育(2020年4期)2020-09-11 07:42:36
電容器的實驗教學
物理之友(2020年12期)2020-07-16 05:39:20
對初中化學實驗教學的認識和體會
甘肅教育(2020年8期)2020-06-11 06:10:04
債券市場對外開放的進程與展望
中國外匯(2019年20期)2019-11-25 09:54:58
訂閱信息
中華手工(2017年2期)2017-06-06 23:00:31
幾何體在高中數學實驗教學中的應用
展會信息
中外會展(2014年4期)2014-11-27 07:46:46
社會進程中的新聞學探尋
民主與科學(2014年3期)2014-02-28 11:23:03
我國高等教育改革進程與反思
教育與職業(2014年7期)2014-01-21 02:35:04
Linux僵死進程的產生與避免
主站蜘蛛池模板: 国产黄色片在线看| 99热这里只有精品2| 亚洲最大情网站在线观看| 国产人在线成免费视频| 精品国产污污免费网站| 成年人免费国产视频| 国产成人精品免费av| 天天色天天综合网| 中文无码日韩精品| 美女扒开下面流白浆在线试听| 国产视频大全| 国产av一码二码三码无码| 婷婷六月综合| 国产精品成人AⅤ在线一二三四| AV在线麻免费观看网站| 超碰aⅴ人人做人人爽欧美| 伊人蕉久影院| www.亚洲色图.com| 五月婷婷精品| 国产在线第二页| 久久精品亚洲专区| 一区二区理伦视频| a毛片在线| 亚洲精品在线影院| 久久特级毛片| 国产一级裸网站| 久草美女视频| 亚洲性视频网站| 国产精品亚洲一区二区三区z | 免费一级毛片| 老司国产精品视频91| 亚洲福利视频网址| 国产成人a在线观看视频| 女人18毛片一级毛片在线| 午夜欧美理论2019理论| 久久中文字幕不卡一二区| 国产一级小视频| 国产在线视频福利资源站| 色九九视频| 亚洲天堂视频在线观看免费| 亚洲日本中文综合在线| 久久综合干| 国产欧美日韩专区发布| 国产精品人莉莉成在线播放| 狠狠色丁香婷婷综合| 亚洲日韩图片专区第1页| 91青草视频| 97av视频在线观看| 多人乱p欧美在线观看| 热99re99首页精品亚洲五月天| 久一在线视频| 国产精品久久久久无码网站| 国产成人精品一区二区不卡| 免费在线视频a| av在线无码浏览| julia中文字幕久久亚洲| 97精品伊人久久大香线蕉| 777午夜精品电影免费看| 五月婷婷综合色| 久久国产拍爱| 一区二区三区四区在线| 久久综合九色综合97网| 亚洲第一视频网| 2020国产免费久久精品99| 九九这里只有精品视频| 91精品国产综合久久香蕉922 | 99精品免费在线| 亚洲欧美人成电影在线观看| 国产在线观看高清不卡| 999精品色在线观看| 国产人碰人摸人爱免费视频| 亚洲国产亚综合在线区| 国产精品毛片一区视频播| 欧美黄色网站在线看| 98精品全国免费观看视频| 亚洲精品自拍区在线观看| 亚洲中文无码av永久伊人| 性色生活片在线观看| 国产91视频观看| 精品人妻AV区| 三上悠亚一区二区| 无码专区在线观看|