一、目前教學(xué)存在的問題
1、教學(xué)內(nèi)容與軟件行業(yè)發(fā)展之間存在矛盾
軟件工程作為一門迅速發(fā)展的新興學(xué)科,新的技術(shù)、方法和工具不斷涌現(xiàn),涉及的眾多的領(lǐng)域與學(xué)科,而目前市場上的教材內(nèi)容的更新普遍跟不上這種發(fā)展,所以存在如何保持教材內(nèi)容的先進(jìn)性與發(fā)展性的問題。現(xiàn)代軟件工程內(nèi)容豐富,基于UML的面向?qū)ο蠼<夹g(shù)、面向服務(wù)、面向方向編程方法、測(cè)試方法、RationalRose工具、RSA等開發(fā)工具、CMM、配件配置管理以及軟件過程管理等。這些不斷發(fā)展的知識(shí)理論性與實(shí)踐性都很強(qiáng),但受到學(xué)生知識(shí)結(jié)構(gòu)和實(shí)踐經(jīng)驗(yàn)的限制并不容易被接受,同時(shí)也不可能在軟件工程這一門課中完全講授,從而影響教學(xué)效果,以致軟件行業(yè)用人單位普遍反映計(jì)算機(jī)專業(yè)畢業(yè)生的軟件工程素質(zhì)與工作預(yù)期相差較遠(yuǎn)。
2、教學(xué)安排方面存在的問題
軟件工程與其他計(jì)算機(jī)課程,如高級(jí)程序設(shè)計(jì)語言、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)庫、計(jì)算機(jī)網(wǎng)絡(luò)以及操作系統(tǒng)等課程都是相互作用和影響的。目前軟件工程課程與其他課程銜接普遍不是很理想。軟件工程的學(xué)習(xí)應(yīng)有一些先修課程如高級(jí)程序設(shè)計(jì)語言、數(shù)據(jù)結(jié)構(gòu);還應(yīng)具備操作系統(tǒng)、數(shù)據(jù)庫、計(jì)算機(jī)網(wǎng)絡(luò)的一些知識(shí)。哪些課程應(yīng)先修,哪些課程可以并行,如何與軟件工程課程銜接等,都是課程安排時(shí)需要考慮的問題。在教學(xué)時(shí)間與跨度上,學(xué)生接觸這門課的時(shí)間普遍不夠,軟件工程課時(shí)一般不多,大都只設(shè)置一個(gè)學(xué)期,而且沒有后繼課程的進(jìn)一步加強(qiáng),不容易滿足軟件工程對(duì)實(shí)踐的長期要求。
3、學(xué)生對(duì)軟件工程的學(xué)習(xí)興趣普遍較低
軟件工程不像程序設(shè)計(jì)課程那樣容易帶給學(xué)生的成就感,激發(fā)學(xué)生的興趣和熱情。同時(shí)由于積累的知識(shí)所限,學(xué)生很難將軟件工程的抽象理論和實(shí)際應(yīng)用聯(lián)系起來,因此較難對(duì)這門課程產(chǎn)生興趣,容易產(chǎn)生枯燥乏味的感覺,從而失去對(duì)這門課程的學(xué)習(xí)興趣。
4、實(shí)踐環(huán)節(jié)比較薄弱
在課程的教學(xué)中,普遍較少給學(xué)生提供實(shí)驗(yàn)尤其是項(xiàng)目實(shí)踐的體驗(yàn),主要原因是課程的總課時(shí)不充足,缺乏相應(yīng)的軟件工程實(shí)驗(yàn)軟件,學(xué)生上機(jī)實(shí)驗(yàn)比較困難;有些實(shí)踐內(nèi)容顯得太復(fù)雜太耗時(shí),由于實(shí)驗(yàn)條件受限,大部分老師僅給出項(xiàng)目各階段文檔模板,要求學(xué)生按規(guī)格編寫相應(yīng)文檔,但往往沒有企業(yè)項(xiàng)目開發(fā)中的嚴(yán)格評(píng)審機(jī)制,學(xué)生很難建立標(biāo)準(zhǔn)化、規(guī)范化思想。學(xué)生在實(shí)驗(yàn)教學(xué)中開發(fā)的系統(tǒng)僅僅作為作業(yè)提交給教師,教師大概的檢查代碼,而沒有嚴(yán)格的代碼走讀過程,也未交付用戶使用,沒有真正意義上的驗(yàn)收測(cè)試,維護(hù)。學(xué)生無法發(fā)現(xiàn)各階段中存在的問題。無法使學(xué)生達(dá)到真正項(xiàng)目實(shí)踐鍛煉的效果。
5、教師的業(yè)務(wù)素質(zhì)有待提高
這門課對(duì)授課教師的業(yè)務(wù)有較高的要求。首先教師對(duì)軟件工程本身要有深刻的理解,有一定的軟件開發(fā)經(jīng)驗(yàn),最好有一定的項(xiàng)目和工程背景,這樣教師能從自己的開發(fā)實(shí)踐中理解軟件工程的基本原理與方法,才能在講授時(shí)靈活地將理論和實(shí)踐相結(jié)合,學(xué)生才能直觀地感覺到該門課程的重要性。但是,很多教師由于時(shí)間和環(huán)境的限制,自身從事軟件項(xiàng)目開發(fā)經(jīng)驗(yàn)不足,從而在教學(xué)中很難做到游刃有余。
二、軟件工程課程教學(xué)模式探討和創(chuàng)新
1、以就業(yè)為導(dǎo)向,利用校企合作,加強(qiáng)軟件工程課程的實(shí)用性
學(xué)校、企業(yè)、學(xué)生三方如同三個(gè)同步的、契合的齒輪,圍繞著職業(yè)素養(yǎng)的提升這一共同目標(biāo),良性運(yùn)轉(zhuǎn)、螺旋式上升。通過校企合作,學(xué)生可以逐步適應(yīng)崗位群、終身發(fā)展,實(shí)現(xiàn)從學(xué)生到職業(yè)人的轉(zhuǎn)換;對(duì)于企業(yè)而言,校企合作不僅幫助企業(yè)實(shí)現(xiàn)了培訓(xùn)企業(yè)員工、滿足企業(yè)用人需求等淺層目標(biāo),也傳播了企業(yè)文化、深層次地挖掘了企業(yè)的發(fā)展?jié)摿ΑN覀儗W(xué)院積極與本地的軟件企業(yè)聯(lián)合,整合資源,根據(jù)企業(yè)與專業(yè)的特點(diǎn)制定相應(yīng)的教學(xué)計(jì)劃進(jìn)行人才培養(yǎng),配合實(shí)踐平臺(tái)使學(xué)生積累一定的工作經(jīng)驗(yàn),緊隨市場動(dòng)向,提高就業(yè)率。實(shí)踐中,我們根據(jù)合作企業(yè)的具體軟件工程要求,把企業(yè)的實(shí)際項(xiàng)目引入到課程實(shí)踐中,讓學(xué)生參與企業(yè)項(xiàng)目組,部分學(xué)生畢業(yè)后直接進(jìn)入合作企業(yè)工作。另外,結(jié)合師范院校女生比例較高的情況,側(cè)重加強(qiáng)界面設(shè)計(jì)開發(fā)、軟件測(cè)試、配置管理方面內(nèi)容的教學(xué),有效的提高了軟件工程課程的實(shí)用性。
2、調(diào)整課程安排與教學(xué)內(nèi)容安排
根據(jù)軟件工程的特點(diǎn),我們?cè)谡n程體系安排上做了一些調(diào)整,如加強(qiáng)一些前驅(qū)的課程教學(xué),引入一些新技術(shù)的專業(yè)選修課,根據(jù)實(shí)際情況安排課程設(shè)計(jì)、專業(yè)實(shí)踐做為軟件工程的后繼課程。同時(shí),我們還與合作企業(yè)進(jìn)行課程體系設(shè)計(jì),如引入系統(tǒng)集成與測(cè)試、手機(jī)開發(fā)基礎(chǔ)等前驅(qū)實(shí)用課程,使學(xué)生積累了基礎(chǔ)知識(shí),便參與到企業(yè)的實(shí)際項(xiàng)目組。在教材選擇上,軟件工程學(xué)科發(fā)展快,包含內(nèi)容多,選擇教材既要保證教材內(nèi)容的新穎、全面,還要考慮到內(nèi)容是否能與實(shí)際工作緊密結(jié)合,對(duì)實(shí)踐能否起到重要的指導(dǎo)作用。因此,我們選擇機(jī)械工業(yè)出版社出版的《軟件工程原書第9版》(Ian Sommerville)。它多次再版的事實(shí)說明了該書受歡迎的程度。其內(nèi)容豐富詳實(shí),涵蓋了軟件開發(fā)過程各個(gè)階段的內(nèi)容,而且包含了一些軟件工程的新技術(shù)。我們?cè)谑谡n過程中結(jié)合課程的實(shí)際課時(shí),對(duì)教材內(nèi)容進(jìn)行適當(dāng)節(jié)選,如軟件過程、項(xiàng)目管理、軟件需求、系統(tǒng)設(shè)計(jì)、分布式系統(tǒng)體系結(jié)構(gòu)設(shè)計(jì)、快速軟件開發(fā)、軟件測(cè)試、配置管理、面向服務(wù)、面向方面、面向安全方法等,這樣可以給學(xué)生本學(xué)科一個(gè)概貌,對(duì)于感興趣的學(xué)生也可以得到更多進(jìn)一步學(xué)習(xí)的機(jī)會(huì)。
3、激發(fā)學(xué)生學(xué)習(xí)興趣和熱情
培養(yǎng)學(xué)生對(duì)軟件工程的學(xué)習(xí)興趣與熱情是軟件工程教學(xué)需要解決的一個(gè)難題。與學(xué)生的交流發(fā)現(xiàn),師范類院校的學(xué)生普遍對(duì)軟件興趣不大,也不知道學(xué)了課程后有什么用。因此,我們以就業(yè)結(jié)合個(gè)人興趣為導(dǎo)向,積極培養(yǎng)學(xué)生興趣,讓他們感覺到學(xué)好這門課程與就業(yè)關(guān)系密切,是自己從業(yè)的基礎(chǔ),這樣學(xué)生學(xué)習(xí)起來就有目的性,收到較好的學(xué)習(xí)效果。此外,在課堂氣氛方面,鼓勵(lì)學(xué)生多參與,在講解時(shí)應(yīng)盡量營造探究氣氛,增強(qiáng)交流互動(dòng),適當(dāng)使用案例教學(xué)法,以激勵(lì)學(xué)生主動(dòng)參與學(xué)習(xí)活動(dòng)。
4、加強(qiáng)實(shí)踐環(huán)節(jié)
課程初期,采用項(xiàng)目驅(qū)動(dòng)法,采取小組開發(fā)形式進(jìn)行實(shí)踐教學(xué)。學(xué)生按教師要求組成6~8人的項(xiàng)目小組,選擇來源于企業(yè)的實(shí)際項(xiàng)目題目,然后每位學(xué)生擔(dān)當(dāng)實(shí)際項(xiàng)目開發(fā)過程中的不同角色,進(jìn)行分工協(xié)作,參與項(xiàng)目管理和開發(fā),從不同角度全面把握和體會(huì)整個(gè)軟件工程項(xiàng)目開發(fā)和管理的基本思想,在一個(gè)學(xué)期內(nèi)共同完成實(shí)驗(yàn)項(xiàng)目。同時(shí)教師加強(qiáng)在實(shí)驗(yàn)過程中的指導(dǎo)作用,要求各項(xiàng)目小組分階段提交討論記錄和項(xiàng)目工程要求的里程碑成果。鼓勵(lì)學(xué)生積極建設(shè)校園創(chuàng)新創(chuàng)業(yè)基地。校園創(chuàng)新創(chuàng)業(yè)基地模擬軟件公司開發(fā)管理模式,是學(xué)生課外科技、課外實(shí)踐、開發(fā)訓(xùn)練、社會(huì)服務(wù)活動(dòng)的基地,為學(xué)生在校期間提供了良好的就業(yè)實(shí)戰(zhàn)平臺(tái)。學(xué)生通過基地實(shí)際的項(xiàng)目,將所學(xué)的理論知識(shí)應(yīng)用到其中,做到學(xué)以致用。充分發(fā)揮校外實(shí)習(xí)基地作用。我校與本地的軟件企業(yè)聯(lián)合,開展校外實(shí)習(xí)基地,在課程結(jié)束后進(jìn)入軟件工程校外實(shí)習(xí)環(huán)節(jié),讓學(xué)生融入到真實(shí)的開發(fā)環(huán)境中去。經(jīng)過一個(gè)學(xué)期的軟件工程理論基礎(chǔ)和校內(nèi)創(chuàng)新實(shí)驗(yàn)室的經(jīng)驗(yàn),我們根據(jù)實(shí)際情況,有選擇地讓學(xué)生進(jìn)入企業(yè),跟隨項(xiàng)目組一起,參與到真實(shí)的項(xiàng)目中去。校外實(shí)習(xí)過程中,要求學(xué)生認(rèn)真記錄項(xiàng)目過程開展的各項(xiàng)工作,并積極參與到各階段的工作中去。根據(jù)實(shí)踐情況,我們還將項(xiàng)目實(shí)習(xí)與畢業(yè)論文的設(shè)計(jì)結(jié)合起來,讓參加企業(yè)實(shí)際項(xiàng)目的學(xué)生可以用參加的項(xiàng)目做為畢業(yè)論文的主要工作,解決了學(xué)生畢業(yè)設(shè)計(jì)與實(shí)習(xí)的矛盾,學(xué)生積極性高,也取得了較好實(shí)踐效果。
5、加強(qiáng)師資力量
為了提高軟件工程教學(xué)效果,我們?cè)谟?jì)算機(jī)軟件工程教學(xué)的教師隊(duì)伍建設(shè)中,積極引進(jìn)在企業(yè)具有軟件開發(fā)和工程實(shí)踐經(jīng)驗(yàn)的高學(xué)歷工程師作為骨干教師,選派年青教師到大型軟件公司去實(shí)踐與進(jìn)修,這些教師把掌握的新技術(shù)、新理念及時(shí)帶到課堂,進(jìn)一步體現(xiàn)課堂知識(shí)的實(shí)用性和先進(jìn)性。
三、結(jié)語
筆者探討以就業(yè)為導(dǎo)向、項(xiàng)目驅(qū)動(dòng)、創(chuàng)新實(shí)習(xí)相結(jié)合的“軟件工程”教學(xué)模式,并在近兩年教學(xué)中進(jìn)行了實(shí)踐,取得了一定的教學(xué)效果,提高了學(xué)生對(duì)本門課程的學(xué)習(xí)興趣,學(xué)生的計(jì)算機(jī)應(yīng)用水平與實(shí)踐能力取得了長足的進(jìn)步,鍛煉和培養(yǎng)了系統(tǒng)分析能力、設(shè)計(jì)能力、編程能力、測(cè)試和維護(hù)能力、團(tuán)隊(duì)協(xié)作能力和文檔書寫能力,提高了學(xué)生的實(shí)踐動(dòng)手能力和綜合素質(zhì),學(xué)生適應(yīng)市場能力顯著增強(qiáng),就業(yè)率得到提升。如何結(jié)合軟件行業(yè)的現(xiàn)狀、特點(diǎn),采取相應(yīng)的教學(xué)手法,提高軟件工程的學(xué)生學(xué)習(xí)體驗(yàn),提高教學(xué)質(zhì)量,值得我們不斷探討和研究。
作者:藍(lán)貞雄 單位:廣西師范學(xué)院計(jì)算機(jī)與信息工程學(xué)院