


摘要:為了快速有效并且高質量地開發網絡課程,在明確基于開源系統的網絡課程相關概念的基礎上,結合實踐經驗,探討了基于開源系統的網絡課程開發環節中技術應用的具體策略和方法,提出了基于開源系統的軟件開發的六種技術策略。
關鍵詞:開源系統;網絡課程開發;技術應用;應用策略
0 引言
網絡課程的開發主要由兩個部分組成,一是課程的內涵建設,亦即網絡課程的內容設計;二是課程的技術應用,亦即網絡課程的程序開發。內涵建設是核心,是基礎,是網絡課程的靈魂;技術應用是必要條件,是助推器。人們認識到了網絡課程內涵建設的核心作用,都非常關注網絡課程的內涵建設,而對網絡課程技術應用的研究則顯得不足。網絡課程的設計水平參差不齊,應用效果不盡人意,對網絡課程技術應用研究的忽視是其重要的原因。基于此,筆者在大量實踐經驗的基礎上,提出了基于開源系統的網絡課程開發的技術應用策略,以期補益于網絡課程開發工作。
1 概念的界定
“網絡課程是通過網絡表現的某門學科的教學內容及實施的教學活動的總和,它包括按一定的教學目標、教學策略組織起來的教學內容和網絡教學支撐環境兩個組成部分”。基于開源系統的網絡課程則是指在技術實現上通過對源碼開放的開源系統進行二次開發所設計的網絡課程。網絡課程的技術應用策略則是指實現網絡課程開發的技術路線、手段和方法。
2 開源網絡課程中的技術策略
網絡課程在內容設計完成后,需要通過技術編程來實現。圖1為網絡課程技術開發過程結構示意圖,它描述了基于開源系統的網絡課程技術開發過程的一般結構,該結構中低階段的過程是高階段過程的基礎。從系統觀的角度而言,網絡課程開發是一個系統化的過程。一個網絡課程技術應用作為一個輸入進入到網絡課程的系統化設計(圖1中以虛線表示),而輸出則是一個特定內容特定形態的網絡課程。
2.1 開源平臺選擇策略
目前常用的開源系統的技術平臺有兩種:LAMP(Linux+Apacha+MySq1+Php)和J2EE。兩種平臺的比較如表1所示。
如何選擇適合的網絡課程開發平臺是網絡課程技術應用中的基礎。筆者認為:平臺無所謂好壞,適合的即是最好的。網絡課程應根據其所處的外部條件和環境選擇合適的平臺。具體來說,選擇網絡課程平臺所應該考慮的問題包括:
(1)學校是否能夠提供合適的硬件環境。
(2)開發人員是否具有應用該平臺的開發經驗。
(3)網絡課程的開發能夠獲得多少資金支持。
(4)網絡課程對安全性的要求如何。
(5)網絡課程需要設置統一身份認證嗎。
……
對上述問題的解決過程體現了選用網絡課程開發平臺的基本策略和方法。
2.2 開源CMS系統應用策略
內容管理系統(content Management System,簡稱CMS)是基于開源CMS系統的網絡課程開發中一個技術關鍵,它是網絡課程開發的基石,選擇合適的開源CMS系統可大大加快網絡課程開發的效率和質量。一般說來開源CMS的應用策略包括以下幾個方面。
2.2.1 根據開源版本CMS決定系統選擇
一套功能強大、成熟、穩定、完善的系統是必須經過軟件開發人員不斷改進與完善才能達到的;同時由于軟件版本的下位兼容性,因此在網絡課程開發過程中應該盡量選擇版本較高的開源CMS版本。開源軟件按照其產品穩定性又分為測試版本和穩定版本兩種。測試版本因其投放使用的時間不長,故缺陷教多;而穩定版本γ(gamnla)版CMS則更具優勢。因此在網絡課程開發中應該選擇穩定版本版CMS進行系統二次開發。
2.2.2 關注開源CMS系統的并發數量
CMS并發數是指在網站上同一時刻向服務器發送請求的用戶。網絡課程的特點在于師生在時空上的分離,雖然學習者可以在不同的時刻訪問網絡課程。考慮到學習者同時訪問某一門網絡課程很容易引起網絡課程響應的不及時甚至導致學習者無法訪問,因此,設計時應充分考慮并發數量。目前常見的提高CMS并發數量的手段包括:網頁Html靜態化、數據緩存技術、負載均衡技術等。
2.2.3 關注開源CMS的系統架構
模塊化設計和頁面設計與程序分離是應該特別關注的兩個方面。首先,CMS系統在設計實現時,應該盡量采用模塊化設計。模塊化設計可以大大增加網絡課程開發的靈活性和適應性,從而實現個性化的定制;另一方面也降低了網絡課程開發的成本,減輕了網絡課程開發的負擔。具體說來,就是要少做甚至不做網絡課程的代碼編寫工作。因此,頁面設計和程序分離的開源CMS系統是我們進行網絡課程開發的首選。
2.3 開源系統下的頁面設計策略
頁面設計直接影響到網絡課程的用戶體驗。在傳統的頁面設計中,人們大多采用Photoshop、flash等專業設計軟件。這些工具功能強大,但也同時具有較高的門檻。選用合適的工具則可以有效地降低課程開發人員設計能力的門檻并提高頁面設計效率和頁面的美感。例如,以Flash Intro and Banner Maker設計flash課程頭部文件(圖2),設計人員僅僅需要通過六個步驟的選擇即可設計出多樣而美觀的flash網絡課程頭部文件。這六個步驟為:①Size and sound(設置尺寸和聲音);②Background(設置背景圖案);③Effect(設置特效);④Text and image(設置文字和前景圖片);⑤Web links(設置超級鏈接);⑥Publish(發布影片)。筆者推薦使用頁面設計工具Flash Intro and Banner Maker進行網絡課程用戶界面的設計。
2.4 開源系統下的版本控制策略
“版本控制(Revision Control)是一種軟件工程技巧,籍以在開發的過程中,確保不同人所編輯的同一檔案都得到更新”。版本控制是網絡課程技術應用中經常容易被忽略的一個環節。由于網絡課程開發團隊協作的特點和網絡課程較高的更新頻度,在網絡課程開發過程中,應該借鑒軟件工程設計的相關方法,引入版本控制。在這方面,南京郵電大學的孫健等人在將版本控制工具軟件Subversion引入課程設計方面做出了有益的工作和探討。“應用Subversion可以將開發環境與測試環境、運行環境隔離。教師可以通過對項目倉庫的管理隨時評估代碼質量,遠程控制課程設計進度”。
版本控制工具可以有效地規范網絡課程開發過程,監督網絡課程開發進度,對高效的網絡課程開發具有積極意義。實踐證明:在網絡課程開發中引入版本控制工具是一種必要的技術應用策略,也是提高網絡課程開發效率的有效手段之一。筆者推薦引入Subversion版本控制工具到團隊化的網絡課程開發實踐中。Subversion的安裝和配置過程,可參閱相關的技術文檔。
2.5 開源系統下的Bug管理策略
Bug管理,也叫缺陷管理。在網絡課程開發過程中,缺陷的存在不可避免。網絡課程的缺陷管理,一方面是對網絡課程的響應速度、兼容性、鏈接正確性等的測試管理;另一方面是對網絡課程的交互功能、互動特性等個性化功能的測試。Bug管理工具已經成為越來越多的開發團隊必要的工具。在網絡課程中引入Bug管理工具也是成為網絡課程開發規范化的必要措施。在此,筆者推薦使用BugFree缺陷管理工具。BugFree(http://www.bugfree.com)是一個基于瀏覽器的高效Bug管理工具,其獨特的Email提醒功能對網絡課程的Bug管理而言顯得特別有效。“BugFree的開源特性也有助于技術人員專門定制適合于網絡課程開發的Bug管理系統。
2.6 維護更新策略
網絡課程維護更新是網絡課程開發完成后期高頻度的工作之一,通常通過網絡課程開源CMS的網站后臺或通過修改代碼進行代碼級別的程序維護。對于前者,應該注意網絡課程維護的周期性和分級權限的應用以提高網絡課程的質量監督和維護效率;對于后者,需要網絡課程維護人員具有一定的編碼能力。采用FrP的方式是較常見的更新方法,應特別注意將FTP的安全策略用于網絡課程維護中,例如:只給特定IP地址賦予有維護權限等。
3 結束語
我們只有努力完善網絡課程開發流程,建立網絡課程質量監督機制,樹立正確的網絡課程觀、信息技術工具觀,才能避免網絡課程的手工作坊式開發方式,才能快速高效地建立網絡課程。根據教學設計選擇恰當的技術實現手段,技術實現與教學內容的完美結合應該是網絡課程開發所追求的目標。