摘要:本文從計算機專業實踐教學的作用、特點出發,指出計算機專業實踐教學中實際存在的主要問題,并提出基于兩種教學導向的計算機專業實踐教學階段目標控制方法。在實際的教學中,兩種教學導向的有機結合可充分發揮學生的專長、挖掘學生的潛能,取得良好的教學效果。
關鍵詞:實踐教學;教學效果;教學方法;教學導向;階段目標控制
計算機專業課程,如操作系統,數據結構等,其理論性強、概念比較抽象,學生在學習過程中普遍感覺難學且乏味,缺乏趣味性。但如果在課程理論學習的同時,進行必要的課程實踐,則能夠使學生對課程所學的知識進行全面的綜合訓練,合理地應用書本上學到的知識來解決社會生活中的實際問題。因此,實踐教學不僅可使學生對專業課程的內容有直觀的感受,而且可有效地提高學生對專業課程的學習興趣。更為重要的是,課程的實踐教學過程能夠使學生不斷加深對這些理論知識的理解和體會,培養動手實踐能力,包括問題分析、系統設計、編碼的基本技能和技巧、一整套軟件的集成和測試方法以及團體協作精神。總之,實踐教學的作用巨大,它是計算機專業的教學過程不可缺少的一個環節,是實現理論與實踐相結合的最重要的一步。這其中最為關鍵的問題是選擇科學的教學方法,以提高實踐教學的效果。
本文從計算機專業實踐教學的特點和存在的基本問題出發,探索如何提高計算機專業實踐教學的教學效果,提出了一種基于導向的實踐教學的教學方法。通過這種科學的教學方法,使學生真正理解并掌握本專業的精髓。
1實踐教學的特點
計算機專業的實踐教學包括課程實驗、課程設計、生產實習以及畢業設計等,除課程實驗完成的任務相對簡單外,其他的實踐課程綜合性均相對較高。本文討論主要面向綜合性較強的實踐教學。根據我們多年的實踐教學經驗,總結出計算機專業實踐教學的幾個基本特點:
(1) 教學內容偏重實際操作。以練習為主,以教為輔,教與練結合。不像理論課的教學,偏重于介紹課程中抽象的概念和原理,實踐教學是在學生理解相關的概念、原理基礎之上,以學生動手實踐為主要內容,教師主要是給出大致的實踐目標與方法供學生在實踐過程中參考。
(2) 目的性強。實踐教學中,通常都要求學生利用已學的知識來解決一個具體問題。如操作系統中的進程管理、文件管理等問題的實現,數據結構中結合實際的應用網絡查找關鍵路徑等問題,都要求學生在實踐教學結束時提交具有較高的完整性、正確性、可靠性、一致性的系統。
(3) 學生的自主性與教師的導向性。每個大學生都是有意識的和理性的個體,其行為具有自主性的特點。在實踐教學中要充分發揮其自主性,包括實踐過程中所采用的技術路線、設計目標的內容和表現形式都有其選擇的自由。但同時,教師的導向作用是不可或缺的,主要包括學生的個體特征分析和教學目標分析。一方面,教師可針對學生個體的差異,結合計算機專業和課程的實際,針對教學內容選用適當的教學方式(如講解、討論等),根據學生的個人情況因材施教,促使能者多學,以充分發掘每個學生的潛在能力;另一方面,可有效防止學生在實踐過程中偏離了所需解決問題的本質。并通過對實踐階段性目標的把握,使實踐過程循序漸進,逐步深化呈螺旋式上升。結合學生的個人情況和一系列階段性目標控制的教學方法,達到培養學生特長,發掘學生潛力的目的。
(4) 教學時間、地點相對集中。計算機專業的理論教學的時間相對分散,便于學生慢慢消化那些相對抽象的原理和概念,而實踐教學的時間相對集中,要求學生在相對較短的時間內進行系統的、綜合的訓練,對某門課程(如操作系統課程)或專業主要課程(如畢業設計)的內容有直觀的、全面的認識。另外,與其他專業不同,計算機專業的實踐教學的地點也更加集中,一些軟件開發和硬件設計之類的實踐一般都在機房或實驗室進行(因為學生參與現場施工、布線之類的機會較少)。
2實踐教學中面對的主要問題
由于實踐教學的這些特殊特點,導致絕大數學生都認為“實踐課程難,不知如何下手”。為了使學生克服這樣的心理問題,循序漸進地進入設計狀態,通常我們都對學生的設計過程進行分階段控制,因此,教師在實踐教學中面對的主要問題是階段目標的控制。
教師對于實踐課程中每個階段目標控制的效果對最終的教學效果會產生直接的影響。計算機專業的實踐過程和軟件開發一樣,是一個具有生命周期分階段的過程。該專業的實踐過程通常分為問題分析、系統設計、編碼和測試等幾個基本階段。在實踐的每個階段都要得出最終結果的一個或幾個組成部分(以文檔資料形式或程序模塊形式存在),一個實踐結果必須有完整的配置組成。要充分認識到每個階段都是必要的,且前一個階段的完成質量對后一個階段的質量有較大的影響,不同階段的修改所付出的代價也是不同的,這種修改的代價隨著階段的深入而呈放大趨勢。因此,計算機實踐教學中階段目標的控制是教師一個非常重要的任務,良好的階段控制既可以使學生按時按質完成實踐,又可以使學生在實踐過程中少走彎路,充滿信心地去解決實踐課程中所遇到的問題。
3實踐教學中兩種教學導向
根據實踐教學中教師必須面對的主要問題,這里我們提出基于提高學生動手能力和提高學生理論研究能力兩種導向的分階段教學方法。
3.1以提高學生動手能力為導向
在實踐教學中,為切實提高計算機專業學生的動手能力,我們按照問題分析、系統設計、編碼和測試等幾個基本階段對學生進行指導,嚴格控制每個階段的進程和目標。下面以文獻[1-2]中的銀行家算法解決軟硬件資源的安全分配問題為例進行說明。
3.1.1問題分析
這個階段不是具體地解決問題,而是準確地確定“為了解決這個問題,目標系統必須做什么,它必須具有哪些功能”。要避免學生一開始就考慮問題怎么做,不進行細致的分析就考慮怎么做,思路肯定比較混亂,這必然影響學生解決問題的自信心。
這個階段要求學生結合問題,查閱相關文獻,對問題進行細致的分析。文獻閱讀分析能力是所有同學必須具備的,這個階段可以充分發揮理論學習能力強的同學(圖1中A類型和B類型的同學)的優點,通過他們帶動其他同學克服實踐課程中的畏難情緒。如資源分配問題要求學生通過分析理解產生死鎖的4個必要條件,了解實現的模擬系統應包括資源設置、進程設置、資源分配和資源動態申請等幾個方面。
4.1.2系統設計
計算機專業實踐教學的目標通常是要求學生根據相關原理設計出對應的模擬系統。在系統設計階段要求學生根據問題分析階段的結果給出解決問題的方案,且解決方案盡可能有幾種,以便通過比較選擇出一種更為合理的方案執行,并給出相應的系統總流程圖和系統的詳細流程圖等文檔資料。例如用銀行家算法實現資源分配問題,要給出相應的銀行家算法的所要使用的數據結構、算法的偽碼過程、模塊的數據流圖以及系統的流程圖。這個階段學生可充分發揮自己的自主創造性。
3.1.3編碼
在較好地完成前兩個階段后,學生就可以動手編寫程序代碼。學生可根據目標系統的性質和實驗環境,自主選擇一種高級語言將前一個階段的結果翻譯成對應的程序。在實際的實踐教學中,采用這種分階段的方法,大多數同學發現編碼實現階段不像他們想象的那么難了。這有幾方面的原因,一是通過前兩個階段的透徹分析,學生的自信心有了一定提高;二是通過對編碼詳細準確的資料的對照,達到動手能力強和理論能力強的同學互相取長補短的作用。
3.1.4集成、測試
這個階段是非常重要的一個階段,因為本階段是系統的高可靠性、正確性的保證,但往往被大多數同學們忽視。很多自稱動手能力強的同學也缺乏系統測試能力,因此,在實踐教學中,首先要告訴學生對設計的系統按照一定測試方法對系統進行測試,然后通過教師的現場測試(及相應的調試)對系統進行進一步完善。
這種分階段的教學,既能使學生掌握了系統開發的基本過程,更重要的是它能夠使學生在充分鞏固理論知識的基礎上,動手能力有很大程度的提高。
3.2以提高學生理論研究能力為導向
在實踐教學中,雖然以提高動手能力為導向的分階段教學有較好的教學效果,但仍然存在一部分同學側重于理論研究,他們有較強理論研究興趣。對于這部分同學,為充分發揮學生的主觀能動性,我們順應學生的偏好,采用不同的教學方法,以提高理論研究為導向。基于這種導向的教學方法我們也將其分為不同的幾個階段。下面以操作系統課程中的磁盤調度算法[3]研究為例進行說明。
3.2.1問題分析
對所需研究的問題做深入分析,通過查閱資料了解問題的研究意義、背景與現狀。例如對磁盤調度算法的研究,分析該算法對當前海量信息存取的意義、主要有哪些相關的算法以及它們的優缺點、時間復雜度等。包括一些經典調度算法先來先服務、最短尋道時間優先、掃描算法、LOOK算法[4]、循環掃描算法、磁盤性能模型的優化調度算法[5] 以及智能網絡磁盤調度算法[6]。
3.2.2理論創新
在完成問題的背景、現狀分析后,引導學生從某一個角度去對現有的理論進行修改或合并等,以達到新的調度算法在時間性能或空間性能上的優化,也可以對算法性能結果作理論推導研究。如對于磁盤調度算法,我們可以從基于平均尋道時間的角度去分析現有的算法,綜合應用SSTF和LOOK算法的優劣[3],給出新的算法優化策略。
3.2.3正確性驗證
對于理論創新的結果需要通過實驗(實踐過程)驗證其正確性。如果是理論推導,則需要清晰的證明,并設計實驗方案,通過實驗測試算法所涉及到的各個參數在不同情況下的數值;如果是對現有算法進行修改或合并,使時間性能或空間性能有所提高,則需要做詳細的對比實驗方案設計,通過對比實驗以圖形等形式明確給出性能提高的比例。
通過這種教學方法,在保證學生養成嚴謹的研究作風的基礎上逐步提高理論研究能力。
4結語
文章根據計算機專業實踐教學的特點,分析了計算機專業實踐教學中存在的主要問題:教師對實踐教學過程的階段控制問題。并提出以培養學生動手能力為導向和培養學生理論研究能力為導向的新型教學方法,該方法可有效避免學生在面對實踐課程時的心理懼怕問題,并給出基于兩種導向的階段目標控制方法,在實踐教學中取得較好的效果。
參考文獻:
[1] 湯子瀛. 操作系統教程[M]. 西安:西安電子科技大學出版社,2001.
[2] 張順香,張家精. 計算機操作系統教程[M].武漢:武漢大學出版社,2007.
[3] 張順香,朱廣麗. 一種基于平均尋道時間的磁盤調度優化算法[J]. 計算機應用,2009,29(4):1147-1150.
[4] Shriver E. Performance Modeling for realistic Storage Devices[D]. New York:Univ.New York,1997.
[5] 彭廣習,余勝生,周敬利.基于磁盤性能模型的優化調度算法[J]. 計算機工程,2002,28(5):20-21.
[6] 張磊,趙躍龍. 智能網絡磁盤調度算法[J]. 計算機工程,2007,33(18):97-99.
Exploring Guiding-based Teaching Methods in Computer Professional Practice
ZHANG Shun-xiang, ZHU Guang-li
(Institute of Computer Science and Engineering, Anhui University of ScienceTechnology, Huainan 232001,China )
Abstract: Start from several basic aspects of practice teaching such as role, characteristics, through deep analysis of these characteristics, we present the main existing problem in computer professional practice teaching. To solve this problem reasonably, this paper proposed a novel teaching method of stage target controlling which is based on two different principles of teaching guiding. Dynamic integration of these principles can effectively develop student’s speciality, mine student’s potentiality. It has achieved better effect in practice teaching.
Key words: practice teaching; teaching effect; teaching methods; teaching guiding; stage target controlling
(編輯:彭遠紅)