摘 要:軟件工程(software engineering)是計算機軟件中的一門相當(dāng)重要的學(xué)科,對于學(xué)生今后在工作中也是至關(guān)重要的。在日常的教學(xué)工作中案例教學(xué)法為老師和學(xué)生都帶來了很大的的益處。老師對實際案例的分析和講解,加之案例在實踐運用過程中取得大量準(zhǔn)確的數(shù)據(jù),使得案例教學(xué)法更具實際意義和說服力。而對于學(xué)生而言,由于之前沒有機會接觸過軟件開發(fā)的整個過程,如果教學(xué)只局限于對軟件工程內(nèi)容的生搬硬套的講解無疑案例教學(xué)就更能為學(xué)生帶來學(xué)習(xí)上的幫助。
關(guān)鍵詞:高職教學(xué)、軟件工程、案例法教學(xué)
一、引言
軟件工程(software engineering)是計算機類學(xué)科中的一門相當(dāng)重要的學(xué)科,對于學(xué)生今后在工作中也起至關(guān)重要的作用。它是一門綜合性非常強的學(xué)科,它關(guān)系到計算機程序設(shè)計和結(jié)構(gòu)運行,同時還作用于軟件的前期開發(fā)、中期運行和后期維護(hù)。軟件工程不僅包含了計算機科學(xué),還跨領(lǐng)域到了其它重要學(xué)科如:系統(tǒng)學(xué)、運籌學(xué)、經(jīng)濟管理學(xué)、心理學(xué)等。學(xué)習(xí)軟件工程的目的主要是如何快速、高效、準(zhǔn)確、規(guī)范的編寫高質(zhì)量的計算機程序,最重要的要是在資金預(yù)算有限和時間緊促的情況下按需求方要求完成高質(zhì)量的軟件。
高校人才培養(yǎng)的目的是為學(xué)生的將來做好準(zhǔn)備,所以在教學(xué)過程中必然反映出學(xué)生所選擇的專業(yè)領(lǐng)域的未來的發(fā)展。而采用什么樣的教學(xué)模式對學(xué)生的學(xué)習(xí)又起到了舉足輕重的作用。在日常的教學(xué)工作中案例教學(xué)法為老師和學(xué)生都帶來了很大的的益處。老師對實際案例進(jìn)行充分完整的分析和講解,同時案例在實踐運用過程中取得了大量準(zhǔn)確具有說服力的數(shù)據(jù),使得案例教學(xué)更具實際意義和更有說服力。而對于學(xué)生而言,由于之前沒有機會接觸過軟件開發(fā)的整個過程,如果教學(xué)只局限于對軟件工程內(nèi)容的生搬硬套的講解無疑案例教學(xué)就更能為學(xué)生帶來學(xué)習(xí)上的幫助。案例教學(xué)法在多年的教學(xué)實踐工作中已經(jīng)被廣泛得以應(yīng)用,眾所周知最值得提到的學(xué)校當(dāng)然首推美國的哈佛商學(xué)院。也是哈佛商學(xué)院使得案例教學(xué)法被公眾認(rèn)為是未來教育方法的成功模式。
二、軟件工程學(xué)科教學(xué)在高職中存在的問題
(1)軟件工程與計算機科學(xué)的關(guān)系界定不清楚。很多計算機教師由于學(xué)科的特性使得在軟件工程的教學(xué)中存在著把精力過多的放在計算機開發(fā)技術(shù)教學(xué)上,而忽視了軟件開發(fā)的管理(時間、資金、人員)的教學(xué)。軟件項目開發(fā)管理也是軟件工程中不可缺失的部分,軟件大小、開發(fā)時間、資金預(yù)算、人員配備、設(shè)備需求、項目進(jìn)度等等都不容怠慢。由于專業(yè)的特性使得我們面對的學(xué)生往往在管理方面的知識較為欠缺所以這樣的問題尤其嚴(yán)重。強調(diào)管理學(xué)方面內(nèi)容的教學(xué)是軟件工程教學(xué)的一大要點。
(2)軟件工程學(xué)科教學(xué)內(nèi)容缺乏系統(tǒng)性和完整性。軟件工程學(xué)科包含了很多教學(xué)案例而這些案例又可以獨立成立,所以在教學(xué)過程中常會出現(xiàn)相互獨立的個體案例,使得教學(xué)內(nèi)容缺乏系統(tǒng)性和完整性。導(dǎo)致學(xué)生在學(xué)習(xí)過程中缺乏全面考慮問題和對問題前后一致性的考慮不足,對知識點掌握不透徹。所以我們在整個教學(xué)工程中應(yīng)選用一個較完整的案例前后貫穿整個教學(xué)過程。
三、案例型教學(xué)模式的組織和運作
一個完整軟件項目的開發(fā)涉及到了很多的學(xué)科,包含有計算機類學(xué)科(軟件、硬件)、管理類學(xué)科、人力資源類學(xué)科、甚至于財務(wù)、經(jīng)濟、法律;以及待開發(fā)領(lǐng)域的專業(yè)知識。而我們選擇用案例教學(xué)法對軟件工程進(jìn)行教學(xué)是通過以成熟的軟件項目為研究對象,為學(xué)生給出一個真實的軟件開發(fā)環(huán)境,更能為學(xué)生以后的工作打下良好基礎(chǔ)。并從中了解到開發(fā)軟件不是考慮單一的計算機類知識,而是各科知識的綜合應(yīng)用。所以我們在軟件工程的培養(yǎng)計劃的制定和設(shè)置上必須做到以下幾點:
(1)教學(xué)內(nèi)容設(shè)計
教學(xué)內(nèi)容的設(shè)計離不開對軟件工程學(xué)科的深入掌握,首先對整個軟件項目體系結(jié)構(gòu)進(jìn)行全盤的需求分析,給出合理的規(guī)劃。然后對其進(jìn)入分析、設(shè)計、實現(xiàn),最終完成測試與維護(hù)。嚴(yán)格的按照軟件工程學(xué)科中各個階段的不同要求去完成并加以考核。在適當(dāng)?shù)臅r候引入失敗的案例,目的在于吸取經(jīng)驗教訓(xùn);培養(yǎng)學(xué)生在開發(fā)過程中各階段的處理能力和應(yīng)對突發(fā)事件的能力;培養(yǎng)學(xué)生對開發(fā)內(nèi)容具有整體完善的思維方式;著重提高和培養(yǎng)學(xué)生的綜合應(yīng)用能力。
(2)案例的組織與實施
在案例選擇上教師必須嚴(yán)格把關(guān),不易太難,太大,同時也不易過于簡單。案例在整個教學(xué)過程中起著主導(dǎo)作用,與學(xué)生的學(xué)習(xí)效果和興趣密不可分。案例選擇必須考慮到以下幾點:
其一:充分考慮到當(dāng)前學(xué)生的知識結(jié)構(gòu)體。注意學(xué)生對案例的了解程度,選擇學(xué)生有一定了解的事件作為案例,以防學(xué)生把學(xué)習(xí)重點放在對案例的了解上而忽略了軟件工程學(xué)科的學(xué)習(xí);
其二:對學(xué)生采取啟發(fā)式教學(xué)。由于學(xué)生對案例有一定的了解,所以可以讓其根據(jù)自身已掌握的知識對案例進(jìn)行分析,教師提出啟發(fā)性的問題或內(nèi)容建議用討論的方式對其進(jìn)行教學(xué),教師設(shè)計教學(xué)時要注意反向案例和正向案例相結(jié)合。通過相互之間的討論和對比逐步完善案例,共同得出解決的方案。
(3)考核方式
考核方式和評分標(biāo)準(zhǔn)無疑是學(xué)生最為關(guān)心的內(nèi)容,軟件工程學(xué)科的考核成績由3部分共同組成:個人完成部分的考核;小組完成部分的考核;對其他組測試的考核。這三部分在課程考核中所占比例3:3:4。個人完成部分主要考查的是個人的學(xué)習(xí)能力和綜合運用能力;小組完成部分主要關(guān)注個人在小組中起到的作用和團(tuán)隊合作能力;對其他組的測試則主要考查學(xué)生是否能快速的讀懂他人設(shè)計開發(fā)的案例,并選擇較好的方法對考核案例內(nèi)容進(jìn)行全面完整的綜合驗收和評估。
四、教改中的幾點體會
案例教學(xué)法是將課堂教學(xué)與實踐相結(jié)合,把已經(jīng)運用在實際領(lǐng)域中的案例搬上講臺進(jìn)行分析講解。學(xué)生在學(xué)習(xí)知識的同時也知道了該內(nèi)容是如何被應(yīng)用在什么地方的,這樣學(xué)生不僅對所學(xué)內(nèi)容更有認(rèn)同感,同時也大大提高了學(xué)生對知識的應(yīng)用能力。通過案例把被動的學(xué)習(xí)變成主動的應(yīng)用;把被動的接受變成主動的探究;把學(xué)了之后不知道有什么用變成使用去主動學(xué)習(xí),大大提高了學(xué)生的主觀能動性和學(xué)習(xí)的興趣。同時老師也提升了自己理論與實踐教學(xué)相結(jié)合的能力,提升了在教學(xué)過程中綜合運用多種教學(xué)方法的能力。每一種教學(xué)方法都有其局限性,使用不當(dāng)會影響學(xué)生很好的掌握新知識。而教學(xué)案例法在例如軟件工程這樣具有很強綜合性的學(xué)科教學(xué)中的確起到了很好的作用。(作者單位:貴州師范大學(xué)職業(yè)技術(shù)學(xué)院)