遠程輔修學生自學系統(tǒng)的分析與設計_第1頁
遠程輔修學生自學系統(tǒng)的分析與設計_第2頁
遠程輔修學生自學系統(tǒng)的分析與設計_第3頁
遠程輔修學生自學系統(tǒng)的分析與設計_第4頁
遠程輔修學生自學系統(tǒng)的分析與設計_第5頁
已閱讀5頁,還剩32頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

1、遠程輔修學生自學系統(tǒng)的分析與設計摘 要隨著科學的進步,社會的發(fā)展,利用網(wǎng)絡進行遠程教學已是教育界的一個趨勢。隨著網(wǎng)絡教育的正規(guī)化,越來越多的人傾向于通過網(wǎng)絡進行教育,如何充分發(fā)揮網(wǎng)絡在教學領域的作用,成為一個重要而迫切的問題。本論文詳細介紹了遠程輔修學生自學系統(tǒng)的開發(fā)過程,包括設計過程、關鍵技術(shù)以及其成果。在開發(fā)過程中嚴格遵守軟件工程的思想,按照需求分析、數(shù)據(jù)庫設計、概要設計、詳細設計、編碼、改進和性能優(yōu)化的步驟進行開發(fā)。該系統(tǒng)主要完成以下功能:教師維護教學課件,具體包括課件的在線設計與維護;學生選擇課程自學,并對學生自學進度進行跟蹤;學生筆記功能,學生在學習過程中可以做筆記,學生可以自己查詢

2、自己所作的筆記,教師可以查詢所有學生所作的筆記;教師清除某門課程的所有學生筆記功能等。本系統(tǒng)不僅僅是在手段上搭起一個有助于提高教學質(zhì)量、促進學生認知能力的技術(shù)平臺,也希望以此為基礎,作一個教學探索,引導師生從傳統(tǒng)的教學觀念上進行轉(zhuǎn)變。關鍵詞:互連網(wǎng);asp.net;自學;webivabstractanalysis and design of remote student self-study systemwith the advancement of science and the development of society, the application of internet has

3、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 field of teaching has become an important and urgent problem.this thesis introduced the d

4、evelopment process of the analysis and design of remote student self-study system in detail, including the design 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, essen

5、tials design, detailed design, code, improvement and the optimization of the function to carry on a development. this system is mainly to complete the following functions: maintenance of teachers teaching courseware, including the online design and maintenance of the courseware; students who choose

6、self-study courses and self-study student progress tracking; student notes function, students can take notes in the learning process and search their notes, teachers can find all the students notes; the function that teacher can clear a certain course of all students notes.this system not only is th

7、e technique terrace which takes 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 the traditional teaching idea.key words:internet;

8、 asp.net; self-study; web目 錄1緒論111 問題定義及內(nèi)容簡介112 課題調(diào)研與可行性分析1121 課題調(diào)研1122 可行性分析213 論文各章內(nèi)容介紹22需求分析321 系統(tǒng)功能需求分析422 數(shù)據(jù)流圖分析423 數(shù)據(jù)字典73系統(tǒng)設計931 系統(tǒng)的總體結(jié)構(gòu)設計932 系統(tǒng)的開發(fā)與環(huán)境配置11321 系統(tǒng)開發(fā)方法11322 系統(tǒng)環(huán)境配置124詳細設計1341 各功能模塊詳細設計13411 學生選課模塊13412 學生學習模塊14413 自學進度模塊15414 筆記管理模塊16415 教師課件維護1742 主要問題及解決方法18421 關于課程內(nèi)容的編輯18422 關于

9、文件、圖片和影像的上傳和顯示20423 關于treeview目錄樹跟數(shù)據(jù)庫的鏈接顯示23424 關于treeview目錄樹節(jié)點的添加、修改與刪除265結(jié)論及存在問題2951 系統(tǒng)特色2952 系統(tǒng)存在不足30致 謝32參考文獻341緒論隨著計算機和信息技術(shù)的發(fā)展,知識更新日益加快,已有的知識傳播途徑已經(jīng)滿足不了這種需求,迫切需要一種全新的知識傳播方式,計算機網(wǎng)絡技術(shù)的不斷成熟和進步,使得基于計算機網(wǎng)絡技術(shù)的遠程教育成為可能。由此,計算機輔助教學正在進入一個新的階段,即網(wǎng)絡教學,是學習方法上的一次具有跨時代意義的革命。11 問題定義及內(nèi)容簡介目前遠程教學平臺的開發(fā)熱點主要是集中于網(wǎng)上教學管理系統(tǒng)

10、和教學支持系統(tǒng)的開發(fā),對教學過程提供全面、基礎的支持,如學生注冊、教學傳遞、教學追蹤等。在此基礎上,進一步發(fā)展必然是提供對課程開發(fā)以及教學過程較深層次的支持。傳統(tǒng)的基于客戶機/服務器(client/server, c/s)的應用程序,除了安裝服務程序外還必須為每臺客戶機安裝客戶端應用程序,一旦程序升級或修改,每臺客戶機的程序都必須重新安裝升級,工作量極大,不利于維護。隨著計算機業(yè)的發(fā)展和internet日益成熟,采用瀏覽器/服務器(browser/server, b/s)的應用程序日漸成熟,基于瀏覽器客戶端的應用程序比傳統(tǒng)的基于c/s的應用程序有幾個優(yōu)勢,包括幾乎沒有限制的客戶端訪問和極其簡化

11、的應用程序部署和管理,即使更新一個應用程序,管理人員只需要更改一個基于服務器的程序,而不是成千上萬的安裝在客戶端的應用程序。大大簡化了維護的工作量,也無需開發(fā)客戶端的應用程序,節(jié)約了程序的開發(fā)成本,客戶端只用連上了全球互聯(lián)網(wǎng)就可以在全球各地使用程序。12 課題調(diào)研與可行性分析121 課題調(diào)研隨著信息時代的到來,人類知識更新的周期越來越短,如何使得教學和培訓能夠滿足不同地點和不同學習時間人們的需要,傳統(tǒng)的面對面教學方式已經(jīng)力不從心。在這種情況下,現(xiàn)代遠程教學應運而生,它的優(yōu)點在于使得學生在時間和地點不同的情況下能與教師進行交互并完成學習任務。計算機輔助教學(computer assisted i

12、nstruction, cai)與internet技術(shù)的有機結(jié)合,使得基于網(wǎng)絡的現(xiàn)代遠程教育成為現(xiàn)代教育的發(fā)展趨勢?;趙eb的教學,就是用萬維網(wǎng)作為教學媒體傳送教學內(nèi)容,在網(wǎng)上實施教學、管理教學并進行網(wǎng)上測試和網(wǎng)上交流。web作為教學載體,其優(yōu)勢不僅在于它是很好的內(nèi)容載體,可以隨時隨地地訪問,還在于它提供了很多交流渠道,可以促進師生之間、學生之間的充分討論,這對于提高教學質(zhì)量,促進學生高級認知能力的開發(fā)是十分重要的。而本課題旨在研究遠程輔修學生自學系統(tǒng)的分析與設計。本系統(tǒng)的設計基于實名制管理系統(tǒng),采用microsoft asp.net7平臺進行開發(fā),數(shù)據(jù)庫1使用microsoft sql s

13、erver。具體完成以下功能:1. 教師維護教學課件,具體包括課件的在線設計與維護;2. 學生選擇課程自學,并對學生自學進度進行跟蹤;3. 學生筆記功能,學生在學習過程中可以做筆記,學生可以自己查詢自己所作的筆記,教師可以查詢所有學生所作的筆記;4. 教師清除某門課程的所有學生筆記功能等。122 可行性分析1. 技術(shù)可行性本系統(tǒng)需要一臺web服務器,配置要求與客戶量成正比,對于一個學校內(nèi)使用,一臺普通的服務器即可,當前的主流服務器完全可以滿足要求。對于客戶端,只需要客戶端裝有瀏覽器即可,對機器本身沒有太高的要求,一般當前學?;騻€人電腦完全可滿足要求。對于軟件技術(shù)要求,現(xiàn)在基于b/s架構(gòu)的程序設

14、計語言已非常成熟,從早期的cgi,到現(xiàn)在的asp、jsp、php的百花齊放,再到微軟剛推出不久asp.net,為基于b/s程序設計提供了強大的技術(shù)支持。使用其中任何一門語言開發(fā)都可以滿足要求。asp.net是一種建立在通用語言上的程序構(gòu)架,能被用于一臺web服務器來建立強大的web應用程序。asp.net提供許多比現(xiàn)在的web開發(fā)模式更為強大的優(yōu)勢。web服務器軟件也很多,其中任意一個都可以勝任,數(shù)據(jù)庫可以使用sql server 20002。2. 經(jīng)濟可行性企事業(yè)單位可利用現(xiàn)有的服務器,裝上web服務器軟件,即可成為一臺web服務器,客戶只要連上internet利用自己的機器即可使用系統(tǒng),而

15、機器的配置就算不是很高也完全可以應付,這對企事業(yè)單位不構(gòu)成經(jīng)濟的負擔,系統(tǒng)成本主要集中在系統(tǒng)軟件的開發(fā)上,當系統(tǒng)投入運行后可以為企事業(yè)單位節(jié)約大量的人力、物力。所帶來的效益遠遠大于系統(tǒng)軟件的開發(fā)成本。在經(jīng)濟上完全可行。13 論文各章內(nèi)容介紹本論文圍繞整個系統(tǒng)的設計、開發(fā)展開,從一開始的調(diào)研到以后的程序設計,在本論文中都進行了詳細的描述。本論文第一章為緒論,介紹了該系統(tǒng)的問題定義及內(nèi)容簡介,研究背景與研究意義,課題調(diào)研與可行性分析。論文的第二章進行了詳細的系統(tǒng)需求分析,介紹了系統(tǒng)功能需求分析,數(shù)據(jù)流圖分析,數(shù)據(jù)字典以及系統(tǒng)業(yè)務流重組與改進。論文的第三章是系統(tǒng)的設計部分,詳細介紹了系統(tǒng)總體結(jié)構(gòu)設計

16、,系統(tǒng)數(shù)據(jù)模型設計,系統(tǒng)開發(fā)與運行環(huán)境。論文的第四章為詳細設計,在詳細設計中主要介紹了各子模塊功能、界面設計,詳細設計以及在系統(tǒng)開發(fā)過程中遇到主要問題及解決方案。論文的第五章為結(jié)論與存在問題,包括系統(tǒng)特色/優(yōu)點介紹,系統(tǒng)存在不足與改進方案。論文的最后為:致謝及參考文獻。2需求分析需求分析5簡單地說就是分析用戶的需求。需求分析是整個系統(tǒng)設計的起點,需求分析的結(jié)果是否準確地反映了用戶的實際要求,將直接影響到后面各個階段的設計,并影響到設計結(jié)果是否合理和實用。需求分析的任務是通過詳細調(diào)查現(xiàn)實世界要處理的對象(組織、部門、企業(yè)等),充分了解原系統(tǒng)(手工系統(tǒng)或計算機系統(tǒng))工作概況,明確用戶的各種需求,然

17、后在此基礎上確定新系統(tǒng)的功能。調(diào)查的重點是“數(shù)據(jù)”和“處理”,通過調(diào)查、收集與分析,獲得用戶對數(shù)據(jù)庫的如下要求:1. 信息要求指用戶需要從數(shù)據(jù)庫中獲得信息的內(nèi)容和性質(zhì)。由信息要求可以導出數(shù)據(jù)要求,即在數(shù)據(jù)庫中需要存儲哪些數(shù)據(jù)。2. 處理要求指用戶要完成什么處理功能,對處理的響應時間有什么要求,處理方式是批處理還是聯(lián)機處理。3. 安全性與完整性要求確定用戶的最終需求是一件很困難的事,這是因為一方面用戶缺少計算機知識,開始時無法確定計算機究竟能為自己做什么,不能做什么,因此往往不能準確地表達自己的需求,所提出的需求往往不斷地變化。另一方面,設計人員缺少用戶的專業(yè)知識,不易理解用戶的真正需求,甚至誤

18、解用戶的需求。因此,設計人員必須不斷深入地與用戶交流,才能逐步確定用戶的實際需求。在許多互聯(lián)網(wǎng)發(fā)達的國家,比如美國,其國內(nèi)的許多著名大學開始進行網(wǎng)絡教學,并取得了巨大的成功,在國內(nèi),雖然目前也由一些大學開始網(wǎng)絡教育的招生,但是,無論是規(guī)模還是其他的都要比美國落后一截。由于國內(nèi)網(wǎng)絡的一些限制,使得我國的網(wǎng)上教育的開展也受到了限制,但是,如果建立了寬帶網(wǎng),網(wǎng)上學習者就可利用高速網(wǎng)方便的學習,并能和老師進行實時的交互學習,這使得大家可以達到面對面教學的完整效果。21 系統(tǒng)功能需求分析本系統(tǒng)的設計基于實名制管理系統(tǒng),具體完成以下功能:1. 教師維護教學課件,具體包括課件的在線設計與維護;2. 學生選擇

19、課程自學,并對學生自學進度進行跟蹤;3. 學生筆記功能,學生在學習過程中可以做筆記,學生可以自己查詢自己所作的筆記,教師可以查詢所有學生所作的筆記;4. 教師清除某門課程的所有學生筆記功能等。22 數(shù)據(jù)流圖分析數(shù)據(jù)流圖描繪系統(tǒng)的邏輯模型,圖中沒有任何具體的物理元素,只是描繪信息在系統(tǒng)中流動和處理的情況。因為數(shù)據(jù)流圖是邏輯系統(tǒng)的圖形表示,即使不是專業(yè)的計算機技術(shù)人員也容易理解,所以是極好的通信工具。結(jié)構(gòu)化數(shù)據(jù)流程分析6采用分層的數(shù)據(jù)流程圖(data flow diagram,簡稱dfd)實現(xiàn)。數(shù)據(jù)流程分析的目的是要發(fā)數(shù)據(jù)流通中的問題。數(shù)據(jù)流程分析把數(shù)據(jù)在組織內(nèi)部的流動情況抽象地獨立出來,舍去了具

20、體組織機構(gòu)、信息載體、處理工作、物資、材料等,僅從數(shù)據(jù)流動過程中考察實際業(yè)務的數(shù)據(jù)處理模式。數(shù)據(jù)流圖是結(jié)構(gòu)化分析(structured analysis, sa)方法中用于表示系統(tǒng)邏輯模型的一種工具。它以圖形的方式描述數(shù)據(jù)在系統(tǒng)中流動和處理的過程,由于它只反映系統(tǒng)必須完成的邏輯功能,所以它是一種功能模型。數(shù)據(jù)流圖有四種基本圖形符號:“”表示數(shù)據(jù)流;“”表示加工;“=”表示數(shù)據(jù)存儲;“”表示數(shù)據(jù)的源點或終點。dfd的畫法一般遵循“由外向里”的原則,即先確定系統(tǒng)的邊界或范圍,再考慮系統(tǒng)的內(nèi)部,先畫加工的輸入和輸出,再畫加工的內(nèi)部。即:1. 識別系統(tǒng)的輸入和輸出;2. 從輸入端至輸出端畫數(shù)據(jù)流和加工

21、,并同時加上文件;3. 加工的分解“由外向里”進行分解;4. 數(shù)據(jù)流的命名,名字要確切,能反映整體;5. 各種符號布置要合理,分布均勻,盡量避免交叉線;6. 先考慮穩(wěn)定態(tài),后考慮瞬間態(tài)。如系統(tǒng)啟動后在正常工作狀態(tài),稍后再考慮系統(tǒng)的啟動和終止狀態(tài)。通過對系統(tǒng)的需求分析,系統(tǒng)的基本功能已經(jīng)大體確定,下面介紹本系統(tǒng)5個主要的數(shù)據(jù)流圖,它們分別是頂層數(shù)據(jù)流圖、0層數(shù)據(jù)流圖、1層(a)數(shù)據(jù)流圖、1層(b)數(shù)據(jù)流圖和1層(c)數(shù)據(jù)流圖。頂層數(shù)據(jù)流圖確定了系統(tǒng)的邊界,描述了系統(tǒng)的總體功能需求,學生、系統(tǒng)、老師三者的相互聯(lián)系可以從頂層數(shù)據(jù)流圖中充分體現(xiàn)出來。學生通過系統(tǒng)選擇課程進行自學,做筆記和查詢所做的筆記

22、,系統(tǒng)對學生自學進度進行跟蹤;老師可以通過系統(tǒng)進行教學課件維護,還可以查詢和清除所有學生的筆記。頂層數(shù)據(jù)流圖如圖21所示。圖21 頂層數(shù)據(jù)流圖圖22 0層數(shù)據(jù)流圖0層數(shù)據(jù)流圖是對頂層數(shù)據(jù)流圖的細化,該圖更清晰詳盡地把0層數(shù)據(jù)流圖要表達的東西體現(xiàn)了出來,功能結(jié)構(gòu)更加明確,使人一目了然。0層數(shù)據(jù)流圖主要把頂層數(shù)據(jù)流圖中的“學生自學”加工細分為6個主要的加工,它們都有各自功能,各個功能之間相互聯(lián)系,構(gòu)成了整個系統(tǒng)的主要功能。0層數(shù)據(jù)流圖如圖22所示。1層(a)數(shù)據(jù)流圖是對0層數(shù)據(jù)流圖中的“自學進度跟蹤”加工項的進一步細化,系統(tǒng)接收到自學進度信息,從自學進度記錄數(shù)據(jù)庫中調(diào)出信息數(shù)據(jù)反饋給學生;學生在學

23、習的過程中,系統(tǒng)會根據(jù)學生點擊的章節(jié)而更新自學進度情況并且保存在自學進度記錄數(shù)據(jù)庫中。1層(a)數(shù)據(jù)流圖如圖23所示。圖23 1層(a)數(shù)據(jù)流圖1層(b)數(shù)據(jù)流圖是對0層數(shù)據(jù)流圖中的“筆記管理跟蹤”加工項的進一步細化,系統(tǒng)接收到筆記信息,從筆記記錄數(shù)據(jù)庫中調(diào)出筆記信息數(shù)據(jù)反饋給學生和老師;學生通過系統(tǒng)修改筆記內(nèi)容并且保存在筆記記錄數(shù)據(jù)庫中,老師通過系統(tǒng)刪除筆記并且保存在筆記記錄數(shù)據(jù)庫中。1層(b)數(shù)據(jù)流圖如圖24所示。圖24 1層(b)數(shù)據(jù)流圖1層(c)數(shù)據(jù)流圖是對0層數(shù)據(jù)流圖中的“課件維護”加工項的進一步細化,老師通過系統(tǒng)可以進行新增課程、添加章節(jié)、插入章節(jié)、修改章節(jié)和刪除章節(jié)的操作,并且把

24、維護后的信息保存在課件庫中。1層(c)數(shù)據(jù)流圖如圖25所示。圖25 1層(c)數(shù)據(jù)流圖23 數(shù)據(jù)字典數(shù)據(jù)字典5是對在數(shù)據(jù)流圖中每一個命名的圖形元素均給予定義,其內(nèi)容有圖形元素的名字、別名或編號、分類、描述、定義、位置等,是系統(tǒng)分析階段的重要文檔,它清楚地定義與詳細地解釋了數(shù)據(jù)流程圖上不能詳細表達的內(nèi)容,同時它也是同用戶溝通的工具。數(shù)據(jù)字典是為了數(shù)據(jù)流圖中的每個數(shù)據(jù)流、文件、加工,以及組成數(shù)據(jù)流或文件的數(shù)據(jù)項做出說明,其中對每個加工的描述稱為“小說明”,也可稱為“加工邏輯說明”。數(shù)據(jù)字典是關于數(shù)據(jù)的信息的集合,也就是對數(shù)據(jù)流圖中包含的所有元素的定義的集合。任何字典最主要的用途都是供人查閱對不了解

25、的條目的解釋,數(shù)據(jù)字典的作用也正是在軟件分析和設計的過程中給人提供關于數(shù)據(jù)的描述信息。數(shù)據(jù)流圖和數(shù)據(jù)字典共同構(gòu)成系統(tǒng)的邏輯模型,沒有數(shù)據(jù)字典數(shù),數(shù)據(jù)流圖就不嚴格;反之,沒有數(shù)據(jù)流,數(shù)據(jù)字典也難于發(fā)揮作用。只有數(shù)據(jù)流圖和對數(shù)據(jù)流圖中每個元素的精確定義放在一起,才能共同構(gòu)成系統(tǒng)的規(guī)格說明。數(shù)據(jù)字典最重要的用途是作為分析階段的工具。在數(shù)據(jù)字典中建立的一組嚴密一致的定義有助于改進分析員和用戶之間的通信,因此將消除許多可能的誤解。對數(shù)據(jù)的這一系列嚴密一致的定義,也有助于改進在不同的開發(fā)人員或不同的開發(fā)小組之間的通信。如果要求所有開發(fā)人員都根據(jù)公共的數(shù)據(jù)字典描述數(shù)據(jù)和設計模塊,則能避免許多麻煩的接口問題。

26、數(shù)據(jù)字典中包含的每個數(shù)據(jù)元素的控制信息是很有價值的。因為列出了使用一個給定的數(shù)據(jù)元素的所有程序(或模塊),所以很容易估計改變一個數(shù)據(jù)將產(chǎn)生的影響,并且能對所有受影響的程序或模塊做出相應的改變。下面是本系統(tǒng)的詳細數(shù)據(jù)字典。表21 數(shù)據(jù)存儲條目描述表數(shù)據(jù)存儲名稱數(shù)據(jù)組成說明自學進度記錄數(shù)據(jù)庫自學進度記錄數(shù)據(jù)庫學生id課程名稱章節(jié)名稱記錄了最后一次所學習的課程章節(jié)的名稱筆記記錄數(shù)據(jù)庫筆記記錄數(shù)據(jù)庫學生id筆記內(nèi)容記錄了學生在自學過程中所做的筆記內(nèi)容課件庫課件庫課程名稱章節(jié)名稱章節(jié)內(nèi)容存儲了課件的內(nèi)容數(shù)據(jù)存儲的條目3主要描述了數(shù)據(jù)存儲的結(jié)構(gòu),以及相關的數(shù)據(jù)流、處理邏輯等。上表主要描述了自學進度記錄數(shù)據(jù)

27、庫、筆記記錄數(shù)據(jù)庫和課件庫這三個主要數(shù)據(jù)庫的數(shù)據(jù)組成以及對其功能的說明。表22 自學進度信息數(shù)據(jù)表字段名屬性名數(shù)據(jù)類型與長度說明student_id學生idinteger(4)學生用戶的唯一標識course_id課程idinteger(4)課程的唯一標識chapter_id章idinteger(4)章的唯一標識section_id節(jié)idinteger(4)節(jié)的唯一標識自學進度信息數(shù)據(jù)表主要記錄了自學進度的詳細信息,它保存到了根節(jié)點,因此自學進度可以跟蹤查詢到根節(jié)點中去,而其中學生id是該表中的主鍵,因為每個學生有各自不同的自學進度信息。由于學生的自學進度會隨著學生自學而不斷變化,所以該表中的信

28、息也會跟著不斷的產(chǎn)生變化。表23 筆記信息數(shù)據(jù)表字段名屬性名數(shù)據(jù)類型與長度說明student_id學生idinteger(4)學生用戶的唯一標識note_id筆記idinteger(4)筆記的唯一標識note筆記內(nèi)容char(500)具體筆記內(nèi)容筆記信息數(shù)據(jù)表主要記錄了學生筆記的詳細信息,每個學生都可以有自己的筆記,可以保存多份筆記。所以學生id是該表中的主鍵。表24 課件信息數(shù)據(jù)表字段名屬性名數(shù)據(jù)類型與長度說明course_id課程idinteger(4)課程的唯一標識chapter_id章idinteger(4)章的唯一標識section_id節(jié)idinteger(4)節(jié)的唯一標識chap

29、ter章節(jié)內(nèi)容char(8000)具體章節(jié)內(nèi)容課件信息數(shù)據(jù)表主要記錄了課件的詳細信息,該數(shù)據(jù)庫與遠程輔修實名制用戶管理系統(tǒng)的課件庫相聯(lián)系,因為其中保存了大量的重要數(shù)據(jù),所以是幾個表中最為重要的一個,課件庫中的信息會隨課件的維護而不斷變化更新,其中課程id是該表中的主鍵,不同的課程有著不同的章節(jié)內(nèi)容。3系統(tǒng)設計系統(tǒng)設計工作應該自頂向下地進行。首先設計總體結(jié)構(gòu),然后再逐層深入,直至進行每一個模塊的設計。總體設計主要是指在系統(tǒng)分析的基礎上,對整個系統(tǒng)的劃分、機器設備(包括軟、硬設備)的配置、數(shù)據(jù)的存貯規(guī)律以及整個系統(tǒng)實現(xiàn)規(guī)劃等方面進行合理的安排。31 系統(tǒng)的總體結(jié)構(gòu)設計經(jīng)過對本系統(tǒng)的分析,為完善本系

30、統(tǒng)的功能主要添加了以下幾個功能模塊:學生選課模塊、學生學習模塊、自學進度模塊、筆記管理模塊和教師課件維護模塊。其中,筆記管理模塊又細分為兩個至模塊,分別是學生筆記管理模塊和教師筆記管理模塊。各個模塊都有其自身的功能,其中生選課模塊、學生學習模塊、自學進度模塊、自學進度模塊和筆記管理模塊為學生主模塊,而筆記管理模塊和教師課件維護模塊為教師主模塊。教師課件維護模塊又細分了4個小模塊,分別為新增章節(jié)、修改章節(jié)、刪除章節(jié)和插入章節(jié)。模塊與模塊之間緊密聯(lián)系。其具體的功能模塊圖如圖31所示。圖31 學生自學系統(tǒng)功能模塊圖表31 各功能模塊說明表模塊名稱功能說明學生選課模塊學生根據(jù)自己要求選取所要學習的課程

31、學生學習模塊學生可以觀看所選取的課程的內(nèi)容進行學習自學進度模塊記錄了學生最后一次所學習的課程的章節(jié),以便學生可以跟蹤學習進度,學習進度隨學生學習情況而更新筆記管理模塊學生在學習過程中可以做筆記,對筆記進行修改刪除,教師可以觀看學生所做的筆記,并且可以刪除筆記教師課件維護教師可以新增課程內(nèi)容,對課程進行修改、刪除等維護工作32 系統(tǒng)的開發(fā)與環(huán)境配置321 系統(tǒng)開發(fā)方法asp、php、jsp、asp.net這是當前比較流行的四種web網(wǎng)站編程語言。asp8全名active server pages,是一個web服務器端的開發(fā)環(huán)境,利用它可以產(chǎn)生和執(zhí)行動態(tài)的,互動的,高性能的web服務應用程序。as

32、p采用腳本語言vbscript/javascript)作為自己的開發(fā)語言。php是一種跨平臺的服務器端的嵌入式腳本語言。它大量地借用c、java和perl語言的語法,并耦合php自己的特性,使web開發(fā)者能夠快速地寫出動態(tài)產(chǎn)生頁面。它支持目前絕大多數(shù)數(shù)據(jù)庫,而且你可以不受限制地獲得源碼,甚至可以從中加進你自己需要的特色。jsp(java server page)是sun公司推出的新一代網(wǎng)站開發(fā)語言,sun公司借助自己在java上的不凡造詣,將java從java應用程序和java applet之外,又有新的碩果,就是jsp。jsp可以在serverlet和javabean的支持下,完成功能強大的

33、站點程序。asp.net是一種建立在通用語言上的程序構(gòu)架,能被用于一臺web服務器來建立強大的web應用程序。asp.net提供許多比現(xiàn)在的web開發(fā)模式強大的優(yōu)勢。三者都提供在html代碼中混合某種程序代碼,由語言引擎解釋執(zhí)行程序代碼的能力。在asp、php、jsp環(huán)境下,html代碼主要負責描述信息的顯示樣式,而程序代碼則用來描述處理邏輯。普通的html頁面只依賴于web服務器,而asp、php、jsp頁面需要附加的語言引擎分析和執(zhí)行程序代碼。程序代碼的執(zhí)行結(jié)果被重新嵌入到html代碼中,然后一起發(fā)送給瀏覽器。asp、php、jsp三者都是面向web服務器的技術(shù),客戶端瀏覽器不需要任何附加

34、的軟件支持。本系統(tǒng)的開發(fā),使用asp.net語言,asp.net是建立在公共語言運行庫上的編程框架,可用于在服務器上生成功能強大的web應用程序。與以前的web開發(fā)模型相比,asp.net提供了數(shù)個重要的優(yōu)點:1. 增強的性能。asp.net是在服務器上運行的編譯好的公共語言運行庫代碼。與被解釋的前輩不同,asp.net可利用早期綁定、實時編譯、本機優(yōu)化和盒外緩存服務。這相當于在編寫代碼行之前便顯著提高了性能。2. 世界級的工具支持。asp.net框架補充了visual studio集成開發(fā)環(huán)境中的大量工具箱和設計器。wysiwyg編輯、拖放服務器控件和自動部署只是這個強大的工具所提供功能中的

35、少數(shù)幾種。3. 威力和靈活性。由于asp.net基于公共語言運行庫,因此web應用程序開發(fā)人員可以利用整個平臺的威力和靈活性。.net框架類庫、消息處理和數(shù)據(jù)訪問解決方案都可從web無縫訪問。asp.net也與語言無關,所以可以選擇最適合應用程序的語言,或跨多種語言分割應用程序。另外,公共語言運行庫的交互性保證在遷移到asp.net時保留基于com的開發(fā)中的現(xiàn)有投資。4. 簡易性。asp.net使執(zhí)行常見任務變得容易,從簡單的窗體提交和客戶端身份驗證到部署和站點配置。例如,asp.net頁框架使您可以生成將應用程序邏輯與表示代碼清楚分開的用戶界面,和在類似visual basic的簡單窗體處理

36、模型中處理事件。另外,公共語言運行庫利用托管代碼服務(如自動引用計數(shù)和垃圾回收)簡化了開發(fā)。5. 可管理性。asp.net采用基于文本的分層配置系統(tǒng),簡化了將設置應用于服務器環(huán)境和web應用程序。由于配置信息是以純文本形式存儲的,因此可以在沒有本地管理工具幫助的情況下應用新設置。此“零本地管理”哲學也擴展到了asp.net框架應用程序的部署。只需將必要的文件復制到服務器,即可將asp.net框架應用程序部署到服務器。不需要重新啟動服務器,即使是在部署或替換運行的編譯代碼時。6. 可縮放性和可用性。asp.net在設計時考慮了可縮放性,增加了專門用于在聚集環(huán)境和多處理器環(huán)境中提高性能的功能。另外

37、,進程受到asp.net運行庫的密切監(jiān)視和管理,以便當進程行為不正常(泄漏、死鎖)時,可就地創(chuàng)建新進程,以幫助保持應用程序始終可用于處理請求。7. 自定義性和擴展性。asp.net隨附了一個設計周到的結(jié)構(gòu),它使開發(fā)人員可以在適當?shù)募墑e“插入”代碼。實際上,可以用自己編寫的自定義組件擴展或替換asp.net運行庫的任何子組件。實現(xiàn)自定義身份驗證或狀態(tài)服務一直沒有變得更容易。8. 安全性。借助內(nèi)置的windows身份驗證和基于每個應用程序的配置,可以保證應用程序是安全的。322 系統(tǒng)環(huán)境配置根據(jù)系統(tǒng)的開發(fā)目標,原則和項目需求,我選擇了用microsoft公司windows xp professio

38、nal sp2作為操作系統(tǒng)平臺,microsoft visual studio 200520作為系統(tǒng)的編譯軟件,microsoft sql server 2000作為后端數(shù)據(jù)庫服務器軟件。表32 系統(tǒng)開發(fā)軟件環(huán)境配置表需求名稱詳細要求數(shù)據(jù)庫sql sever 2000操作系統(tǒng)windows xp professional sp2開發(fā)語言c#語言9瀏覽器internet expore6.0編譯軟件microsoft visual studio 2005其他microsoft .net framework 1.1表33 系統(tǒng)運行硬件配置表需求名稱詳細要求計算機類型硬盤容量最少為1g以上,586以上

39、的微機內(nèi)存需求最低內(nèi)存128m表34 系統(tǒng)運行網(wǎng)絡配置表需求名稱詳細要求單機模式即服務器和客戶端在一臺計算機上百兆模式計算機網(wǎng)絡的速度為百兆千兆模式計算機網(wǎng)絡速度為千兆4詳細設計進行了系統(tǒng)的總體設計后即可在此基礎上進行系統(tǒng)的詳細設計了,即各種輸入、輸出、處理和數(shù)據(jù)存儲等的詳細設計。詳細設計的目的是為軟件結(jié)構(gòu)圖中的每個模塊確定采用的算法和數(shù)據(jù)結(jié)構(gòu),用某種選定的表達式工具給出清晰的描述。詳細設計是軟件開發(fā)的第二階段,它要求在概要設計的基礎上,考慮“怎樣實現(xiàn)軟件系統(tǒng),直到系統(tǒng)中的每個模塊給出足夠詳細的過程性描述”,這些描述通常用表達式工具來表示。詳細設計是編碼的先導,這個階段所產(chǎn)生的設計文檔的質(zhì)量將

40、直接影響下一階段程序的質(zhì)量。這一階段的主要任務是編寫軟件的“詳細設計說明書”,并要為每個模塊設計出一組測試用例,以便在編碼階段對模塊代碼進行預定的測試。41 各功能模塊詳細設計411 學生選課模塊這個模塊所實現(xiàn)的功能比較簡單,就是學生根據(jù)已有的課程進行選擇學習,首先學生由遠程輔修實名制系統(tǒng)登錄進入。當學生選擇課程后自動會跳轉(zhuǎn)到該課程的學習頁面,學習頁面記錄了課程的具體內(nèi)容,學生可以就該課程進行學習。已有的課程庫是與遠程輔修實名制用戶系統(tǒng)中的課程設置數(shù)據(jù)庫相關聯(lián)。圖41 學生選課流程圖412 學生學習模塊圖42 學生學習流程圖當學生選取了所要進行學習的課程后就進入到了該課程的學習頁面,在該頁面學

41、生可以根據(jù)自身需要點擊所要學習的章節(jié)進行學習,可以選擇自學進度跟蹤學習則會跳轉(zhuǎn)到上一次學習的章節(jié)頁面,在學習的過程中可以做筆記記錄。當學生學習調(diào)用課件的內(nèi)容時,系統(tǒng)首先從數(shù)據(jù)庫中讀取該課件內(nèi)容的地址,然后根據(jù)該地址讀取相應的文件,顯示出來。413 自學進度模塊asp.net引入了新的功能,您只需對頁面和應用程序啟用此功能,就可以查看有關單個asp.net頁請求的診斷信息。這項稱為跟蹤的功能還允許您在代碼中直接寫出調(diào)試語句,而不必在將應用程序部署到成品服務器后從應用程序中移除它們。您可以在頁面中寫出變量或結(jié)構(gòu),斷言是否滿足某個條件,或者只是跟蹤通過頁面或應用程序的執(zhí)行路徑。asp.net包括tr

42、ace對象15(與response、request或context對象類似),該對象允許您編寫當啟用頁或整個應用程序的跟蹤時出現(xiàn)的調(diào)試語句。asp.net使用tracecontext類來存儲有關請求的信息、它的控件層次結(jié)構(gòu)和跟蹤信息。跟蹤信息包括頁請求的某些生命周期階段以及您選擇包括的任何自定義語句。tracecontext類可通過page.trace屬性用于web窗體頁。通過擴展control類創(chuàng)建自定義asp.net服務器控件時,可以使用control.context.trace語法通過control.context屬性訪問tracecontext。在頁中將自定義跟蹤消息寫入跟蹤記錄:1.

43、 在頁的代碼聲明塊或代碼隱藏類中,使用trace屬性調(diào)用tracecontext方法之一。2. 為跟蹤語句指定可選的category參數(shù)??梢允褂迷擃悇e對所顯示的跟蹤語句進行排序。3. 為跟蹤語句指定message參數(shù)。這可以是字符串或方法。4. 指定可選的errorinfo參數(shù),該參數(shù)包含有關頁中任何錯誤的信息。asp.net 2.0允許通過代碼在tracefinished事件14里來訪問每個請求的跟蹤信息。tracefinished事件是由tracecontext對象引發(fā),用于在收集完所有請求信息后公開跟蹤消息??梢岳么耸录Ω櫺畔⑦M行不同的輸出。通過page.trace屬性或cont

44、rol.context屬性可以使用tracecontext類。前者在開發(fā)asp.net頁時可用。后者在要將跟蹤語句包括在自定義服務器控件或要從頁以外(如global.asax文件)包括跟蹤語句時可用。以下代碼就是用程序輸出跟蹤信息% page language=c# %script runat=serverprotected void page_load(object sender, system.eventargs e)trace.tracefinished+=new tracecontexteventhandler(ontracefinished);trace.write(自定義類別,自定

45、義跟蹤消息);private void ontracefinished(object sender,tracecontexteventargs e)foreach(tracecontextrecord tcr in e.tracerecords)response.write(string.format(li跟蹤類別:0跟蹤消息:1, tcr.category,tcr.message);/script414 筆記管理模塊筆記管理模塊主要包括有兩個不同的模塊,一個是作用于學生筆記維護頁面,另一個作用于老師筆記維護頁面。圖43 學生筆記維護流程圖學生筆記維護頁面包含了對學生筆記添加、修改、刪除這些基

46、本的功能,學生可以通過這些功能對筆記進行相關的設置,在進行相關設置的過程中會彈出與之相關的對話框,由用戶選擇是否確定操作。學生筆記維護流程可參看圖43。老師筆記維護界面不僅包含了學生筆記維護頁面所含有的這些基本功能,還增加了個查詢功能,老師可以根據(jù)學生學號、學生姓名或者學生所在班級進行準確查詢,查詢班級可以批量地列出班級學生的所有筆記,這樣老師可以方便地刪除整個班級的學生的筆記,不用一個一個的刪除,免去了許多不必要的繁冗操作。老師也可以點擊查看每個學生的筆記或者進行相關的修改、刪除工作。當用戶執(zhí)行操作時,系統(tǒng)即對相應的數(shù)據(jù)庫進行操作,處于便于維護、安全、執(zhí)行效率等因素的考慮,筆記的內(nèi)容存放于文

47、件中,數(shù)據(jù)庫中存放了文件所在的路徑。老師筆記維護流程可參看圖44。圖44 教師筆記維護流程圖415 教師課件維護課件的制作與維護,也就是相當于教師進行備課。教師對相關課程的每一章、每一節(jié)進行備課,并在需要時對其進行修改。通過該模塊,老師可以在總系統(tǒng)中添加課件,并對課件的內(nèi)容進行編輯、修改、插入、刪除等操作,對課件的編輯可以通過本系統(tǒng)提供的可視化編輯器進行編輯,并且可以在內(nèi)容中插入圖像、動畫等。課件內(nèi)容的圖片資料由系統(tǒng)數(shù)據(jù)庫統(tǒng)一維護,圖片上傳至服務器時,有專門的圖片表記錄了圖片所在的位置、所在的章節(jié)、所在的課程等信息,并對其重新命名,以防止圖片名稱的沖突。當用戶登錄后,系統(tǒng)根據(jù)用戶名,從用戶表中

48、查找用戶的權(quán)限,根據(jù)用戶的權(quán)限,進入與用戶相關的權(quán)限操作界面。界面提供了實現(xiàn)這些功能的可視化環(huán)境。當用戶執(zhí)行操作時,系統(tǒng)即對相應的數(shù)據(jù)庫進行操作,處于維護方便、安全、執(zhí)行效率等因素的考慮,課件的內(nèi)容存放于文件中,數(shù)據(jù)庫中存放了文件所在的路徑。教師課件維護流程可參看圖45。圖45 教師課件維護流程圖42 主要問題及解決方法421 關于課程內(nèi)容的編輯課程內(nèi)容不僅要有靈活多樣的格式,而且還要能表現(xiàn)生動活潑的圖像和動畫,當然許多的編輯器都能夠?qū)崿F(xiàn)這個功能,比如word等。本系統(tǒng)使用了dotnettextbox v3.0所見即所得編輯器控件for asp.net 2.0,該版本插件是基于asp.net

49、2.0技術(shù)重寫控件核心架構(gòu),不僅運行性能更高效,也可實現(xiàn)更多強大的功能。該插件不僅有如word中的編輯功能,還可以上傳圖片,支持添加文字水印、圖片水印、生成縮略圖,上傳多媒體文件支持自動播放??丶菔卷撁妫喉撁婕皏isual studio 2005調(diào)用控件的方法:1.直接在aspx頁面引用控件的話,請將dotnettextbox.dll復制到頁面所在項目的bin目錄下,并在頁面頂部添加:2.在需要加入控件的地方添加:下面介紹比較主要的功能配置說明,配置文件如下:justifyleft將當前選中區(qū)所在格式化塊左對齊。justifycenter將當前選中區(qū)在所在格式化塊置中。justifyrigh

50、t將當前選中區(qū)所在格式化塊右對齊。insertorderedlist切換當前選中區(qū)是編號列表還是常規(guī)格式化塊。insertunorderedlist換當前選中區(qū)是項目符號列表還是常規(guī)格式化塊。outdent減少選中區(qū)所在格式化塊的縮進。indent增加選中文本的縮進。undo撤消。redo重做。delete刪除當前選中區(qū)。cut將當前選中區(qū)復制到剪貼板并刪除之。copy將當前選中區(qū)復制到剪貼板。paste用剪貼板內(nèi)容覆蓋當前選中區(qū)。printer打開打印對話框以便用戶可以打印當前頁。bold切換當前選中區(qū)的粗體顯示與否。italic切換當前選中區(qū)斜體顯示與否。underline切換當前選中區(qū)的

51、下劃線顯示與否。inserthorizontalrule用水平線覆蓋當前選中區(qū)。insertfile上傳文件。insertimage上傳圖像文件。insertmedia上傳影像文件。createlink創(chuàng)建網(wǎng)頁鏈接。table表格設置。以下是插件編輯器的界面截圖圖46 插件編輯器422 關于文件、圖片和影像的上傳和顯示asp.net 2.0提供了fileupload控件允許將文件上載到服務器。它顯示一個文本框控件和一個瀏覽按鈕,該按鈕允許用戶選擇要上載到服務器的文件。用戶通過在控件的文本框中輸入文件在本地計算機上的完全限定路徑來指定要上載的文件?;蛘?,也可以通過單擊“browse”(瀏覽)按鈕

52、,然后在“choose file”(選擇文件)對話框中定位文件來選擇文件。對所上載文件的保存位置,沒有固有限制。但是,若要保存文件,asp.net進程必須具有在指定位置創(chuàng)建文件的權(quán)限。此外,還可能將應用程序配置為要求使用絕對路徑(而不是相對路徑)來保存文件,這是一種安全措施。fileupload控件18不會在用戶選擇了待上載文件后自動將該文件保存到服務器上。必須顯式提供一個控件或機制來允許用戶提交指定的文件。使用fileupload控件,用戶可能上載潛在有害的文件,這包含腳本文件和可執(zhí)行文件。無法預先限制用戶可以上載的文件。如果希望限制用戶可以上載的文件的類型,則必須在上載文件后檢查文件特征。而本系統(tǒng)直接利用了插件中的上傳功能,這個功能跟fileupload控件功能上大致相同。下面介紹比較主要的功能配置說明,配置文件如下:20480設置上傳文件夾的最大可用空間。1024設置上傳文件單個的最大

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論