一、《軟件工程》課程特點及其不足
《軟件工程》是高職高專計算機軟件及相關(guān)專業(yè)中的一門核心課程。主要介紹軟件開發(fā)過程中用到的原理、方法及工具,包括支持軟件分析、軟件開發(fā)和軟件維護的理論、方法、技術(shù)標準及計算機輔助工具和環(huán)境等。
如何在高職高專院校中更好的實施這門課程的教學(xué),緊密結(jié)合國家信息化人才培養(yǎng)需求,正確把握軟件工程領(lǐng)域的發(fā)展趨勢,發(fā)揮自身學(xué)科優(yōu)勢,突出能力培養(yǎng),使計算機軟件專業(yè)的學(xué)生切實具備軟件工程的實踐能力,是擺在我們面前的一項緊迫課題。但該課程內(nèi)容抽象,總結(jié)性的內(nèi)容多,條條框框較多,不太容易講解,學(xué)生學(xué)習(xí)起來也感到內(nèi)容空洞、枯燥乏味、難學(xué)。
因此要想將該課程真的講得通俗,讓學(xué)生易于接受又能達到相應(yīng)的教學(xué)效果,必須對該課程進行改革,采用案例教學(xué)和研究性教學(xué)模式,突出實踐環(huán)節(jié),培養(yǎng)學(xué)生開發(fā)計算機軟件系統(tǒng)的實際能力。
二、實踐教學(xué)改革的思路
1.依據(jù)培養(yǎng)對象,因材施教
高等職業(yè)技術(shù)教育是一種特殊類型的高等教育。在傳授基本理論和基本知識的同時強調(diào)基本素質(zhì)、基本技能和基本方法的培養(yǎng),專業(yè)理論以培養(yǎng)技術(shù)應(yīng)用能力為主線,具有較強的針對性和實用性。培養(yǎng)目標不僅要給學(xué)生傳授知識技能,而且要培養(yǎng)具有創(chuàng)業(yè)和創(chuàng)新精神的人,進行以人為本的教育,培養(yǎng)學(xué)生勞動道德、技術(shù)操作、集體合作和創(chuàng)業(yè)能力,傳授人文價值觀。
2.按培養(yǎng)目標,對課程進行整合
現(xiàn)有的《軟件工程》教材中對具體方法的介紹一般以面向過程的結(jié)構(gòu)化方法為重點,而面向?qū)ο蟮某绦蛟O(shè)計方法中的UML和ROSE發(fā)展很快。講授時對課程中純理論部分適當(dāng)簡略,注重與有關(guān)課程的有機結(jié)合,重點介紹軟件系統(tǒng)分析、設(shè)計、實施、運行與維護的主要步驟、方法,并通過課程設(shè)計,讓學(xué)生自己經(jīng)歷軟件開發(fā)的每一步,選擇適當(dāng)?shù)拈_發(fā)方法,分組完成一個實用的小型計算機應(yīng)用系統(tǒng)的開發(fā)工作。
針對學(xué)生實際應(yīng)用了解較少的特點,可將有關(guān)典型應(yīng)用(如學(xué)校信息系統(tǒng)、ERP)等內(nèi)容有機的插入相應(yīng)的章節(jié),這樣不僅可以幫助學(xué)生理解課程有關(guān)知識,也可以提高學(xué)生的學(xué)習(xí)興趣,加深對相關(guān)知識的理解,為以后繼續(xù)提高打下基礎(chǔ)。
3.貫穿軟件工程系列課程的案例教學(xué)
《軟件工程》屬于基于項目的課程,模擬工業(yè)界典型項目,以小組作業(yè)、口頭報告、正式評審等形式,讓學(xué)生在整個項目中承擔(dān)不同的角色,構(gòu)筑立體化的互動教學(xué)平臺。將真實系統(tǒng)和項目作為學(xué)習(xí)案例,從軟件工程的基礎(chǔ)入手,讓學(xué)生實際運用他們所學(xué)過的知識和技能,模擬案例提出相應(yīng)階段的問題,并給出解決方案,真正使學(xué)生體會和做到學(xué)以致用。
這種帶著明確的實踐任務(wù),按照階段劃分、強調(diào)文檔等系統(tǒng)工程的思想,采用理論與實踐相結(jié)合的教學(xué)方法,使學(xué)生既了解了軟件開發(fā)的基礎(chǔ)性、共性知識,又掌握實際開發(fā)方法的應(yīng)用。
4.培養(yǎng)研究性學(xué)習(xí)、團結(jié)協(xié)作的精神
由于各方面客觀原因,本課程要求的學(xué)生知識結(jié)構(gòu)、課程設(shè)計、實訓(xùn)條件等往往達不到理想程度,給教學(xué)帶來不便。在教學(xué)中應(yīng)有意識地要求學(xué)生學(xué)會自主性學(xué)習(xí)、研究性學(xué)習(xí)。老師給學(xué)生一些方向性指導(dǎo),讓學(xué)生自己去學(xué)習(xí)、提高。鼓勵學(xué)生用多種開發(fā)工具,不僅有助于項目的開展,更加強了學(xué)生的學(xué)習(xí)自信心和自學(xué)能力。
在軟件設(shè)計過程中,不僅要求每個成員的個人能力,更強調(diào)團隊合作精神。小組成員的組合以及每個成員的分工均由學(xué)生自己按排。并試著選定一個小組長,小組長就類似于項目經(jīng)理。要求組員們既服從組長的領(lǐng)導(dǎo)又主動發(fā)揮個人積極性。互相尊重,互相學(xué)習(xí),依靠團隊的力量完成任務(wù)。當(dāng)遇到問題或困難時,任課教師給予指點、協(xié)調(diào)。這樣同學(xué)們不僅提高了專業(yè)水平,也加強了團隊合作意識和同學(xué)們之間的友誼。
教師在整個項目進行過程中采用多種方式給予指導(dǎo),經(jīng)常了解學(xué)生的進展情況。同時多給出一些案例,讓學(xué)生在總結(jié)別人的經(jīng)驗的基礎(chǔ)上完成自己的系統(tǒng)。在教學(xué)過程中除了單一的講授外,還可組織形式多樣的討論、演示活動,提高教學(xué)效果。
5.實踐教學(xué)的組織
課程設(shè)計或項目開發(fā)的項目可以由任課教師給出,也可以由學(xué)生自己選題,經(jīng)老師同意可列為項目。在系統(tǒng)開發(fā)環(huán)境選擇上,可以根據(jù)項目需求和學(xué)生掌握知識的情況,自主地選擇他(她)們所熟悉的一種開發(fā)工具,如:VB、VC++或JAVA等。
從項目立項開始,進行系統(tǒng)需求分析、設(shè)計、實現(xiàn)與測試、評價等各環(huán)節(jié),每個階段應(yīng)遞交相應(yīng)的文檔,并進行檢查和交流,對檢查中發(fā)現(xiàn)的問題和不足,要求進行改進和完善,才可進入下一個階段的工作。每一個階段都要求嚴格控制。檢查、交流與指導(dǎo)工作可在師生之間、同學(xué)之間互相進行,各組匯報進展、成果以及遇到的問題,其他同學(xué)可提問和給出幫助性建議等。特別是做同樣項目的小組會針對性很強地提出實際問題或從中得出的有益的啟發(fā),老師在最后提一些建議和要求。
項目結(jié)束后,要組織答辯。可以讓小組長對他們的項目的功能及基本情況作一個陳述,然后讓每個同學(xué)說明在整個項目開發(fā)過程中所完成的任務(wù),老師可針對每個同學(xué)的實際負責(zé)的部分進行提問,這樣既有助于幫助同學(xué)掌握知識,又有助于了解每個同學(xué)所完成的任務(wù)。
在學(xué)生完成了項目之后,除遞交系統(tǒng)和文檔外,每個同學(xué)還必須進行總結(jié),說出個人在參與項目開發(fā)過程中的心得體會。讓學(xué)生自己在總結(jié)中學(xué)習(xí)知識。
6.學(xué)習(xí)效果評定
針對本課程特點,將理論和實踐能力、學(xué)習(xí)態(tài)度和能力等進行綜合評價。
三、思索
從專業(yè)教學(xué)整體和軟件開發(fā)技術(shù)發(fā)展來看,高等職業(yè)技術(shù)院校開設(shè)的《軟件工程》課程的教學(xué)改革還需要在以下方面進行努力:
1.與前期課程的配合,特別是學(xué)生對流行的開發(fā)工具的了解和應(yīng)用。
2.不斷完善本課程的教學(xué)資源,添置教學(xué)所需的軟件,特別是計算機輔助分析、設(shè)計、測試、項目管理等工具軟件。
四、總結(jié)
如何把握當(dāng)前社會、企業(yè)對人才的需求,突破傳統(tǒng)教學(xué)體系的不合理限制、建立靈活的工程型教學(xué)體系是我們始終堅持與努力的方向,而我們圍繞軟件工程為主線的教學(xué)改革也僅僅處在一個階段之中,實施過程中很多新出現(xiàn)的實際問題需要我們勤于探索、勇于解決、不斷地完善和突破。
(作者單位:滄州職業(yè)技術(shù)學(xué)院信息工程系)