




免費(fèi)預(yù)覽已結(jié)束,剩余52頁可下載查看
下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
大學(xué)畢業(yè)設(shè)計(jì) 論文 I 基于基于 web 的畢業(yè)設(shè)計(jì)雙向選題系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)的畢業(yè)設(shè)計(jì)雙向選題系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 摘摘 要要 近年來 高校中的數(shù)字化應(yīng)用相當(dāng)普及 各種信息管理系統(tǒng)越來越完善 如教務(wù) 管理系統(tǒng) 圖書管理系統(tǒng) 學(xué)籍管理系統(tǒng)等 然而 關(guān)于畢業(yè)生的論文選題 目前大 部分 高校仍然采用低效的人工管理模式 從而導(dǎo)致了教師工作量大 學(xué)生選題不便不 科學(xué) 變更麻煩等一系列問題 本文首先介紹了基于 Web 的畢業(yè)選題系統(tǒng)的應(yīng)用背景 闡述了 Web 的現(xiàn)狀和各 種開發(fā)技術(shù) 然后 通過一個(gè)完整的軟件開發(fā)周期 采用現(xiàn)在流行的 ASP NET 和 SQL Server 數(shù)據(jù)庫技術(shù) 從可行性研究 需求分析 到方案的提出和選擇 再到系統(tǒng) 設(shè)計(jì) 編碼 調(diào)試 最終實(shí)現(xiàn)一個(gè)全新的畢業(yè)設(shè)計(jì)網(wǎng)上選題系統(tǒng) 新系統(tǒng)經(jīng)過嚴(yán)格的 測(cè)試 可以投入實(shí)際的使用 通過新系統(tǒng) 教師能方便地維護(hù)自己的論題 學(xué)生可以在選題期間自行選題 同 時(shí) 教師可以根據(jù)學(xué)生的興趣及專長(zhǎng)等信息進(jìn)行雙向選擇 選題結(jié)束后 教師及管理 者還可以通過系統(tǒng)方便地跟進(jìn)學(xué)生的設(shè)計(jì)進(jìn)度 關(guān)鍵詞關(guān)鍵詞 畢業(yè)設(shè)計(jì)選題系統(tǒng) 信息管理系統(tǒng) Web 技術(shù) B S 模型 基于 web 的畢業(yè)設(shè)計(jì)雙向選題系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) II Design 而且畢業(yè)設(shè)計(jì)還 是對(duì)教學(xué)工作的一個(gè)總體檢驗(yàn) 從中可以發(fā)現(xiàn)教學(xué)中存在的問題 特別在知識(shí)結(jié)構(gòu) 課程內(nèi)容的合理性 先進(jìn)性等方面的問題 畢業(yè)設(shè)計(jì)管理工作是教學(xué)管理工作的重要環(huán)節(jié) 具有工作量大 靈活性強(qiáng) 時(shí)間 要求緊 對(duì)教學(xué)質(zhì)量影響大等特點(diǎn) 特別是近年來 隨著高校擴(kuò)招工作的進(jìn)一步深入 每年畢業(yè)生人數(shù)不斷增加 再加上院校合并 擴(kuò)建帶來的異地辦公 教學(xué) 畢業(yè)設(shè)計(jì) 的管理工作難度越來越大 高校采用傳統(tǒng)單機(jī)管理模式存在成本高 重復(fù)勞動(dòng)量大 效率低 難維護(hù)等缺點(diǎn) 難以適應(yīng)畢業(yè)設(shè)計(jì)管理的要求 我們針對(duì)畢業(yè)設(shè)計(jì)管理過程 中 選題靈活性強(qiáng) 指導(dǎo)老師多 畢業(yè)設(shè)計(jì)地點(diǎn)分散 進(jìn)度要求嚴(yán)格 工作量大等特 點(diǎn) 基于三層體系結(jié)構(gòu)構(gòu)建了一個(gè)適合于高校使用的網(wǎng)上畢業(yè)設(shè)計(jì)管理系統(tǒng) 從學(xué)生 的角度 可以通過 B S 方式與老師進(jìn)行交流 實(shí)現(xiàn)畢業(yè)設(shè)計(jì)題目的雙向選擇 協(xié)商設(shè) 計(jì)目標(biāo) 內(nèi)容 進(jìn)度等 對(duì)于教務(wù)管理 管理人員可以開啟本年度的畢業(yè)設(shè)計(jì)任務(wù) 控制雙向選擇的進(jìn)程 隨時(shí)查詢 了解畢業(yè)設(shè)計(jì)進(jìn)行的過程 不但提高了工作效率 而且提高了管理水平 課題的目的旨在應(yīng)用現(xiàn)代的信息網(wǎng)絡(luò)化管理技術(shù)解決畢業(yè)設(shè)計(jì) 管理中存在的問題 減少師生畢業(yè)設(shè)計(jì)選題時(shí)間 增進(jìn) 加強(qiáng)畢業(yè)設(shè)計(jì)過程監(jiān)控 降 低導(dǎo)師和教務(wù)員工工作強(qiáng)度 本系統(tǒng)是針對(duì)院系級(jí)畢業(yè)設(shè)計(jì)教務(wù)管理工作 研究 設(shè)計(jì)并開發(fā)的畢業(yè)設(shè)計(jì)選題 系統(tǒng) 采用 ASP NET 和 SQL Server 2005 作為開發(fā)工具 在開發(fā)過程中首先分析了其 主要的業(yè)務(wù)流程和信息交流交互的內(nèi)容 然后又結(jié)合了學(xué)校對(duì)畢業(yè)設(shè)計(jì)環(huán)節(jié)的管理標(biāo) 準(zhǔn)和要求 經(jīng)過系統(tǒng)的功能設(shè)計(jì)和數(shù)據(jù)庫設(shè)計(jì)等過程 最終實(shí)現(xiàn)了系統(tǒng)要求的全部功 能 本論文從系統(tǒng)需求分析 總體設(shè)計(jì) 詳細(xì)設(shè)計(jì) 系統(tǒng)實(shí)現(xiàn)和系統(tǒng)測(cè)試這五個(gè)角度 對(duì)系統(tǒng)的開發(fā)過程進(jìn)行了詳細(xì)的介紹 并對(duì)該系統(tǒng)的主要特點(diǎn)以及采用的主要系統(tǒng)開 發(fā)工具進(jìn)行了簡(jiǎn)單的介紹 基于 web 的畢業(yè)設(shè)計(jì)雙向選題系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 2 第第 1 章章 緒論緒論 1 1 研究背景及意義 當(dāng)前的管理信息系統(tǒng)已經(jīng)發(fā)展為集成了計(jì)算機(jī)網(wǎng)絡(luò)技術(shù) 通信技術(shù) 信息處理技 術(shù) 對(duì)信進(jìn)行收集 傳遞 存儲(chǔ)及加工處理 用于輔助決策進(jìn)行事務(wù)管理的一種人機(jī) 交互的智能化計(jì)算機(jī)系統(tǒng) 隨著管理信息系統(tǒng)的發(fā)展及其廣泛的應(yīng)用 數(shù)據(jù)庫管理技術(shù)已逐步趨于成熟 其 應(yīng)用也已經(jīng)遍及各個(gè)領(lǐng)域 在學(xué)校中 信息管理系統(tǒng)已經(jīng)涉及到教育教學(xué)的各個(gè)方面 從學(xué)生教師管理 到考試安排成績(jī)統(tǒng)計(jì)等 都通過信息管理系統(tǒng)來的到高效的運(yùn)行 同時(shí) 學(xué)校管理中的畢業(yè)設(shè)計(jì)管理過程也提出了相應(yīng)的要求 為了滿足畢業(yè)設(shè)計(jì)管理 的要求 需要設(shè)計(jì)與制作一個(gè)畢業(yè)設(shè)計(jì)選題系統(tǒng) 畢業(yè)設(shè)計(jì)選題系統(tǒng)實(shí)現(xiàn)了對(duì)整個(gè)畢 業(yè)設(shè)計(jì)選題過程管理的系統(tǒng)化 規(guī)范化 無紙化 整個(gè)系統(tǒng)使用戶操作起來簡(jiǎn)便快捷 對(duì)減輕學(xué)生 教師的勞動(dòng)強(qiáng)度 提高工作效率與管理水平 具有很大的使用價(jià)值 目前很多畢業(yè)設(shè)計(jì)選報(bào)系統(tǒng)都是基于 C S 模式 需要客戶端安裝專門的應(yīng)用程序 才可以使用 有些甚至不可以聯(lián)網(wǎng)使用 另外 不同學(xué)校 甚至不同學(xué)院 由于對(duì)畢 業(yè)設(shè)計(jì)題目管理的方法不同 都會(huì)對(duì)畢業(yè)設(shè)計(jì)題目管理有著不同的要求 如果直接拿 現(xiàn)成的系統(tǒng)來應(yīng)用到學(xué)院的畢業(yè)設(shè)計(jì)選題過程中來 會(huì)出現(xiàn)很多難以解決的麻煩 為 了滿足學(xué)院畢業(yè)設(shè)計(jì)題目選報(bào)的要求特別設(shè)計(jì)一套符合規(guī)定的畢業(yè)設(shè)計(jì)選題系統(tǒng) 本 系統(tǒng)可以完全滿足學(xué)院內(nèi)各個(gè)專業(yè)學(xué)生畢業(yè)設(shè)計(jì)題目的網(wǎng)上選報(bào) 本系統(tǒng)基于 B S 架 構(gòu) 無需在客戶端安裝任何程序即可使用 達(dá)到真正的方便使用 易于推廣 本系統(tǒng) 采用模塊化管理 可以方便的對(duì)系統(tǒng)功能進(jìn)行添加刪除 這樣 當(dāng)以后畢業(yè)設(shè)計(jì)題目 選報(bào)出現(xiàn)了什么新的要求 可以通過修改部分系統(tǒng)模塊 添加或修改系統(tǒng)功能來適應(yīng) 新的要求 易于升級(jí)和維護(hù) 1 2 國(guó)內(nèi)外研究概述 隨著教育產(chǎn)業(yè)化進(jìn)程的逐步推進(jìn) 各大高校紛紛合并 走上了強(qiáng)強(qiáng)聯(lián)合 資源共 享的路子 高校的規(guī)模不斷擴(kuò)大 如何合理利用教學(xué)資源 有效地加強(qiáng)教學(xué)管理工作 已成為各大高校十分關(guān)注的問題 目前 在教學(xué)管理方面 特別是學(xué)生學(xué)籍管理 成 績(jī)管理等方面都普遍采用了網(wǎng)絡(luò)化管理技術(shù) 而對(duì)于畢業(yè)設(shè)計(jì)這一重要的教學(xué)環(huán)節(jié) 和其他教學(xué)課程一樣 普遍采用傳統(tǒng)的單機(jī)管理模式 主要進(jìn)行畢業(yè)設(shè)計(jì)基本信息和 成績(jī)的輸入輸出工作 而對(duì)于畢業(yè)設(shè)計(jì)的選題 畢業(yè)設(shè)計(jì)過程中管理 以及畢業(yè)設(shè)計(jì) 效果的統(tǒng)計(jì)分析等工作還沒有納入管理系統(tǒng)中 目前隨著教學(xué)改革的不斷深入 學(xué)校 辦學(xué)規(guī)模的不斷擴(kuò)大 如何有效地增強(qiáng)教學(xué)管理水平 充分調(diào)動(dòng)學(xué)生的學(xué)習(xí)積極性 提高畢業(yè)設(shè)計(jì)的教學(xué)質(zhì)量是各高校教學(xué)管理工作的重點(diǎn)之一 目前 畢業(yè)設(shè)計(jì)的雙向選擇和畢業(yè)設(shè)計(jì)過程的動(dòng)態(tài)跟蹤與交流己成為畢業(yè)設(shè)計(jì)環(huán) 節(jié)教學(xué)改革的重要內(nèi)容 英國(guó)諾丁漢大學(xué)開發(fā)了專門的管理系統(tǒng)實(shí)現(xiàn)了畢業(yè)設(shè)計(jì)的網(wǎng) 上雙向選擇 國(guó)內(nèi)南開大學(xué)已開發(fā)了畢業(yè)設(shè)計(jì)網(wǎng)站 為畢業(yè)設(shè)計(jì)的選題 師生交流和 畢業(yè)設(shè)計(jì)成績(jī)的管理提供了良好的環(huán)境 取得了良好的效果 1 3 本論文主要內(nèi)容 現(xiàn)今高校中教務(wù)管理系統(tǒng)多是很多系統(tǒng)輔助著使用 但并未使用統(tǒng)一的管理 本 系統(tǒng)的畢業(yè)設(shè)計(jì)雙向選題系統(tǒng)綜合了多種選題情況 實(shí)現(xiàn)了學(xué)生與教師之間的雙向選 大學(xué)畢業(yè)設(shè)計(jì) 論文 3 擇 本系統(tǒng)公用四個(gè)角色 管理員 定題租 教師 學(xué)生 通過管理員錄入四種角色 的信息 使整個(gè)系統(tǒng)運(yùn)作起來 然后通過教師出題 經(jīng)過定題組定題 確定各個(gè)專業(yè) 班級(jí)所對(duì)應(yīng)的畢業(yè)設(shè)計(jì)題目 通過管理員設(shè)置系統(tǒng)的選題時(shí)間以及志愿次數(shù)之后 學(xué) 生可以查看各個(gè)論文題目的要求 根據(jù)自己的興趣開始選題 教師從選擇其課題中查 看學(xué)生的信息 然后確定自己所需要的學(xué)生 達(dá)到雙向選擇的意義 本文從系統(tǒng)實(shí)際 需求出發(fā) 構(gòu)建了一種適合高校畢業(yè)設(shè)計(jì)現(xiàn)狀 又能充分發(fā)揮 ASP NET 及 SQL SERVER 優(yōu)勢(shì)的 Web 應(yīng)用系統(tǒng)開發(fā)模式 基于 web 的畢業(yè)設(shè)計(jì)雙向選題系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 4 第第 2 章章 系統(tǒng)開發(fā)工具簡(jiǎn)介系統(tǒng)開發(fā)工具簡(jiǎn)介 2 1 SQL Server 數(shù)據(jù)庫技術(shù)概述 2 1 1 SQL Server 2005 的主要特性 SQL Server 2005 是微軟公司 2005 年末發(fā)布的一款數(shù)據(jù)庫平臺(tái)產(chǎn)品 該產(chǎn)品不僅包 含了豐富的企業(yè)級(jí)數(shù)據(jù)管理功能 還集成了商業(yè)智能等特性 它突破了傳統(tǒng)意義的數(shù) 據(jù)庫產(chǎn)品 將功能延伸到了數(shù)據(jù)庫管理以外的開發(fā)和商務(wù)智能 為企業(yè)計(jì)算提供了完 整的解決方案 SQL Server 數(shù)據(jù)庫經(jīng)歷了長(zhǎng)期的發(fā)展 現(xiàn)已成為商業(yè)應(yīng)用中最重要的 組成部分 微軟公司重新對(duì) SQL Server 數(shù)據(jù)庫進(jìn)行了設(shè)計(jì) 新的構(gòu)架中主要包括了數(shù) 據(jù)庫服務(wù) 分析服務(wù) 數(shù)據(jù)庫集成服務(wù) 通知服務(wù) 報(bào)表服務(wù)等 SQL Server2005 的新增特性主要包括以下三個(gè)方面 1 企業(yè)數(shù)據(jù)管理 高可用性 SQL Server 2005 的失敗轉(zhuǎn)移集群和數(shù)據(jù)庫鏡像技術(shù) 確保企業(yè)向員工 客戶和合作伙伴提交高度可靠和可用的應(yīng)用系統(tǒng) 管理工具 SQL Server 2005 引進(jìn)了一套集成的管理工具和管理應(yīng)用編程接口 APIs 以提供易用性 可管理性 及對(duì)大型 SQL Server 配置的支持 安全性增強(qiáng) SQL Server 2005 旨在通過 數(shù)據(jù)庫加密 更加安全的默認(rèn)設(shè)置 加強(qiáng)的密碼政策和細(xì)化許可控制 及加強(qiáng)的安全 模型等特性 為企業(yè)數(shù)據(jù)提供最高級(jí)別的安全性 可伸縮性 SQL Server 2005 可伸縮 性的先進(jìn)性包括表格分區(qū) 復(fù)制能力的增強(qiáng)和 64 位支持 2 開發(fā)人員生產(chǎn)力 Common Language Runtime CLR 集成 SQL Server 2005 引 入了使用 Microsoft NET 語言來開發(fā)數(shù)據(jù)庫目標(biāo)的性能 深入的 XML 集成 SQL Server 2005 提供一種新的 XML 數(shù)據(jù)類型 使在 SQL Server 數(shù)據(jù)庫中存儲(chǔ) XML 片段 或文件成為可能 Transact SQL 增強(qiáng) 新的查詢類型和在交易過程中使用錯(cuò)誤處理的 功能 為開發(fā)人員在 SQL Server 查詢開發(fā)方面提供了更高的靈活性和控制力 SQL 服 務(wù)代理 SQL 服務(wù)代理為各個(gè)級(jí)別的可伸縮性提供一種創(chuàng)新的 分發(fā)的 異步的應(yīng)用 系統(tǒng)體系結(jié)構(gòu) 3 商務(wù)智能 分析服務(wù) 分析服務(wù)對(duì)數(shù)據(jù)倉(cāng)庫 商務(wù)智能和 line of business 解決 方案的可伸縮性 可管理性 可靠性 可用性和可規(guī)劃性提供擴(kuò)展 數(shù)據(jù)轉(zhuǎn)換服務(wù) DTS 對(duì) DTS 結(jié)構(gòu)合工具的全部重新設(shè)計(jì)為開發(fā)人員和數(shù)據(jù)庫管理員提供了增強(qiáng) 的靈活性和可管理性 報(bào)表服務(wù) 報(bào)表服務(wù)是一種新的報(bào)表服務(wù)器和工具箱 用于創(chuàng) 建 管理和配置企業(yè)報(bào)告 數(shù)據(jù)挖掘 數(shù)據(jù)挖掘的功能得以增強(qiáng) 主要?dú)w功于四種新 的運(yùn)算法則 改進(jìn)的數(shù)據(jù)模型和處理工具 SQL Structured Query Language 譯為結(jié)構(gòu)化查詢語言 在關(guān)系型數(shù)據(jù)庫中的地 位就猶如英語在世界上的地位 它是數(shù)據(jù)庫系統(tǒng)的通用語言 利用它 用戶可以用幾 乎同樣的語句在不同的數(shù)據(jù)庫系統(tǒng)上執(zhí)行同樣的操作 比如 select from 數(shù)據(jù)表名 代表要從某個(gè)數(shù)據(jù)表中取出全部數(shù)據(jù) 在 Oracle 9i SQL Server 2005 Foxpro 等關(guān)系 型數(shù)據(jù)庫中都可以使用這條語句 SQL 已經(jīng)被 ANSI 美國(guó)國(guó)家標(biāo)準(zhǔn)化組織 確定為數(shù) 據(jù)庫系統(tǒng)的工業(yè)標(biāo)準(zhǔn) 2 1 2 存儲(chǔ)過程簡(jiǎn)介 存儲(chǔ)過程是數(shù)據(jù)庫中重要的數(shù)據(jù)對(duì)象 一個(gè)設(shè)計(jì)良好的數(shù)據(jù)庫應(yīng)用程序通常都會(huì) 用到存儲(chǔ)過程 SQL Server 2005 數(shù)據(jù)庫提供了多種建立存儲(chǔ)過程的機(jī)制 使用戶可以 大學(xué)畢業(yè)設(shè)計(jì) 論文 5 使用 T SQL 或者 CLR 方式建立存儲(chǔ)過程 SQL Server 2005 數(shù)據(jù)庫還提供了用戶可直 接使用的系統(tǒng)存儲(chǔ)過程 通過這些存儲(chǔ)過程 用戶可以更加方便的管理數(shù)據(jù) 存儲(chǔ)過程是一組為了完成特定功能的 SQL 語句集合 它經(jīng)編譯后存儲(chǔ)在數(shù)據(jù)庫中 用戶通過指定存儲(chǔ)過程的名字并給出參數(shù)來執(zhí)行它 SQL Server 2005 數(shù)據(jù)庫包括多種 存儲(chǔ)過程 主要有用戶定義存儲(chǔ)過程 系統(tǒng)存儲(chǔ)過程等 設(shè)計(jì)存儲(chǔ)過程 用戶可以設(shè)計(jì)自己的存儲(chǔ)過程 以提高業(yè)務(wù)邏輯使用的通用性 設(shè)計(jì)存儲(chǔ)過程通常應(yīng)該遵循以下原則 存儲(chǔ)過程名稱避免使用 sp 的前綴 為所有的存 儲(chǔ)過程使用連接設(shè) 盡量不使用臨時(shí)存儲(chǔ)過程 創(chuàng)建存儲(chǔ)過程時(shí) 應(yīng)指定所有輸入?yún)?數(shù)和向調(diào)用過程返回的輸出參數(shù) 編寫執(zhí)行數(shù)據(jù)庫操作的編程語句 實(shí)現(xiàn)返回至調(diào)用 過程的成功或失敗的狀態(tài)值 較為重要的還包括捕獲和處理潛在的錯(cuò)誤 并為這些問 題編寫錯(cuò)誤處理語句 創(chuàng)建存儲(chǔ)過程 存儲(chǔ)過程是已保存的 T SQL 語句集合 或者對(duì) NET Framework 公 共語言運(yùn)行時(shí) CLR 方法的引用 可接收并返回用戶提供的參數(shù) 可以創(chuàng)建過程供 永久使用或在一個(gè)會(huì)話 局部臨時(shí)過程 中臨時(shí)使用 或在所有會(huì)話 全局臨時(shí)過程 中臨時(shí)使用 2 2 ASP NET 技術(shù)概述 2 2 1 ASP NET 技術(shù)的含義 ASP net 是 M 的一部分 作為戰(zhàn)略產(chǎn)品 不僅僅是 Active Server Page ASP 的下一個(gè)版本 它還提供了一個(gè)統(tǒng)一的 Web 開發(fā)模型 其中包括開發(fā)人員生 成企業(yè)級(jí) Web 應(yīng)用程序所需的各種服務(wù) ASP NET 的語法在很大程度上與 ASP 兼 容 同時(shí)它還提供一種新的編程模型和結(jié)構(gòu) 可生成伸縮性和穩(wěn)定性更好的應(yīng)用程序 并提供更好的安全保護(hù) 可以通過在現(xiàn)有 ASP 應(yīng)用程序中逐漸添加 ASP NET 功能 隨時(shí)增強(qiáng) ASP 應(yīng)用程序的功能 ASP NET 是一個(gè)已編譯的 基于 NET 的環(huán)境 可以用任何與 NET 兼容的語 言 包括 Visual Basic NET C 和 JScript NET 創(chuàng)作應(yīng)用程序 另外 任何 ASP NET 應(yīng)用程序都可以使用整個(gè) NET Framework 開發(fā)人員可以方便地獲得這些 技術(shù)的優(yōu)點(diǎn) 其中包括托管的公共語言運(yùn)行庫環(huán)境 類型安全 繼承等等 1 ASP NET 可以無縫地與 WYSIWYG HTML 編輯器和其他編程工具 包括 Microsoft Visual Studio NET 一起工作 這不僅使得 Web 開發(fā)更加方便 而且還能 提供這些工具必須提供的所有優(yōu)點(diǎn) 包括開發(fā)人員可以用來將服務(wù)器控件拖放到 Web 頁的 GUI 和完全集成的調(diào)試支持 微軟為 ASP net 設(shè)計(jì)了這樣一些策略 易于寫出結(jié)構(gòu)清晰的代碼 代碼易于重用 和共享 可用編譯類語言編寫等等 目的是讓程序員更容易開發(fā)出 Web 應(yīng)用 滿足計(jì) 算向 Web 轉(zhuǎn)移的戰(zhàn)略需要 基于 web 的畢業(yè)設(shè)計(jì)雙向選題系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 6 2 2 2 ASP NET 的處理流程 圖 2 1 ASP NET 處理流程 圖 2 2 客戶訪問流程 初始化所有核心應(yīng)用程序?qū)ο笾?將通過創(chuàng)建 HttpApplication 類的實(shí)例啟動(dòng)應(yīng) 大學(xué)畢業(yè)設(shè)計(jì) 論文 7 用程序 如果應(yīng)用程序具有 Global asax 文件 則 ASP NET 會(huì)創(chuàng)建 Global asax 類 從 HttpApplication 類派生 的一個(gè)實(shí)例 并使用該派生類表示應(yīng)用程序 每次 http 請(qǐng)求都會(huì)有一個(gè) HttpApplication 類型的對(duì)象來管理這次請(qǐng)求的過程 為 每次 http 請(qǐng)求創(chuàng)建一個(gè) HttpContext 對(duì)象 此對(duì)象在整個(gè) Http 處理過程中都是可訪問的 HttpApplication 對(duì)象負(fù)責(zé)裝配出整個(gè) HTTP 請(qǐng)求處理管線 HTTPPipeline 這 相當(dāng)于一條加工流水線 讓 HttpContext 對(duì)象在這條線上過一遍 2 HttpContext 對(duì)象經(jīng)過流水線的不同部分時(shí) HttpApplication 對(duì)象會(huì)先后激發(fā)出一 連串的事件 HTTP 模塊 HTTP Module 可以響應(yīng)這些事件 在此事件響應(yīng)代碼中可 以對(duì) HttpContext 對(duì)象進(jìn)行 加工和處理 HTTP 模塊可以看成是 生產(chǎn)流水線 中的工人 HTTP 模塊對(duì)象是在 HttpApplication 對(duì)象的 InitModules 方法中被創(chuàng)建的 創(chuàng)建時(shí) 會(huì)調(diào)用其 init 方法 我們一般在 HTTP 模塊對(duì)象 Init 方法中書寫代碼對(duì) HttpApplication 對(duì)象的事件進(jìn)行注冊(cè) 在流水線的中部 處理完了相關(guān)的事件 HttpContext 對(duì)象被最終的 Page 對(duì)象所 接收 這就是為何可以在 ASP NET 頁面中通過 Page 類定義的 Context 屬性訪問 HttpContext 對(duì)象的原因 每個(gè)被訪問的 ASP NET 頁面都會(huì)被轉(zhuǎn)換為一個(gè) 派生自 Page 類的頁面類 Page 類實(shí)現(xiàn)了 IHttpHandler 接口 此接口定義了一個(gè) ProcessRequest 方法 ASP NET 頁面類生成以后被自動(dòng)編譯為程序集 然后其 ProcessRequest 方法被自 動(dòng)調(diào)用 ProcessRequest 方法的執(zhí)行結(jié)果再次被 HttpContext 對(duì)象所承載 控制又轉(zhuǎn)回 到 HTTP 請(qǐng)求處理流水線 中 HttpApplication 對(duì)象繼續(xù)激發(fā)后繼的事件 這時(shí) 如果 還有特定的 HTTP 模塊響應(yīng)這些事件 則它們會(huì)被自動(dòng)調(diào)用 HttpContext 對(duì)象帶著最后的處理結(jié)果來到了 HTTP 請(qǐng)求處理管線 的未端 其信 息被取出來 再次以 aspnet isapi dll 為橋梁傳送給工作者進(jìn)程 工作者進(jìn)程再將 HTTP 請(qǐng)求的處理結(jié)果轉(zhuǎn)給 HTTP SYS 由它負(fù)責(zé)將結(jié)果返回給瀏覽器 3 我們所寫的那些頁面代碼 以及那一套復(fù)雜的頁面生命周期 都是整個(gè) 周 期中的一部分 所有 IhttpHandler 的操作 都是在 Application 的 PreRequestHandlerExecute 事件和 PostRequestHandlerExecute 事件之間完成的 IHttpHandler 中的操作都是頁面級(jí)別的操作 他們不能跨出頁面這個(gè)范 在應(yīng)用程序級(jí)別的操作 應(yīng)該使用 IHttpModule 要區(qū)分開 HttpApplication 和 HttpApplicationState HttpApplicationState 是整個(gè)應(yīng)用程序唯一的 而 HttpApplication 則不是唯一的 每一次請(qǐng)求都由一個(gè) HttpApplication 對(duì)象來處理 在處理過程中 這個(gè)對(duì)象不能 再處理其他請(qǐng)求 并發(fā)訪問時(shí) 會(huì)為不同訪問分配不同 HttpApplication 對(duì)象 HttpApplicationFactory 對(duì)象負(fù)責(zé)管理一個(gè) HttpApplication 對(duì)象池 當(dāng)有 HTTP 請(qǐng) 求到來時(shí) 如果池中還有可用的 HttpApplication 對(duì)象 則分配之 否則 創(chuàng)建一個(gè)新 的 HttpApplication 對(duì)象 請(qǐng)求完畢后 HttpApplication 會(huì)被回收以供再次使用 每當(dāng)新的 HttpApplication 對(duì)象創(chuàng)建時(shí) 都會(huì)根據(jù)配置創(chuàng)建新的 Ihttpmodule 對(duì)象 新的 IHttpModule 對(duì)象被創(chuàng)建時(shí) 其 init 方法就會(huì)被執(zhí)行 4 2 2 3 ASP NET 的功能 ASP NET 的新性能 基于 web 的畢業(yè)設(shè)計(jì)雙向選題系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 8 1 全新的構(gòu)造 新的 ASP NET 引入受管代碼 Managed Code 這樣一個(gè)全新概念 橫貫整個(gè)視窗開發(fā)平臺(tái) 受管代碼在 NGWS Runtime 下運(yùn)行 而 NGWS Runtime 是一 個(gè)時(shí)間運(yùn)行環(huán)境 它管理代碼的執(zhí)行 使程序設(shè)計(jì)更為簡(jiǎn)便 2 高效率 對(duì)于一個(gè)程序 速度是一件非常令人渴望的東西 一旦代碼開始工作 接下來你就得盡可能地讓它運(yùn)作得快些快些再快些 在 ASP 中你只有盡可能精簡(jiǎn)你的 代碼 以至于不得不將它們移植到一個(gè)僅有很少一點(diǎn)性能的部件中 而現(xiàn)在 ASP NET 會(huì)妥善地解決這一問題 3 易控制 在 ASP NET 里 你將會(huì)擁有一個(gè) Data Bounds 數(shù)據(jù)約束 這意 味著它會(huì)與數(shù)據(jù)源連接 并會(huì)自動(dòng)裝入數(shù)據(jù) 使控制工作簡(jiǎn)單易行 4 語言支持 ASP NET 支持多種語言 支持編譯類語言 支持比如 VB VC C 等 它比這些編譯類語言運(yùn)行速度快 更適合編寫大型應(yīng)用 5 更好的升級(jí)能力 快速發(fā)展的分布式應(yīng)用也需要更快速 更模塊化 更易操作 更多平臺(tái)支持和重復(fù)利用性更強(qiáng)的開發(fā) 需要一種新的技術(shù)來適應(yīng)不同的系統(tǒng) 網(wǎng)絡(luò) 應(yīng)用和網(wǎng)站需要提供一種更加強(qiáng)大的可升級(jí)的服務(wù) ASP NET 能夠適應(yīng)上面的要求 5 大學(xué)畢業(yè)設(shè)計(jì) 論文 9 第第 3 章章 系統(tǒng)分析系統(tǒng)分析 系統(tǒng)分析實(shí)質(zhì)上是對(duì)目標(biāo)系統(tǒng)的建模 為了更形象地描述系統(tǒng) 將采用軟件設(shè)計(jì) 結(jié)構(gòu)化方法學(xué)和面向?qū)ο蠓椒▽W(xué)相結(jié)合的形式 因此對(duì)于系統(tǒng)的分析和設(shè)計(jì) 既用到 了結(jié)構(gòu)化建模工具 又用到了面向?qū)ο蠼9ぞ?3 1 問題定義 問題定義的目標(biāo)是找出現(xiàn)有系統(tǒng)存在的各種問題 但并不急于解決 提出可能和 可行的解決方案 是下一步驟 可行性研究 要做的工作 經(jīng)過研究本校的畢業(yè)設(shè)計(jì)事務(wù)可知 并沒有專門的人員 如會(huì)計(jì) 來處理這些畢 業(yè)選題工作 通常 這些工作都是由學(xué)院教務(wù) 教師 班干部和普通學(xué)生協(xié)作完成的 因此學(xué)校不需要支付額外的運(yùn)行成本 如工資 整個(gè)事務(wù)中信息是以物理文件的形式 存在的 雖然紙張打印費(fèi)用不多 但仍不能忽視 問題主要集中在工作效率和工作量 方面 教師擬定論題后 送往學(xué)院審批 不管采用什么系統(tǒng) 教師擬題 學(xué)院審批的 工作量是不可壓縮的 但教師擬題后要 填表 要把表單 送往 學(xué)院 顯然 填表 和 送往 這兩個(gè)動(dòng)作是冗余可剔除的 將花費(fèi)一定的時(shí)間和精力 學(xué)院審批后 要把審 批結(jié)果 通知 給各位教師 如果教師和學(xué)院的地理位置相對(duì)較遠(yuǎn) 送往 和 通知 肯定 要花相當(dāng)?shù)臅r(shí)間 論題下放給各專業(yè) 班級(jí) 后 接下來的論題分配所花的時(shí)間和精力簡(jiǎn)直讓人無 法接受 一般來說 學(xué)生們分配論題都要花上一個(gè)星期 而且效果并不明顯 往往存 在許多不合理不公平的地方 事實(shí)上 花一個(gè)星期來選題是非常奢侈的 如果存在一 個(gè)理想系統(tǒng) 學(xué)生完全不必聚在一起協(xié)商 他只需提交自己的選題意愿 幾分鐘已足 夠 剩下的他什么都不用做 等著篩選結(jié)果就行了 跟進(jìn)是指教師對(duì)學(xué)生畢業(yè)設(shè)計(jì)的階段檢查和引導(dǎo) 跟進(jìn)可以有多種方式 比如面 對(duì)面指導(dǎo)和通過網(wǎng)絡(luò)交流跟進(jìn)等等 如果能提供一種統(tǒng)一的網(wǎng)上跟進(jìn)平臺(tái) 教師就可 以更加準(zhǔn)確地指導(dǎo)學(xué)生的設(shè)計(jì)進(jìn)度 院系各級(jí)領(lǐng)導(dǎo)也可以方便地監(jiān)督畢業(yè)設(shè)計(jì)的工作 情況 不管在畢業(yè)設(shè)計(jì)事務(wù)的那個(gè)步驟 一旦資料需要變更 查找和修改的成本 指 時(shí)間和精力 將成倍增加 而這在理想的系統(tǒng)中 是完全可以忽略的 3 2 可行性研究 可行性研究是抽象和簡(jiǎn)化了的系統(tǒng)分析和設(shè)計(jì)的全過程 它的目標(biāo)是用最小代價(jià) 盡快確定問題是否能夠解決 以避免盲目投資帶來的巨大浪費(fèi) 6 開發(fā)一個(gè)新的 Web 應(yīng)用系統(tǒng)還必須考慮自身的擴(kuò)展性 以及與其它應(yīng)用系統(tǒng)之 間的聯(lián)系 畢竟一個(gè)完全獨(dú)立的封閉的系統(tǒng)是不存在的 下面就系統(tǒng)間的關(guān)系提出了 幾種可行的解決方案 方案一 數(shù)字化校園集成方案 建立集成的統(tǒng)一的校園數(shù)字化系統(tǒng) 的確是一種比較誘人方案 這里暫時(shí)將這種 方案稱為 數(shù)字化校園集成方案 圖 3 1 顯示了這種方案的功能結(jié)構(gòu) 圖中某些服務(wù) 目前我校尚未開通 基于 web 的畢業(yè)設(shè)計(jì)雙向選題系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 10 圖 3 1 數(shù)字化校園集成方案 數(shù)字化校園集成方案最顯著的特點(diǎn)就是 整個(gè)方案擁有一個(gè)共享的驗(yàn)證機(jī)密數(shù)據(jù) 庫和身份認(rèn)證服務(wù) 用戶 學(xué)生 教師 的 ID 和密碼統(tǒng)一存放在校園身份認(rèn)證中心 的驗(yàn)證機(jī)密數(shù)據(jù)庫中 用戶只要通過校園身份認(rèn)證中心的認(rèn)證 在有效時(shí)間段內(nèi)就可 以訪問所有的應(yīng)用服務(wù) 例如 某教師要訪問教務(wù)管理系統(tǒng)查看課程表 他先在瀏覽 器中輸入教務(wù)系統(tǒng)的網(wǎng)址 由于尚未登錄 瀏覽器將導(dǎo)航到校園身份認(rèn)證中心的登錄 頁面 假設(shè)他輸入帳號(hào)密碼認(rèn)證成功 瀏覽器將重新導(dǎo)航到教務(wù)系統(tǒng) 現(xiàn)在他可以查 看課程表了 接著如果他還想訪問其它應(yīng)用系統(tǒng) 比如訪問畢業(yè)選題系統(tǒng)創(chuàng)建論題 這時(shí)他無需再登錄 就可以打開畢業(yè)選題系統(tǒng)頁面直接創(chuàng)建論題了 這就是所謂的單 點(diǎn)登錄 從中可以看出 單點(diǎn)登錄方式擁有很大的優(yōu)勢(shì) 用戶無需再記憶一大串的帳 號(hào)和密碼了 同時(shí)還可以方便地在各個(gè)應(yīng)用服務(wù)器間跳轉(zhuǎn) 另外 單點(diǎn)登錄方式由于 大大降低了用戶的記憶成本 整個(gè)方案的安全性也提高了很多 在數(shù)字化校園集成方案中 還可以給它添加共享基礎(chǔ)數(shù)據(jù)庫服務(wù)器 SBDDB 用于存放最基本的數(shù)據(jù) 比如學(xué)生基本檔案數(shù)據(jù)等 其它應(yīng)用系統(tǒng)可以通過訪問 SBDDB 獲取需要的基本數(shù)據(jù) 如果應(yīng)用服務(wù)很多 對(duì) SBDDB 性能要求可能很高 這種方案下的畢業(yè)選題系統(tǒng)不必再存儲(chǔ)冗余的基本信息了 最多存儲(chǔ)一些擴(kuò)展的數(shù)據(jù) 因此畢業(yè)選題系統(tǒng)的開發(fā)可以簡(jiǎn)化很多 也不用管理員再一次錄入大量的基本數(shù)據(jù) 考慮到目前我校的數(shù)字化校園建設(shè)還不完善 沒有統(tǒng)一的基礎(chǔ)數(shù)據(jù)庫服務(wù)器 也 沒有共享的身份認(rèn)證服務(wù)器 這種方案對(duì)于開發(fā)畢業(yè)選題系統(tǒng)來說 顯然是行不通的 大學(xué)畢業(yè)設(shè)計(jì) 論文 11 方案二 與教務(wù)管理系統(tǒng)共享數(shù)據(jù)庫 由于我校的教務(wù)管理系統(tǒng)比較完善 與其共享數(shù)據(jù)庫 是一個(gè)不錯(cuò)而且可行的選 擇 如圖 3 2 所示 教務(wù)管理系統(tǒng)的數(shù)據(jù)庫中存儲(chǔ)著本校所有的學(xué)生及教師的基礎(chǔ)信 息 如果能夠共享 畢業(yè)選題系統(tǒng)的數(shù)據(jù)庫將大大地簡(jiǎn)化 這不但利于新系統(tǒng)的開發(fā) 而且新系統(tǒng)一旦投入使用后 管理員無須再麻煩地錄入這些基礎(chǔ)信息 圖 3 2 與教務(wù)管理系統(tǒng)共享數(shù)據(jù)庫 從技術(shù)上來說 這種方案可行而且有效 能極大地簡(jiǎn)化系統(tǒng)的開發(fā) 但從行政 政策 上來說 這種方案的系統(tǒng)開發(fā)將舉步維艱 首先 要得到學(xué)校教務(wù)處的允許 與支持 這顯然存在很大的阻力 其次 原教務(wù)數(shù)據(jù)庫肯定需要一些改動(dòng)才能被新系 統(tǒng)共享 這涉及到原系統(tǒng)開發(fā)者的利益問題 也必定帶來雙方能否合作 如何合作等 一系列問題 方案三 獨(dú)立系統(tǒng)方案 這種方案中 畢業(yè)選題系統(tǒng)基本獨(dú)立 與學(xué)校的其它應(yīng)用服務(wù)基本沒有直接的聯(lián) 系 如圖 3 3 所示 這種方案最大的優(yōu)點(diǎn)是開發(fā)中可以完全不用考慮與其它系統(tǒng)的耦 合與集成 最大的缺點(diǎn)是投入使用后每年必須額外錄入新一屆的基礎(chǔ)數(shù)據(jù) 主要是班 級(jí)和學(xué)生信息 這可能會(huì)消耗大量的時(shí)間和精力 圖 3 3 系統(tǒng)獨(dú)立方案 經(jīng)分析 這種方案規(guī)模小 耦合少 開發(fā)方便確實(shí)可行 雖然投入使用后基礎(chǔ)數(shù) 據(jù)錄入麻煩 但這個(gè)問題也并不是不能解決 第一 可以在 Web 系統(tǒng)中附加批量數(shù) 據(jù)功能 管理員可以用簡(jiǎn)單的格式 TXT 文件批量地添加基礎(chǔ)數(shù)據(jù) 第二 可以開發(fā) 一個(gè)數(shù)據(jù)轉(zhuǎn)移程序 把需要的基礎(chǔ)數(shù)據(jù)從教務(wù)管理系統(tǒng)中提取出來存入到選題系統(tǒng)的 數(shù)據(jù)庫中 這樣管理每年只需運(yùn)行轉(zhuǎn)移程序一次 就可以完成大量的數(shù)據(jù)錄入工作 在校園數(shù)據(jù)化建設(shè)浪潮中 獨(dú)立系統(tǒng)方案顯得很保守 但由于各種條件的限制 新系統(tǒng)的開發(fā)采用這個(gè)方案有其合理性 基于 web 的畢業(yè)設(shè)計(jì)雙向選題系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 12 3 3 需求分析 需求分析的目的是確切地回答 系統(tǒng)必須做什么 這個(gè)問題 其主要任務(wù)就是更詳 盡地定義系統(tǒng)應(yīng)該完成的每一個(gè)邏輯功能 任何數(shù)據(jù)處理系統(tǒng)的基本功能 都是把輸 入數(shù)據(jù)轉(zhuǎn)變成需要的輸出信息 把畢業(yè)選題系統(tǒng)抽象為一個(gè)黑盒 其內(nèi)部工作原理無 需知道 分析系統(tǒng)的輸入輸出信息 7 圖 3 4 系統(tǒng)的輸入輸出 由圖 3 4 可知 系統(tǒng)的作用就是把不同角色提交的信息進(jìn)行一定的處理 最后得 出學(xué)院需要的各種信息 表單 圖 3 4 描述了系統(tǒng)的基本功能 但作為一個(gè)實(shí)用的系 統(tǒng) 必須能處理一定量的異常情況 經(jīng)過對(duì)本校畢業(yè)設(shè)計(jì)相關(guān)工作的研究 以及對(duì)相關(guān)工作人員及畢業(yè)生的訪問調(diào)查 得出以下的要求 1 用戶規(guī)模 面向整個(gè)學(xué)院 2 教師擬題 全部教師可以提交論題到題庫 教師只對(duì)自己的課題有管理權(quán)限 論題應(yīng)指定適合的專業(yè) 只有對(duì)應(yīng)專業(yè)的學(xué)生才能選擇 3 論題可重用性 題目三年內(nèi)不重用 4 論題審批 由各專業(yè)組成的畢業(yè)設(shè)計(jì)指導(dǎo)小組進(jìn)行論題審批 按本屆畢業(yè)生人 數(shù)確定預(yù)選題 定題組只能審批本專業(yè)的論題 確定原則之一 各專業(yè)選題應(yīng)有 10 由校外專家指導(dǎo) 5 內(nèi)定學(xué)生 論題審批后 學(xué)生選題前 教師可以指定論題由哪個(gè)學(xué)生做 內(nèi)定 的論題在學(xué)生選題期間不能作為學(xué)生選題意愿 6 選域 選題以專業(yè)為單位 即整個(gè)專業(yè)的各個(gè)班一起選題 7 學(xué)生選題策略 多階段統(tǒng)籌選題 即學(xué)生可以根據(jù)自己的專長(zhǎng)選擇多個(gè)志愿 高志愿優(yōu)先 學(xué)生可以在選題時(shí)間內(nèi)根據(jù)目前的選題情況 合理更改自己的志愿 可 以進(jìn)行多輪選題 8 教師對(duì)學(xué)生的選題意愿進(jìn)行確選 雙向選擇 如果論題有多個(gè)學(xué)生意選 指 選題意愿 教師可以根據(jù)意選學(xué)生的專長(zhǎng)決選 指決定論題最終由誰來做 9 用人單位指定論題 即使學(xué)生已經(jīng)決選了論題 仍可申請(qǐng)用人單位提出的論題 經(jīng)過審批后 教師可以對(duì)學(xué)生決選的論題進(jìn)行更改 10 用戶界面 提供靈活的查詢功能 用戶能在最短時(shí)間內(nèi)查找到需要的信息 友 好的操作界面 11 數(shù)據(jù)導(dǎo)入 導(dǎo)出 學(xué)院和教師可以以文件的形式批量地添加基礎(chǔ)數(shù)據(jù) 如班級(jí) 學(xué)生 可以方便地從系統(tǒng)中導(dǎo)出各種報(bào)表 如學(xué)生選題表 成績(jī)單 12 跟進(jìn) 教師可以跟蹤學(xué)生的畢業(yè)設(shè)計(jì)進(jìn)度 最后進(jìn)行評(píng)分 13 公告 可以發(fā)布畢業(yè)設(shè)計(jì)相關(guān)的通知 可以下載各種文檔 14 歷史數(shù)據(jù)處理 存儲(chǔ)歷屆的學(xué)生選題信息和成績(jī) 可以根據(jù)需要?jiǎng)h除特定的歷 史數(shù)據(jù) 為了更好更詳細(xì)地描述系統(tǒng)的邏輯功能 下面兩節(jié)將從系統(tǒng)用例和數(shù)據(jù)流兩個(gè)角 度來定義系統(tǒng)的功能 大學(xué)畢業(yè)設(shè)計(jì) 論文 13 3 4 用例分析 用例圖是一種 UML 靜態(tài)建模的工具 它從用戶 系統(tǒng)外部的行為者 的角度描 述系統(tǒng)功能 并指出各個(gè)功能的操作者 8 為獲取用例首先要找出系統(tǒng)的行為者 即角色 畢業(yè)選題系統(tǒng)最明顯的用戶就是 教師和學(xué)生 他們將使用系統(tǒng)的主要功能 因此教師和學(xué)生屬于用例模型的行為者 教師擬定論題后要送往學(xué)院或基層單位 如專業(yè) 審批 這又是一個(gè)用例行為者 他 的主要工作就是審批論文 為形象起見 本文把審批單位命名為定題 小 組 到此 似乎再找不到第四個(gè)行為者了 其實(shí)不然 學(xué)生選題的時(shí)間由誰來定 誰來負(fù)責(zé)基礎(chǔ) 數(shù)據(jù)的錄入 誰來發(fā)布通知 管理下載文件 誰來管理歷史數(shù)據(jù) 這些工作如果交 給定題小組或者教師顯得不全情理 因此系統(tǒng)還存在另一個(gè)行為者 本文把他命名為 管理員 至此 使用本系統(tǒng)的角色已經(jīng)躍然紙上 他們是 管理員 定題組 教師和 學(xué)生 如圖 3 5 所示 圖 3 5 系統(tǒng)的用例行為者 對(duì)行為者的權(quán)限分配 實(shí)際上就是定義行為者的用例 圖 3 6 與 3 7 是系統(tǒng)的用 例圖 基于 web 的畢業(yè)設(shè)計(jì)雙向選題系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 14 圖 3 6 管理員 學(xué)生和定題組的用例圖 圖 3 7 教師的用例圖 大學(xué)畢業(yè)設(shè)計(jì) 論文 15 3 5 數(shù)據(jù)流分析 當(dāng)信息在軟件中移動(dòng)時(shí) 它將被一系列 變換 所修改 數(shù)據(jù)流圖是一種結(jié)構(gòu)化 系統(tǒng)分析技術(shù) 它描繪信息流和數(shù)據(jù)從輸入移動(dòng)到輸出的過程中所經(jīng)受的變換 根據(jù) 畢業(yè)選題事務(wù) 容易畫出如圖 3 8 與 3 9 所示的數(shù)據(jù)流 圖 3 8 主系統(tǒng)的數(shù)據(jù)流圖 圖 3 9 子系統(tǒng)的數(shù)據(jù)流圖 從數(shù)據(jù)流圖中可以很形象地查看到數(shù)據(jù)在系統(tǒng)中的流動(dòng)和變換 加深了對(duì)系統(tǒng)總 體框架的認(rèn)識(shí) 跟蹤數(shù)據(jù)流圖中信息的移動(dòng)動(dòng)向 將有助于系統(tǒng)的數(shù)據(jù)庫設(shè)計(jì) 基于 web 的畢業(yè)設(shè)計(jì)雙向選題系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 16 第第 4 章章 概要設(shè)計(jì)概要設(shè)計(jì) 概要設(shè)計(jì)階段的基本任務(wù)是 概括地回答 怎樣實(shí)現(xiàn)目標(biāo)系統(tǒng) 這個(gè)問題 本章首 先從數(shù)據(jù)庫設(shè)計(jì)出發(fā) 劃分系統(tǒng)的功能模塊 然后初步設(shè)計(jì)系統(tǒng)的用戶界面和 UI 框 架 4 1 數(shù)據(jù)庫設(shè)計(jì) 人們總是希望自己設(shè)計(jì)的數(shù)據(jù)庫系統(tǒng)簡(jiǎn)單易用 用有安全性 可靠性 易維護(hù)性 最小冗余性等特點(diǎn) 并希望數(shù)據(jù)庫對(duì)不同用戶數(shù)據(jù)的存取都有較高的響應(yīng)速度 9 系統(tǒng)需大量地存儲(chǔ)基礎(chǔ)信息 這些信息包括專業(yè)數(shù)據(jù) 班級(jí)數(shù)據(jù) 學(xué)生數(shù)據(jù)和教 師 管理員 定題組數(shù)據(jù) 從中可以得出系統(tǒng)數(shù)據(jù)庫的五張表 專業(yè)表 班級(jí)表 學(xué) 生表 教師表和定題組成員表 由于系統(tǒng)的四個(gè)角色都要先登錄才能操作 登錄驗(yàn)證 信息 包括 ID 和密碼 要存放在另外一張表中 這就是登錄表 系統(tǒng)的四個(gè)角色都 要與之關(guān)聯(lián) 系統(tǒng)要存儲(chǔ)教師擬定的論題信息 可以增加一個(gè)論題表 公告和跟進(jìn)功能都需要 相應(yīng)的數(shù)據(jù)表 下面將從選題事務(wù)的角度來分析數(shù)據(jù)庫的數(shù)據(jù)表 從圖 3 8 主系統(tǒng)的數(shù)據(jù)流圖 左上角順流而下 不難發(fā)現(xiàn) 在學(xué)生選題過程中 系統(tǒng)還需要存儲(chǔ)定題組審批后的預(yù)選論題表 學(xué)生的選題意愿和最后的選題結(jié)果 這 些都是選題事務(wù)過程中要處理的數(shù)據(jù)表 可以這樣定義各用例的功能 定題組定題 審批 就是從題庫中抽取合適的論題放到預(yù)選題表中 學(xué)生選題就是從預(yù)選題表中 選取適合自己的論題放到選題意愿表中 教師確選 志愿篩定就是按照一定的規(guī)則從 選題意愿表中確定某個(gè)選題意愿有效并把它放到最終選題 選果 表中 經(jīng)分析各數(shù)據(jù)存儲(chǔ)間的關(guān)系 得出如圖 4 1 所示的 E R 圖 實(shí)體聯(lián)系圖 大學(xué)畢業(yè)設(shè)計(jì) 論文 17 圖 4 1 畢業(yè)選題系統(tǒng) E R 圖 下面將細(xì)化 E R 圖中的各實(shí)體和聯(lián)系 為它們添加屬性 得出相應(yīng)的數(shù)據(jù)字典 如表 4 1 到 4 13 所示 表 4 1 登錄帳戶表 Login 字段名稱類型空鍵釋義備注 loginIDvarchar 20 NPK登錄 ID如學(xué)號(hào) 教工號(hào) passwordnvarchar 128 N登錄密碼 saltnvarchar 40 N鹽值增加安全性 rolenvarchar 20 N用戶類型 角色 Teacher Student Admin Order 定題小組 create TimesmalldatetimeY開戶日期默認(rèn)為當(dāng)前時(shí)間 memonvarchar 1000 Y登錄賬戶備注信息 表 4 2 專業(yè)信息表 Specialty 字段名稱類型空鍵釋義備注 specialIDvarchar 20 NPK專業(yè) ID namenvarchar 50 N專業(yè)名稱 memonvarchar 100 Y專業(yè)備注 簡(jiǎn)介 index 基于 web 的畢業(yè)設(shè)計(jì)雙向選題系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 18 表 4 3 定題小組信息表 Order 字段名稱類型空鍵釋義備注 orderIDvarchar 20 NPK定題小組 ID namenvarchar 50 N定題小組名稱Index memonvarchar 100 Y定題小組備注信息 SpecialIDvarchar 20 NFK所屬專業(yè) ID 表 4 4 班級(jí)信息表 Class 字段名稱類型空鍵釋義備注 classIDvarchar 20 NPK班級(jí) ID namenvarchar 50 N班級(jí)名稱Index intoYearsmalldatetimeN入學(xué)年份 屆 monitornvarchar 50 Y班長(zhǎng)姓名 chargeTeachernvarchar 50 Y班主任姓名 memonvarchar 1000 Y登錄賬戶備注信息 表 4 5 學(xué)生選題意愿表 SelectWill 字段名稱類型空鍵釋義備注 selectWillIDIntNPK學(xué)生選題意愿 ID標(biāo)識(shí) studentIDvarchar 20 NFK學(xué)生 IDStudent studentID preThesisIDIntNFK預(yù)選題 IDPreThesis preThesisID willIndexIntN第幾志愿1 2 3 willnvarchar 100 Y選題意愿原因 注 表級(jí)約束 unique studentID willIndex 即限定學(xué)生每一級(jí)志愿的唯一性 表 4 6 學(xué)生信息表 Student 字段名稱類型空鍵釋義備注 studentIDvarchar 20 NPK學(xué)生學(xué)號(hào) ID namenvarchar 50 N學(xué)生姓名Index sexnchar 1 N性別M F birthdaysmalldatetimeY出生日期 nativePlacenvarchar 50 Y籍貫 dormAddrnvarchar 200 Y宿舍地址 dormtelnvarchar 20 Y宿舍電話 cellphonenvarchar 20 Y手機(jī)號(hào)碼 emailnvarchar 50 Y電子郵箱地址 photoimageY頭像照片 skillnvarchar 1000 Y專業(yè)技能描述自己的專業(yè)技能 interestnvarchar 1000 Y興趣愛好 evaluationnvarchar 1000 Y自我評(píng)價(jià) classIDnvarchar 20 NFK所屬班級(jí) 大學(xué)畢業(yè)設(shè)計(jì) 論文 19 表 4 7 教師信息表 Teacher 字段名稱類型空鍵釋義備注 teacherIDvarchar 20 NPK教師教工號(hào) namenvarchar 50 N教師姓名Index sexnchar 1 N性別M F birthdaysmalldatetimeN出生日期 nativePlacenvarchar 50 Y籍貫 addrnvarchar 200 Y當(dāng)前住址 telnvarchar 20 Y當(dāng)前住址的電話 cellphonenvarchar 20 Y手機(jī)號(hào)碼 emailnvarchar 50 Y電子郵箱地址 photoimageY頭像照片 titlenvarchar 50 Y職稱 dutynvarchar 50 Y職務(wù) memonvarchar 1000 Y教師備注信息 表 4 8 選課表 SelectedThesis 字段名稱類型空鍵釋義備注 selThesisIDIntNPK已選論題 ID標(biāo)識(shí) studentIDvarchar 20 NFK學(xué)生 ID外鍵 唯一 ThesisIDintYFK論題 IDThesis thesisID isFinishedBitY是否完成了設(shè)計(jì)默認(rèn)為 0 evaluationnvarchar 1000 Y教師評(píng)價(jià) ScoreDecimal 4 1 Y畢業(yè)設(shè)計(jì)成績(jī) memonvarchar 1000 Y備注 說明 表 4 9 論題信息表 Thesis 字段名稱類型空鍵釋義備注 thesisIDIntNPK論題 ID標(biāo)識(shí) captionnvarchar 100 N論題標(biāo)題 contentnchar 2000 Y論題內(nèi)容 requirementnvarchar 2000 Y要求注意事項(xiàng) fieldnvarchar 100 Y涉及的專業(yè)領(lǐng)域 datesmalldatetimeN出題日期默認(rèn)當(dāng)前時(shí)間 memonvarchar 1000 Y備注信息 teacherIDnvarchar 20 NFK出題老師 SpecialtyIDnvarchar 20 NFK適用專業(yè)面向?qū)I(yè) usedIntoYearsmalldatetimeY適用年級(jí) 屆 null 為未使用 基于 web 的畢業(yè)設(shè)計(jì)雙向選題系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 20 表 4 10 預(yù)選題表 PreThesis 字段名稱類型空鍵釋義備注 preThesisIDintNPK預(yù)選題 ID標(biāo)識(shí) specialtyIDnvarchar 20 NFK所屬專業(yè) intoYearsamlldatetimeN入學(xué)年份 屆 thesisIDIntNFK論題 IDThesis thesisID isSelectedIntY是否被選默認(rèn)為 0 orderIDvarchar 20 NFK定題人 IDOrder orderID memonvarchar 1000 Y備注信息如定題原因 注 表級(jí)約束 unique specialtyID thesisID intoYear 即同一屆同一專業(yè)內(nèi)的預(yù)選 題集不得有重復(fù)的論題 表 4 11 系統(tǒng)配置表 SystemConfig 字段名稱類型空鍵釋義備注 Keynvarchar 50 NPK鍵 valuenvarchar 500 N值 表 4 12 公告 通知表 Placard 字段名稱類型空鍵釋義備注 placardIDintNPK公告 ID標(biāo)識(shí) captionnvarchar 100 N公告標(biāo)題 contentNtextY公告內(nèi)容 isToOrderbitY是否面向定題組 isToTeacherbitY是否面向教師 IsToStudentbitY是否面向?qū)W生 isHeadbitY是否頭條在主頁顯示公告 issuerTimesmalldatetimeN公告發(fā)布時(shí)間默認(rèn)為當(dāng)前時(shí)間 issuerIDvarchar 20 NFK公告發(fā)布人Login loginID Memonvarchar 1000 Y備注 說明 大學(xué)畢業(yè)設(shè)計(jì) 論文 21 表 4 13 跟進(jìn)記錄表 Follow 字段名稱類型空鍵釋義備注 followIDintNPK跟進(jìn)記錄 ID標(biāo)識(shí) captionnvarchar 100 N記錄標(biāo)題 contentntextY跟進(jìn)記錄詳細(xì)內(nèi)容 studentIDvarchar 20 NFK學(xué)生學(xué)號(hào) ID goingintY設(shè)計(jì)完成度 進(jìn)度 如 80 submitTimesmalldatetimeN提交進(jìn)度時(shí)間默認(rèn)為當(dāng)前時(shí)間 evaluationntextY教師評(píng)價(jià) 反饋 isEvaluatebitY是否已經(jīng)評(píng)價(jià)默認(rèn)為 0 evaluateTimesmalldatetimeY教師評(píng)價(jià)時(shí)間 4 2 功能模塊劃分 根據(jù)系統(tǒng)分析的結(jié)果 可以初步把系統(tǒng)劃分為登錄模塊 基礎(chǔ)數(shù)據(jù)錄入模塊 選 題模塊 報(bào)表導(dǎo)出模塊 跟進(jìn)模塊和公告模塊 選題模塊是系統(tǒng)的主要模塊 可以進(jìn) 一步劃分為論題管理模塊 定題模塊 選題意愿模塊 確選模塊 篩定模塊和配選模 塊 圖 4 2 為系統(tǒng)各功能模塊的結(jié)構(gòu)圖 圖 4 2 系統(tǒng)功能模塊圖 從用戶的角度出發(fā) 每個(gè)角色都有互不相同的操作界面 這些主要表現(xiàn)在頁面之 間的跳轉(zhuǎn) 圖 4 3 示意了整個(gè)站點(diǎn)的網(wǎng)頁架構(gòu) 基于 web 的畢業(yè)設(shè)計(jì)雙向選題系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 22 圖 4 3 網(wǎng)站架構(gòu)圖 4 3 人機(jī)界面及系統(tǒng)框架 一個(gè)優(yōu)秀的系統(tǒng)必定是界面友好 操作容易 方便使用的系統(tǒng) 界面友好并等價(jià) 于界面華麗 人機(jī)界面的設(shè)計(jì)目標(biāo)是使用戶操作容易上手 本系統(tǒng)決定使用框架頁面 分左右兩個(gè)框架 左邊框架顯示用戶菜單 右框架是 主要框架 顯示用戶的操作狀態(tài) 如圖 4 4 所示 圖 4 4 系統(tǒng)界面框架 左框架是可以??康?用戶只要點(diǎn)擊兩個(gè)框架之間的 屏幕切換 就可以隱藏左 框架 這時(shí)主框架的可視面積將最大 有利于用戶的操作 同樣左框架中的菜單也是 可以伸縮的 根據(jù)需求分析提出的要求 用戶希望系統(tǒng)能提供靈活的查詢功能 以便在最短時(shí) 間內(nèi)查找到需要的信息 為此 有必要給各個(gè)列表頁面添加一個(gè)搜索工具欄 為了節(jié) 大學(xué)畢業(yè)設(shè)計(jì) 論文 23 省操作空間 搜索工具欄也應(yīng)該做成可合可展 圖 4 5 是初步設(shè)計(jì)的搜索工具欄樣板 圖 圖 4 5 搜索工具欄 基于 web 的畢業(yè)設(shè)計(jì)雙向選題系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn) 24 第第 5 章章 詳細(xì)設(shè)計(jì)詳細(xì)設(shè)計(jì) 上一章初步為系統(tǒng)劃分了模塊 定義了各模塊要完成的功能 本章將詳細(xì)地分析 每個(gè)模塊并把它細(xì)化 設(shè)計(jì)出實(shí)現(xiàn)功能的具體工作機(jī)制和流程 5 1 登錄模塊設(shè)計(jì) 幾乎每個(gè)信息管理系統(tǒng)都有自己的登錄驗(yàn)證模塊 登錄模塊設(shè)計(jì)得好與壞 直接 會(huì)影響整個(gè)系統(tǒng)的安全性能 不完善的驗(yàn)證體系可能造成嚴(yán)重的后果 輕則導(dǎo)致系統(tǒng) 信息的泄漏 重則整臺(tái)服務(wù)器都被別有企圖之人攻陷 10 現(xiàn)在仍有很多系統(tǒng)采用明文的方式存儲(chǔ)用戶口令 這絕對(duì)是非常危險(xiǎn)的 首先 這種方式下 管理員可以通過查看數(shù)據(jù)庫得到用戶密碼 而大多數(shù)用戶的各個(gè)系統(tǒng) 如郵箱 論壇甚至是金融系統(tǒng) 通常都使用同一個(gè)密碼 如果管理員動(dòng)機(jī)不良 他 可能會(huì)用得到的密碼去登錄銀行系統(tǒng) 事實(shí)上 把系統(tǒng)的安全性建立在對(duì)某個(gè)個(gè)體信 任的基礎(chǔ)上 是非常不明智的一種機(jī)制 其次 誰都不能確保系統(tǒng)不存在漏洞 尤其 是 SQL 注入式漏洞 當(dāng)別有用心之人通過 SQL 漏洞讀取數(shù)據(jù)庫時(shí) 很快就可以得到 用戶 管理員 的密碼 這時(shí)他就可以為所欲為了 通過消息摘要算法 如 MD5 SHA1 加密口令是一種不錯(cuò)的方案 哈希算法廣 泛用于加密和解密技術(shù)上 比如在 UNIX 系統(tǒng)中用戶的密碼就是以 MD5 或其它類 似的算法 經(jīng)加密后存儲(chǔ)在文件系統(tǒng)中 11 這種方案的工作原理是 把用戶提交的密 碼經(jīng)過哈希算法變換得到密碼的摘要 再把它與數(shù)據(jù)庫中原來存放的密碼摘要作比較 相同則通過驗(yàn)證 12 經(jīng)過哈希加密的密文 即使是管理員也無法逆向得到密碼的明文 這就確保了用戶的安全 但是 用哈希算法加密密碼 并不是牢不可破 仍然可用窮 舉的方法破解它 注意用戶設(shè)置的密碼不會(huì)很長(zhǎng)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司采購(gòu)部個(gè)人年度工作總結(jié)
- 貴州省畢節(jié)市威寧縣黑石中學(xué)2025屆物理高二下期末教學(xué)質(zhì)量檢測(cè)試題含解析
- 公司個(gè)人年終工作計(jì)劃
- 全國(guó)學(xué)前教育宣傳月主題活動(dòng)總結(jié)
- 假期學(xué)習(xí)總結(jié)范文
- 資源動(dòng)態(tài)分配-第1篇-洞察及研究
- 企業(yè)年度安全教育培訓(xùn)計(jì)劃方案
- 腕掌關(guān)節(jié)扭傷護(hù)理課件
- 先天性足副舟骨查房
- 脊髓發(fā)育異常健康宣教
- 2025年甘肅省武威市民勤縣西渠鎮(zhèn)人民政府選聘專業(yè)化管理村文書筆試參考題庫及1套完整答案詳解
- 防洪防汛安全知識(shí)試題及答案
- T/CCMA 0137-2022防撞緩沖車
- 工地意外死亡賠償協(xié)議書6篇
- 江蘇省2025年中職職教高考文化統(tǒng)考數(shù)學(xué)試題答案
- 醫(yī)藥企業(yè)的數(shù)字化轉(zhuǎn)型與營(yíng)銷創(chuàng)新策略研究報(bào)告
- 浙江省公路工程監(jiān)理用表-監(jiān)理旁站記錄2025
- 產(chǎn)科促宮縮藥
- 2024年貴州省余慶縣事業(yè)單位公開招聘醫(yī)療衛(wèi)生崗筆試題帶答案
- 蜜雪冰城商業(yè)計(jì)劃書
- 2025-2030中國(guó)蝦青素行業(yè)發(fā)展分析及發(fā)展趨勢(shì)預(yù)測(cè)報(bào)告
評(píng)論
0/150
提交評(píng)論