郭宏子龍
摘要:隨著互聯(lián)網(wǎng)的發(fā)展,軟件已經(jīng)改變了傳統(tǒng)教學(xué)的一些固定模式和行為習(xí)慣,本文依此為目的設(shè)計實現(xiàn)了一款教學(xué)論壇App,主要作用是利用此軟件使得學(xué)生、教師以及課程管理人員實現(xiàn)課程和其他相關(guān)信息的互動和交流。為使系統(tǒng)更加適用以及更加方便運營,本文詳細(xì)完成了需求分析和角色設(shè)置工作,然后對系統(tǒng)進(jìn)行了總體設(shè)計、各模塊詳細(xì)設(shè)計、數(shù)據(jù)庫設(shè)計等工作,最后利用安卓開發(fā)技術(shù)和Node.js的Express框架進(jìn)行系統(tǒng)開發(fā)并且完成了系統(tǒng)測試工作。
關(guān)鍵詞: 教學(xué)論壇App; 需求分析; 系統(tǒng)設(shè)計; Express框架
【Abstract】 With the development of the Internet, software has changed some patterns and behavioral habits of traditional teaching. This paper has designed and implemented a teaching forum App for the purpose of using this software to enable students, teachers and course managers to achieve interaction and communication between the course and other topics. In order to make the system more applicable and more convenient to operate, this paper has completed the requirements analysis and role setting work in detail, the overall design of the system, detailed design of each module and database design. Based on the above, Android and Node.js Express framework are used to develop and complete the system test work.
【Key words】 ?teaching forum App; requirements analysis; system design; Express framework
0 引 言
隨著互聯(lián)網(wǎng)時代的不斷發(fā)展,學(xué)生的學(xué)習(xí)方式也發(fā)生了顯著變化,目前有越來越多的教學(xué)資源從課堂轉(zhuǎn)移到了網(wǎng)絡(luò),學(xué)生在互聯(lián)網(wǎng)上學(xué)習(xí)時間也在延長。部分互聯(lián)網(wǎng)教育平臺已經(jīng)實現(xiàn)了線上正式授課的教學(xué)模式,而且為每個課程設(shè)置了相關(guān)討論區(qū),學(xué)生們在上課之余可以在討論區(qū)中來提出自己學(xué)習(xí)中的疑問等待回復(fù),也可以瀏覽他人的帖子進(jìn)行課程的二次學(xué)習(xí)。但是目前隨著移動互聯(lián)網(wǎng)的廣泛普及,各種討論互動的操作從電腦端轉(zhuǎn)向手機(jī)端已然成為必然趨勢。因此本文面向教學(xué)業(yè)務(wù)研發(fā)出一款手機(jī)App,除了具備基本的課程討論互動功能外,還將擴(kuò)展出綜合討論區(qū)和數(shù)據(jù)錄入管理等功能。系統(tǒng)將從需求及功能分析、系統(tǒng)設(shè)計和系統(tǒng)實現(xiàn)三方面展開研究論述。
1 討論區(qū)需求分析
1.1 主要功能介紹
本文開發(fā)的系統(tǒng)為面向教學(xué)的討論區(qū)App,主要使用人群是學(xué)生和教師,并以系統(tǒng)管理者和教學(xué)管理員為主要系統(tǒng)運營人員的課程交流平臺。該系統(tǒng)的運行場景圖如圖1所示,系統(tǒng)的主要功能有2類,分別是:用戶及課程數(shù)據(jù)管理以及討論區(qū)內(nèi)容瀏覽和發(fā)帖回復(fù)功能。對此可做探討表述如下。
(1)用戶及課程數(shù)據(jù)管理功能。平臺的所有用戶數(shù)據(jù)由系統(tǒng)管理員來維護(hù),學(xué)生和教師名單要從學(xué)校對應(yīng)的教務(wù)處中獲取導(dǎo)入到平臺中。教學(xué)管理員名單需由學(xué)院確定專門負(fù)責(zé)人后,由系統(tǒng)管理員進(jìn)行信息錄入。一方面是統(tǒng)籌處理課程數(shù)據(jù),教學(xué)管理員需從教務(wù)處中導(dǎo)入本學(xué)院的課程信息,同時獲取學(xué)生的選課信息和教師授課信息,在學(xué)生和教師于系統(tǒng)登錄之前就填寫好學(xué)生課表和教師課表數(shù)據(jù)。另一方面,也擔(dān)負(fù)教學(xué)管理員的職責(zé)。學(xué)生和教師能夠在自己登錄后的平臺中看到有關(guān)于本人的全部信息和選課信息等數(shù)據(jù)。
(2)討論區(qū)內(nèi)容瀏覽和發(fā)帖回復(fù)功能。平臺中有2類討論區(qū)。一類是與課程相關(guān)的討論區(qū),即針對課程重點難點知識的討論;另一類是綜合討論區(qū),包括學(xué)生反饋、課程設(shè)置和教學(xué)方法等較為寬泛的話題。學(xué)生和教師可以在自己的賬戶中進(jìn)行參與評論、發(fā)帖和收藏帖子的數(shù)據(jù)操作。在課程討論區(qū)中,學(xué)生會在本人所選課程中看到與課程相關(guān)的帖子,也可以看到其它人的討論內(nèi)容,并以發(fā)帖的形式參與討論、提出問題等待別人回復(fù)。這些操作也同樣適用于老師。不僅如此,還可以采用匿名操作。綜合討論區(qū)和課程討論區(qū)的場景相似,只是需要教學(xué)管理者來進(jìn)行分類管理和發(fā)帖,學(xué)生和教師只有瀏覽和評論的功能,學(xué)生可以采用匿名操作。
1.2 角色及需求分析
討論區(qū)App的使用可以歸納為4類用戶,分別是:系統(tǒng)管理員、教學(xué)管理員、不同課程對應(yīng)的教師和相關(guān)學(xué)生。對此功能和使用權(quán)限可做闡釋分述如下。
(1)系統(tǒng)管理員。主要職責(zé)是管理系統(tǒng)其他角色的用戶名單。對于學(xué)生角色,系統(tǒng)管理員要通過教務(wù)處取得每門課程的選課學(xué)生名單,再將其導(dǎo)入到數(shù)據(jù)庫中,同時還要負(fù)責(zé)管理學(xué)生登錄,這里不僅涉及到學(xué)生都能完成登錄,而且還要開放相應(yīng)課程的討論權(quán)限。而對于教師角色和教學(xué)管理者而言,同樣也要獲取課程對應(yīng)的教師名單并導(dǎo)入數(shù)據(jù)庫,且同步完成登錄監(jiān)督工作。
(2)教學(xué)管理者。主要職責(zé)是維護(hù)課程信息和設(shè)置非課程類的綜合討論話題。對于前者,教學(xué)管理員要在數(shù)據(jù)庫中導(dǎo)入課程名稱、課程開課學(xué)期和對應(yīng)教師與學(xué)生。就后者來說,就是發(fā)布主題帖子供大家參與討論。例如發(fā)布對于學(xué)院的課程改革來征集建議等。
(3)教師和學(xué)生。除了基本的登錄注冊功能外,主要是在系統(tǒng)討論區(qū)內(nèi)瀏覽信息和發(fā)布信息,實現(xiàn)學(xué)生和老師在課程信息等方面的交流討論,同時在發(fā)表時也可以選擇是否采用匿名發(fā)表方式。
2 系統(tǒng)設(shè)計
2.1 系統(tǒng)結(jié)構(gòu)設(shè)計
打開App后,無論何種身份的用戶都需進(jìn)入系統(tǒng)的登錄界面,輸入賬號和密碼后進(jìn)入該用戶所在權(quán)限的頁面。初始賬號和密碼由系統(tǒng)管理員導(dǎo)入來生成,登錄成功后不同角色進(jìn)入不同的入口。系統(tǒng)結(jié)構(gòu)總體設(shè)計如圖2所示。系統(tǒng)對此設(shè)計表述詳見如下。
(1)系統(tǒng)管理員。在登錄后,可以查看和修改自己的個人信息。系統(tǒng)管理員可以進(jìn)入系統(tǒng)名單導(dǎo)入頁面,并按照教師名單、學(xué)生名單和教學(xué)管理員名單進(jìn)行名單導(dǎo)入與設(shè)置處理,而且也可以查看和刪除已導(dǎo)入的名單,頁面設(shè)計邏輯見圖3。
(2)教學(xué)管理員。在登錄后,進(jìn)入相應(yīng)頁面查看和修改自己的個人信息。在系統(tǒng)管理員的名單導(dǎo)入工作結(jié)束后,教學(xué)管理員就可以導(dǎo)入課程名單,及設(shè)置授課教師、上課學(xué)生和開課時間等信息,由此一門課程正式開設(shè)上線。此外,教學(xué)管理員還要管理綜合討論區(qū),通過進(jìn)入綜合討論區(qū)管理頁面,負(fù)責(zé)綜合討論區(qū)的話題發(fā)布和瀏覽回復(fù)等工作。教學(xué)管理員對課程討論區(qū)有瀏覽的權(quán)限,頁面設(shè)計邏輯見圖4。
(3)教師。在登錄后,可以進(jìn)入相應(yīng)頁面查看和修改個人信息,同時還可以進(jìn)入另一頁面查看上課課表,但對于課表只有瀏覽、而不具備修改功能。討論區(qū)方面,教師只能對自己所授課程討論區(qū)進(jìn)行管理,對于綜合討論區(qū)的內(nèi)容只有瀏覽權(quán)限。針對自己授課課程,教師可以發(fā)布一些有意義的討論話題,并且針對討論內(nèi)容做出必要的疑問解答等。仍需一提的是,教師可以進(jìn)入推薦待回復(fù)內(nèi)容頁面中進(jìn)行課程答疑,教師頁面設(shè)計邏輯見圖5。
(4)學(xué)生。在登錄后,可以查看和修改個人信息,并且對于課表只有瀏覽、也不具備修改功能。討論區(qū)方面,學(xué)生可以同時瀏覽綜合討論區(qū)和課程討論區(qū),對于課程討論區(qū)有參與討論和發(fā)帖的權(quán)限,對于綜合討論區(qū)只有參與討論的權(quán)限。對于學(xué)生在課程討論區(qū)產(chǎn)生的數(shù)據(jù)有記憶功能,可以查看自己在課程討論區(qū)曾經(jīng)的發(fā)帖,進(jìn)行回復(fù)和收藏,發(fā)帖不能刪除,但回復(fù)和收藏可以刪除。學(xué)生在自己的推薦頁面有2類內(nèi)容。一類是根據(jù)自己的提問推薦可能有幫助的回復(fù)。另一類是推薦一些待回答的問題。教師頁面設(shè)計邏輯見圖6。
2.2 數(shù)據(jù)庫設(shè)計
本次研究的實體對象有學(xué)生、教師、系統(tǒng)管理員和教師管理員四個角色,同時還有課程實體,此外還包括獨立的綜合和課程討論帖以及相應(yīng)的獨立回復(fù)與子回復(fù)實體。在研發(fā)過程中,教師實體和課程實體能夠結(jié)合學(xué)期學(xué)年等信息生成唯一課程。而這門課程在添加學(xué)生信息后產(chǎn)生了學(xué)生課表實體。學(xué)生在瀏覽討論帖時需要進(jìn)行日志記錄產(chǎn)生帖子瀏覽記錄實體。此外,將根據(jù)學(xué)生在討論區(qū)的個人數(shù)據(jù)記錄,即個人收藏帖、個人創(chuàng)建帖和個人參與帖產(chǎn)生相應(yīng)3個個人數(shù)據(jù)實體。
3 系統(tǒng)實現(xiàn)
3.1 實現(xiàn)技術(shù)
教學(xué)論壇是基于安卓端開發(fā)的系統(tǒng),手機(jī)頁面的實現(xiàn)是編寫許多xml文件,而后用Java語言編寫控制頁面的活動類和各種基礎(chǔ)類。服務(wù)器端采用Node.js的Express框架技術(shù),這個框架有速度快、輕量級和開發(fā)易于上手等特點??紤]到數(shù)據(jù)庫部分的業(yè)務(wù)中存在大量數(shù)據(jù)字段擴(kuò)展和數(shù)據(jù)存儲靈活性等特點,因此采用典型的非關(guān)系型數(shù)據(jù)庫MongoDB進(jìn)行存儲。
3.2 用戶界面展示
系統(tǒng)用戶界面總共分為3類界面。具體闡述如下。
(1)登錄界面。學(xué)生、教師、教學(xué)管理員和系統(tǒng)管理員需要在登錄界面中輸入賬號密碼之后才能進(jìn)入個人角色的特定頁面,登錄界面如圖7所示。
(2)角色功能頁面。即不同角色有不同的個人功能頁面,比如學(xué)生有個人課表,個人收藏等頁面,而系統(tǒng)管理員沒有。下面即以學(xué)生角色為例給出個人空間頁面,如圖8,圖9所示。
(3)討論區(qū)頁面。包括綜合討論區(qū)和課程討論區(qū)的帖子總覽、帖子詳情、回復(fù)和創(chuàng)建等頁面。這里展示帖子總覽和帖子詳情頁面,如圖10,圖11所示。
3.3 系統(tǒng)測試
在系統(tǒng)開發(fā)完成后,先要設(shè)置一個系統(tǒng)管理員,進(jìn)行初步自測。系統(tǒng)管理員錄入教學(xué)管理員、教師和學(xué)生后再分別登錄進(jìn)入各自角色的頁面進(jìn)行功能測試。系統(tǒng)的前后端實現(xiàn)完全分離,自測時要在程序各個模塊輸出必要信息方便調(diào)試和過程跟蹤。在初步自測過程后,利用爬蟲技術(shù)在其他教學(xué)論壇中爬取大量討論區(qū)數(shù)據(jù),進(jìn)行數(shù)據(jù)格式轉(zhuǎn)化后再錄入系統(tǒng)數(shù)據(jù)庫中,方便于大數(shù)據(jù)環(huán)境下進(jìn)行測試。據(jù)此可增加多名測試人員共同使用此軟件,以確保系統(tǒng)在大數(shù)據(jù)和多人使用下的實時性、數(shù)據(jù)同步性和并行性等。
4 結(jié)束語
本文根據(jù)大學(xué)教學(xué)過程中的實際需求,設(shè)計了一個服務(wù)于教師和學(xué)生使用的討論區(qū)App。軟件設(shè)計過程從需求分析出發(fā),分析軟件的核心功能和角色設(shè)計,然后進(jìn)行系統(tǒng)的總體設(shè)計和各模塊詳細(xì)設(shè)計,最后利用安卓開發(fā)技術(shù)和服務(wù)器端Express框架進(jìn)行系統(tǒng)開發(fā),完成了系統(tǒng)測試工作。當(dāng)然,隨著使用人員的增加和需求的不斷變化,系統(tǒng)仍要不斷地修改和完善。目前各類實踐均已表明,本文研究成果有著廣闊應(yīng)用前景。
參考文獻(xiàn)
[1] 何艷君,馬炅. 基于MOOC平臺的社會性交互個案研究—以“現(xiàn)代教育技術(shù)”課程為例[J]. 中國信息技術(shù)教育,2018(Z2):155.
[2]吳俊偉,沈立煒,郭武楠,等. 安卓應(yīng)用用戶界面交互模式抽取與檢索[J]. 軟件學(xué)報,2018,29(8):2198.
[3]王書振,王雄智,張曉慶,等. 基于“慕課+翻轉(zhuǎn)課堂”的安卓開發(fā)課程教學(xué)改革探究[J]. 物聯(lián)網(wǎng)技術(shù),2018,8(12):113.
[4]杜春業(yè),吳建華,宋巍. 基于移動終端的應(yīng)用軟件性能測試[J]. 電子技術(shù)與軟件工程,2017(3):67.
[5]張璐妮,唐守廉,劉宇泓. MOOC學(xué)習(xí)者參與行為實證研究—以“中國大學(xué)MOOC”外語課程為例[J]. 北京郵電大學(xué)學(xué)報(社會科學(xué)版),2018,20(3):97.