正文 項目教學中應用迭代開發方法的研究和實踐(1 / 3)

摘要: 本文主要介紹迭代式項目教學法在高職教學中的應用,引入現代軟件工程的迭代開發方法,給出迭代項目教學的設計方法和設計原則,並以Java程序設計課程為例詳細闡述實施過程,指出在實施過程中應包含的三個步驟和迭代內容,最後說明采用迭代項目教學法對培養學生編程邏輯思維、提升編程興趣、掌握編程技能產生良好的效果。

關鍵詞:迭代;項目教學;教學設計;編程邏輯;Java程序設計

在傳統的計算機教學過程中,高職類學生軟件課學習的知識麵過於龐大,且知識點分散在不同教學單元,知識點之間的銜接也不夠緊湊、不夠連貫,這不僅影響學生的學習效果,也使教師在傳授知識時缺乏整體感,這樣的教學難以培養學生發現問題、分析問題、解決實際問題的能力[1]。

為了適應社會對高職人才的需求、適應計算機課程的教學要求,針對高職學生的特點,筆者將迭代開發法用於計算機軟件課程的項目教學[2],在實踐中取得了良好的教學效果。通過在課堂教學中營造軟件項目開發環境,不斷引導學生采用多次迭代開發的方法完成一個真實項目。課程的教學內容被分解到每一次迭代中,課程的教學目標在迭代中逐步實現。在項目由簡到繁的迭代開發中,學生不僅學到了課程知識,設計出功能完善的軟件係統,同時,對實際項目開發也有了切身體驗和實踐,開發技能得到了充分的訓練。

1應用迭代開發方法進行項目教學的概述

1.1迭代開發方法

迭代是數學上的一種求解方程的方法,也叫逐次逼近法,是一種通過求近似根的序列收斂,最終得到較為精確解的過程。迭代的過程是不斷重複的,但每次迭代的初值不同。

現代軟件工程中的迭代開發法原理同樣采用多次重複開發的方式,每次遞增地實現開發任務[3],直到最終產品被完成。迭代開發中,開發任務被分解成一些更容易實現的階段性目標,每個目標有其定義明確的階段性評估標準,迭代就是為了完成給定的階段目標。通過漸進的開發過程,階段目標形成一係列功能遞增的軟件版本,在循環往複中逐步完善軟件係統。

1.2迭代開發方法在項目教學中的運用

在項目教學中采用迭代開發的方法的關鍵是根據課程目標選取一個典型而功能完善的教學項目。通過將該教學項目劃分為能夠覆蓋課程主要知識點的一係列迭代案例[4]。課堂教學中模擬軟件項目的開發流程,以迭代案例為階段目標,由淺到深、由易到難循序漸進的推進教學進度,不斷實現階段性案例,增強軟件項目的功能,最終實現軟件開發的階段目標和教學目標的同步進行直至教學任務和軟件最終版本的完成。

2迭代項目教學的設計

2.1迭代項目教學的設計要求

在計算機軟件類的項目教學中,項目要體現出迭代特征,從最初的雛形經過一係列迭代演化,由部分到整體,最終形成一個功能完整的係統。項目教學作為高職院校實踐技能教學的重要方法,不僅要滿足真實性和典型性,還要符合以下要求。

(1) 項目的可分解性。采用的教學項目可分解成多個獨立的案例,可以映射教學目標中不同教學單元的主要知識點。在整個教學過程中始終以教學項目為導向,根據項目分解的案例進行相應教學單元的教學,能夠激發學生的興趣,引導學生深入思考,啟迪學生的思維,加深教學內容的理解。

(2) 項目的迭代性。在采用的教學項目分解為獨立案例的前提下,要求多個獨立案例之間呈現出功能從弱到強的特征,隨著該順序推進教學進度,形成的案例功能越來越完善,直到課程教學任務的完成,完整的教學項目才最後實現。同時,學生通過對教學項目的親身實踐,能夠體會到知識的連貫性和螺旋上升性。

2.2迭代項目教學的設計原則

運用迭代項目教學法,要遵循如下基本原則:在宏觀層麵,案例的迭代漸進與教學單元的安排次序相對應;在微觀層麵,案例的階段目標與覆蓋了教學單元的主要知識點。設計原則如圖1所示。

3迭代項目教學方法的實施過程

本文以編程邏輯-Java程序設計教學為例,選取“超市購物管理係統”作為迭代式項目教學法的開發項目,說明在高職計算機軟件課程教學中迭代項目教學方法的實施過程。

3.1 “超市購物管理係統”教學項目功能的分析

超市購物是學生接觸的真實環境,在學生熟悉其功能的前提下讓學生自己動手開發一個超市購物管理係統,很容易引起學生的好奇,並提高其對課程的學習興趣。同時,該項目涉及編程邏輯中的核心知識要點,經分解和細化各項功能,可作為迭代開發的教學項目。

超市購物管理係統功能分解如圖2所示。

3.2編程邏輯-Java程序設計的教學目標分析

編程邏輯-Java程序設計的教學目標是:讓學生掌握基本的Java Application的基本結構,熟練運用各種運算符、表達式以及常用流程控製語句和數組的使用,注重培養學生分析問題、解決問題的能力,養成良好的編程規範,提高學生的職業素養。因此,編程邏輯-Java程序設計課程的主要教學單元是:(1)Java起步;(2)Java變量;(3)Java操作符;(4)Java表達式、語句和代碼塊;(5)Java流程控製語句;(6)Java數組。

3.3 “超市購物管理係統”與編程邏輯-Java程序設計課程的關聯