【正文】
圖 312 《 程序設(shè)計(jì)基礎(chǔ)》在線教育系統(tǒng) 頂層數(shù)據(jù)流圖 石河子大學(xué)本科生畢業(yè)設(shè)計(jì)論文 16 一層數(shù)據(jù)流圖是將頂層數(shù)據(jù)流圖的一個加工“遠(yuǎn)程教學(xué)管理”進(jìn)行展開,分為,錄入資料信息,錄入留言信息,添加用戶信息、學(xué)生選課信息和添加課程班級信息。 本系統(tǒng)的頂層數(shù)據(jù)流圖主要是管理員管理會員的發(fā)布信息,留言信息以及 會員信息,會員發(fā)布信息,留言,查詢信息。 7) 軟件:操作系統(tǒng) Windows XP ,服務(wù)器 , 數(shù)據(jù)庫 SQL 8) SERVER20xx。 4) 系統(tǒng)運(yùn)行環(huán)境 5) 硬件:選用 CPU 推薦使用 PentiumШ或以上。由于系統(tǒng)要不斷的更新因此需要較大的存儲介質(zhì)。管理員添加完用戶后即可登陸,教師上傳完資料后即可接受下載,學(xué)生留言后教師即可看到。文件存儲后,要經(jīng)過管理員的認(rèn)證才可以在頁面上顯示,如果通過認(rèn)證,則刷新頁面,如果未通過,頁 面維持不變。 7) NewPage:頁面更新狀態(tài)。 5) Storing File:文件存儲狀態(tài)。 3) SuccessPage:登錄成功頁面。 系統(tǒng)的狀態(tài)圖 系統(tǒng)狀態(tài)圖如圖 311 所示 : I n p u t U R LH o m e P a g e C e r t i f yS u c e s s p a g eU p l o a d A p p l y P a g eS t o r i n g F i l e sA u t h o r i z e P a g eO l d P a g eN e w P a g eI n p u t L o g i n I n f oS u c c e s sA d m i n i s t r a t o r L o g i nN o t P a s sP a s sE r r o r 圖 311 系統(tǒng)的狀態(tài)圖 〖狀態(tài)圖說明〗 1) HomePage:處于網(wǎng)站主頁。 (4) showStatus():返回下載狀態(tài)的函數(shù)。 (2) Request(String,String):傳遞下載參數(shù)的函數(shù)。 (5) ShowInformation():將反饋信息顯示給用戶的函數(shù)。 (3) Query_and_Validate():查詢數(shù)據(jù)庫并驗(yàn)證用戶名和密碼正確性的函數(shù)。 系統(tǒng)的協(xié)作圖 1) 用戶登錄系統(tǒng)的協(xié)作圖 如圖 39 所示: : U s e rt h e L o g i n I n t e r :L o g i n I n t e r f a c et h e S e r v e r :S e r v e rt h e D a t a b a s e :D a t a b a s e1 : I n p u t ( S t r i n g , i n t )6 : s h o w n I n f o r m a t i o n ( )4 : f e e d B a c k ( )3 : Q u e r y _ a n d _ V a l i d a t e ( )2 : S e n d ( S t r i n g , i n t )5 : r e t u r n 圖 39 用戶登錄系統(tǒng)的協(xié)作圖 〖協(xié)作圖說明〗 (1) Input(String,String):輸入用戶名和密碼的函數(shù)。 (4) authorize:返回認(rèn)證信息的函數(shù)。 (2) Send(String,String):傳遞下載參數(shù)的函數(shù)。服務(wù) 器將通過登錄窗口將信息顯示給用戶。 用戶要登錄系統(tǒng),首先要和登錄窗口交互,輸入用戶名和密碼。 (3) Query_and_Validate():查詢數(shù)據(jù)庫并驗(yàn)證用戶名和密碼正確性的函數(shù)。 2) 用戶登錄系統(tǒng)的時序圖 如圖 37 所示: : U s e rt h e L o g F a c e : L o g i n I n t e r f a c et h e S e r v e r : S e r v e rt h e D a t e b a s e : D a t e b a s e1 : I n p u t ( )2 : s e n d ( S t r i n g , i n t )3 : Q u e r y _ a n d _ V a l i d a t e ( )4 : f e e d B a c k ( )5 : r e t u r n ( )6 : S h o w I n f o r m a t i o n ( ) 圖 37 用戶登錄系統(tǒng)的時序圖 〖時序圖說明〗 (1) Input(String,String):輸入用戶名和密碼的函數(shù)。 系統(tǒng)管理人員通過與管理窗口的交互可以添加或刪除文章,更新 CAI 課件,添加或刪除用戶。 (4) Maintenance:維護(hù),管理員進(jìn)行信息的維護(hù)。 (2) User Login:用戶登錄,需要管理員輸入登錄必須的驗(yàn)證信息。 系統(tǒng)的時序圖 網(wǎng)絡(luò)教學(xué)系統(tǒng)中的用例很多,所能畫出的時序圖也很多,在此不一一介紹。系統(tǒng)管理員負(fù)責(zé)網(wǎng)站的頁面更新,除了文 章,消息,圖片等的更新,還包括頁面 的美化和板塊的調(diào)整。 〖用例圖說明〗 (a) Page Maintenance:頁面維護(hù)。 b) 處理注冊申請。 I n f o M a i n t e n a n c eA d m i n s t r a t o rA d d U s e r sN e w s M a n a g eM a t e r a l M a n a g eQ u e s t i o n s M a n a g eD i s c u s s 圖 35 系統(tǒng)管理員參與的用例圖 a) 頁面維護(hù)。 3 需求分析 11 (d) Message Update:文章或消息修改用例。 (b) Upload CAI:上傳課件用例。 d) 文章或消息修改用例:教師可以修改自己發(fā)布的文章和通知。 b) 上傳課件用例:教師可以將課程的課件上傳到網(wǎng)站上供學(xué)生下載。 (3) 教師參與者的用例圖 教師參與者的用例圖如下 34 所示。 (b) Look through info:文章瀏覽用例。 c) 下載用例 :學(xué)生可以使用下載功能將網(wǎng)站上的課件以及資料信息下載到本地機(jī)器上。 I n f o r m a t i o n S e a r c hs t u d e n tM a t e r a l S e a r c hU p l o a dM a t e r a l U p l o a dH o m e w o r k U p l o a dD o w n l o a d M a t e r a lA r t i c l e S e a r c hE x a mS c o r e S e a r c hD i s c u s s e x t e n d s e x t e n d s 《 i n c l u d e 》 圖 33 學(xué)生參與的用例圖 石河子大學(xué)本科生畢業(yè)設(shè)計(jì)論文 10 a) 瀏覽用例 :學(xué)生可以瀏覽諸如課程簡介,教學(xué)計(jì)劃,學(xué)習(xí)方法等教師發(fā)布的文章。 3 需求分析 9 在 線 教 育 系 統(tǒng)老 師學(xué) 生用 戶 繼 承 繼 承 管 理 員查 看 成 績在 線 考 試添 加登 陸提 交 作 業(yè)查 看 用 戶 信 息查 看 新 聞 公 告發(fā) 帖 , 跟 帖下 載 資 源上 傳 資 源批 改 試 卷出 試 卷發(fā) 表 新 聞布 置 作 業(yè)管 理 用 戶 、 資 源 圖 32 系統(tǒng)用戶參與的總的用例圖 抽象參與者注冊用戶的用例只有登錄系統(tǒng)( System Login)一個,學(xué)生和老師用戶除了包含這個用例以外,還各自有相對應(yīng)的用例。 系統(tǒng)用戶參與的總的用例圖如圖 32 所示。 2) 需要一個專門的管理者進(jìn)行日常維護(hù)與管理,所以需要有系統(tǒng)管理 員參與。非注冊學(xué)生只能瀏覽公告。 1) 系統(tǒng)中,需要學(xué)生和教師的參與。 教師的需求:教師通過瀏覽網(wǎng)頁可以 發(fā)布教案 , 布置 /批改作業(yè) , 發(fā)布公告和答疑解惑 ,同時完成考試管理和資源管理。( 2)非注冊學(xué)生只能瀏覽公告。 網(wǎng) 絡(luò) 教 學(xué) 平 臺管 理 員教 師學(xué) 生 訪 客 圖 31 網(wǎng)站用戶結(jié)構(gòu)圖 在同知道老師探討后,結(jié)合我們和本學(xué)院相關(guān)學(xué)生的溝通,以及網(wǎng)絡(luò)上的一些常規(guī)需求,總結(jié)出以下需求。 功能需求 《 程序設(shè)計(jì)基礎(chǔ)》在線教育系統(tǒng)采用面向?qū)ο蟮木幊蹋Y(jié)合網(wǎng)絡(luò)和數(shù)據(jù)庫技術(shù),實(shí)現(xiàn) 、 控制和管理其他教學(xué)網(wǎng)站所具有的基本功能 。本系統(tǒng)的界面友好,具有詳細(xì)的幫助文檔。 經(jīng)濟(jì) 可行性 本課題通過對既有開發(fā)平臺的使用,能夠設(shè)計(jì)出比較完善的 《程序設(shè)計(jì)基礎(chǔ)》在線教育系統(tǒng) ,沒有任何經(jīng)濟(jì)上的負(fù)擔(dān),通過本課題可以自主開發(fā)我院網(wǎng)上教學(xué)平臺,即節(jié)省了學(xué)院的經(jīng)費(fèi), 又鍛煉了學(xué)生的自我研發(fā)意識和自己動手的能力。 可行性分析 技術(shù)可行性 本課題所涉及的研究目標(biāo),在國內(nèi)外已經(jīng)有相當(dāng)成熟的理論基礎(chǔ)和技術(shù)基礎(chǔ)。用戶需求文檔描述了用戶使用產(chǎn)品必須要完成的任務(wù),這在使用實(shí)例文檔或方案腳本說明中予以說明。 軟件需求包括三個不同的層次:業(yè)務(wù)需求、用戶需求和功能需求也包括非功能需求。 3 需求分析 7 3 需求分析 引言 為了對在線教育系統(tǒng)的性能和功能更好 的分析 ,我們首先進(jìn)行 了 需求分析 工作 。 2) Web 服務(wù)平臺: Tomcat 。配置 TCP/IP 協(xié)議。 Windows98 以上操作系統(tǒng),安裝 Web 瀏覽器。 2) 操作系統(tǒng): Windows 20xx Server / Windows XP 操作系統(tǒng)。 開發(fā)環(huán)境 系統(tǒng)硬件環(huán)境 1) 服務(wù)器: PentiumIII 1G( 或與此相當(dāng)?shù)?CPU)以上配置的高性能 PC 機(jī),有 網(wǎng)絡(luò)接口卡( NIC),內(nèi)存應(yīng)在 256M 以上,硬盤在 80G 以上。 缺點(diǎn)如下: 1) 使用 JDBC,訪問數(shù)據(jù)記錄的速度會受到一定程度的影響。 4) 用戶可以使用 JDBCODBC 橋驅(qū)動器將 JDBC 函數(shù)調(diào)用轉(zhuǎn)換為 ODBC。 2) JDBC 使得編程人員從復(fù)雜的驅(qū)動器調(diào)用命令和函數(shù)中解脫出來,可以致力于應(yīng)用程序中的關(guān)鍵地方。以下是使用 JDBC 的優(yōu)缺點(diǎn)。JDBC API 用于連接 Java 應(yīng)用程序與各種關(guān)系數(shù)據(jù)庫。其奧秘是一組由驅(qū)動程序?qū)崿F(xiàn)的石河子大學(xué)本科生畢業(yè)設(shè)計(jì)論文 6 Java 接口。 JDBC 向應(yīng)用程序開發(fā)者提供了獨(dú)立于數(shù)據(jù)庫的統(tǒng)一的 API。 7) 處理其它的 Statement。 5) 查看返回的行數(shù)是否超出范圍。 3) 限制 Statement 中的參數(shù)。 J a v a 程 序J D B CM y S Q L J D B C驅(qū) 動 器O r a c l e J D B C驅(qū) 動 器J D B C — O D B C橋 驅(qū) 動 器O D B C 數(shù)據(jù) 源M y S Q L數(shù) 據(jù) 庫O r a c l e數(shù) 據(jù) 庫S Q L S e rv e r 數(shù) 據(jù)庫A c c e s s數(shù) 據(jù) 庫 圖 23 java 程序通過 JDBC 訪問數(shù)據(jù)庫 其訪問過程為: 1) 通過驅(qū)動器管理器獲取連接接口。使用 JDBC 來完成對數(shù)據(jù)庫的訪問包括以下四個主要組件: Java 的應(yīng)用程序、 JDBC 驅(qū)動器管理器、驅(qū)動器和數(shù)據(jù)源。 J2EE 結(jié)構(gòu)中間層的應(yīng)用組件通過 JDBC 技術(shù)可以完成下列功能:實(shí)現(xiàn)與位于J2EE 結(jié)構(gòu)中 系統(tǒng)層的數(shù)據(jù)庫服務(wù)器的連接;管理事務(wù);將 SQL 請求傳送到數(shù)據(jù)庫管理系統(tǒng)進(jìn)行預(yù)處理并執(zhí)行相應(yīng)的數(shù)據(jù)操作;執(zhí)行存儲過程;檢查修改查詢語句的執(zhí)行結(jié)果等。 JDBC 技術(shù) JDBC 技術(shù)在 J2EE 結(jié)構(gòu)的中間層與 EIS 層的數(shù)據(jù)源之間提供了數(shù)據(jù)庫獨(dú)立的開放性連接,使應(yīng)用程序不僅可以對基于 SQL 標(biāo)準(zhǔn)的關(guān)系數(shù)據(jù)庫系統(tǒng)進(jìn)行訪問,而且還可以對其他類型的數(shù)據(jù)源進(jìn)行訪問 [12]。 4) 可以用多種格式為動態(tài)內(nèi)容提供服務(wù)。 3) 跨平臺特性。開發(fā)人員能夠共享和交換執(zhí)行組件,并利用這些組件創(chuàng)建應(yīng)用程2 相關(guān)技術(shù)原理及開發(fā)環(huán)境 5 序。 2) 組件的可重用性。 JSP 技術(shù)主要有以下一些特點(diǎn) [17]: 1) 應(yīng)用程序邏輯和頁面顯示相分離的特性。第四,在 Sun 公司提出的 J2EE藍(lán)圖中明確推薦使用 JSP 技術(shù)為動態(tài)內(nèi)容提供服務(wù) [9]。第二,系統(tǒng)提供的大部分操作都涉及到與用戶動態(tài)地進(jìn)行信息交互,要求系統(tǒng)能夠?qū)崿F(xiàn)數(shù)據(jù)的動態(tài)發(fā)布。此模式的數(shù)據(jù)傳遞關(guān)系如圖 22 所示。在此模式中, JavaBean作為模型的角色,它充當(dāng) JSP 和 Servlet 通信的中間工具, Servlet 處理完后設(shè)置 Bean屬性, JSP 讀取此 Bean 的屬性,然后進(jìn)行顯示。請求由前沿的 Servlet 接收并處理后,會重新定向到 JSP。 石河子大學(xué)本科生畢業(yè)設(shè)計(jì)論文 4 Java Server Page(JSP)技術(shù) 在本系統(tǒng)的開發(fā)過程中采用的是 JSP+JavaBean+Servlet 模