版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 遠(yuǎn)程輔修學(xué)生自學(xué)系統(tǒng)的分析與設(shè)計(jì)</p><p> 姓 名: </p><p> 學(xué) 號(hào): </p><p> 專 業(yè): 計(jì)算機(jī)科學(xué)與技術(shù) </p><p> 學(xué) 院:機(jī)電與信息工程學(xué)院</p><p> 指導(dǎo)教師: </p>&
2、lt;p><b> 輔導(dǎo)教師:</b></p><p><b> 起止日期:</b></p><p><b> 摘 要</b></p><p> 隨著科學(xué)的進(jìn)步,社會(huì)的發(fā)展,利用網(wǎng)絡(luò)進(jìn)行遠(yuǎn)程教學(xué)已是教育界的一個(gè)趨勢(shì)。隨著網(wǎng)絡(luò)教育的正規(guī)化,越來(lái)越多的人傾向于通過(guò)網(wǎng)絡(luò)進(jìn)行教育,如何充分發(fā)揮
3、網(wǎng)絡(luò)在教學(xué)領(lǐng)域的作用,成為一個(gè)重要而迫切的問題。</p><p> 本論文詳細(xì)介紹了遠(yuǎn)程輔修學(xué)生自學(xué)系統(tǒng)的開發(fā)過(guò)程,包括設(shè)計(jì)過(guò)程、關(guān)鍵技術(shù)以及其成果。在開發(fā)過(guò)程中嚴(yán)格遵守軟件工程的思想,按照需求分析、數(shù)據(jù)庫(kù)設(shè)計(jì)、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼、改進(jìn)和性能優(yōu)化的步驟進(jìn)行開發(fā)。該系統(tǒng)主要完成以下功能:教師維護(hù)教學(xué)課件,具體包括課件的在線設(shè)計(jì)與維護(hù);學(xué)生選擇課程自學(xué),并對(duì)學(xué)生自學(xué)進(jìn)度進(jìn)行跟蹤;學(xué)生筆記功能,學(xué)生在學(xué)習(xí)過(guò)程中
4、可以做筆記,學(xué)生可以自己查詢自己所作的筆記,教師可以查詢所有學(xué)生所作的筆記;教師清除某門課程的所有學(xué)生筆記功能等。</p><p> 本系統(tǒng)不僅僅是在手段上搭起一個(gè)有助于提高教學(xué)質(zhì)量、促進(jìn)學(xué)生認(rèn)知能力的技術(shù)平臺(tái),也希望以此為基礎(chǔ),作一個(gè)教學(xué)探索,引導(dǎo)師生從傳統(tǒng)的教學(xué)觀念上進(jìn)行轉(zhuǎn)變。</p><p> 關(guān)鍵詞:互連網(wǎng);ASP.NET;自學(xué);WEB</p><p>
5、<b> Abstract</b></p><p> Analysis and Design of Remote Student Self-study System</p><p> With the advancement of science and the development of society, the application of interne
6、t has become a trend in education field. Also with the standardization of the online education, more and more people have tended to be educated via internet, how to bring the role of the network into full play in the fie
7、ld of teaching has become an important and urgent problem.</p><p> This thesis introduced the development process of the Analysis and Design of Remote Student Self-study System in detail, including the desi
8、gn process, the key technique and its results. Obey the thought of the software engineering strictly during the period of development, according to the need analysis, database design, essentials design, detailed design,
9、code, improvement and the optimization of the function to carry on a development. This system is mainly to complete the following functions: </p><p> This system not only is the technique terrace which take
10、s to contribute to raising teaching quality and promotes the student cognition ability, but also hopes to take this as foundation, making a teaching investigate, leads the teachers and the students carry on a change from
11、 the traditional teaching idea.</p><p> Key words:Internet; ASP.NET; Self-study; WEB</p><p><b> 目 錄</b></p><p><b> 1.緒論1</b></p><p> 1.1 問
12、題定義及內(nèi)容簡(jiǎn)介1</p><p> 1.2 課題調(diào)研與可行性分析1</p><p> 1.2.1 課題調(diào)研1</p><p> 1.2.2 可行性分析2</p><p> 1.3 論文各章內(nèi)容介紹2</p><p><b> 2.需求分析3</b></p>&
13、lt;p> 2.1 系統(tǒng)功能需求分析4</p><p> 2.2 數(shù)據(jù)流圖分析4</p><p> 2.3 數(shù)據(jù)字典7</p><p><b> 3.系統(tǒng)設(shè)計(jì)9</b></p><p> 3.1 系統(tǒng)的總體結(jié)構(gòu)設(shè)計(jì)9</p><p> 3.2 系統(tǒng)的開發(fā)與環(huán)境配置11
14、</p><p> 3.2.1 系統(tǒng)開發(fā)方法11</p><p> 3.2.2 系統(tǒng)環(huán)境配置12</p><p><b> 4.詳細(xì)設(shè)計(jì)13</b></p><p> 4.1 各功能模塊詳細(xì)設(shè)計(jì)13</p><p> 4.1.1 學(xué)生選課模塊13</p><
15、p> 4.1.2 學(xué)生學(xué)習(xí)模塊14</p><p> 4.1.3 自學(xué)進(jìn)度模塊15</p><p> 4.1.4 筆記管理模塊16</p><p> 4.1.5 教師課件維護(hù)17</p><p> 4.2 主要問題及解決方法18</p><p> 4.2.1 關(guān)于課程內(nèi)容的編輯18<
16、/p><p> 4.2.2 關(guān)于文件、圖片和影像的上傳和顯示20</p><p> 4.2.3 關(guān)于TreeView目錄樹跟數(shù)據(jù)庫(kù)的鏈接顯示23</p><p> 4.2.4 關(guān)于TreeView目錄樹節(jié)點(diǎn)的添加、修改與刪除26</p><p> 5.結(jié)論及存在問題29</p><p> 5.1 系統(tǒng)特色
17、29</p><p> 5.2 系統(tǒng)存在不足30</p><p><b> 致 謝32</b></p><p><b> 參考文獻(xiàn)34</b></p><p> 遠(yuǎn)程輔修學(xué)生自學(xué)系統(tǒng)的分析與設(shè)計(jì)</p><p> 姓名: 學(xué)號(hào):
18、 班級(jí):計(jì)算機(jī)科學(xué)與技術(shù)(X)班</p><p><b> 1.緒論</b></p><p> 隨著計(jì)算機(jī)和信息技術(shù)的發(fā)展,知識(shí)更新日益加快,已有的知識(shí)傳播途徑已經(jīng)滿足不了這種需求,迫切需要一種全新的知識(shí)傳播方式,計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的不斷成熟和進(jìn)步,使得基于計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的遠(yuǎn)程教育成為可能。由此,計(jì)算機(jī)輔助教學(xué)正在進(jìn)入一個(gè)新的階段,即網(wǎng)絡(luò)教學(xué),是學(xué)
19、習(xí)方法上的一次具有跨時(shí)代意義的革命。</p><p> 1.1 問題定義及內(nèi)容簡(jiǎn)介</p><p> 目前遠(yuǎn)程教學(xué)平臺(tái)的開發(fā)熱點(diǎn)主要是集中于網(wǎng)上教學(xué)管理系統(tǒng)和教學(xué)支持系統(tǒng)的開發(fā),對(duì)教學(xué)過(guò)程提供全面、基礎(chǔ)的支持,如學(xué)生注冊(cè)、教學(xué)傳遞、教學(xué)追蹤等。在此基礎(chǔ)上,進(jìn)一步發(fā)展必然是提供對(duì)課程開發(fā)以及教學(xué)過(guò)程較深層次的支持。</p><p> 傳統(tǒng)的基于客戶機(jī)/服務(wù)器(C
20、lient/Server, C/S)的應(yīng)用程序,除了安裝服務(wù)程序外還必須為每臺(tái)客戶機(jī)安裝客戶端應(yīng)用程序,一旦程序升級(jí)或修改,每臺(tái)客戶機(jī)的程序都必須重新安裝升級(jí),工作量極大,不利于維護(hù)。</p><p> 隨著計(jì)算機(jī)業(yè)的發(fā)展和Internet日益成熟,采用瀏覽器/服務(wù)器(Browser/Server, B/S)的應(yīng)用程序日漸成熟,基于瀏覽器客戶端的應(yīng)用程序比傳統(tǒng)的基于C/S的應(yīng)用程序有幾個(gè)優(yōu)勢(shì),包括幾乎沒有限制的
21、客戶端訪問和極其簡(jiǎn)化的應(yīng)用程序部署和管理,即使更新一個(gè)應(yīng)用程序,管理人員只需要更改一個(gè)基于服務(wù)器的程序,而不是成千上萬(wàn)的安裝在客戶端的應(yīng)用程序。大大簡(jiǎn)化了維護(hù)的工作量,也無(wú)需開發(fā)客戶端的應(yīng)用程序,節(jié)約了程序的開發(fā)成本,客戶端只用連上了全球互聯(lián)網(wǎng)就可以在全球各地使用程序。</p><p> 1.2 課題調(diào)研與可行性分析</p><p> 1.2.1 課題調(diào)研</p><
22、;p> 隨著信息時(shí)代的到來(lái),人類知識(shí)更新的周期越來(lái)越短,如何使得教學(xué)和培訓(xùn)能夠滿足不同地點(diǎn)和不同學(xué)習(xí)時(shí)間人們的需要,傳統(tǒng)的面對(duì)面教學(xué)方式已經(jīng)力不從心。在這種情況下,現(xiàn)代遠(yuǎn)程教學(xué)應(yīng)運(yùn)而生,它的優(yōu)點(diǎn)在于使得學(xué)生在時(shí)間和地點(diǎn)不同的情況下能與教師進(jìn)行交互并完成學(xué)習(xí)任務(wù)。計(jì)算機(jī)輔助教學(xué)(Computer Assisted Instruction, CAI)與Internet技術(shù)的有機(jī)結(jié)合,使得基于網(wǎng)絡(luò)的現(xiàn)代遠(yuǎn)程教育成為現(xiàn)代教育的發(fā)展趨勢(shì)。
23、</p><p> 基于WEB的教學(xué),就是用萬(wàn)維網(wǎng)作為教學(xué)媒體傳送教學(xué)內(nèi)容,在網(wǎng)上實(shí)施教學(xué)、管理教學(xué)并進(jìn)行網(wǎng)上測(cè)試和網(wǎng)上交流。WEB作為教學(xué)載體,其優(yōu)勢(shì)不僅在于它是很好的內(nèi)容載體,可以隨時(shí)隨地地訪問,還在于它提供了很多交流渠道,可以促進(jìn)師生之間、學(xué)生之間的充分討論,這對(duì)于提高教學(xué)質(zhì)量,促進(jìn)學(xué)生高級(jí)認(rèn)知能力的開發(fā)是十分重要的。而本課題旨在研究遠(yuǎn)程輔修學(xué)生自學(xué)系統(tǒng)的分析與設(shè)計(jì)。</p><p&g
24、t; 本系統(tǒng)的設(shè)計(jì)基于實(shí)名制管理系統(tǒng),采用Microsoft ASP.NET[7]平臺(tái)進(jìn)行開發(fā),數(shù)據(jù)庫(kù)[1]使用Microsoft SQL Server。具體完成以下功能:</p><p> 教師維護(hù)教學(xué)課件,具體包括課件的在線設(shè)計(jì)與維護(hù);</p><p> 學(xué)生選擇課程自學(xué),并對(duì)學(xué)生自學(xué)進(jìn)度進(jìn)行跟蹤;</p><p> 學(xué)生筆記功能,學(xué)生在學(xué)習(xí)過(guò)程中可以做
25、筆記,學(xué)生可以自己查詢自己所作的筆記,教師可以查詢所有學(xué)生所作的筆記;</p><p> 教師清除某門課程的所有學(xué)生筆記功能等。</p><p> 1.2.2 可行性分析</p><p><b> 技術(shù)可行性</b></p><p> 本系統(tǒng)需要一臺(tái)WEB服務(wù)器,配置要求與客戶量成正比,對(duì)于一個(gè)學(xué)校內(nèi)使用,一臺(tái)普
26、通的服務(wù)器即可,當(dāng)前的主流服務(wù)器完全可以滿足要求。對(duì)于客戶端,只需要客戶端裝有瀏覽器即可,對(duì)機(jī)器本身沒有太高的要求,一般當(dāng)前學(xué)?;騻€(gè)人電腦完全可滿足要求。</p><p> 對(duì)于軟件技術(shù)要求,現(xiàn)在基于B/S架構(gòu)的程序設(shè)計(jì)語(yǔ)言已非常成熟,從早期的CGI,到現(xiàn)在的ASP、JSP、PHP的百花齊放,再到微軟剛推出不久ASP.NET,為基于B/S程序設(shè)計(jì)提供了強(qiáng)大的技術(shù)支持。使用其中任何一門語(yǔ)言開發(fā)都可以滿足要求。&l
27、t;/p><p> ASP.NET是一種建立在通用語(yǔ)言上的程序構(gòu)架,能被用于一臺(tái)WEB服務(wù)器來(lái)建立強(qiáng)大的WEB應(yīng)用程序。ASP.NET提供許多比現(xiàn)在的WEB開發(fā)模式更為強(qiáng)大的優(yōu)勢(shì)。WEB服務(wù)器軟件也很多,其中任意一個(gè)都可以勝任,數(shù)據(jù)庫(kù)可以使用SQL Server 2000[2]。</p><p><b> 經(jīng)濟(jì)可行性</b></p><p>
28、 企事業(yè)單位可利用現(xiàn)有的服務(wù)器,裝上WEB服務(wù)器軟件,即可成為一臺(tái)WEB服務(wù)器,客戶只要連上Internet利用自己的機(jī)器即可使用系統(tǒng),而機(jī)器的配置就算不是很高也完全可以應(yīng)付,這對(duì)企事業(yè)單位不構(gòu)成經(jīng)濟(jì)的負(fù)擔(dān),系統(tǒng)成本主要集中在系統(tǒng)軟件的開發(fā)上,當(dāng)系統(tǒng)投入運(yùn)行后可以為企事業(yè)單位節(jié)約大量的人力、物力。所帶來(lái)的效益遠(yuǎn)遠(yuǎn)大于系統(tǒng)軟件的開發(fā)成本。在經(jīng)濟(jì)上完全可行。</p><p> 1.3 論文各章內(nèi)容介紹</p&
29、gt;<p> 本論文圍繞整個(gè)系統(tǒng)的設(shè)計(jì)、開發(fā)展開,從一開始的調(diào)研到以后的程序設(shè)計(jì),在本論文中都進(jìn)行了詳細(xì)的描述。</p><p> 本論文第一章為緒論,介紹了該系統(tǒng)的問題定義及內(nèi)容簡(jiǎn)介,研究背景與研究意義,課題調(diào)研與可行性分析。</p><p> 論文的第二章進(jìn)行了詳細(xì)的系統(tǒng)需求分析,介紹了系統(tǒng)功能需求分析,數(shù)據(jù)流圖分析,數(shù)據(jù)字典以及系統(tǒng)業(yè)務(wù)流重組與改進(jìn)。</p
30、><p> 論文的第三章是系統(tǒng)的設(shè)計(jì)部分,詳細(xì)介紹了系統(tǒng)總體結(jié)構(gòu)設(shè)計(jì),系統(tǒng)數(shù)據(jù)模型設(shè)計(jì),系統(tǒng)開發(fā)與運(yùn)行環(huán)境。</p><p> 論文的第四章為詳細(xì)設(shè)計(jì),在詳細(xì)設(shè)計(jì)中主要介紹了各子模塊功能、界面設(shè)計(jì),詳細(xì)設(shè)計(jì)以及在系統(tǒng)開發(fā)過(guò)程中遇到主要問題及解決方案。</p><p> 論文的第五章為結(jié)論與存在問題,包括系統(tǒng)特色/優(yōu)點(diǎn)介紹,系統(tǒng)存在不足與改進(jìn)方案。</p>
31、;<p> 論文的最后為:致謝及參考文獻(xiàn)。</p><p><b> 2.需求分析</b></p><p> 需求分析[5]簡(jiǎn)單地說(shuō)就是分析用戶的需求。需求分析是整個(gè)系統(tǒng)設(shè)計(jì)的起點(diǎn),需求分析的結(jié)果是否準(zhǔn)確地反映了用戶的實(shí)際要求,將直接影響到后面各個(gè)階段的設(shè)計(jì),并影響到設(shè)計(jì)結(jié)果是否合理和實(shí)用。</p><p> 需求分析的任
32、務(wù)是通過(guò)詳細(xì)調(diào)查現(xiàn)實(shí)世界要處理的對(duì)象(組織、部門、企業(yè)等),充分了解原系統(tǒng)(手工系統(tǒng)或計(jì)算機(jī)系統(tǒng))工作概況,明確用戶的各種需求,然后在此基礎(chǔ)上確定新系統(tǒng)的功能。</p><p> 調(diào)查的重點(diǎn)是“數(shù)據(jù)”和“處理”,通過(guò)調(diào)查、收集與分析,獲得用戶對(duì)數(shù)據(jù)庫(kù)的如下要求:</p><p><b> 信息要求</b></p><p> 指用戶需要從數(shù)
33、據(jù)庫(kù)中獲得信息的內(nèi)容和性質(zhì)。由信息要求可以導(dǎo)出數(shù)據(jù)要求,即在數(shù)據(jù)庫(kù)中需要存儲(chǔ)哪些數(shù)據(jù)。</p><p><b> 處理要求</b></p><p> 指用戶要完成什么處理功能,對(duì)處理的響應(yīng)時(shí)間有什么要求,處理方式是批處理還是聯(lián)機(jī)處理。</p><p><b> 安全性與完整性要求</b></p><
34、;p> 確定用戶的最終需求是一件很困難的事,這是因?yàn)橐环矫嬗脩羧鄙儆?jì)算機(jī)知識(shí),開始時(shí)無(wú)法確定計(jì)算機(jī)究竟能為自己做什么,不能做什么,因此往往不能準(zhǔn)確地表達(dá)自己的需求,所提出的需求往往不斷地變化。另一方面,設(shè)計(jì)人員缺少用戶的專業(yè)知識(shí),不易理解用戶的真正需求,甚至誤解用戶的需求。因此,設(shè)計(jì)人員必須不斷深入地與用戶交流,才能逐步確定用戶的實(shí)際需求。</p><p> 在許多互聯(lián)網(wǎng)發(fā)達(dá)的國(guó)家,比如美國(guó),其國(guó)內(nèi)的許
35、多著名大學(xué)開始進(jìn)行網(wǎng)絡(luò)教學(xué),并取得了巨大的成功,在國(guó)內(nèi),雖然目前也由一些大學(xué)開始網(wǎng)絡(luò)教育的招生,但是,無(wú)論是規(guī)模還是其他的都要比美國(guó)落后一截。由于國(guó)內(nèi)網(wǎng)絡(luò)的一些限制,使得我國(guó)的網(wǎng)上教育的開展也受到了限制,但是,如果建立了寬帶網(wǎng),網(wǎng)上學(xué)習(xí)者就可利用高速網(wǎng)方便的學(xué)習(xí),并能和老師進(jìn)行實(shí)時(shí)的交互學(xué)習(xí),這使得大家可以達(dá)到面對(duì)面教學(xué)的完整效果。</p><p> 2.1 系統(tǒng)功能需求分析</p><p&
36、gt; 本系統(tǒng)的設(shè)計(jì)基于實(shí)名制管理系統(tǒng),具體完成以下功能:</p><p> 教師維護(hù)教學(xué)課件,具體包括課件的在線設(shè)計(jì)與維護(hù);</p><p> 學(xué)生選擇課程自學(xué),并對(duì)學(xué)生自學(xué)進(jìn)度進(jìn)行跟蹤;</p><p> 學(xué)生筆記功能,學(xué)生在學(xué)習(xí)過(guò)程中可以做筆記,學(xué)生可以自己查詢自己所作的筆記,教師可以查詢所有學(xué)生所作的筆記;</p><p>
37、 教師清除某門課程的所有學(xué)生筆記功能等。</p><p> 2.2 數(shù)據(jù)流圖分析</p><p> 數(shù)據(jù)流圖描繪系統(tǒng)的邏輯模型,圖中沒有任何具體的物理元素,只是描繪信息在系統(tǒng)中流動(dòng)和處理的情況。因?yàn)閿?shù)據(jù)流圖是邏輯系統(tǒng)的圖形表示,即使不是專業(yè)的計(jì)算機(jī)技術(shù)人員也容易理解,所以是極好的通信工具。</p><p> 結(jié)構(gòu)化數(shù)據(jù)流程分析[6]采用分層的數(shù)據(jù)流程圖(Dat
38、a Flow Diagram,簡(jiǎn)稱DFD)實(shí)現(xiàn)。數(shù)據(jù)流程分析的目的是要發(fā)數(shù)據(jù)流通中的問題。數(shù)據(jù)流程分析把數(shù)據(jù)在組織內(nèi)部的流動(dòng)情況抽象地獨(dú)立出來(lái),舍去了具體組織機(jī)構(gòu)、信息載體、處理工作、物資、材料等,僅從數(shù)據(jù)流動(dòng)過(guò)程中考察實(shí)際業(yè)務(wù)的數(shù)據(jù)處理模式。數(shù)據(jù)流圖是結(jié)構(gòu)化分析(Structured Analysis, SA)方法中用于表示系統(tǒng)邏輯模型的一種工具。它以圖形的方式描述數(shù)據(jù)在系統(tǒng)中流動(dòng)和處理的過(guò)程,由于它只反映系統(tǒng)必須完成的邏輯功能,所以
39、它是一種功能模型。數(shù)據(jù)流圖有四種基本圖形符號(hào):“→”表示數(shù)據(jù)流;“○”表示加工;“=”表示數(shù)據(jù)存儲(chǔ);“”表示數(shù)據(jù)的源點(diǎn)或終點(diǎn)。</p><p> DFD的畫法一般遵循“由外向里”的原則,即先確定系統(tǒng)的邊界或范圍,再考慮系統(tǒng)的內(nèi)部,先畫加工的輸入和輸出,再畫加工的內(nèi)部。即:</p><p> 識(shí)別系統(tǒng)的輸入和輸出;</p><p> 從輸入端至輸出端畫數(shù)據(jù)流和加
40、工,并同時(shí)加上文件;</p><p> 加工的分解“由外向里”進(jìn)行分解;</p><p> 數(shù)據(jù)流的命名,名字要確切,能反映整體;</p><p> 各種符號(hào)布置要合理,分布均勻,盡量避免交叉線;</p><p> 先考慮穩(wěn)定態(tài),后考慮瞬間態(tài)。如系統(tǒng)啟動(dòng)后在正常工作狀態(tài),稍后再考慮系統(tǒng)的啟動(dòng)和終止?fàn)顟B(tài)。</p><
41、p> 通過(guò)對(duì)系統(tǒng)的需求分析,系統(tǒng)的基本功能已經(jīng)大體確定,下面介紹本系統(tǒng)5個(gè)主要的數(shù)據(jù)流圖,它們分別是頂層數(shù)據(jù)流圖、0層數(shù)據(jù)流圖、1層(a)數(shù)據(jù)流圖、1層(b)數(shù)據(jù)流圖和1層(c)數(shù)據(jù)流圖。</p><p> 頂層數(shù)據(jù)流圖確定了系統(tǒng)的邊界,描述了系統(tǒng)的總體功能需求,學(xué)生、系統(tǒng)、老師三者的相互聯(lián)系可以從頂層數(shù)據(jù)流圖中充分體現(xiàn)出來(lái)。學(xué)生通過(guò)系統(tǒng)選擇課程進(jìn)行自學(xué),做筆記和查詢所做的筆記,系統(tǒng)對(duì)學(xué)生自學(xué)進(jìn)度進(jìn)行跟
42、蹤;老師可以通過(guò)系統(tǒng)進(jìn)行教學(xué)課件維護(hù),還可以查詢和清除所有學(xué)生的筆記。頂層數(shù)據(jù)流圖如圖2-1所示。</p><p> 圖2-1 頂層數(shù)據(jù)流圖</p><p> 圖2-2 0層數(shù)據(jù)流圖</p><p> 0層數(shù)據(jù)流圖是對(duì)頂層數(shù)據(jù)流圖的細(xì)化,該圖更清晰詳盡地把0層數(shù)據(jù)流圖要表達(dá)的東西體現(xiàn)了出來(lái),功能結(jié)構(gòu)更加明確,使人一目了然。0層數(shù)據(jù)流圖主要把頂層數(shù)據(jù)流圖中的
43、“學(xué)生自學(xué)”加工細(xì)分為6個(gè)主要的加工,它們都有各自功能,各個(gè)功能之間相互聯(lián)系,構(gòu)成了整個(gè)系統(tǒng)的主要功能。0層數(shù)據(jù)流圖如圖2-2所示。</p><p> 1層(a)數(shù)據(jù)流圖是對(duì)0層數(shù)據(jù)流圖中的“自學(xué)進(jìn)度跟蹤”加工項(xiàng)的進(jìn)一步細(xì)化,系統(tǒng)接收到自學(xué)進(jìn)度信息,從自學(xué)進(jìn)度記錄數(shù)據(jù)庫(kù)中調(diào)出信息數(shù)據(jù)反饋給學(xué)生;學(xué)生在學(xué)習(xí)的過(guò)程中,系統(tǒng)會(huì)根據(jù)學(xué)生點(diǎn)擊的章節(jié)而更新自學(xué)進(jìn)度情況并且保存在自學(xué)進(jìn)度記錄數(shù)據(jù)庫(kù)中。1層(a)數(shù)據(jù)流圖如圖2
44、-3所示。</p><p> 圖2-3 1層(a)數(shù)據(jù)流圖</p><p> 1層(b)數(shù)據(jù)流圖是對(duì)0層數(shù)據(jù)流圖中的“筆記管理跟蹤”加工項(xiàng)的進(jìn)一步細(xì)化,系統(tǒng)接收到筆記信息,從筆記記錄數(shù)據(jù)庫(kù)中調(diào)出筆記信息數(shù)據(jù)反饋給學(xué)生和老師;學(xué)生通過(guò)系統(tǒng)修改筆記內(nèi)容并且保存在筆記記錄數(shù)據(jù)庫(kù)中,老師通過(guò)系統(tǒng)刪除筆記并且保存在筆記記錄數(shù)據(jù)庫(kù)中。1層(b)數(shù)據(jù)流圖如圖2-4所示。</p>&l
45、t;p> 圖2-4 1層(b)數(shù)據(jù)流圖</p><p> 1層(c)數(shù)據(jù)流圖是對(duì)0層數(shù)據(jù)流圖中的“課件維護(hù)”加工項(xiàng)的進(jìn)一步細(xì)化,老師通過(guò)系統(tǒng)可以進(jìn)行新增課程、添加章節(jié)、插入章節(jié)、修改章節(jié)和刪除章節(jié)的操作,并且把維護(hù)后的信息保存在課件庫(kù)中。1層(c)數(shù)據(jù)流圖如圖2-5所示。</p><p> 圖2-5 1層(c)數(shù)據(jù)流圖</p><p><b&g
46、t; 2.3 數(shù)據(jù)字典</b></p><p> 數(shù)據(jù)字典[5]是對(duì)在數(shù)據(jù)流圖中每一個(gè)命名的圖形元素均給予定義,其內(nèi)容有圖形元素的名字、別名或編號(hào)、分類、描述、定義、位置等,是系統(tǒng)分析階段的重要文檔,它清楚地定義與詳細(xì)地解釋了數(shù)據(jù)流程圖上不能詳細(xì)表達(dá)的內(nèi)容,同時(shí)它也是同用戶溝通的工具。數(shù)據(jù)字典是為了數(shù)據(jù)流圖中的每個(gè)數(shù)據(jù)流、文件、加工,以及組成數(shù)據(jù)流或文件的數(shù)據(jù)項(xiàng)做出說(shuō)明,其中對(duì)每個(gè)加工的描述稱為“
47、小說(shuō)明”,也可稱為“加工邏輯說(shuō)明”。</p><p> 數(shù)據(jù)字典是關(guān)于數(shù)據(jù)的信息的集合,也就是對(duì)數(shù)據(jù)流圖中包含的所有元素的定義的集合。任何字典最主要的用途都是供人查閱對(duì)不了解的條目的解釋,數(shù)據(jù)字典的作用也正是在軟件分析和設(shè)計(jì)的過(guò)程中給人提供關(guān)于數(shù)據(jù)的描述信息。</p><p> 數(shù)據(jù)流圖和數(shù)據(jù)字典共同構(gòu)成系統(tǒng)的邏輯模型,沒有數(shù)據(jù)字典數(shù),數(shù)據(jù)流圖就不嚴(yán)格;反之,沒有數(shù)據(jù)流,數(shù)據(jù)字典也難于
48、發(fā)揮作用。只有數(shù)據(jù)流圖和對(duì)數(shù)據(jù)流圖中每個(gè)元素的精確定義放在一起,才能共同構(gòu)成系統(tǒng)的規(guī)格說(shuō)明。</p><p> 數(shù)據(jù)字典最重要的用途是作為分析階段的工具。在數(shù)據(jù)字典中建立的一組嚴(yán)密一致的定義有助于改進(jìn)分析員和用戶之間的通信,因此將消除許多可能的誤解。對(duì)數(shù)據(jù)的這一系列嚴(yán)密一致的定義,也有助于改進(jìn)在不同的開發(fā)人員或不同的開發(fā)小組之間的通信。如果要求所有開發(fā)人員都根據(jù)公共的數(shù)據(jù)字典描述數(shù)據(jù)和設(shè)計(jì)模塊,則能避免許多麻煩
49、的接口問題。</p><p> 數(shù)據(jù)字典中包含的每個(gè)數(shù)據(jù)元素的控制信息是很有價(jià)值的。因?yàn)榱谐隽耸褂靡粋€(gè)給定的數(shù)據(jù)元素的所有程序(或模塊),所以很容易估計(jì)改變一個(gè)數(shù)據(jù)將產(chǎn)生的影響,并且能對(duì)所有受影響的程序或模塊做出相應(yīng)的改變。</p><p> 下面是本系統(tǒng)的詳細(xì)數(shù)據(jù)字典。</p><p> 表2-1 數(shù)據(jù)存儲(chǔ)條目描述表</p><p>
50、; 數(shù)據(jù)存儲(chǔ)的條目[3]主要描述了數(shù)據(jù)存儲(chǔ)的結(jié)構(gòu),以及相關(guān)的數(shù)據(jù)流、處理邏輯等。上表主要描述了自學(xué)進(jìn)度記錄數(shù)據(jù)庫(kù)、筆記記錄數(shù)據(jù)庫(kù)和課件庫(kù)這三個(gè)主要數(shù)據(jù)庫(kù)的數(shù)據(jù)組成以及對(duì)其功能的說(shuō)明。</p><p> 表2-2 自學(xué)進(jìn)度信息數(shù)據(jù)表</p><p> 自學(xué)進(jìn)度信息數(shù)據(jù)表主要記錄了自學(xué)進(jìn)度的詳細(xì)信息,它保存到了根節(jié)點(diǎn),因此自學(xué)進(jìn)度可以跟蹤查詢到根節(jié)點(diǎn)中去,而其中學(xué)生ID是該表中的主鍵,
51、因?yàn)槊總€(gè)學(xué)生有各自不同的自學(xué)進(jìn)度信息。由于學(xué)生的自學(xué)進(jìn)度會(huì)隨著學(xué)生自學(xué)而不斷變化,所以該表中的信息也會(huì)跟著不斷的產(chǎn)生變化。</p><p> 表2-3 筆記信息數(shù)據(jù)表</p><p> 筆記信息數(shù)據(jù)表主要記錄了學(xué)生筆記的詳細(xì)信息,每個(gè)學(xué)生都可以有自己的筆記,可以保存多份筆記。所以學(xué)生ID是該表中的主鍵。</p><p> 表2-4 課件信息數(shù)據(jù)表</
52、p><p> 課件信息數(shù)據(jù)表主要記錄了課件的詳細(xì)信息,該數(shù)據(jù)庫(kù)與遠(yuǎn)程輔修實(shí)名制用戶管理系統(tǒng)的課件庫(kù)相聯(lián)系,因?yàn)槠渲斜4媪舜罅康闹匾獢?shù)據(jù),所以是幾個(gè)表中最為重要的一個(gè),課件庫(kù)中的信息會(huì)隨課件的維護(hù)而不斷變化更新,其中課程ID是該表中的主鍵,不同的課程有著不同的章節(jié)內(nèi)容。</p><p><b> 3.系統(tǒng)設(shè)計(jì)</b></p><p> 系統(tǒng)設(shè)計(jì)
53、工作應(yīng)該自頂向下地進(jìn)行。首先設(shè)計(jì)總體結(jié)構(gòu),然后再逐層深入,直至進(jìn)行每一個(gè)模塊的設(shè)計(jì)。總體設(shè)計(jì)主要是指在系統(tǒng)分析的基礎(chǔ)上,對(duì)整個(gè)系統(tǒng)的劃分、機(jī)器設(shè)備(包括軟、硬設(shè)備)的配置、數(shù)據(jù)的存貯規(guī)律以及整個(gè)系統(tǒng)實(shí)現(xiàn)規(guī)劃等方面進(jìn)行合理的安排。</p><p> 3.1 系統(tǒng)的總體結(jié)構(gòu)設(shè)計(jì)</p><p> 經(jīng)過(guò)對(duì)本系統(tǒng)的分析,為完善本系統(tǒng)的功能主要添加了以下幾個(gè)功能模塊:學(xué)生選課模塊、學(xué)生學(xué)習(xí)模塊、
54、自學(xué)進(jìn)度模塊、筆記管理模塊和教師課件維護(hù)模塊。其中,筆記管理模塊又細(xì)分為兩個(gè)至模塊,分別是學(xué)生筆記管理模塊和教師筆記管理模塊。各個(gè)模塊都有其自身的功能,其中生選課模塊、學(xué)生學(xué)習(xí)模塊、自學(xué)進(jìn)度模塊、自學(xué)進(jìn)度模塊和筆記管理模塊為學(xué)生主模塊,而筆記管理模塊和教師課件維護(hù)模塊為教師主模塊。教師課件維護(hù)模塊又細(xì)分了4個(gè)小模塊,分別為新增章節(jié)、修改章節(jié)、刪除章節(jié)和插入章節(jié)。模塊與模塊之間緊密聯(lián)系。其具體的功能模塊圖如圖3-1所示。</p>
55、;<p> 圖3-1 學(xué)生自學(xué)系統(tǒng)功能模塊圖</p><p> 表3-1 各功能模塊說(shuō)明表</p><p> 3.2 系統(tǒng)的開發(fā)與環(huán)境配置</p><p> 3.2.1 系統(tǒng)開發(fā)方法</p><p> ASP、PHP、JSP、ASP.NET這是當(dāng)前比較流行的四種WEB網(wǎng)站編程語(yǔ)言。</p><p
56、> ASP[8]全名Active Server Pages,是一個(gè)WEB服務(wù)器端的開發(fā)環(huán)境,利用它可以產(chǎn)生和執(zhí)行動(dòng)態(tài)的,互動(dòng)的,高性能的WEB服務(wù)應(yīng)用程序。ASP采用腳本語(yǔ)言VBScript/JavaScript)作為自己的開發(fā)語(yǔ)言。</p><p> PHP是一種跨平臺(tái)的服務(wù)器端的嵌入式腳本語(yǔ)言。它大量地借用C、Java和Perl語(yǔ)言的語(yǔ)法,并耦合PHP自己的特性,使WEB開發(fā)者能夠快速地寫出動(dòng)態(tài)產(chǎn)生
57、頁(yè)面。它支持目前絕大多數(shù)數(shù)據(jù)庫(kù),而且你可以不受限制地獲得源碼,甚至可以從中加進(jìn)你自己需要的特色。</p><p> JSP(Java Server Page)是Sun公司推出的新一代網(wǎng)站開發(fā)語(yǔ)言,Sun公司借助自己在Java上的不凡造詣,將Java從Java應(yīng)用程序和Java Applet之外,又有新的碩果,就是JSP。JSP可以在Serverlet和JavaBean的支持下,完成功能強(qiáng)大的站點(diǎn)程序。</
58、p><p> ASP.NET是一種建立在通用語(yǔ)言上的程序構(gòu)架,能被用于一臺(tái)WEB服務(wù)器來(lái)建立強(qiáng)大的WEB應(yīng)用程序。ASP.NET提供許多比現(xiàn)在的WEB開發(fā)模式強(qiáng)大的優(yōu)勢(shì)。三者都提供在HTML代碼中混合某種程序代碼,由語(yǔ)言引擎解釋執(zhí)行程序代碼的能力。在ASP、PHP、JSP環(huán)境下,HTML代碼主要負(fù)責(zé)描述信息的顯示樣式,而程序代碼則用來(lái)描述處理邏輯。普通的HTML頁(yè)面只依賴于WEB服務(wù)器,而ASP、PHP、JSP頁(yè)面
59、需要附加的語(yǔ)言引擎分析和執(zhí)行程序代碼。程序代碼的執(zhí)行結(jié)果被重新嵌入到HTML代碼中,然后一起發(fā)送給瀏覽器。ASP、PHP、JSP三者都是面向WEB服務(wù)器的技術(shù),客戶端瀏覽器不需要任何附加的軟件支持。</p><p> 本系統(tǒng)的開發(fā),使用ASP.NET語(yǔ)言,ASP.NET是建立在公共語(yǔ)言運(yùn)行庫(kù)上的編程框架,可用于在服務(wù)器上生成功能強(qiáng)大的WEB應(yīng)用程序。與以前的WEB開發(fā)模型相比,ASP.NET提供了數(shù)個(gè)重要的優(yōu)點(diǎn)
60、:</p><p> 增強(qiáng)的性能。ASP.NET是在服務(wù)器上運(yùn)行的編譯好的公共語(yǔ)言運(yùn)行庫(kù)代碼。與被解釋的前輩不同,ASP.NET可利用早期綁定、實(shí)時(shí)編譯、本機(jī)優(yōu)化和盒外緩存服務(wù)。這相當(dāng)于在編寫代碼行之前便顯著提高了性能。</p><p> 世界級(jí)的工具支持。ASP.NET框架補(bǔ)充了Visual Studio集成開發(fā)環(huán)境中的大量工具箱和設(shè)計(jì)器。WYSIWYG編輯、拖放服務(wù)器控件和自動(dòng)部署
61、只是這個(gè)強(qiáng)大的工具所提供功能中的少數(shù)幾種。</p><p> 威力和靈活性。由于ASP.NET基于公共語(yǔ)言運(yùn)行庫(kù),因此WEB應(yīng)用程序開發(fā)人員可以利用整個(gè)平臺(tái)的威力和靈活性。.NET框架類庫(kù)、消息處理和數(shù)據(jù)訪問解決方案都可從WEB無(wú)縫訪問。ASP.NET也與語(yǔ)言無(wú)關(guān),所以可以選擇最適合應(yīng)用程序的語(yǔ)言,或跨多種語(yǔ)言分割應(yīng)用程序。另外,公共語(yǔ)言運(yùn)行庫(kù)的交互性保證在遷移到ASP.NET時(shí)保留基于COM的開發(fā)中的現(xiàn)有投資
62、。</p><p> 簡(jiǎn)易性。ASP.NET使執(zhí)行常見任務(wù)變得容易,從簡(jiǎn)單的窗體提交和客戶端身份驗(yàn)證到部署和站點(diǎn)配置。例如,ASP.NET頁(yè)框架使您可以生成將應(yīng)用程序邏輯與表示代碼清楚分開的用戶界面,和在類似Visual Basic的簡(jiǎn)單窗體處理模型中處理事件。另外,公共語(yǔ)言運(yùn)行庫(kù)利用托管代碼服務(wù)(如自動(dòng)引用計(jì)數(shù)和垃圾回收)簡(jiǎn)化了開發(fā)。</p><p> 可管理性。ASP.NET采用基
63、于文本的分層配置系統(tǒng),簡(jiǎn)化了將設(shè)置應(yīng)用于服務(wù)器環(huán)境和WEB應(yīng)用程序。由于配置信息是以純文本形式存儲(chǔ)的,因此可以在沒有本地管理工具幫助的情況下應(yīng)用新設(shè)置。此“零本地管理”哲學(xué)也擴(kuò)展到了ASP.NET框架應(yīng)用程序的部署。只需將必要的文件復(fù)制到服務(wù)器,即可將ASP.NET框架應(yīng)用程序部署到服務(wù)器。不需要重新啟動(dòng)服務(wù)器,即使是在部署或替換運(yùn)行的編譯代碼時(shí)。</p><p> 可縮放性和可用性。ASP.NET在設(shè)計(jì)時(shí)考慮
64、了可縮放性,增加了專門用于在聚集環(huán)境和多處理器環(huán)境中提高性能的功能。另外,進(jìn)程受到ASP.NET運(yùn)行庫(kù)的密切監(jiān)視和管理,以便當(dāng)進(jìn)程行為不正常(泄漏、死鎖)時(shí),可就地創(chuàng)建新進(jìn)程,以幫助保持應(yīng)用程序始終可用于處理請(qǐng)求。</p><p> 自定義性和擴(kuò)展性。ASP.NET隨附了一個(gè)設(shè)計(jì)周到的結(jié)構(gòu),它使開發(fā)人員可以在適當(dāng)?shù)募?jí)別“插入”代碼。實(shí)際上,可以用自己編寫的自定義組件擴(kuò)展或替換ASP.NET運(yùn)行庫(kù)的任何子組件。實(shí)
65、現(xiàn)自定義身份驗(yàn)證或狀態(tài)服務(wù)一直沒有變得更容易。</p><p> 安全性。借助內(nèi)置的Windows身份驗(yàn)證和基于每個(gè)應(yīng)用程序的配置,可以保證應(yīng)用程序是安全的。</p><p> 3.2.2 系統(tǒng)環(huán)境配置</p><p> 根據(jù)系統(tǒng)的開發(fā)目標(biāo),原則和項(xiàng)目需求,我選擇了用Microsoft公司W(wǎng)indows XP Professional SP2作為操作系統(tǒng)平臺(tái),
66、Microsoft Visual Studio 2005[20]作為系統(tǒng)的編譯軟件,Microsoft SQL Server 2000作為后端數(shù)據(jù)庫(kù)服務(wù)器軟件。</p><p> 表3-2 系統(tǒng)開發(fā)軟件環(huán)境配置表</p><p> 表3-3 系統(tǒng)運(yùn)行硬件配置表</p><p> 表3-4 系統(tǒng)運(yùn)行網(wǎng)絡(luò)配置表</p><p><
67、;b> 4.詳細(xì)設(shè)計(jì)</b></p><p> 進(jìn)行了系統(tǒng)的總體設(shè)計(jì)后即可在此基礎(chǔ)上進(jìn)行系統(tǒng)的詳細(xì)設(shè)計(jì)了,即各種輸入、輸出、處理和數(shù)據(jù)存儲(chǔ)等的詳細(xì)設(shè)計(jì)。</p><p> 詳細(xì)設(shè)計(jì)的目的是為軟件結(jié)構(gòu)圖中的每個(gè)模塊確定采用的算法和數(shù)據(jù)結(jié)構(gòu),用某種選定的表達(dá)式工具給出清晰的描述。詳細(xì)設(shè)計(jì)是軟件開發(fā)的第二階段,它要求在概要設(shè)計(jì)的基礎(chǔ)上,考慮“怎樣實(shí)現(xiàn)軟件系統(tǒng),直到系統(tǒng)中的
68、每個(gè)模塊給出足夠詳細(xì)的過(guò)程性描述”,這些描述通常用表達(dá)式工具來(lái)表示。</p><p> 詳細(xì)設(shè)計(jì)是編碼的先導(dǎo),這個(gè)階段所產(chǎn)生的設(shè)計(jì)文檔的質(zhì)量將直接影響下一階段程序的質(zhì)量。這一階段的主要任務(wù)是編寫軟件的“詳細(xì)設(shè)計(jì)說(shuō)明書”,并要為每個(gè)模塊設(shè)計(jì)出一組測(cè)試用例,以便在編碼階段對(duì)模塊代碼進(jìn)行預(yù)定的測(cè)試。</p><p> 4.1 各功能模塊詳細(xì)設(shè)計(jì)</p><p> 4
69、.1.1 學(xué)生選課模塊</p><p> 這個(gè)模塊所實(shí)現(xiàn)的功能比較簡(jiǎn)單,就是學(xué)生根據(jù)已有的課程進(jìn)行選擇學(xué)習(xí),首先學(xué)生由遠(yuǎn)程輔修實(shí)名制系統(tǒng)登錄進(jìn)入。當(dāng)學(xué)生選擇課程后自動(dòng)會(huì)跳轉(zhuǎn)到該課程的學(xué)習(xí)頁(yè)面,學(xué)習(xí)頁(yè)面記錄了課程的具體內(nèi)容,學(xué)生可以就該課程進(jìn)行學(xué)習(xí)。已有的課程庫(kù)是與遠(yuǎn)程輔修實(shí)名制用戶系統(tǒng)中的課程設(shè)置數(shù)據(jù)庫(kù)相關(guān)聯(lián)。</p><p> 圖4-1 學(xué)生選課流程圖</p><
70、;p> 4.1.2 學(xué)生學(xué)習(xí)模塊</p><p> 圖4-2 學(xué)生學(xué)習(xí)流程圖</p><p> 當(dāng)學(xué)生選取了所要進(jìn)行學(xué)習(xí)的課程后就進(jìn)入到了該課程的學(xué)習(xí)頁(yè)面,在該頁(yè)面學(xué)生可以根據(jù)自身需要點(diǎn)擊所要學(xué)習(xí)的章節(jié)進(jìn)行學(xué)習(xí),可以選擇自學(xué)進(jìn)度跟蹤學(xué)習(xí)則會(huì)跳轉(zhuǎn)到上一次學(xué)習(xí)的章節(jié)頁(yè)面,在學(xué)習(xí)的過(guò)程中可以做筆記記錄。當(dāng)學(xué)生學(xué)習(xí)調(diào)用課件的內(nèi)容時(shí),系統(tǒng)首先從數(shù)據(jù)庫(kù)中讀取該課件內(nèi)容的地址,然后根據(jù)該地
71、址讀取相應(yīng)的文件,顯示出來(lái)。</p><p> 4.1.3 自學(xué)進(jìn)度模塊</p><p> ASP.NET引入了新的功能,您只需對(duì)頁(yè)面和應(yīng)用程序啟用此功能,就可以查看有關(guān)單個(gè)ASP.NET頁(yè)請(qǐng)求的診斷信息。這項(xiàng)稱為跟蹤的功能還允許您在代碼中直接寫出調(diào)試語(yǔ)句,而不必在將應(yīng)用程序部署到成品服務(wù)器后從應(yīng)用程序中移除它們。您可以在頁(yè)面中寫出變量或結(jié)構(gòu),斷言是否滿足某個(gè)條件,或者只是跟蹤通過(guò)頁(yè)面
72、或應(yīng)用程序的執(zhí)行路徑。</p><p> ASP.NET包括Trace對(duì)象[15](與Response、Request或Context對(duì)象類似),該對(duì)象允許您編寫當(dāng)啟用頁(yè)或整個(gè)應(yīng)用程序的跟蹤時(shí)出現(xiàn)的調(diào)試語(yǔ)句。ASP.NET使用TraceContext類來(lái)存儲(chǔ)有關(guān)請(qǐng)求的信息、它的控件層次結(jié)構(gòu)和跟蹤信息。跟蹤信息包括頁(yè)請(qǐng)求的某些生命周期階段以及您選擇包括的任何自定義語(yǔ)句。</p><p>
73、 TraceContext類可通過(guò)Page.Trace屬性用于WEB窗體頁(yè)。通過(guò)擴(kuò)展Control類創(chuàng)建自定義ASP.NET服務(wù)器控件時(shí),可以使用Control.Context.Trace語(yǔ)法通過(guò)Control.Context屬性訪問TraceContext。</p><p> 在頁(yè)中將自定義跟蹤消息寫入跟蹤記錄:</p><p> 在頁(yè)的代碼聲明塊或代碼隱藏類中,使用Trace屬性調(diào)
74、用TraceContext方法之一。</p><p> 為跟蹤語(yǔ)句指定可選的category參數(shù)。可以使用該類別對(duì)所顯示的跟蹤語(yǔ)句進(jìn)行排序。</p><p> 為跟蹤語(yǔ)句指定message參數(shù)。這可以是字符串或方法。</p><p> 指定可選的errorInfo參數(shù),該參數(shù)包含有關(guān)頁(yè)中任何錯(cuò)誤的信息。</p><p> ASP.NE
75、T 2.0允許通過(guò)代碼在TraceFinished事件[14]里來(lái)訪問每個(gè)請(qǐng)求的跟蹤信息。TraceFinished事件是由TraceContext對(duì)象引發(fā),用于在收集完所有請(qǐng)求信息后公開跟蹤消息。可以利用此事件對(duì)跟蹤信息進(jìn)行不同的輸出。</p><p> 通過(guò)Page.Trace屬性或Control.Context屬性可以使用TraceContext類。前者在開發(fā)ASP.NET頁(yè)時(shí)可用。后者在要將跟蹤語(yǔ)句包括
76、在自定義服務(wù)器控件或要從頁(yè)以外(如global.asax文件)包括跟蹤語(yǔ)句時(shí)可用。</p><p> 以下代碼就是用程序輸出跟蹤信息</p><p> ?。?@ Page Language="C#" %></p><p> <SCRIPT runat="server"></p><p> prot
77、ected void Page_Load(object sender, System.EventArgs e)</p><p><b> {</b></p><p> Trace.TraceFinished+=new TraceContextEventHandler(OnTraceFinished);</p><p> Trace.Wri
78、te("自定義類別","自定義跟蹤消息");</p><p><b> }</b></p><p> private void OnTraceFinished(object sender,TraceContextEventArgs e)</p><p><b> {</b>&l
79、t;/p><p> foreach(TraceContextRecord tcr in e.TraceRecords)</p><p><b> {</b></p><p> Response.Write(string.Format("<li>跟蹤類別:{0}跟蹤消息:{1}", tcr.Category,tcr.Mess
80、age));</p><p><b> }</b></p><p><b> }</b></p><p><b> </SCRIPT></b></p><p> 4.1.4 筆記管理模塊</p><p> 筆記管理模塊主要包括有兩個(gè)不同的模塊,
81、一個(gè)是作用于學(xué)生筆記維護(hù)頁(yè)面,另一個(gè)作用于老師筆記維護(hù)頁(yè)面。</p><p> 圖4-3 學(xué)生筆記維護(hù)流程圖</p><p> 學(xué)生筆記維護(hù)頁(yè)面包含了對(duì)學(xué)生筆記添加、修改、刪除這些基本的功能,學(xué)生可以通過(guò)這些功能對(duì)筆記進(jìn)行相關(guān)的設(shè)置,在進(jìn)行相關(guān)設(shè)置的過(guò)程中會(huì)彈出與之相關(guān)的對(duì)話框,由用戶選擇是否確定操作。學(xué)生筆記維護(hù)流程可參看圖4-3。</p><p> 老師
82、筆記維護(hù)界面不僅包含了學(xué)生筆記維護(hù)頁(yè)面所含有的這些基本功能,還增加了個(gè)查詢功能,老師可以根據(jù)學(xué)生學(xué)號(hào)、學(xué)生姓名或者學(xué)生所在班級(jí)進(jìn)行準(zhǔn)確查詢,查詢班級(jí)可以批量地列出班級(jí)學(xué)生的所有筆記,這樣老師可以方便地刪除整個(gè)班級(jí)的學(xué)生的筆記,不用一個(gè)一個(gè)的刪除,免去了許多不必要的繁冗操作。老師也可以點(diǎn)擊查看每個(gè)學(xué)生的筆記或者進(jìn)行相關(guān)的修改、刪除工作。當(dāng)用戶執(zhí)行操作時(shí),系統(tǒng)即對(duì)相應(yīng)的數(shù)據(jù)庫(kù)進(jìn)行操作,處于便于維護(hù)、安全、執(zhí)行效率等因素的考慮,筆記的內(nèi)容存放
83、于文件中,數(shù)據(jù)庫(kù)中存放了文件所在的路徑。老師筆記維護(hù)流程可參看圖4-4。</p><p> 圖4-4 教師筆記維護(hù)流程圖</p><p> 4.1.5 教師課件維護(hù)</p><p> 課件的制作與維護(hù),也就是相當(dāng)于教師進(jìn)行備課。教師對(duì)相關(guān)課程的每一章、每一節(jié)進(jìn)行備課,并在需要時(shí)對(duì)其進(jìn)行修改。</p><p> 通過(guò)該模塊,老師可以在
84、總系統(tǒng)中添加課件,并對(duì)課件的內(nèi)容進(jìn)行編輯、修改、插入、刪除等操作,對(duì)課件的編輯可以通過(guò)本系統(tǒng)提供的可視化編輯器進(jìn)行編輯,并且可以在內(nèi)容中插入圖像、動(dòng)畫等。課件內(nèi)容的圖片資料由系統(tǒng)數(shù)據(jù)庫(kù)統(tǒng)一維護(hù),圖片上傳至服務(wù)器時(shí),有專門的圖片表記錄了圖片所在的位置、所在的章節(jié)、所在的課程等信息,并對(duì)其重新命名,以防止圖片名稱的沖突。</p><p> 當(dāng)用戶登錄后,系統(tǒng)根據(jù)用戶名,從用戶表中查找用戶的權(quán)限,根據(jù)用戶的權(quán)限,進(jìn)入
85、與用戶相關(guān)的權(quán)限操作界面。界面提供了實(shí)現(xiàn)這些功能的可視化環(huán)境。</p><p> 當(dāng)用戶執(zhí)行操作時(shí),系統(tǒng)即對(duì)相應(yīng)的數(shù)據(jù)庫(kù)進(jìn)行操作,處于維護(hù)方便、安全、執(zhí)行效率等因素的考慮,課件的內(nèi)容存放于文件中,數(shù)據(jù)庫(kù)中存放了文件所在的路徑。教師課件維護(hù)流程可參看圖4-5。</p><p> 圖4-5 教師課件維護(hù)流程圖</p><p> 4.2 主要問題及解決方法<
86、/p><p> 4.2.1 關(guān)于課程內(nèi)容的編輯</p><p> 課程內(nèi)容不僅要有靈活多樣的格式,而且還要能表現(xiàn)生動(dòng)活潑的圖像和動(dòng)畫,當(dāng)然許多的編輯器都能夠?qū)崿F(xiàn)這個(gè)功能,比如Word等。</p><p> 本系統(tǒng)使用了DotNetTextBox V3.0所見即所得編輯器控件For ASP.NET 2.0,該版本插件是基于ASP.NET 2.0技術(shù)重寫控件核心架構(gòu),
87、不僅運(yùn)行性能更高效,也可實(shí)現(xiàn)更多強(qiáng)大的功能。該插件不僅有如Word中的編輯功能,還可以上傳圖片,支持添加文字水印、圖片水印、生成縮略圖,上傳多媒體文件支持自動(dòng)播放。</p><p> 控件演示頁(yè)面:http://www.dotnettextbox.cn/</p><p> 頁(yè)面及Visual Studio 2005調(diào)用控件的方法:</p><p> 1.直接在
88、ASPX頁(yè)面引用控件的話,請(qǐng)將DotNetTextBox.dll復(fù)制到頁(yè)面所在項(xiàng)目的bin目錄下,并在頁(yè)面頂部添加:</p><p> <%@Register TagPrefix="dntb" Namespace="DotNetTextBox" Assembly="DotNetTextBox"%></p><p>
89、 2.在需要加入控件的地方添加:</p><p> <DNTB:WebEditor id="控件ID" Skin="設(shè)置皮膚文件夾的相對(duì)路徑" MenuConfig="菜單功能配置文件路徑" runat="server"></DNTB:WebEditor></p><p> 下面介紹
90、比較主要的功能配置說(shuō)明,配置文件如下:</p><p> <?xml version="1.0" encoding="utf-8" ?></p><p> <configuration></p><p> <rightarea>justifyleft</rightarea>
91、將當(dāng)前選中區(qū)所在格式化塊左對(duì)齊。</p><p> <rightarea>justifycenter</rightarea>將當(dāng)前選中區(qū)在所在格式化塊置中。</p><p> <rightarea>justifyright</rightarea>將當(dāng)前選中區(qū)所在格式化塊右對(duì)齊。</p><p> <righ
92、tarea>insertorderedlist</rightarea>切換當(dāng)前選中區(qū)是編號(hào)列表還是常規(guī)格式化塊。</p><p> <rightarea>insertunorderedlist</rightarea>換當(dāng)前選中區(qū)是項(xiàng)目符號(hào)列表還是常規(guī)格式化塊。</p><p> <rightarea>outdent</righ
93、tarea>減少選中區(qū)所在格式化塊的縮進(jìn)。</p><p> <rightarea>indent</rightarea>增加選中文本的縮進(jìn)。</p><p> <rightarea>undo</rightarea>撤消。</p><p> <rightarea>redo</rightare
94、a>重做。</p><p> <rightarea>delete</rightarea>刪除當(dāng)前選中區(qū)。</p><p> <rightarea>cut</rightarea>將當(dāng)前選中區(qū)復(fù)制到剪貼板并刪除之。</p><p> <rightarea>copy</rightarea>
95、將當(dāng)前選中區(qū)復(fù)制到剪貼板。</p><p> <rightarea>paste</rightarea>用剪貼板內(nèi)容覆蓋當(dāng)前選中區(qū)。</p><p> <rightarea>printer</rightarea>打開打印對(duì)話框以便用戶可以打印當(dāng)前頁(yè)。</p><p> <rightarea>bold&l
96、t;/rightarea>切換當(dāng)前選中區(qū)的粗體顯示與否。</p><p> <rightarea>italic</rightarea>切換當(dāng)前選中區(qū)斜體顯示與否。</p><p> <rightarea>underline</rightarea>切換當(dāng)前選中區(qū)的下劃線顯示與否。</p><p> <r
97、ightarea>inserthorizontalrule</rightarea>用水平線覆蓋當(dāng)前選中區(qū)。</p><p> <rightarea>insertfile</rightarea>上傳文件。</p><p> <rightarea>insertimage</rightarea>上傳圖像文件。</p>
98、;<p> <rightarea>insertmedia</rightarea>上傳影像文件。</p><p> <rightarea>createlink</rightarea>創(chuàng)建網(wǎng)頁(yè)鏈接。</p><p> <rightarea>table</rightarea>表格設(shè)置。</p>
99、<p> </configuration></p><p> 以下是插件編輯器的界面截圖</p><p> 圖4-6 插件編輯器</p><p> 4.2.2 關(guān)于文件、圖片和影像的上傳和顯示</p><p> ASP.NET 2.0提供了FileUpLoad控件允許將文件上載到服務(wù)器。它顯示一個(gè)文本框控
100、件和一個(gè)瀏覽按鈕,該按鈕允許用戶選擇要上載到服務(wù)器的文件。用戶通過(guò)在控件的文本框中輸入文件在本地計(jì)算機(jī)上的完全限定路徑來(lái)指定要上載的文件?;蛘撸部梢酝ㄟ^(guò)單擊“Browse”(瀏覽)按鈕,然后在“Choose File”(選擇文件)對(duì)話框中定位文件來(lái)選擇文件。對(duì)所上載文件的保存位置,沒有固有限制。但是,若要保存文件,ASP.NET進(jìn)程必須具有在指定位置創(chuàng)建文件的權(quán)限。此外,還可能將應(yīng)用程序配置為要求使用絕對(duì)路徑(而不是相對(duì)路徑)來(lái)保存文
101、件,這是一種安全措施。</p><p> FileUpload控件[18]不會(huì)在用戶選擇了待上載文件后自動(dòng)將該文件保存到服務(wù)器上。必須顯式提供一個(gè)控件或機(jī)制來(lái)允許用戶提交指定的文件。</p><p> 使用FileUpload控件,用戶可能上載潛在有害的文件,這包含腳本文件和可執(zhí)行文件。無(wú)法預(yù)先限制用戶可以上載的文件。如果希望限制用戶可以上載的文件的類型,則必須在上載文件后檢查文件特征
102、。</p><p> 而本系統(tǒng)直接利用了插件中的上傳功能,這個(gè)功能跟FileUpload控件功能上大致相同。</p><p> 下面介紹比較主要的功能配置說(shuō)明,配置文件如下:</p><p> <configuration></p><p> <maxAllUploadSize>20480</maxAll
103、UploadSize>設(shè)置上傳文件夾的最大可用空間。</p><p> <maxSingleUploadSize>1024</maxSingleUploadSize>設(shè)置上傳文件單個(gè)的最大尺寸。</p><p> <autoname>false</autoname>設(shè)置上傳文件是否自動(dòng)改名。</p><p>
104、 <allowUpload>true</allowUpload>設(shè)置是否允許上傳。</p><p> <watermarkOption>on</watermarkOption>是否在上傳界面啟用水印選擇的選項(xiàng)on為開啟,off為關(guān)閉。</p><p> <watermark>false</watermark>是否
105、啟用上傳圖片的文字水印。</p><p> <watermarkName>false</watermarkName>開啟文字水印后是否保留原件并新建副本,false為不新建,false以外的字符則新建副本,副本名稱以該字符加原文件名命名。</p><p> <watermarkImages>false</watermarkImages>是
106、否啟用上傳圖片的圖片水印。</p><p> <watermarkImagesName>false</watermarkImagesName>開啟圖片水印后是否保留原件并新建副本,false為不新建,副本名稱以該字符加原文件名命名。</p><p> <watermarkImages_path>img/aspnet2.GIF</watermar
107、kImages_path>設(shè)置圖片水印所在的位置。</p><p> <smallImages>false</smallImages>是否啟用縮略圖。</p><p> <smallImagesName>false</smallImagesName>開啟縮略圖后是否保留原件并新建副本,false為不新建,false以外的字符則新建副
108、本,副本名稱以該字符加原文件名命名。</p><p> <smallImagesType>HW</smallImagesType>略圖縮放類型,HW:指定高寬縮放(可能變形)。W:指定寬,高按比例。H:指定高,寬按比例。Cut:指定高寬裁減(不變形)。</p><p> <smallImagesW>150</smallImagesW>縮略
109、圖寬度。</p><p> <smallImagesH>150</smallImagesH>縮略圖高度。</p><p> <delete>true</delete>是否允許刪除文件。</p><p> <edit>true</edit>是否允許文件重命名。</p><
110、p> <fileListBox>true</fileListBox>是否顯示文件列表。</p><p> <fileFilters>rar,zip,pdf,txt</fileFilters>上傳文件功能可上傳的文件類型。</p><p> <imagesFilters>jpg,gif,png</imagesFil
111、ters>上傳圖片功能可上傳的文件類型。</p><p> <mediaFilters>wmv,rm,rmvb,asf,mpg,mp3</mediaFilters>上傳自動(dòng)播放文件功能可上傳的文件類型。</p><p> </configuration></p><p> 以下是上傳文件截圖:</p>&
112、lt;p> 圖4-7 上傳文件</p><p> 以下是上傳媒體文件截圖:</p><p> 圖4-8 上傳媒體文件</p><p> 以下是上傳圖像文件截圖:</p><p> 圖4-9 上傳圖像文件</p><p> 4.2.3 關(guān)于TreeView目錄樹跟數(shù)據(jù)庫(kù)的鏈接顯示</p>
113、;<p> ASP.NET TreeView控件[19]是一個(gè)用于呈現(xiàn)TreeView UI的功能強(qiáng)大的服務(wù)器控件,該控件支持各種編程模型,從靜態(tài)定義的樹、到動(dòng)態(tài)構(gòu)造的樹以及數(shù)據(jù)綁定的樹幾乎無(wú)所不包。TreeView的顯示風(fēng)格是可以完全自定義的,從而允許該控件具有多種外觀。TreeView支持回發(fā)樣式的事件以及簡(jiǎn)單的超鏈接導(dǎo)航,還支持唯一的事件處理模型,該模型允許從客戶端直接檢索數(shù)據(jù),而無(wú)需服務(wù)器回發(fā)。</p>
114、;<p> ASP.NET為了向TreeView提供更有意義的呈現(xiàn),可以為樹中的節(jié)點(diǎn)指定各自的數(shù)據(jù)綁定??梢詫reeNodeBinding對(duì)象添加到TreeView的Databindings集合,以便對(duì)分層數(shù)據(jù)項(xiàng)的字段映射到TreeNode屬性的方式進(jìn)行定義。</p><p> TreeNodeBinding有兩個(gè)重要屬性可確定綁定所應(yīng)用到的分層數(shù)據(jù)項(xiàng)集。DataMember屬性指定數(shù)據(jù)項(xiàng)的類
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 在線英語(yǔ)自學(xué)系統(tǒng)--課程及自測(cè)管理的設(shè)計(jì)——畢業(yè)論文
- 在線英語(yǔ)自學(xué)系統(tǒng)--課程及自測(cè)管理的設(shè)計(jì)——畢業(yè)論文
- 基于ios的英語(yǔ)口語(yǔ)自學(xué)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)說(shuō)明書畢業(yè)論文
- l2003215002_谷健_在線英語(yǔ)自學(xué)系統(tǒng)——課程及自測(cè)管理的設(shè)計(jì)
- l2003215002_谷健_在線英語(yǔ)自學(xué)系統(tǒng)——課程及自測(cè)管理的設(shè)計(jì)
- L2003215002_谷健_在線英語(yǔ)自學(xué)系統(tǒng)——課程及自測(cè)管理的設(shè)計(jì).doc
- asp.net在線英語(yǔ)自學(xué)系統(tǒng)——課程及自測(cè)管理的設(shè)計(jì)(源代碼+論文)
- [c#畢設(shè)]在線英語(yǔ)自學(xué)系統(tǒng)知識(shí)庫(kù)管理的設(shè)計(jì)(無(wú)論文)
- L2003215002_谷健_在線英語(yǔ)自學(xué)系統(tǒng)——課程及自測(cè)管理的設(shè)計(jì).doc
- L2003215002_谷健_在線英語(yǔ)自學(xué)系統(tǒng)——課程及自測(cè)管理的設(shè)計(jì).doc
- 網(wǎng)絡(luò)教學(xué)系統(tǒng)畢業(yè)設(shè)計(jì)
- 網(wǎng)上教學(xué)系統(tǒng)畢業(yè)設(shè)計(jì)
- 網(wǎng)絡(luò)教學(xué)系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)--《教學(xué)系統(tǒng)設(shè)計(jì)》的多媒體課件的設(shè)計(jì)與制作
- 網(wǎng)絡(luò)教學(xué)系統(tǒng)畢業(yè)設(shè)計(jì) (2)
- 畢業(yè)設(shè)計(jì)-學(xué)生信息管理與分析系統(tǒng)
- 畢業(yè)設(shè)計(jì)---學(xué)生成績(jī)分析系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 畢業(yè)設(shè)計(jì)---學(xué)生信息管理與分析系統(tǒng)
- 畢業(yè)設(shè)計(jì)---學(xué)生管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 97073.高校學(xué)生畢業(yè)設(shè)計(jì)管理系統(tǒng)的分析與設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論