摘要:針對目前精品課程建設的重要性,該文提出了基于Web的精品課程教學平臺的設計方案,首先給出精品課程教學平臺的總體架構,然后對系統數據庫進行設計,接著介紹系統所需的關鍵技術,最后,給出了關鍵模塊的實現方法。
關鍵詞:Web;精品課程;教學平臺
中圖分類號:G434文獻標識碼:A文章編號:1009-3044(2010)05-1154-03
Design and Implementation of Education Platform for Excellent Course Construction
XU Bin
(The School of Ningxia Vocational Technology, Yinchuan 750004, China)
Abstract: According to the importance about Excellent Course Construction, this thesis proposes the education platform for Excellent Course Construction, Firstly, it presentsthe overall structure of the platform, Secondly, it analyzes database design, then some key technology are presented, in the endit elaborates the key modules implemental methods.
Key words: Web; excellent course; education platform
精品課程建設是一項獨具中國特色的工程,目前,各院校都非常重視精品課程建設,均將其列為教學質量與教學改革工程的重要組成部分,本人結合我學院精品課的實際情況,經過實際的需求分析,開發了基于Web的精品課程教學平臺(拉紅的這句話去掉)。本系統采用web架構實現,系統開發采用ASP.NET和SQL Server 2005完成,系統滿足學院學生在課余時間自由選取視頻課程進行預復習,以及課件下載,同時教師可通過論壇和學生溝通,方便快捷的解決問題。
1 總體架構設計
設計思路:架構模式采用是瀏覽器/服務器(Browser/Server),客戶端運行環境為Windows 2000/XP+IE5.5以上版本,服務器端采用Windows Server2005+IIS6.0+ASP.NET框架,后臺數據庫采用SQL Server 2005。頁面相關部分使用Dreamweaver MX設計,而網站與數據庫的連接使用ASP.NET提供的ADO技術實現,腳本語言則使用了VBScript。
通過深入的調查研究,本精品課程網站建設主要有這樣幾方面的應用需求:
1)搜索導航功能:快速瀏覽站內信息,鏈接其他頁面;
2)通過精品課程網站發布國家、地區、院校關于精品課程的政策、公告等信息;
3)具有便利的管理平臺,管理員能夠快速、高效的更新、維護精品課程數據資料;
4)在線測試答疑可以促進師生之間的交流,借助網絡,學生在課堂之外也能夠獲得學習上的幫助;
5)學生能夠便捷的通過精品課程網站查看教學視頻、下載教學課件與資料。
根據以上的需求分析,設計出精品課程網站框架如圖1。
在這個系統中,用戶的行為都是面向Web服務器的,系統的管理則是通過Web服務器對數據庫的高效訪問來實現。具體過程如下:用戶通過瀏覽器從Web服務器請求一個aspx文件后,aspx后臺程序開始運行,aspx后臺程序通過ASP.net數據庫訪問類 SQL Server的數據,并將對數據庫訪問的任何命令請示發送給數據庫服務器,然后從數據庫中接受處理結果并且產生相應的Web頁和數據送回用戶使用的瀏覽器。如果需要訪問視頻,則能通過標準.m3u格式通過http協議向用戶傳送。
2 數據庫設計
精品課程網站開發平臺的設計和實現均與數據庫是分不開的,對于這類應用系統,第一步往往就是數據庫設計。
2.1 數據表格設計
本系統采用性價比非常好的SQL Server 2005后臺數據庫,設計的數據表格有教師基本信息表、精品課程信息表、學術研究表、發表論文表、獲獎情況表、課程錄像表、教學課件表和考試樣卷表、管理員信息表、普通用戶信息表、帖子信息表和回復帖子信息表等30多個,下面簡要介紹幾個主要數據表格的設計。
1)精品課程信息:課程ID,課程名稱,課程英文名稱,,課程簡介,課程虛擬目錄,課程層次,一級學科門類,二級學科門類,所屬院系,網址,備注;
2)教師基本信息表:課程負責人ID,姓名,密碼,性別,出生日期,職稱,最終學歷,學位,職務,傳真,所在院系電話,Email,通信地址;
3)科研成果:成果ID,成果名稱,成果類型,主要參與,立項日期,鑒定情況;
4)精品課程內容:內容ID,標題,創建時間,顯示時間,發布內容,發布者。
其中,每個表格中第一個字段為主鍵。
2.1 存儲過程設計
在頻繁訪問數據庫的系統中,使用存儲過程有很多優點,本系統使用了7個存儲過程,下面以試卷中的試題自動排序為例。
Declare @num int, @Th char(10)
Set @num=l
Declare Jdpx_cursor cursor for
Select Th from TBsj where EPId=@ePid order by EQTyPeld
Open Jdpx_cursor
Feteh next from Jdpx_cursor
into @Th
While @@feteh_status=0
begin
update TBsj set Number= @num where EPId=@ePid and Th=@Th
set @num=@num+l
feteh next from Jdpx_cursor
end
close Jdpx_cursor
deallocate Jdpx_cursor
GO
在程序中只需調用這個存儲過程就可以實現自動排序的功能,這樣的方法加快運行速度,減少了用程序代碼實現該功能的時間。
3 平臺實現的關鍵技術
對視頻和音頻信息并通過流媒體技術進行處理后利用Media Player或Real Player插件嵌入Web面以供用戶來點播,對于教學內容的處理則采用制作靜態Web頁面JPEG圖片PowerPoint幻燈片或Flash動畫來實現。
3.1 ASP連接數據庫的方法
ASP需要通過ADO對象組件來訪問數據庫,ASP訪問 SQL Server數據庫的核心代碼如下:
set conn=server. createobject(“adodb. connection”)‘建立連接
dsntest=”driver={sql server}; server=服務器名; uid=用戶名; pwd=口令; database=數據庫名”
conn. open dsntest
rst=conn. execute(sqlstring)‘執行SQL命令
……
rs.t close
conn. close‘關閉連接
3.2 視頻嵌入技術
課程網站中視頻點播采用.m3u和.rm兩種格式。其中.rm格式,可在網頁中嵌入ReaPlayer ActiveX控件,設置控件參數來個性化顯示視頻。對于.m3u格式的視頻可在Dreamweaver中直接嵌入,嵌入式頁面在IE采用的是ActiveX Control技術,對Netscape Navigator是采用plug-in技術。通過兩種方式的視頻嵌入,授課過程能實現圖、文、聲、像實時同步播放,授課內容可自行控制。
3.3 交互互動技術
Asp是服務器端腳本編寫環境,可以對HTML頁、腳本命令和ActiveX組件進行組合,以創建交互的Web頁和基于Web的功能強大的應用程序。課程網站的課程反饋、作業上交、在線論壇三個交互的系統要求有后臺管理和前臺注冊,其中作業上交還要求有數據庫,需要用SQL Server數據庫技術實現。自我檢測中的選擇填空題具有實時在線檢測的功能,使用Asp技術和SQL Server可以完成。
4 關鍵模塊的實現
由于篇幅有限,本文僅重點介紹多媒體課件制作和在線測試模塊。
4.1 多媒體課件制作模塊
采用Media Player插件+Flash動畫+Web頁面模式制作多媒體課件,制作中需分別對聲音動畫和文字進行處理。
1)將需要板書的文字內容根據頁面的大小分成若干個Web頁面并且依次編號.
2)錄制聲音并將其轉換為ASF格式流式文件在這里用到的工具是Windows Media On-Demand Producer該工具的壓縮率比較高可壓縮為原來的1/24百分比達到4.26%接著還是使用該工具對聲音文件設置Marker為實現文字聲音和動畫的同步作好準備設置Marker時主要根據頁面的內容來設置并且分別將其名稱相應設為相應的編號。
3)使用Macromedia公司的FLASH 8.0制作Flash動畫分別嵌入各個Web頁面
4)使用JavaScript語言編程分別實現如下的功能:導航條功能,控制條功能,同步功能。
4.2 在線測試
在線測試是精品課程教學網站的主要部分,在線測試模塊主要功能有:考生登錄。考生考試必須給出有效身份,包括學號、姓名、專業。該功能是確認考生身份及成績所屬的重要部分;考生考試。該功能提供考生的考試形式,即是選擇模擬測試還是選擇正式考試。
為了實現隨機生成試卷,需要一個隨機數,這可以通過函數randomize實現,循環隨機產生判斷題、選擇題、填空題等各種題型的題目。隨機抽題的部分代碼如下:
Dim Sjth(Itotal-1)'設置數組存儲隨機抽取的某一題型的題號
i=0
randomize'初始化隨機數生成器
do while i a=int(rnd*(max-1+1)+1) set rst=conn.execute(“select*from Tbsj where Th=”a) If((rst(flag)<>1 and(rst(nanyi)=snan))then'抽取難度符合要求并且未被抽取的題目 Sjth(i)=a rst(flag)=1 else do'找下一個難度符合要求并且未被抽取過的題 a=int(rnd*(max-1+1)+1) set rst=conn.execute(“select*from Tbsj where Th=”b) Loop Until rst(flag)=0 Sjth(i)=a rst(flag)=1 End if i=i+1 Loop 4.3 文件上傳模塊 在本系統中,把用戶上傳的文件統一放在與服務器程序相同的一個虛擬目錄上的文件夾內,即,上傳的路徑已經確定。只是把相應的文件上傳存入該文件夾中即可。由于是先將文件的信息添加入文件數據庫,在文件庫中已設定文件名不能相同,因此此時上傳文件本身,就不會在這個文件夾中存在相同名稱的文件。 相關代碼如下: String Filepath; Filepath=Path.Combine(http://localhost/NETCourse/Integrable,Path.GetFileName(TextBox.Text)); File1.PostedFile.SaveAs(Filepath); 5 測試分析 主要采用Application Center Test(ACT)進行了負壓測試,主要測試的是用戶端。測試結果表明,預測系統至少可以同時提供150人以上同時在線考試需求,滿足了設計要求。經半年多的實際應用,本系統已基本上滿足了精品課程建設的需要,但也存在一些問題,有待于和進一步完善。 測試分析或去掉或改為:(不知妥否) 主要采用Application Center Test(ACT)進行了負壓測試,主要測試的是用戶端。測試結果表明,預測系統能夠滿足設計要求,但也存在一些問題,有待于進一步完善。 參考文獻: [1] 賈珺.動態網站設計與開發項目教程[M].北京:中國電力出版社,2009. [2] 徐磊.網頁制作與網站建設技術大全[M].北京:清華大學出版社,2008. [3] 劉婕,張琳.ASP.NET 2.0+SQL Server動態網站開發從基礎到實踐(含光盤)[M].北京:電子工業出版社,2007. [4] 朱印宏,蘇震巍.ASP.NET 3.5+SQL Server網站模塊化開發全程實錄(配光盤)[M].北京:清華大學出版社,2009.