摘要:本文提出了軟件工程專業(yè)基本實踐能力培養(yǎng)的實訓(xùn)方案。該方案幫助學(xué)生逐步地提高計算機的基本實踐水平,它與傳統(tǒng)課堂教學(xué)相互補充,在改善教學(xué)效果的同時,提高學(xué)生的項目實踐能力。該方案以建筑領(lǐng)域作為具體的應(yīng)用背景,充分發(fā)揮了本校在建筑領(lǐng)域的專業(yè)優(yōu)勢。
關(guān)鍵詞:實訓(xùn)方案;軟件工程;實踐能力
中圖分類號:G642文獻標(biāo)識碼:B
1引言
軟件工程專業(yè)是近幾年發(fā)展起來的計算機領(lǐng)域內(nèi)的一個新專業(yè),它是順應(yīng)市場需求而產(chǎn)生的。該專業(yè)對學(xué)生的實踐能力要求很高,因此對學(xué)生進行項目實踐能力培訓(xùn)是很必要的。我院在充分發(fā)揮本校在建筑領(lǐng)域的專業(yè)優(yōu)勢的同時,將計算機與建筑領(lǐng)域結(jié)合,提出了一套建筑領(lǐng)域本科軟件工程專業(yè)項目實踐能力實訓(xùn)方案。
在傳統(tǒng)的純粹課堂式的教學(xué)模式下,隨著學(xué)科的發(fā)展教學(xué)內(nèi)容越來越多,致使每門課的課時被明顯壓縮,也導(dǎo)致其實踐課時明顯不足,伴隨著有一些相對簡單的內(nèi)容(如計算機基礎(chǔ)、網(wǎng)頁設(shè)計等)被刪除,這對于低年級學(xué)生提出了嚴格的要求,他們需要自學(xué)這些計算機的基礎(chǔ)知識。但是由于他們對專業(yè)還較陌生的,如何自學(xué),從哪里著手來學(xué),成為擺在學(xué)生們面前的一個很現(xiàn)實的問題,并且如果沒有合適地引導(dǎo)他們往往會走許多彎路。實訓(xùn)方案便是為解決這樣的問題而設(shè)計的。實訓(xùn)方案同課堂學(xué)習(xí)相結(jié)合,有效地彌補了傳統(tǒng)模式下實踐課時不足、學(xué)生自學(xué)困難的情況,使課堂教學(xué)變得更加流暢,減少在計算機基礎(chǔ)知識方面摸索的時間,可大大提高教學(xué)效率。
2實訓(xùn)方案
實訓(xùn)方案的設(shè)計同我院軟件工程專業(yè)特殊的教學(xué)模式是密切相關(guān)的。我院軟件工程專業(yè)使用“2+1+1”的教學(xué)培養(yǎng)模式,即2年基礎(chǔ)理論教育,1年專業(yè)知識教育,1年分流實踐培養(yǎng)?;A(chǔ)理論教育主要包括軟件開發(fā)基礎(chǔ)、建筑類基礎(chǔ)以及其他公共課三模塊組成。其中軟件開發(fā)基礎(chǔ)由數(shù)學(xué)基礎(chǔ)、程序設(shè)計語言、面向?qū)ο蟪绦蛟O(shè)計、數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)庫原理及應(yīng)用以及相應(yīng)課程設(shè)計等核心課程組成。建筑類基礎(chǔ)模塊主要學(xué)習(xí)基本的建筑知識,如土木工程概論、城市規(guī)劃原理等。
實訓(xùn)方案包括由課內(nèi)實訓(xùn)和課外實訓(xùn)兩部分組成。前者主要指的是教學(xué)計劃內(nèi)的實驗和課程設(shè)計,后者通過計劃外的計算機輔助培訓(xùn)實現(xiàn)。
由于每一門課程的課程設(shè)計都側(cè)重于該課程的內(nèi)容,比較孤立,因此課程之間的銜接很不自然。學(xué)生往往出現(xiàn)這樣的情況:每一門課的課程設(shè)計都做的不錯,但對于一個綜合運用各門課程知識進行的項目,感覺無從下手。此外,在一些綜合項目中所用的知識有相當(dāng)一部分需要自學(xué),由于學(xué)生經(jīng)驗的不足,從一無所知到知道學(xué)什么然后怎么學(xué)需要一個很長的摸索時間。為了解決這一系列的問題,對學(xué)生實踐能力的鍛煉不應(yīng)只局限在教學(xué)計劃內(nèi),還需要在教學(xué)計劃外對學(xué)生在進行系統(tǒng)的課外培訓(xùn),來更好地輔助軟件工程專業(yè)教學(xué)工作,增強實踐能力。
2.1實訓(xùn)方案內(nèi)容
方案的課內(nèi)實訓(xùn)部分強調(diào)最大限度的增加實踐時間投入,對每一門專業(yè)課均配有大量的實驗和相應(yīng)的課程設(shè)計,并且注重每門課程在教學(xué)內(nèi)容和實驗上的銜接,切實保證教學(xué)工作的高效和流暢。比如:C語言與數(shù)據(jù)結(jié)構(gòu),離散數(shù)學(xué)與數(shù)據(jù)庫、數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)庫與軟件工程等這些專業(yè)課之間都有這很密切的聯(lián)系,處理好它們之間的關(guān)系,對于教學(xué)有很大的幫助。
課外實訓(xùn)方案則根據(jù)專業(yè)設(shè)置及課程安排,分階段有步驟地進行,強調(diào)理論和實踐最大限度地有效結(jié)合。每階段的具體安排如下表1所示。
培訓(xùn)方案集中在大學(xué)的前兩學(xué)年內(nèi)完成,這樣設(shè)計是為了可以更好地適應(yīng)2年基礎(chǔ)理論的學(xué)習(xí),提高動手能力,并為第三學(xué)年專業(yè)知識的學(xué)習(xí)打下堅實的基礎(chǔ)。本著循序漸進的原則,該方案以建筑領(lǐng)域的計算機應(yīng)用為背景,從零開始然后逐步提升學(xué)生的計算機專業(yè)水平。下面分階段詳細介紹每個階段的工作。
第一階段主要的工作是計算機基本技能培訓(xùn)及建筑學(xué)基礎(chǔ)介紹。主要針對以前從來沒有接觸過計算機及建筑學(xué)知識的學(xué)生,對曾接觸過的學(xué)生進行進一步的指導(dǎo),提高其計算機的應(yīng)用水平。
主要內(nèi)容包括計算機硬件基礎(chǔ)、辦公軟件(Word、Excel、PowerPoint)、打字軟件等計算機基本技能的培訓(xùn);建筑領(lǐng)域的計算機化程度及應(yīng)用前景介紹,該領(lǐng)域主要的軟件產(chǎn)品簡介。必要時,帶領(lǐng)學(xué)生參觀相關(guān)的軟件企業(yè),進一步認識計算機及軟件在社會生活中的地位及重要性,激發(fā)學(xué)生的學(xué)習(xí)熱情和好奇心。
第二階段的主要工作是個人基本軟件設(shè)計能力培養(yǎng)。該階段工作是第一階段工作的鞏固和進一步的提升,并且對幾乎所有學(xué)生來說都是以前沒有接觸過的或很少接觸過的內(nèi)容,所以相對較難。因此,需對所有學(xué)生統(tǒng)一嚴格要求,并且導(dǎo)師需給予更多的指導(dǎo)。
主要內(nèi)容包括網(wǎng)頁設(shè)計相關(guān)培訓(xùn),涉及到與網(wǎng)頁設(shè)計相關(guān)的各個方面。由于所能安排的培訓(xùn)講座有限,講座只介紹網(wǎng)頁設(shè)計的基礎(chǔ)知識和網(wǎng)頁美工這兩部分內(nèi)容,其他內(nèi)容通過指定的參考書自學(xué)完成。對于低年級的學(xué)生來說自學(xué)能力較欠缺,這里需要學(xué)生積極主動地同導(dǎo)師溝通來解決問題。導(dǎo)師也應(yīng)主動的引導(dǎo)學(xué)生。
通過該階段的學(xué)習(xí),學(xué)生的軟件設(shè)計能力、自學(xué)能力以及與人溝通的能力將得到充分的鍛煉,為下一階段的學(xué)習(xí)打下很好的基礎(chǔ)。
第三階段的主要工作是團隊軟件設(shè)計能力培養(yǎng)。軟件開發(fā)工作是一項團隊合作完成的工作,因此團隊軟件設(shè)計能力對未來的軟件工程師來說是必不可少的。經(jīng)過前兩個階段的培訓(xùn)及理論課的學(xué)習(xí),學(xué)生已初步具有軟件設(shè)計能力和意識,加上本階段所處的時間正是數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)庫原理這些理論課程開設(shè)的學(xué)期,所以進行小型的團隊軟件設(shè)計與開發(fā)是可能的。
主要內(nèi)容包括小型項目模擬實戰(zhàn),開發(fā)小規(guī)模的信息管理系統(tǒng)(房地產(chǎn)管理系統(tǒng)、建筑項目管理系統(tǒng)等)、簡單游戲軟件等,在開發(fā)的過程中將學(xué)生分組,每4人一組,每個組完成一個實際項目的開發(fā),并且每組的項目都各不相同,組成員都有明確的分工。在該階段學(xué)生需要在導(dǎo)師的指導(dǎo)下,自學(xué)相關(guān)的軟件開發(fā)工具,并進行合理的分工。每個組推選一名學(xué)生作為組長,組長在導(dǎo)師的幫助下完成分工,為每個組員分配具體任務(wù)。
該階段學(xué)習(xí)完成后,學(xué)生已初步具備團隊軟件開發(fā)的能力了,為最后一階段的培訓(xùn)做了很好的鋪墊。
第四階段的主要工作是鞏固第三階段的成果,積攢實際項目開發(fā)經(jīng)驗,為后續(xù)軟件工程相關(guān)理論課程的學(xué)習(xí)打好實踐基礎(chǔ)。
主要內(nèi)容包括團隊開發(fā)中型項目,該項目為實用的項目,具體內(nèi)容根據(jù)當(dāng)時的情況確定。學(xué)生在導(dǎo)師的指導(dǎo)下進行規(guī)范的軟件開發(fā),包括測試、性能評估等專業(yè)知識的實踐。
總之,四個階段的工作都有很強的實踐性和實用性,由淺入深地帶領(lǐng)學(xué)生邁進軟件開發(fā)與設(shè)計的門檻,使其建立起軟件工程專業(yè)的學(xué)習(xí)興趣,盡快地適應(yīng)本專業(yè)的學(xué)習(xí)。
2.2實訓(xùn)方案的實施
為了方便教師對學(xué)生的指導(dǎo),本專業(yè)開創(chuàng)性的在本科班中試行導(dǎo)師制,即為每個學(xué)生配指導(dǎo)教師,負責(zé)幫助學(xué)生及時解決學(xué)習(xí)及生活中的困惑及問題。每個導(dǎo)師同時指導(dǎo)8個左右的學(xué)生。導(dǎo)師制的實行在一定程度上保證了實訓(xùn)方案的可行性與高效性。
課內(nèi)實訓(xùn)部分的實驗和課程設(shè)計,以本課程的授課教師為主,導(dǎo)師為輔,共同來對本專業(yè)學(xué)生進行輔導(dǎo)。學(xué)生在實驗和課程設(shè)計中遇到的問題可及時向授課教師或?qū)煼从?,?dǎo)師可向授課教師放映學(xué)生的具體實驗情況。這樣可以增加學(xué)生們答疑的途徑,更好的同學(xué)生進行溝通和交流,提高教學(xué)效率。
對于課外實訓(xùn)方案每個階段的項目都有專門的老師負責(zé)自己的學(xué)生的指導(dǎo)和督促工作,因此,方案的實施是在導(dǎo)師的幫助下,在學(xué)生積極參與的基礎(chǔ)上開展開來的。每一階段的任務(wù)都分為四個步驟來進行,具體如下:
第一步為相關(guān)知識培訓(xùn)。由教研室統(tǒng)一安排,或由本院的老師做相關(guān)知識的講座,或請我院實驗基地的相關(guān)專業(yè)技術(shù)人員給學(xué)生做若干相關(guān)知識講座。講座的內(nèi)容根據(jù)階段的不同而做適當(dāng)?shù)陌才?,如?所示:
第二步為輔導(dǎo)反饋。各導(dǎo)師定期同學(xué)生交流了解學(xué)生的學(xué)習(xí)情況,然后通過各種方式給學(xué)生做輔導(dǎo),使學(xué)生知道如何著手來進行工作,如何安排自己的時間,如何同其他成員溝通等這些在軟件開發(fā)工作中所必需具備的基本素質(zhì)。
在前兩個階段的培訓(xùn)方案實施過程中,由于學(xué)生處于剛剛認識大學(xué)的新鮮狀態(tài)中,他們對任何大學(xué)里的事物都充滿了好奇,因此,導(dǎo)師充分的引導(dǎo)和與他們交流,對學(xué)生學(xué)習(xí)興趣的建立,學(xué)習(xí)積極性的提高起著舉足輕重的作用。
師生間良性規(guī)范的交流方式的建立也是必須的??勺寣W(xué)生養(yǎng)成每周寫學(xué)習(xí)筆記的習(xí)慣,以這種方式來記錄學(xué)生的學(xué)習(xí)情況、遇到的問題及解決方案。這樣可使學(xué)習(xí)的效率顯著提高,減少重復(fù)勞動。導(dǎo)師要認真檢查每個學(xué)生的學(xué)習(xí)筆記,及時發(fā)現(xiàn)出現(xiàn)的問題,并給出解決方案,幫助學(xué)生快速的進入正常的學(xué)習(xí)軌道。同時,導(dǎo)師需定期總結(jié)學(xué)生們遇到的普遍問題,并做好筆記,方便新來的學(xué)生快速地投入學(xué)習(xí)中,減少從頭摸索的時間。
第三步為任務(wù)實戰(zhàn)。學(xué)生需充分利用本學(xué)院實驗室環(huán)境及自己的電腦,在課余時間完成培訓(xùn)任務(wù)及作業(yè)。每次的培訓(xùn)任務(wù)后都會布置具體的作業(yè)要求學(xué)生完成,鞏固培訓(xùn)知識。這些作業(yè)的選擇本著實用的原則來進行,使學(xué)生在完成作業(yè)之后有很強的滿足感,增強學(xué)生繼續(xù)學(xué)習(xí)下去的信心和求知欲。
比如,在“計算機組成簡介”培訓(xùn)完成后,要求大家自己組裝一臺電腦。一開始是在學(xué)院的實驗室里進行,然后,想配置電腦的學(xué)生,可以將已學(xué)知識用到現(xiàn)實中,自己到科技市場去組裝一臺電腦或者幫助別人組裝一臺電腦。再如,在“網(wǎng)頁設(shè)計”培訓(xùn)完成后,可要求學(xué)生自己設(shè)計個人網(wǎng)站,然后將其發(fā)布到已申請的域名空間中,這樣自己隨時可以瀏覽到自己的設(shè)計的網(wǎng)站了。雖然一開始設(shè)計的質(zhì)量不是很高,但這可以增強學(xué)習(xí)專業(yè)的信心和興趣。每個培訓(xùn)任務(wù)都有若干的實用作業(yè)來做,這里就不再贅述。
此外,學(xué)習(xí)時間的保證也是培訓(xùn)計劃得以順利執(zhí)行的保證??紤]到大部分學(xué)生沒有自己的電腦,為了讓學(xué)生有充足的時間來完成培訓(xùn)任務(wù),我學(xué)院對本學(xué)院學(xué)生在課余和周末安排了充足的開放實驗室時間來利用。在這些時間里,學(xué)生可以免費上機實驗,并且輔導(dǎo)老師將進行定期輔導(dǎo),如果在上機過程中遇到什么問題可以隨時幫忙解決。沒有及時解決的,學(xué)生可通過各種方式反饋給自己的導(dǎo)師,由導(dǎo)師協(xié)助完成作業(yè)。
第四步為作業(yè)考核。對作業(yè)完成質(zhì)量的好壞,要有合適的考核體系,如果只布置不考核,那么很有可能使得培訓(xùn)流于形式,起不到很好的效果。由于所培訓(xùn)的內(nèi)容都是實踐性很強的,因此,傳統(tǒng)的筆試考核形式不能很好體現(xiàn)作業(yè)完成質(zhì)量的高低??刹捎脦熒拥姆绞竭M行考核,即演示+答辯的形式進行考核。
學(xué)生以小組(約4人一組)為單位,通過PowerPoint演示文稿的形式,展現(xiàn)作業(yè)完成過程和結(jié)果。演示過程限時20分鐘,演示結(jié)束后由答辯小組向演示組成員提問題,由演示組成員回答。然后,答辯小組成員根據(jù)回答情況討論演示組中每個成員的成績。如果為團隊合作才能完成的作業(yè),則只需給出團隊的成績即可,沒有個人成績。
為了保證成績的公正性、客觀性,答辯小組的成員建議由學(xué)生和老師共同組成。其中學(xué)生每班一名(一般為學(xué)習(xí)委員),負責(zé)從學(xué)生的角度向演示組提問題,同時反饋演示組成員的總體情況。老師兩名,一名負責(zé)技術(shù)評價,一名負責(zé)文檔規(guī)范評價。最后的總成績是在答辯組長(老師)的主持下,小組成員共同商定。
2.3實訓(xùn)方案實施效果
本實訓(xùn)方案目前正在我院07級軟件工程專業(yè)的2個班中實施。目前已進行了兩個學(xué)期的實踐。通過與其他相關(guān)專業(yè)的學(xué)生在各方面能力的對比來看,該方案當(dāng)前的實施效果明顯。在學(xué)習(xí)態(tài)度上,本專業(yè)學(xué)生入校以來高漲的學(xué)習(xí)熱情一直保持的,大部分學(xué)生能夠主動同導(dǎo)師聯(lián)系, 主動要求學(xué)習(xí)新的相關(guān)知識。而其他相關(guān)專業(yè)學(xué)生則開始出現(xiàn)對所學(xué)專業(yè)的迷惘狀態(tài);在實踐能力上,本專業(yè)大部分學(xué)生具備了基本的計算機能力和網(wǎng)站設(shè)計能力。與其他專業(yè)只有很少的幾個學(xué)生具有這樣的能力相比,學(xué)生們普遍都有很強的成就感,他們的自信心及對本專業(yè)繼續(xù)學(xué)習(xí)的興趣明顯提高。
3結(jié)論
由于實訓(xùn)方案正處在實驗階段,課內(nèi)實訓(xùn)中課程之間的合理銜接,課外實訓(xùn)的內(nèi)容和實施方式,以及實施的具體步驟還有待進一步驗證和完善。這也是我們的教學(xué)團隊正在努力的方向。
參考文獻:
[1] 郭劍,朱立華,孫力娟. 程序設(shè)計實踐課程中程序員素質(zhì)的培養(yǎng)[J]. 計算機教育,2007,(22):25-27.
[2] 潘怡. 合作學(xué)習(xí)在“軟件工程”課程實踐教學(xué)中的應(yīng)用探討[J]. 計算機教育,2007,(22):54-56.
[3] 龐國斌,王冬凌. 合作學(xué)習(xí)的理論與實踐[M]. 上海開明出版社,2003:13.