【正文】
件信息管理模塊:不同的用戶實(shí)現(xiàn)相應(yīng)的文件上傳下載。 論文結(jié)構(gòu) 本文通過總結(jié)前人的經(jīng)驗(yàn),并結(jié)合具體的應(yīng)用需求,展開了對(duì)基于 Web 的教材管理系統(tǒng)的研究。 本章小結(jié) 本章首先介紹了該課題的研究背景及意義,明確了開發(fā)該系統(tǒng)的重要性。 B/S 模式的優(yōu)點(diǎn)主要有: 首先, B/S 模式適用范圍廣,一般只要有操作系統(tǒng)和瀏覽器就行,與操作系統(tǒng)平 臺(tái)關(guān)系最小。 UML 作為一種建模語言,在項(xiàng)目開發(fā)過程中的作用,總結(jié)起來主要有以下幾個(gè)方面: 作為一種建模語言,為用戶提供了一種易用的、具有可視化建模能力的語言,能夠使用戶使用該語言進(jìn)行系統(tǒng)的開發(fā)工作,并且能夠進(jìn)行有意義的建?;Q; 為面向?qū)ο蠼UZ言的核心概念提供了可擴(kuò) 展性和規(guī)約機(jī)制; ; [12]。 Hibernate Hibernate 是一個(gè)開放源代碼的對(duì)象關(guān)系映射框架,它對(duì) Java 數(shù)據(jù)庫連接 (Java Data Base Connectivity, JDBC)進(jìn)行了非常輕量級(jí)的對(duì)象封裝,使得 Java 程序員可以隨心所欲地使用面向?qū)ο蠓绞絹聿倏v數(shù)據(jù)庫。 SQL Server 20xx 采用的 是 圖形化用戶界面,使系統(tǒng)管理和數(shù)據(jù)庫管理更加直觀、簡單 。 讓 Apache 處理靜態(tài) HTML,而 Tomcat 處理 JSP 和 Servlet。只有經(jīng)過確切描述的軟件需求才能成為軟件設(shè)計(jì)的基礎(chǔ),所以對(duì)高校教材管理系統(tǒng)開發(fā)之前,首先要對(duì)系統(tǒng)進(jìn)行需求分析。 功能需求分析 高校教材選訂系統(tǒng)是一個(gè)高校用來對(duì)教材進(jìn)行管理的管理信息系統(tǒng)。 ,主要負(fù)責(zé)數(shù)據(jù)庫的備份和恢復(fù)。 (4) 教務(wù)秘書:教務(wù)秘書主要負(fù)責(zé)制定院系的教學(xué)安排。 ③ 修改教學(xué)安排:教務(wù)秘書可以在教學(xué)安排修改界面對(duì)本院系教師的教學(xué)安排進(jìn)行修改。 ③ 文件下載:教研室管理員可以在下載界面對(duì)所需要的相關(guān)文件進(jìn)行下載 。 ④ 文件上傳:教材科管理員可以在文件上傳界面對(duì)相關(guān)文件進(jìn)行上傳 。 13 表 32 教材入庫 用例描述 用例編號(hào) 32 用例名稱 教材入庫 用例概述 教材科管理員對(duì)入庫書籍進(jìn)行記錄 主參與者 教材科管理員 項(xiàng)目相關(guān)人 利益說明 項(xiàng)目相關(guān)人 利益 教材科管理員 能夠成功記錄入庫信息 前置條件 教材科管理員成功進(jìn)入書籍入庫界面 后置條件 成功記錄入庫信息 成功保證 看到書籍入庫成功信息 基本事件流 步驟 活動(dòng) 1 教材科管理員進(jìn)入書籍入庫頁面 2 教材科管理員輸入入庫信息 3 教材科管理員點(diǎn)擊“提交”按鈕,提示入庫成功 4 用例終止 擴(kuò)展事件流 1 教材科管理員輸入錯(cuò)誤信息,提交時(shí)提示相應(yīng)的錯(cuò)誤提示 2 入庫信息為空,提交時(shí)提示入庫信息不能為空 規(guī)則與約束 1. 教材科管理員登錄成功才能入庫。 、書名、作者、出版社、單價(jià)等數(shù)據(jù)特征。 。 作業(yè)本入庫信息:作業(yè)本類別、數(shù)量、入庫日期、入庫檢驗(yàn)員。下面是教材管理系統(tǒng)的性能要求。 安全問題是系統(tǒng)最關(guān)鍵的問題。典型的 J2EE 三層結(jié)構(gòu),分為表現(xiàn)層、中間層(業(yè)務(wù)邏輯層)和持久層。這種整合的開發(fā)模式讓開發(fā)更加方便、快捷、思路清晰。數(shù)據(jù)庫概念結(jié)構(gòu)設(shè)計(jì)的目標(biāo)是 將需求分析得到的用戶需求抽象為信息結(jié)構(gòu), 產(chǎn)生反映全組織信息需求的整體數(shù)據(jù)庫概念結(jié)構(gòu),即概念模式 ,它是整個(gè)數(shù)據(jù)庫設(shè)計(jì)的關(guān)鍵 [27]。 書籍入庫信息實(shí)體包括:編號(hào)、類別、書籍條形碼、入庫數(shù)量、入庫日 期、入庫檢驗(yàn)員。 數(shù)據(jù)庫共有 35 張數(shù)據(jù)表, 部分?jǐn)?shù)據(jù)表的表名及說明如表 41 所示。 系統(tǒng)功能結(jié)構(gòu)圖如圖 43 所示。 實(shí)驗(yàn)報(bào)告紙出庫信息實(shí)體包括:出庫編號(hào)、院系、專業(yè)、班級(jí)、學(xué)期、實(shí)驗(yàn)報(bào)告類別、出庫數(shù)量、出庫日期、出庫檢驗(yàn)員。 本文以教材相關(guān)實(shí)體信息為例進(jìn)行描述 : 教材信息實(shí)體包括:教材類別編號(hào)、教材類別。在業(yè)務(wù)層中,管理服務(wù)組件的 Spring IoC 容器負(fù)責(zé)向 Action 提供業(yè)務(wù)模型 (Model)組件和該組件的協(xié)作對(duì)象數(shù)據(jù)處理 (Data Access Objects, DAO)組件完成業(yè)務(wù)邏輯,并提供事務(wù)處理、緩沖池等容器組件以提升系統(tǒng)性能和保證數(shù)據(jù)的完整性。 SSH 整合框架使用 Struts 框 架,其負(fù)責(zé)的工作為:管理用戶的請(qǐng)求,做出相應(yīng)的響應(yīng);提供一個(gè)流程控制器,委派調(diào)用業(yè)務(wù)邏輯和其他上層處理;處理異常;為顯示提供一個(gè)數(shù)據(jù)模型和用戶界面的驗(yàn)證等。同時(shí)對(duì)一些角色進(jìn)行權(quán)限限制,防止出現(xiàn)因權(quán)限過大而造成的錯(cuò)誤操作。在系統(tǒng)設(shè) 計(jì)和開發(fā)過程 15 中,要充分考慮系統(tǒng)當(dāng)前和將來可能承受的工作量,使系統(tǒng)的處理能力和響應(yīng)時(shí)間能夠滿足對(duì)信息處理的需求。 書籍入庫信息:書籍類別、書籍條形碼、數(shù)量、入庫日期、入庫檢驗(yàn)員。 。 、數(shù)量、入庫日期、入庫檢驗(yàn)員等數(shù)據(jù)特征。 數(shù)據(jù)庫需求 在設(shè)計(jì)系統(tǒng)時(shí),主要從模塊組成、數(shù)據(jù)連接、功能實(shí)現(xiàn)、應(yīng)用意義等方面著手,而模塊組成主要包括系統(tǒng)的主要組成模塊以及每個(gè)模塊所要達(dá)到的功能。 ⑥ 出庫管理:教材科管理員可以對(duì)教材、作業(yè)本及實(shí)驗(yàn)報(bào)告紙的出庫進(jìn)行記錄。 ② 查詢審核結(jié)果:教務(wù)處管理員可以在審核查詢界面對(duì)全校所有教師的申報(bào)進(jìn)行審核以及審核結(jié)果的查詢 。 (2) 教師用例 教師能夠通過該系統(tǒng)進(jìn)行如下活動(dòng): ① 查詢教學(xué)安排:教師可以在教學(xué)安排查詢界面對(duì)其教學(xué)安排進(jìn)行查詢。 (6) 教材科管理員:教材科管理員主要負(fù)責(zé)對(duì)教材、作業(yè)本及實(shí)驗(yàn)報(bào)告紙的出入庫管理。 功能需求建模 進(jìn)行系統(tǒng)分析和設(shè)計(jì)的第一步是創(chuàng)建系統(tǒng)的用例模型。 根據(jù)不同的用戶需求,系統(tǒng)應(yīng)實(shí)現(xiàn)的主要功能有以下幾個(gè)方面: 。 教材選訂工作業(yè)務(wù)流程 以平頂山學(xué)院為例,通過實(shí)地調(diào)研可以發(fā)現(xiàn),參與到教材選訂工作中的人員主要有教務(wù)秘書、教師、教研室管理員、教務(wù)處管理員、教材科管理員和學(xué)生六種。 MyEclipse 編程工具 MyEclipse 企業(yè)級(jí)工作平臺(tái)是對(duì) Eclipse IDE 的擴(kuò)展,利用它我們可以在數(shù)據(jù)庫和 J2EE 的開發(fā)、發(fā)布以及 應(yīng)用程序 服務(wù)器的整合方面極大的提高工作效率。 并且 對(duì) Web 技術(shù)的支持,使用戶能夠很容易地將數(shù)據(jù)庫中的數(shù)據(jù)發(fā)布到 Web 頁面上 [19]。 Spring Spring 框架是一個(gè)輕量級(jí)的控制反轉(zhuǎn) (Inversion of Control, IoC)技術(shù)和面向切面編程 (Aspect Oriented Programming , AOP)技術(shù)的容器框架,利用 Spring 框架中的 IoC 技術(shù)可以實(shí)現(xiàn) J2EE 平臺(tái)中所倡導(dǎo)的由容器實(shí)現(xiàn)對(duì)象的生命周期管理,而利用 Spring框架中的 AOP 技術(shù)可以實(shí)現(xiàn) J2EE平 臺(tái)中所倡導(dǎo)的分離應(yīng)用系統(tǒng)中業(yè)務(wù)邏輯組件和通用的技術(shù)服務(wù)組件 [16]。而且 Java Web 應(yīng)用已不再局限于企業(yè)級(jí)應(yīng)用的開發(fā), Inter 上許多商業(yè)網(wǎng)站都有它的影子。 B/S 模式程序的開發(fā)、維護(hù)等工作都集中在服務(wù)器端。然后介紹了本文的主要工作。 第二章 ,通過分析 Web 服務(wù),對(duì)相關(guān)技術(shù)與開發(fā)工具進(jìn)行 介紹。 (4) 院系信息管理模塊:主要包括對(duì)行政單位的管理以及不同角色用戶賬號(hào)的分配等。 而在市場占有率較大的正方教務(wù)管理系統(tǒng) [9] 和青果教務(wù)管理系統(tǒng) [10]中都有教材管理模塊,其良好的系統(tǒng)架構(gòu)和擴(kuò)展性有效地解決了數(shù)字校園資源的整合問題,對(duì)教材管理效率的提高也很有幫助,但與本校教材 選訂 的業(yè)務(wù)流程及環(huán)節(jié)要求不同,如果對(duì)系統(tǒng)進(jìn)行較大的改動(dòng),將會(huì)對(duì)系統(tǒng)的穩(wěn)定性和生命周期產(chǎn)生一定的影響,且提高了開發(fā)成本,這樣無法滿足學(xué)校的實(shí)際管理需求。 基于局域網(wǎng)方式的教材管理系統(tǒng)主要通過基于局域網(wǎng)的協(xié)議運(yùn)行,這種系統(tǒng)開發(fā)簡單,對(duì)硬件要求不高,但安全性和穩(wěn)定性較差。傳統(tǒng)的教材 選訂 工作采用手工或者半自動(dòng)化管理方式,許多繁雜的工作,如填寫 訂單、入庫、出庫等都要由管理人員手工完成。 在 本系統(tǒng)中實(shí)現(xiàn)了從教學(xué)安排的制定、教材的申報(bào)審核、教材的出入庫到學(xué)生的查詢這一業(yè)務(wù)流程。 本人完全了解 平頂山學(xué)院 有關(guān)保存、使用畢業(yè)論文的規(guī)定,同意學(xué)校保存或向國家有關(guān)部門或機(jī)構(gòu)送交論文的 紙質(zhì)版 和電子版,允許論文被查閱和借閱;本人授權(quán) 平頂山學(xué)院 可以將本畢業(yè)論文的全部或部分內(nèi)容編入有關(guān)數(shù)據(jù)庫進(jìn)行檢索,可以采用任何復(fù)制手段保存和匯編本畢業(yè)論文。畢業(yè)論文中凡引用他人已經(jīng)發(fā)表或未發(fā)表的成果、數(shù)據(jù)、觀點(diǎn)等,均已明確注明出處。 論文作者簽名: 日 期: 指導(dǎo)老師簽名: 日 期: 基于 Web 的高校教材選訂系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 摘 要 隨著高校規(guī)模的擴(kuò)大和教學(xué)改革的不斷深入,高校的教學(xué)和科研水平都在穩(wěn)步提高,但高校的教材 選訂 環(huán)節(jié)卻仍存在著許多問題。 下一步 將 考慮與 高校 其它 管理 系統(tǒng)的整合及系統(tǒng)安全性的提高 , 并 根據(jù) 實(shí)際情況對(duì)系統(tǒng)功能和性能進(jìn)一步進(jìn)行 研究,以便 完善和優(yōu)化系統(tǒng) 。 本文所做的工作就是在這個(gè)背景下展開的。 高校常用的教材管理系統(tǒng)多數(shù)是網(wǎng)絡(luò)版的,只是把教材管理系統(tǒng)單獨(dú)作為一個(gè)軟件進(jìn)行開發(fā)的情況還不太常見。 針對(duì)系統(tǒng)需求,選擇模型 視圖 控制器( ModelViewController, MVC)作為系統(tǒng)架構(gòu),實(shí)現(xiàn)系統(tǒng)的代碼復(fù)用,便于日后的升級(jí)和維護(hù)。 (7) 學(xué)生信息查詢模塊:實(shí)現(xiàn)學(xué)生查詢所用教材、作業(yè)本、實(shí)驗(yàn)報(bào)告紙使用情況及費(fèi)用的功能。 第五章 ,對(duì)系統(tǒng)的界面和各模塊的功能提出了具體的實(shí)現(xiàn)方案。 本章主要從系統(tǒng)開發(fā)所涉及到的相關(guān)技術(shù)、方法及開發(fā)工具等方面進(jìn)行描述。 統(tǒng)一建模語言 統(tǒng)一建模語言 (Unified Modeling Language, UML)被對(duì)象管理組織 (Object Management Architecture ,OMG)采納為標(biāo)準(zhǔn)建模語言,成為業(yè)界的標(biāo)準(zhǔn)。 Struts Struts 是基于 Java EE 平臺(tái)的經(jīng)典 MVC 框架,主要采用 Servlet 和 JSP 技術(shù)來實(shí)現(xiàn)。該版本繼承了 SQL Server 版本的優(yōu)點(diǎn) , 同時(shí)又比它增加了許多功能,具有使用方便 、 可伸縮性好 、 與相關(guān)軟件集成程度高等優(yōu)點(diǎn), 可跨越從運(yùn)行 Microsoft Windows 98 的膝上型電腦到運(yùn)行 Microsoft Windows 20xx 的大型多處理器的服務(wù)器等多種平臺(tái)使用 [18]。作為一個(gè)開放源碼的軟件, Tomcat 有著自己獨(dú)特的優(yōu)勢,可以和目前大部分的主流服務(wù)器一起工作, 7 而且有著相當(dāng)高的運(yùn)行效率。 8 3 需求分析 軟件需求分析的目標(biāo)是深入描述軟件的功能和性能,確定軟件的約束和軟件同其他系統(tǒng)元素的接口細(xì)節(jié),定義軟件的其它有效性需求。 9 功能需求 功能需求指定系統(tǒng)必須提供的服務(wù)。 。教材管理系統(tǒng)的參與者包括以下幾類: 10 (1) 學(xué)生:教材管理系統(tǒng)的服務(wù)對(duì)象首先是學(xué)校的學(xué)生,學(xué)生通過該系統(tǒng)可以查詢教材的使用情況及其 費(fèi)用。本文以核心用例為例進(jìn)行詳細(xì)描述和說明,如圖 31 所示。 ④ 文件下載:教師可以在下載界面對(duì)所需要的相關(guān)文件進(jìn)行下載。 12 (5) 教材科管理員用例 教材科管理員能夠通過該系統(tǒng)進(jìn)行如下活動(dòng): ① 查詢教學(xué)安排:教材科管理員可以在教學(xué)安排查詢界面對(duì)全校所有教師的教學(xué)安排進(jìn)行查詢。 在系統(tǒng)核心用例圖中,以制定教學(xué)安排用例和教材入庫用例為例給出用例描述,如表 31 和 表 32 所示。針對(duì)教材信息的數(shù)據(jù) 特點(diǎn),可以總結(jié)出如下需求: ,包含書籍、作業(yè)本和實(shí)驗(yàn)報(bào)告紙。 9. 實(shí)驗(yàn)報(bào)告紙出庫信息需包含院系、專業(yè)、班級(jí)、報(bào)告類別、數(shù)量、出庫 14 日期、出庫檢驗(yàn)員等數(shù)據(jù)特征。 作業(yè)本信息:作業(yè)類別編號(hào)、作業(yè)類別、單價(jià)。 學(xué)生用書出庫信息:院系、專業(yè)、班級(jí)、學(xué)期、書籍條形碼、數(shù)量、出庫日期、出庫檢驗(yàn)員。要實(shí)現(xiàn)這一點(diǎn),就要求系統(tǒng)應(yīng)該盡量使用用戶熟悉的術(shù)語和中文信息的界面。 16 4 總體設(shè)計(jì) 總體設(shè)計(jì)主要是指在系統(tǒng)分析的基礎(chǔ)上,對(duì)整個(gè)系統(tǒng)的劃分(子系統(tǒng))、機(jī)器設(shè)備(包括軟、硬設(shè)備)的配置、數(shù)據(jù)的存貯規(guī)律以及整個(gè)系統(tǒng)實(shí)現(xiàn)規(guī)劃等方面進(jìn)行合理的安排 [25]。 Web 應(yīng)用的中間部分是業(yè)務(wù)邏輯層。 控 制 器 S t r u t sA c t i o nS e r v l e tJ S PA c t i o nF o r mA c t i o n業(yè) 務(wù) 層 S p r i n gS p r i n gA O PS p r i n gI o C數(shù) 據(jù) 庫持 久 層H i b e r n a t eH i b e r n a t eT e m p l a t eH i b e r n a t eD A OR e q u e s tR e s p o n s e 圖 41 系統(tǒng)架構(gòu)圖 數(shù)據(jù)庫設(shè)計(jì)和實(shí)現(xiàn) 數(shù)據(jù)庫設(shè)計(jì)的目標(biāo)是設(shè)計(jì)出該系統(tǒng)所使用的數(shù)據(jù)庫,并創(chuàng)建相應(yīng)的數(shù)據(jù)表,每個(gè)表中要有符合條件的屬性。 書籍信息實(shí)體包括:書籍條形碼、書名、作者、出版社、單價(jià)。 教材相關(guān) ER 圖如圖 42 所示 。 接口設(shè)計(jì) 軟件接口是軟件系統(tǒng)中程序之間的接口,包括軟件系統(tǒng)