



摘要:針對高職軟件專業如何落實職業能力培養,如何采用項目化教學模式進行教學改革等問題,闡述項目化教學中項目的作用,指出如何引入教學項目,并以軟件“需求分析”教學為案例介紹教學內容的設計。
關鍵詞:軟件開發;職業能力;項目化教學;教學內容設計;項目情境
0.引言
高等職業院校不僅要傳授給學生知識,還要培養學生的操作技能。例如,軟件開發專業主要培養學生的軟件開發能力。但在傳統教學過程中,人們常常注重軟件開發知識的教學,簡單地認為能力的獲取是知識傳授后的自然結果,或者是獲得做項目的方法知識,這些都難以擺脫“知識傳授”的藩籬。僅教學生如何做項目(的知識),而不是模擬項目開發過程、展現項目開發情境,通過“任務驅動”進行項目過程的自然過渡,這些還屬于“知識教學”的范疇。
軟件知識體系復雜、層次多,包括理論知識、實踐知識,以及行動指導原則與方法等知識。另外,一些技術細節介紹也屬于知識的范疇。其實,“知識教學”的特點是容易進行“灌輸”教學,學生容易感覺枯燥。這也是傳統軟件教學效果不佳的原因之一。
1.圍繞能力培養是高職教育的趨勢
要解決傳統的重知識培養的問題就要通過教改,真正落實教育部“十六號文”提出的職業教育要“改革教學方法和手段,強化學生能力的培養”的方針。
其實,“能力”與“知識”教學的目標與方式不同。實踐證明,學科性知識教學難以滿足社會對大學畢業生能力需求的培養。高職各專業圍繞本專業的“職業能力”改革教學方式,培養學生的“能力”已經得到普遍共識,是大勢所趨。廣東科學技術職業學院軟件專業借助國家骨干高職院校建設,在這方面進行了大量有益的探索與實踐。
2.如何進行職業能力的培養
2.1能力的培養需要具體的工作情境
所謂“能力”,即“職業能力”,又稱“綜合職業能力”,是在真實工作情境中整體地解決綜合性專業問題的本領。例如,“軟件開發能力”就是能完成用戶要求的軟件開發任務,并讓用戶使用滿意。職業能力是一個綜合體系,又是個抽象的概念,需要在具體的工作活動中才能體現。所以,能力的學習與培養應在具體的工作情境中進行。
傳統的知識教學對能力的培養不足,它追求的是知識體系的完整性與系統性,難以使學生形成高的職業能力。例如,如果不在真實的項目開發情境中進行軟件開發的教與學,如果不將軟件開發整體“工作”與“活動”當做一個整體,學生就難以形成對工作的整體認識,也無法建立學習與工作的直接聯系,容易在復雜的各類知識與技術細節中不知所措,也就難以令其積極性和潛力被激活,學習效果,特別是軟件開發能力,就難以得到實際的提高。
2.2能力培養的載體——項目
圍繞能力培養改革傳統教學的關鍵是抓住能力培養的特點。如前所述,能力與真實工作情境相關,所以能力培養的特點是需要一個類似真實工作情境的教學環境。在這個教學環境中,有一個圍繞知識與能力教學的載體,通過這個載體展開的工作活動作為教學內容,這個載體就是所謂的項目。通過項目及項目工作活動,可以將復雜的軟件開發知識、技術、方法、工具、操作過程有機地組織并展現出來。
項目工作活動又稱任務操作,將各個工作活動的操作設計成完整的教學單元就是一個教學情境。教學情境就是模擬真實工作活動,使學習者產生一定的情感反應的教學環境。基于項目載體展開的教學是“十六號文”所倡導的、利于高職能力培養的“項目導向、任務驅動”教學的教學方式。
2.3項目培養與能力提升直接相關
不同教育類型采取的教學方式不同。學科性教育一般采用傳統的知識教學;而職業教育與生產實踐結合緊密,更適合采用項目化教學。由于項目具有情境性,即操作情境,可以采取情境教學,從而有利于學生的吸收與內質潛力的激活,有利于學生職業能力的培養。
但是,如何發揮項目因素在能力培養中的作用,如何落實項目化教學,選擇教學項目、設計與組織項目教學內容就成為了問題的關鍵。
3.基于項目的教學
3.1教學中的項目
所謂項目,是那些作為管理的對象,需按限定時間、費用和質量標準完成的一次性任務。簡單地說,項目可以理解為一次要完成的任務,但這個任務需要滿足一定的限定條件與要求。人們常常認為應該將實際商業項目引入到教學中,并引進經費。但實際上最好將實際項目作為職業教育的后期實施。例如,新加坡南洋理工學院的二元化項目教學,在最后一年的項目實習中才使用真實項目。在前期的基礎理論知識與基礎實踐知識教學部分,以及基礎的能力教學中,學生顯然沒有達到實施實際項目的能力。如果這時強制引入真實項目進行操作,往往不能起到很好的效果,反而會拔苗助長。
另外,教師和學校引入的實際軟件開發項目數量有限,不可能滿足所有學生的需求。其實,如果不做好前期必要的能力培養,過分強調學生開發實際項目,不僅從客觀上不能滿足所有學生的需要,也不符合學生的成長規律。
3.2教學中項目的來源
是否沒有辦法解決這兩個問題呢?答案是否定的。我們暫時不考慮項目的實際用戶與費用,通過提煉項目與任務的開發過程,可以獲取大量的教學項目。其實,從教育角度上來看,實際項目一時難以讓大多數學生參與,使大多數學生受益;同時質量也難以保證,并且容易在商務與需求方面與用戶產生糾葛,所以實際項目對廣大學生的教學作用不明顯。我們在實際教學過程中,往往糾結于做實際項目,沒有項目時盼項目,有了項目又難以做好,這就是高校在實際項目開發中常遇到的尷尬現象。
在教學過程中為了全面提高教學質量,提高學生的職業能力,可以不局限于用戶商業項目。只要能作為能力教學載體,而且是實際工作情境中明確的工作任務,就可以選擇作為項目載體。它可以是“虛擬項目”,可以用作虛擬實驗和虛擬實訓。“虛擬項目”的特點是具有靈活性,可以針對具體的“能力點”進行設計。
4.軟件開發項目化情境教學實踐
對學生軟件開發能力的培養,需進行軟件開發項目化情境教學,還要做課程建設如設計教學內容、開發教學資源等。在實踐中我們經歷了人才能力培養目標確定、項目選擇、任務分解與細化、情境設計、教學資源開發等過程,從而形成完整的項目教學框架。
4.1教學任務及作為載體的項目選擇
例如,在軟件開發與管理課程中講解需求分析的內容時,我們采用“項目導向、任務驅動”的情境教學方式,培養學生軟件需求分析所相應的能力。
需求分析有個過程,其典型工作任務包括:業務描述,用例模型建立,靜態實體模型建立,實體交互的動態模型建立,最后匯總并編寫分析報告。在教學過程中要傳授需求的概念、需求分析概念、需求分析過程、建模工具等知識,同時對應需求分析,培養學生業務分析、文字能力、建模能力及建模工具的使用能力。需求分析任務的培養目標見表1。
在選擇教學項目時,要選擇目前流行的物流信息管理系統。物流業目前非常普及,學生都有網絡購物、與物流打交道的經驗,選擇該項目學生們容易理解。我們從以前開發的物流系統進行提煉,設計適合高職學生的教學內容。
4.2教學內容的組織
傳統的教學方法常以知識的順序來組織教學內容,包括各個章、節、小節等。而項目的任務驅動教學法則以任務驅動來序化教學內容,然后再以操作情境為單元設計教學內容。
如需求分析的任務流程為:業務描述→靜態實體模型→實體交互的動態模型→需求文檔。任務驅動的教學就是以這個次序實施的。在教學過程中注意各個任務的連貫過渡,及各自需要承載的教學目標。
在教學過程中,按如下任務次序進行教學:
(1)系統業務描述,即故事講清楚,特別是各“故事點”要能理解。
(2)找出系統中的實體,即參與的實體有哪些,如何表示。
(3)找出系統實體之間的交互,即實體之間是如何活動與交互的,如何表示。
(4)需求分析規格說明,介紹需求分析編寫指南規范及案例。
4.3項目教學情境
1)業務描述。
筆者根據多年的教學經驗,感覺到目前學生的文字能力比較差,業務描述能力的鍛煉很有必要。另外,業務描述是今后需求分析的基礎,所以首先將業務描述作為一個教學情境。物流系統的業務描述就是描述“哪些部門的什么人(角色),做什么”。
在教學過程中,讓學生聯系自身的網購經驗,講故事,啟發學生逐步將故事用文字簡述,便構成了業務描述教學情境。
2)用例建模。
上述情境只是文字描述,重點是“哪些部門的什么人(角色),做什么”,這就需要用到用例模型。用例模型確定了到底有“哪些角色”,它們分別在系統中“怎么做”。
通過用用例圖的“角色”、“用例”進行教學,描述“哪些部門的什么人(角色),做什么”,便形成了用例建模的教學情境。物流系統的用例圖見圖1。
3)實體建模。
在UML中,實體建模又稱對象模型,或建立類圖。它確定了系統的靜態結構,是將來數據庫設計的基礎。類的確定很復雜,包括人和組織、物理實體、處理、事件、概念5大類。一般的教材只是簡單介紹一下規則,關于如何尋找實體的“操作情境”介紹的非常少。
根據物流系統及其文字描述,以篩選“名詞”的形式選出類與對象,如貨物、送貨員、貨物送貨單、費用結算表、入庫明細表、送貨明細表、分揀明細表等,并建立類圖。物流系統的類圖見圖2。
4)動態模型。
有了實體模型后,就可以詳細分析它們之間的交互,即建立動態模型。動態模型可以用UML的順序圖表示,見圖3。
最后將上述操作的內容,以標準文檔的形式寫成需求分析報告。
通過上述情境,需求分析的幾個重點與難點教學內容,就被有機地組織在一起,各個任務、情境之間過渡自然。而且,教學中承載了知識教學(如“需求”概念、建模工具)、能力教學(如UML畫圖能力、尋找類)、編寫項目文檔能力等。通過上述項目化教學實踐,學生更容易學習與吸收,教學效果顯著提高。
5.結語
在實際教學中,筆者對所負責的高職軟件開發與管理、高級J2EE開發技術等課程進行了項目化教學改革,如突破傳統學科式教學方式,基于項目情境設計與序化教學內容,并開發項目化教學資源。學生們普遍反映以前難以理解的軟件開發概念容易懂了,學習興趣提高,教學效果也得到顯著提高。
總之,通過項目化教學探索與實踐,筆者深深地體會到,結合本專業進行“項目導向,任務驅動”的教學改革是今后高職教育的康莊大道。