?

淺談軟件工程在教學軟件開發中的應用

2009-01-04 09:59遲江波
關鍵詞:教學軟件C語言危機

遲江波 殷 瑋

摘要:隨著信息技術在教學應用的深入,教學軟件的需求量不斷增長。由于開發團隊及開發方法的不足,導致教學軟件不但質量良莠不齊、開發成本過高、開發周期過長,而且會出現重復開發、使用困難等問題。而基于軟件工程開發模式,可以緩解教學軟件危機,降低開發成本,提高軟件開發成功率。

關鍵詞:軟件工程教學軟件軟件危機開發模式

0引言

隨著計算機技術在教育領域的深入應用,教學軟件的需求量不斷增長,雖然理論上教學軟件的應用可以降低教師的工作量,提高教學質量,但實質上,教學軟件的消費比低、應用范圍窄、靈活性差、重復開發嚴重,不能滿足當前日益增長的教學軟件的需求。這些問題可稱之為“教學軟件危機”。該危機的出現是因為沒有正確的開發理念所造成的,要消除這些危機,就要有正確的軟件開發方法和開發模式。結合軟件工程學和已有的軟件開發經驗,我們可以從中探索出一種基于軟件工程的教學軟件開發模式,這種模式可以緩解教學軟件危機,降低開發成本,提高軟件開發的成功率和產出率。

1軟件工程的基本理論

軟件工程是指導計算機軟件開發和維護的工程學科。采用工程的概念、原理、技術和方法來開發與維護軟件,把經過時間考驗而證明正確的管理技術和當前能夠得到的最好的技術方法結合起來,以經濟地開發出高質量的軟件并有效地維護它。

軟件危機是指在計算機軟件的開發和維護過程中所遇一系列嚴重問題。包括如何開發軟件以滿足對日益增長的需求和如何維護數量不斷膨脹的已有軟件。

軟件工程借助工程的理論來指導軟件開發,大量軟件開發實例證明了采用軟件工程方法進行開發,可以消除或緩解軟件危機,提高軟件開發的成功率和產出率。

軟件方法學中使用最廣的是傳統方法學和面向對象方法學。不管采用何種軟件方法學,在軟件開發中都包括問題定義,可行性研究、需求分析、軟件設計、編碼和單元測試、

綜合測試軟件維護這幾個階段。問題定義是弄清楚“要解決的問題是什么”??尚行苑治鍪菍λx問題是否有可行通得過的解決方法。需求分析是準確地描述目標系統必須做什么,是發現、求精、建模、規格說明和復審的過程。軟件設計又分概要設計和詳細設計。概要設計是以比較抽象概括的方式提出解決的方法,詳細設計就是把解法具體化。編碼和單元測試是寫出正確的容易理解、容易維護的程序模塊。綜合測試是通過各種類型的測試使軟件達到預定的要求。軟件維護是通過各種必要的活動使系統持久滿足用戶的需求。

2基于軟件工程的教學教學軟件開發過程

教學軟件也是軟件,因此軟件工程的開發理論同樣適用,考慮其特殊性,我們必須同時結合教育學和心理學的理論進行開發。借助軟件工程成功的開發經驗,我們把教學軟件的開發分為一下幾個階段:

2.1問題定義開發者首先弄清楚要解決什么問題,即為什么要這個教學軟件和要達到的目標。比如開發《C語言程序設計》這一門課的教學軟件,這門課目前教學主用教室板書和上機練習,或用零散的課件和實例進行教學。在教室板書容量少,有些知識也講不清楚;采用零散的課件和實例教學要好些,但是由于課件零散,缺乏整體性,教師每次備課必須花大量的時間進行查找和整理,費時費力。我們開發這一門課的教學軟件就是為了解決以上這些問題。我們可以初步構思該軟件所要達到的目標。如提供教學軟件、練習和試題庫、資料和案例、問題答疑和操作幫助等。

2.2可行性分析首先對要開發的教學軟件進行市場調查,主要調以前有沒有這一門課的教學軟件,如果有,存在那些優缺點,經過分析在決定有沒有必要開發或重新開發。如果有必要開發,則需要提出各種可能實現的方案,然后針對這些方案從技術、經濟和社會因素等分析其可行性。比如開發《C語言程序設計》這門課的教學軟件,就需考慮所用到的技術能否達到開發目標。還有開發周期,開發人員配置,開發費用和版權問題等,如果一切可行就可進入下一個階段。

2.3需求分析需求分析是分析、求精、建模、規格說明和復審的過程。需求分析的第一步是了解用戶情況,發現用戶面臨的問題;第二步是通過與用戶反復交流獲得用戶的基本需求,第三步是對用戶的基本需求反復求精細化,最后得出目標系統完整、準確和具體的要求。如開發《C語言程序設計》這門課的教學軟件,首先是了解目前各門課的教學情況。

通過與學生、教師的交流,充分了解目前教與學中存在的不足,以及他們希望開發的教學軟件所能達到的效果??梢酝ㄟ^創建原型的方法征求教師和學生的意見。經過多次反復交流反復修改直到與用戶意見達成一致。寫出相應的需求報告,建立相應的模型并進行認真的審查,符合要求侯再進入下一步。

2.4課件設計首先對教學軟件進行分解,分成若干子系統也就是模塊化,比如《C語言程序設計》這門課的教學軟件按照其目標和功能我們可以劃分成以下幾個模塊(圖1):

接著下來對模塊進行細化,主要確定整個教學軟件框架和風格以及系統流程圖及偽代碼,考慮到教學軟件的特殊性,在設計模塊時還必須遵循教育學和心里學的原則,比如知識點的安排,界面風格設計等都必須考慮有利于教師的教和學生的學。

2.5收集和整理素材前期工作完成后,就進入了程序編制步驟。首先根據模塊功能及偽代碼的內容,收集相關素材,例如整理文本、橫掃圖片、創作圖像和動畫、制作片頭等。注意素材盡量做成積件式,這樣有利于提高素材的重用率,降低軟件的大小。

2.6制作合成程序員根據需求分析和界面風格,完成各自模塊的制作,也就是根據總體的框架結構和偽代碼進行編程,將確定的素材寓意制作、運用,并進行單元測試,然后把各自模塊合成進行綜合測試,還可通過試用的方法進行綜合測試,從而發現并修改存在的錯誤和不足。

2.7運行維護軟件試用正常,可以發布,轉入正常試用階段。當然由于學科是在不斷變化的,因此所開發的教學軟件也應不斷維護和修改,如及時修改所發現的錯誤和漏洞,完善存在的不足,優化用戶界面,擴展新增模塊等。

3開發人員的配置

在教學軟件的開發過程中,開發人員的配置也是至關重要的。在很多商業教學軟件不能推廣使用的原因之一就是缺乏專業教師和學生的參與。而是很多教師開發的教學軟件不能長久使用,其原因是缺乏專業的計算機開發技術,致使開發的教學軟件功能低下,很難更新和使用。因此教學軟件的開發隊伍要配置合理。一是必須有學科專家參與,他們對課程熟悉,對軟件所能提供的功能有選擇判斷能力;二是必須有計算機專家,即計算機開發技術人員。她們熟悉開發平臺,有豐富的開發經驗,能準確實現需求,完成功能的實現。當然一般還需要根據軟件的規模和開發周期來配置一定數量的開發技術人員。另外還要建立完善的開發管理制度,在教學軟件開發中學生也是不容忽視的一群開發實體,通過她們可以了解目前教學的優缺點,以及對所開發軟件的期望值,還可以同感哦他們測試所開發的軟件,幫助我們盡可能多的發現錯誤和不足。

4結語

軟件開發是一項系統工程,需要各方面互相配合,優勢互補、資源共享,進行集成化開發,產業化經營,市場化運作,來促進行業的發展。軟件開發方法是人們在長期的軟件開發和維護的過程中積累下來的寶貴經驗,我們應當把它應用到教學軟件的開發當中,只有這樣才能提高教學軟件開發的成功率和生產率,緩解或消除教學軟件危機,縮短開發周期,減少重復開發,降低生產成本,提高教學軟件的質量。

猜你喜歡
教學軟件C語言危機
“C語言程序設計”課程混合教學探索
基于C語言的計算機軟件編程技術探究
中職C語言單片機課堂教學中的趣味性探討
計算機原理中C語言的應用價值
高職高專院校計算機職業教育實踐教學創新研究
淺談多媒體教學軟件設計制作關鍵技術
虛擬仿真軟件在分析專業教學中的應用研究
高校運籌學實驗教學軟件選擇的探究
“聲”化危機
河口正陷入危機
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合