時間:2022-08-12 00:21:41
導(dǎo)語:在軟件開發(fā)專業(yè)論文的撰寫旅程中,學(xué)習(xí)并吸收他人佳作的精髓是一條寶貴的路徑,好期刊匯集了九篇優(yōu)秀范文,愿這些內(nèi)容能夠啟發(fā)您的創(chuàng)作靈感,引領(lǐng)您探索更多的創(chuàng)作可能。
自考計算機(jī)專業(yè)畢業(yè)論文怎么寫呢?有沒有什么寫作技巧呢?本篇就是向大家介紹了自考計算機(jī)專業(yè)畢業(yè)論文寫作技巧,記得關(guān)注學(xué)術(shù)參考網(wǎng)查看更多的論文寫作方法,歡迎大家閱讀借鑒。
寫作流程
自考計算機(jī)專業(yè)畢業(yè)論文有1年準(zhǔn)備時間,寫作時間的分配主要取決于考生軟件開發(fā)的進(jìn)度,如果考生開發(fā)的軟件很成熟,那末后續(xù)的寫作時間就較快,否則后面的寫作就會很被動。例如,一般會在每年7月份登記,9月底開題,期間開發(fā)軟件,到第二年2、3月就要完成初稿,再留一個月修改。
1、選題。選題首先要重要、有意義。例如有的考生選擇設(shè)計木馬程序,其本身是個病毒程序,這樣的程序只能帶來危害,實際生活中沒有意義,就不能用于做畢業(yè)論文。
2、開發(fā)軟件。開發(fā)軟件要與實際相結(jié)合。實際性非常重要,要自己能開發(fā)一個能實際運(yùn)行的軟件。有的考生自己并沒有參與實際工作,只是看書是不行的。自己參與的可以是一個大的項目或課題組,論文中介紹完大的系統(tǒng)后,一定要把自己的工作量寫清楚。
3、寫論文。開發(fā)完就可以寫論文了,論文是個總結(jié),但是不要寫成工作總結(jié),一定要有主題,應(yīng)體現(xiàn)自己的開發(fā)思想和論述自考本科計算機(jī)專業(yè)畢業(yè)論文寫作指南自考本科計算機(jī)專業(yè)畢業(yè)論文寫作指南。寫論文要達(dá)到一定字?jǐn)?shù),一般要3萬字。其中,編程代碼一般為2-3千行,這個不是機(jī)器自動生成的代碼,一定是自己寫的源代碼。
論文結(jié)構(gòu)
計算機(jī)專業(yè)畢業(yè)論文一般有8個部分。1、概述或引言。這個部分相當(dāng)于大綱,一般要求4-5千字,主要是對軟件開發(fā)背景,使用的軟件工具、環(huán)境,最后達(dá)到的效果,自我在里面的貢獻(xiàn)等;2、需求分析。軟件有哪些功能、模塊,用的什么工具等;3、設(shè)計方案和主要技術(shù)自考本科計算機(jī)專業(yè)畢業(yè)論文寫作指南文章自考本科計算機(jī)專業(yè)畢業(yè)論文寫作指南出自http://gkstk.com/article/wk-78500001321796.html,轉(zhuǎn)載請保留此鏈接!。主要是對里面每一部分的詳細(xì)論述,使用的是什么技術(shù),為什么使用。詳細(xì)的模塊分析或遇到的難點(diǎn)是怎樣解決的等;4、具體的實現(xiàn)過程;5、測試。介紹自己開發(fā)軟件實際達(dá)到的效果;6、總結(jié)。介紹自己開發(fā)軟件的體會,或自己開發(fā)的成果使用情況,有什么評價,自己還有哪些不足,有什么需要改進(jìn)的地方;7、致謝;8、參考文獻(xiàn)。另外,還可以加一個“附錄”部分。正文只能有一個中心,其他有重要參考價值的都可以放在附錄部分。例如有重要的代碼、圖表,涉及其他領(lǐng)域的知識,需要解釋的等都可以放在附錄部分。
案例1:《家裝工程預(yù)算軟件的開放》1、概述;2、需求分析;3、總體設(shè)計;4、數(shù)據(jù)庫設(shè)計;5、軟件功能的實現(xiàn);6、結(jié)論及改進(jìn);7、致謝;8、參考文獻(xiàn)。
案例2:《經(jīng)緯中天無線短信增值服務(wù)管理軟件的設(shè)計和開放》1、引言;2、需求分析;3、設(shè)計方案論證和主要技術(shù)介紹;4、系統(tǒng)設(shè)計;5、編碼實現(xiàn);6、實際運(yùn)行中出現(xiàn)的問題及相應(yīng)的解決方案;7、結(jié)束語;8、致謝;9、參考文獻(xiàn)。
答辯程序
答辯現(xiàn)場會有專業(yè)老師組成的答辯小組,一般為5人左右,學(xué)生抽簽分配答辯組。答辯現(xiàn)場要考生做介紹和演示??忌枰崆皽?zhǔn)備幻燈片,一般不超過20張,為論文最核心部分的內(nèi)容自考本科計算機(jī)專業(yè)畢業(yè)論文寫作指南論文
WiseMedia
考生結(jié)合幻燈片介紹論文,答辯小組老師會根據(jù)考生論文提出問題,考生要實事求是回答,最后答辯小組老師打分,求平均分給出考生論文成績。大部分考生都會達(dá)到優(yōu)、良,個別考生沒有通過論文,主要有兩方面原因:1、論文并不是自己真正所做,用別人的軟件為自己所用,老師一提問就能發(fā)現(xiàn)破綻;2、考生論得太簡單,達(dá)不到工作量。這就需要考生踏踏實實地按照要求去作論文。
零碎提醒
論文的題目不要太大,一定要具體、實際,不能吹成通用的;
自考生考過全部課程后,最好能尋求實踐機(jī)會??梢匀?yīng)聘公司,真正參與一個項目,一邊工作一邊寫論文;
論文不要上網(wǎng)抄,一定要自己做;
引用資料要有腳注;
關(guān)鍵詞:軟件工程;畢業(yè)設(shè)計
中圖分類號:G434文獻(xiàn)標(biāo)識碼:A文章編號:16727800(2011)012022403
作者簡介:許永昌(1976-),男,山東安丘人,碩士,山東英才學(xué)院計算機(jī)學(xué)院講師,研究方向為計算機(jī)應(yīng)用。
0引言
畢業(yè)設(shè)計是高等院校應(yīng)屆類畢業(yè)生在畢業(yè)前接受課題型任務(wù),在教師指導(dǎo)下進(jìn)行科學(xué)研究或工程實踐并取得成果的過程,是高校實現(xiàn)人才培養(yǎng)目標(biāo)的綜合性實踐教學(xué)環(huán)節(jié),是一次理論與實踐相結(jié)合的的鍛煉機(jī)會。如何在新形勢下改革畢業(yè)設(shè)計, 提高學(xué)生軟件類畢業(yè)設(shè)計的質(zhì)量,進(jìn)一步規(guī)范畢業(yè)設(shè)計中的軟件開發(fā)過程,抓好高校畢業(yè)設(shè)計這一實踐環(huán)節(jié),加強(qiáng)對畢業(yè)設(shè)計過程的管理與監(jiān)控, 切實提高畢業(yè)設(shè)計的質(zhì)量,對于軟件類學(xué)生在畢業(yè)設(shè)計中實施合適的軟件設(shè)計具有重的指導(dǎo)意義。
1畢業(yè)設(shè)計的必要性
高等職業(yè)教育應(yīng)該是以能力為本位、以學(xué)生為主體、以實踐為導(dǎo)向的教育。畢業(yè)設(shè)計是高等教育培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)理論知識和技能解決實際問題能力的重要環(huán)節(jié)之一,是衡量畢業(yè)生是否達(dá)到相應(yīng)學(xué)歷層次的重要依據(jù)。畢業(yè)設(shè)計將總結(jié)專業(yè)基礎(chǔ)和專業(yè)技術(shù)的學(xué)習(xí)成果,鍛煉和開發(fā)學(xué)生的綜合運(yùn)用能力。
高職院校軟件相關(guān)專業(yè)組織畢業(yè)設(shè)計應(yīng)該符合新的人才培養(yǎng)標(biāo)準(zhǔn),對培養(yǎng)學(xué)生的職業(yè)技能和素質(zhì)要具有積極的意義。而對于即將畢業(yè)離校的應(yīng)屆畢業(yè)生來說,畢業(yè)設(shè)計無疑是計算機(jī)軟件各相關(guān)專業(yè)理論教學(xué)、實驗、實訓(xùn)等有機(jī)結(jié)合的途徑之一。
通過畢業(yè)設(shè)計能鍛煉學(xué)生的能力:
(1)實踐軟件工程的相關(guān)原理能力。畢業(yè)設(shè)計的過程,是一個課題小組從接到開發(fā)任務(wù)到提交產(chǎn)品和文檔的過程,其中涉及到需求分析、概要設(shè)計、詳細(xì)設(shè)計、編碼、測試、程序打包、編寫文檔等軟件工程具體的各個方面。經(jīng)過鍛煉,學(xué)生們對軟件工程學(xué)思想和方法的理解會大大加深。
(2)解決具體問題能力。在畢業(yè)設(shè)計的進(jìn)行過程中,學(xué)生一定會遇到平時在課堂的理論學(xué)習(xí)中碰不到的困難和挑戰(zhàn), 而克服這些困難、解決實際問題的過程就是軟件技術(shù)和心理素質(zhì)逐步提高的過程。
(3)團(tuán)結(jié)協(xié)作的意識、能力。通過畢業(yè)設(shè)計這一過程,學(xué)生就會產(chǎn)生團(tuán)結(jié)協(xié)作的意識和能力。
2軟件工程學(xué)的基本思想
軟件工程是一門研究如何用系統(tǒng)化、規(guī)范化、數(shù)量化等工程原則和方法去進(jìn)行軟件的開發(fā)和維護(hù)的學(xué)科,包括兩方面內(nèi)容:軟件開發(fā)技術(shù)和軟件項目管理。其中,軟件開發(fā)技術(shù)包括軟件開發(fā)方法學(xué)、軟件工具和軟件工程環(huán)境,軟件項目管理包括軟件度量、項目估算、進(jìn)度控制、人員組織、配置管理、項目計劃。
3高職類學(xué)生畢業(yè)設(shè)計現(xiàn)狀
畢業(yè)設(shè)計的主要目的是培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)的基礎(chǔ)理論、基本知識和基本技能,用以分析、解決工程、科研、社會實際問題的能力,使學(xué)生得到工程設(shè)計方法和科研能力的初步訓(xùn)練。畢業(yè)設(shè)計中存在的問題主要表現(xiàn)在以下幾個方面。
3.1選題的盲目性
只是把畢業(yè)設(shè)計環(huán)節(jié)作為大學(xué)生活的必經(jīng)環(huán)節(jié), 純粹是為了完成學(xué)業(yè)而去做畢業(yè)設(shè)計, 造成選題的盲目性、有的選題則是陳舊。
3.2可行性分析與需求分析重視程度不夠
絕大多數(shù)畢業(yè)生在確定了畢業(yè)設(shè)計的題目后,幾乎不進(jìn)行調(diào)查研究工作就立即投入到整個系統(tǒng)的設(shè)計中, 一旦遇到了與實際不符的地方, 又重新返回, 對已經(jīng)做好的設(shè)計進(jìn)行修改。最終導(dǎo)致設(shè)計的系統(tǒng)雜亂無章, 甚至到了最后只能馬馬虎虎地倉促交工。
3.3系統(tǒng)開發(fā)過程中的文檔不夠正規(guī),不夠完備
完整的設(shè)計不僅包括所完成的可操作的系統(tǒng),一般的操作幫助,還包括在開發(fā)系統(tǒng)的過程中所產(chǎn)生的各個文檔等一些文字的東西,比如解釋清晰、內(nèi)容全面的數(shù)據(jù)字典和使用手冊也是必不可少的,否則用戶會感到使用起來不方便,覺得難于操作。
3.4模糊的評價標(biāo)準(zhǔn)
導(dǎo)致畢業(yè)設(shè)計質(zhì)量下降的一個非常重要的原因就是沒有建立精確細(xì)致的評價體系。
這嚴(yán)重影響了項目的進(jìn)度和質(zhì)量,并且使學(xué)生沒有真正得到必要的鍛煉。我們通過對這些問題進(jìn)行詳細(xì)深入的分析,提出一個軟件過程框架,這個框架主要從需求、測試、集成這3個方面給出工作要點(diǎn)和規(guī)范。
4利用軟件工程學(xué)思想指導(dǎo)學(xué)生進(jìn)行畢業(yè)設(shè)計
畢業(yè)設(shè)計本身是個工程,要用工程的方法去處理。從軟件工程的角度去指導(dǎo)學(xué)生進(jìn)行畢業(yè)設(shè)計,在畢業(yè)設(shè)計過程中,要系統(tǒng)地將所學(xué)知識應(yīng)用于實際問題,按軟件工程學(xué)思想展開工作。
圖1軟件生命周期與畢業(yè)設(shè)計各階段之間的映射
4.1以可行性研究指導(dǎo)選題目
可行性研究,應(yīng)該從技術(shù)可行性、經(jīng)濟(jì)可行性、操作可行性三個方面去研究,在畢業(yè)設(shè)計題目的選擇過程中,應(yīng)立足于解決實際問題,注重發(fā)現(xiàn)問題、分析研究問題和開發(fā)創(chuàng)新的能力。選題原則上,可以參考以下幾點(diǎn):①畢業(yè)設(shè)計的課題應(yīng)該能使計算機(jī)專業(yè)所學(xué)的理論知識進(jìn)一步理解并深化,也就是說,畢業(yè)設(shè)計應(yīng)盡可能包括多門專業(yè)基礎(chǔ)課和專業(yè)課的綜合運(yùn)用,并且要緊密結(jié)合工程實際,以有利于學(xué)生的全面訓(xùn)練;②選擇難度適中的課題, 保證課題的完成質(zhì)量;③課題要適合于各個模塊獨(dú)立進(jìn)行,并便于最后統(tǒng)一調(diào)試;④課題規(guī)模應(yīng)大小適合,難易程度適中。
4.2需求分析是關(guān)鍵
需求分析的基本任務(wù)是準(zhǔn)確地回答“系統(tǒng)必須做什么”, 也就是對目標(biāo)系統(tǒng)提出完整、準(zhǔn)確、清晰、具體的要求。系統(tǒng)分析員可以通過多種形式來獲取用戶需求,對用戶提出的需求進(jìn)行分析,以此來確定其中要實現(xiàn)系統(tǒng)的功能。對需求劃分優(yōu)先等級,找出核心需求和重要需求,以保證系統(tǒng)構(gòu)建的正確性。
在進(jìn)行軟件類畢業(yè)設(shè)計時,為了保證需求獲取的準(zhǔn)確性和全面性,可以讓項目組的所有學(xué)生都參與到用戶需求的獲取的工作中來,發(fā)揮集體的能力,并由指導(dǎo)教師進(jìn)行最終的確認(rèn)。
4.3規(guī)范設(shè)計過程
需求分析完成后的下一個階段就是系統(tǒng)設(shè)計,包括概要設(shè)計和詳細(xì)設(shè)計。
詳細(xì)設(shè)計階段的任務(wù)就是深入每個函數(shù)內(nèi)部,以偽代碼或注釋的形式實現(xiàn)整個函數(shù),設(shè)計出程序的詳細(xì)規(guī)格說明。
從系統(tǒng)設(shè)計開始,學(xué)生要按照軟件工程的要求,畫出DFD圖,對輸入、輸出數(shù)據(jù)流進(jìn)行詳細(xì)的說明,建立符合軟件工程規(guī)范的數(shù)據(jù)字典,根據(jù)DFD 圖設(shè)計出模塊結(jié)構(gòu)圖。
4.4重視文檔寫作
在畢業(yè)設(shè)計的過程中,要嚴(yán)格遵照軟件文檔的思想,記載設(shè)計過程的每一階段完成了哪些設(shè)計,下一階段的任務(wù)、目標(biāo)及技術(shù)手段,這樣,把文檔作為整個設(shè)計的指揮棒,使設(shè)計有條不紊地進(jìn)行。
4.5重視測試工作、撰寫畢業(yè)設(shè)計說明書
軟件測試工作也是軟件開發(fā)的重要組成部分。通過實際應(yīng)用效果和測試數(shù)據(jù),畢業(yè)設(shè)計的成效就可一目了然。
畢業(yè)設(shè)計說明書的撰寫是最后一個階段,要求學(xué)生回顧設(shè)計過程,總結(jié)勞動成果,這時學(xué)生就會對軟件開發(fā)及必須經(jīng)歷的幾個步驟都有更深刻的認(rèn)識。最后,要求學(xué)生對畢業(yè)設(shè)計進(jìn)行系統(tǒng)的總結(jié),寫出畢業(yè)論文。
5加強(qiáng)對學(xué)生綜合能力的培養(yǎng)
通過實踐的練習(xí),不僅能加深對理論的理解,同時也能鍛煉運(yùn)用知識分析問題、解決問題的能力。畢業(yè)設(shè)計這一實踐環(huán)節(jié)是高等學(xué)校培養(yǎng)學(xué)生實際能力的主要手段,也是高等教育的重要組成部分。充分、有效地設(shè)置軟、硬件的畢業(yè)設(shè)計對學(xué)生能力的培養(yǎng)至關(guān)重要,可以縮短學(xué)校教育與社會流行技術(shù)、工具的差距,滿足學(xué)生畢業(yè)后的工作需要。通過畢業(yè)設(shè)計必須達(dá)到培養(yǎng)學(xué)生以下方面能力的目的。
5.1工程實踐能力
學(xué)生能夠準(zhǔn)確把握選題的邏輯重心和學(xué)術(shù)思路,能夠運(yùn)用豐富的專業(yè)知識進(jìn)行處理,具有嚴(yán)謹(jǐn)?shù)睦碚撍急孢^程,以鍛煉畢業(yè)生的工程實踐能力,使畢業(yè)論文具有一定的應(yīng)用和學(xué)術(shù)探討價值。
5.2書寫和表達(dá)能力
畢業(yè)設(shè)計論文是畢業(yè)設(shè)計工作的總結(jié)和提高,和做科研開發(fā)工作一樣,要有嚴(yán)謹(jǐn)求實的科學(xué)態(tài)度。在畢業(yè)設(shè)計期間,盡可能多地閱讀文獻(xiàn)資料是很重要的,畢業(yè)設(shè)計大多數(shù)是技術(shù)開發(fā)型的,其論文的主體部分應(yīng)包括:總體設(shè)計、模塊劃分、算法描述、編程模型、數(shù)據(jù)結(jié)構(gòu)、實現(xiàn)技術(shù)、實例測試及性能分析。這些內(nèi)容根據(jù)任務(wù)所處的階段不同,可以有所側(cè)重。
5.3創(chuàng)新能力
提出創(chuàng)新要求后,帶領(lǐng)學(xué)生認(rèn)真復(fù)習(xí)或補(bǔ)學(xué)過去沒學(xué)過、沒有學(xué)好的課程,并在此基礎(chǔ)上結(jié)合實際工作中出現(xiàn)的問題孕育出一些新的思路,將畢業(yè)設(shè)計推上一個新臺階的方式,與為每個人專門分配某一特定的作業(yè)來鍛煉學(xué)生基本技能的方式相比,更能擴(kuò)展學(xué)生的視野,培養(yǎng)創(chuàng)新能力。
5.4協(xié)作能力和團(tuán)隊精神
通過集體活動和成員溝通培養(yǎng)成員的團(tuán)體情感,增強(qiáng)團(tuán)隊的凝聚力。畢業(yè)設(shè)計將一個學(xué)生從入學(xué)初到畢業(yè)前的軟件專業(yè)課程的學(xué)習(xí)內(nèi)容鏈接成線,實現(xiàn)了課程的真正銜接,也使學(xué)生在畢業(yè)前對軟件方面所學(xué)的知識進(jìn)行了比較完整的概括與總結(jié),達(dá)到了良好的理論聯(lián)系實際的教學(xué)效果。畢業(yè)設(shè)計彌補(bǔ)了課堂教學(xué)的不足,加深了對理論的理解,促使學(xué)生深入思考,敢于創(chuàng)新,同時使學(xué)生的動手能力、分析和解決問題的能力、書寫和表達(dá)能力、協(xié)作能力等各項能力都得到了培養(yǎng)和提高。
6結(jié)束語
軟件工程作為軟件開發(fā)工程化、規(guī)范化的具體實施方法,在將其應(yīng)用到畢業(yè)設(shè)計中之后,學(xué)生在軟件設(shè)計的文檔書寫規(guī)范化等方面均有了很大的改善與提高。將軟件工程應(yīng)用于畢業(yè)設(shè)計中不僅僅完成了一門課程從理論到實踐的過程,而且將一個學(xué)生從入學(xué)到畢業(yè)前軟件專業(yè)課程的學(xué)習(xí)內(nèi)容鏈接成線,完成了前導(dǎo)后續(xù)課程的真正銜接,也使學(xué)生在畢業(yè)前對軟件方面所學(xué)的知識進(jìn)行了比較完整的概括與總結(jié),因此,軟件工程學(xué)在計算機(jī)專業(yè)學(xué)生畢業(yè)設(shè)計中的應(yīng)用具有重要的現(xiàn)實意義。參考文獻(xiàn):
[1]馬冬來,宋雨,劉海龍.軟件工程思想在高職院校畢業(yè)設(shè)計中的應(yīng)用與探索[J].河北軟件職業(yè)技術(shù)學(xué)院學(xué)報,2008(3).
[2]李國彬,沈淑清.淺談軟件工程學(xué)在軟件類學(xué)生畢業(yè)設(shè)計中的應(yīng)用[J].計算機(jī)教育,2007(6).
[3]張文靜,盧海霞,楊捧.軟件工程思想在畢業(yè)設(shè)計環(huán)節(jié)中的應(yīng)用[J].河北農(nóng)業(yè)大學(xué)學(xué)報(農(nóng)林教育版),2007(4).
[4]洪月華.畢業(yè)設(shè)計中軟件工程的應(yīng)用探討[J].玉林師范學(xué)院學(xué)報,2007(3).
【關(guān)鍵詞】軟件工程;數(shù)字媒體;專業(yè)建設(shè)
1.引言
隨著計算機(jī)技術(shù)、通信技術(shù)和數(shù)字廣播等技術(shù)不斷發(fā)展,以互聯(lián)網(wǎng)、無線通信為傳播載體,以傳統(tǒng)媒體內(nèi)容與創(chuàng)新內(nèi)容模式為核心的數(shù)字媒體產(chǎn)業(yè)在全球范圍快速崛起,并正在改變著人們的信息獲取方式和休閑娛樂的形式。
我國的數(shù)字媒體業(yè)近幾年正處于高速發(fā)展時期,對于具有較高人文素養(yǎng)、掌握數(shù)字媒體核心技術(shù)并具有藝術(shù)創(chuàng)意能力的復(fù)合型數(shù)字媒體技術(shù)開發(fā)與設(shè)計人才需求旺盛。四川理工學(xué)院軟件工程專業(yè)是與IT企業(yè)合作辦學(xué)、實行“3+1”人才培養(yǎng)模式,即學(xué)生前3年在校學(xué)習(xí),第4年在軟件企業(yè)實習(xí)并完成畢業(yè)設(shè)計(論文)。為使培養(yǎng)的學(xué)生既有較扎實的理論基礎(chǔ),又有適應(yīng)人才市場需求的職業(yè)技能,在軟件工程專業(yè)大框架下設(shè)置了數(shù)字媒體技術(shù)方向。
數(shù)字媒體技術(shù)作為一個寬口徑、以技術(shù)為主、藝術(shù)為輔、技術(shù)與藝術(shù)相結(jié)合的新的專業(yè)方向,涉及到不同的學(xué)科知識,因此,我們有必要通過探索與改革人才培養(yǎng)模式、課程體系以及實踐教學(xué)體系的研討,搭建科學(xué)的創(chuàng)新人才培養(yǎng)平臺,促進(jìn)軟件工程專業(yè)人才培養(yǎng)整體水平的提升。
2.人才培養(yǎng)目標(biāo)
培養(yǎng)目標(biāo)是制定教學(xué)計劃、設(shè)計課程結(jié)構(gòu)、選擇知識發(fā)展方式以及確定教學(xué)組織形式的依據(jù),也是教學(xué)內(nèi)容、教學(xué)方法、教學(xué)組織與管理、教學(xué)手段、教學(xué)評價等方面改革的基礎(chǔ)和前提。軟件工程專業(yè)數(shù)字媒體技術(shù)方向具有軟件工程與數(shù)字媒體技術(shù)相結(jié)合的特色,注重對學(xué)生軟件開發(fā)、應(yīng)用能力的培養(yǎng),實踐性強(qiáng)。結(jié)合我們自身辦學(xué)特色和辦學(xué)條件,我校軟件工程數(shù)字媒體方向人才培養(yǎng)目標(biāo)是:“培養(yǎng)具備計算機(jī)科學(xué)、多媒體網(wǎng)絡(luò)、軟件工程技術(shù)、信息安全等方面的專業(yè)知識與技能,具有扎實的軟件工程和數(shù)字媒體技術(shù)基礎(chǔ)理論、寬厚的專業(yè)基礎(chǔ)知識、較強(qiáng)的實踐能力,能夠從事包括新媒體應(yīng)用以及虛擬現(xiàn)實等在內(nèi)的多媒體技術(shù)開發(fā)、數(shù)字媒體設(shè)計與創(chuàng)作、計算機(jī)游戲設(shè)計、網(wǎng)頁設(shè)計與網(wǎng)站維護(hù)、信息服務(wù)及數(shù)字媒體管理等工作的創(chuàng)新性技術(shù)人才。”
3.核心課程體系
數(shù)字媒體方向課程體系的建設(shè)以創(chuàng)新性復(fù)合型人才培養(yǎng)為基本指導(dǎo)思想,重視實踐課程的開設(shè),使學(xué)生所學(xué)習(xí)掌握的方法具有充分的實效性,真正做到學(xué)有所用,以適應(yīng)未來的工作崗位,成為本行業(yè)和企業(yè)所歡迎的有用人才。課程體系分為軟件工程專業(yè)核心課程模塊、數(shù)字媒體方向核心課程模塊、專業(yè)實訓(xùn)、畢業(yè)實習(xí)和畢業(yè)設(shè)計(論文)等模塊。
3.1 核心課程
軟件工程專業(yè)數(shù)字媒體技術(shù)方以軟件工程專業(yè)為主線構(gòu)成專業(yè)基礎(chǔ)和專業(yè)主干課程。其中,計算機(jī)與軟件基礎(chǔ)課程有:計算機(jī)導(dǎo)論、程序設(shè)計入門、面向?qū)ο蟪绦蛟O(shè)計、數(shù)據(jù)結(jié)構(gòu)與算法、Java程序設(shè)計、計算機(jī)組成原理、數(shù)據(jù)庫原理、計算機(jī)網(wǎng)絡(luò)、操作系統(tǒng)、編譯原理、信息安全技術(shù)、計算機(jī)體系結(jié)構(gòu)以及J2EE與中間件技術(shù);軟件工程專業(yè)課程有:軟件工程導(dǎo)論、軟件測試技術(shù)、需求分析與UML設(shè)計、軟件項目管理與過程控制;數(shù)字媒體技術(shù)專業(yè)課程有:數(shù)字媒體技術(shù)導(dǎo)論、計算機(jī)圖形學(xué)、數(shù)字圖像處理、網(wǎng)絡(luò)流媒體技術(shù)、用戶界面設(shè)計、視頻音頻制作與處理、數(shù)字影視特技應(yīng)用、高級游戲特性與游戲引擎、人機(jī)交互技術(shù)、虛擬現(xiàn)實技術(shù)與應(yīng)用、高級腳本與插件技術(shù)等。對于實踐性較強(qiáng)的課程開始單獨(dú)的實驗課程和配套的課程設(shè)計。
3.2 特色課程
計算機(jī)網(wǎng)絡(luò)游戲由計算機(jī)技術(shù)、藝術(shù)設(shè)計學(xué)和計算機(jī)動畫以及計算機(jī)圖形圖像技術(shù)高度交叉結(jié)合,目的是培養(yǎng)具有扎實的游戲編程功底和良好的邏輯思維習(xí)慣,具備較強(qiáng)的審美能力和一定的藝術(shù)素養(yǎng),熟悉游戲產(chǎn)品開發(fā)流程,具有一定的策劃能力,能在游戲公司、門戶網(wǎng)站、手機(jī)運(yùn)營企業(yè)、動畫公司等單位從事游戲設(shè)計、游戲開發(fā)、游戲制作、游戲策劃、游戲運(yùn)營等方面工作的富于競爭力與創(chuàng)新精神的高級復(fù)合型人才。
計算機(jī)游戲程序設(shè)計。課程目標(biāo):本課程主要學(xué)習(xí)普及游戲開發(fā)理念,培養(yǎng)游戲開發(fā)氛圍,挑選有潛力的學(xué)生組成開發(fā)團(tuán)隊;傳授游戲開發(fā)中的程序設(shè)計要素,特別是游戲引擎開發(fā)的基本知識。通過本課程的學(xué)習(xí),學(xué)生能夠掌握游戲開發(fā)的基本理念,熟悉游戲開發(fā)的基本技巧和流程,并具備從事游戲程序設(shè)計工作的基本技能。
虛擬現(xiàn)實與數(shù)字娛樂。課程目標(biāo):本課程主要介紹虛擬現(xiàn)實的基本概念及其系統(tǒng)組成、相關(guān)的軟件技術(shù)及虛擬現(xiàn)實的應(yīng)用,并介紹了當(dāng)前數(shù)字娛樂的現(xiàn)狀,發(fā)展和一些關(guān)鍵技術(shù)。內(nèi)容包括:虛擬現(xiàn)實的定義、特性和組成,虛擬世界的創(chuàng)建和管理,虛擬現(xiàn)實中的視覺計算,虛擬現(xiàn)實中的交互技術(shù),虛擬現(xiàn)實中的聲覺計算,增強(qiáng)現(xiàn)實,分布式虛擬現(xiàn)實,虛擬現(xiàn)實應(yīng)用,與虛擬現(xiàn)實相關(guān)的數(shù)字娛樂技術(shù)。
4.實踐教學(xué)體系
培養(yǎng)符合時代需要的創(chuàng)新性人才,就要強(qiáng)化實驗教學(xué)的開放性和多層次化?;趧?chuàng)新性原則和以生為本原則,結(jié)合培養(yǎng)目標(biāo)和自身教學(xué)特點(diǎn),數(shù)字媒體技術(shù)方向?qū)嵺`教學(xué)體系分為課程實驗,專業(yè)實訓(xùn)、畢業(yè)實習(xí)和畢業(yè)設(shè)計三個方面,各實踐環(huán)節(jié)之問相互協(xié)調(diào)、相互銜接、循序漸進(jìn)。
4.1 課程實驗
依照實踐能力培養(yǎng)循序漸進(jìn)的原則,根據(jù)實現(xiàn)數(shù)字媒體技術(shù)專業(yè)基本能力培養(yǎng)的系列課程,并按照系列課程的復(fù)雜度和規(guī)模設(shè)計實踐環(huán)節(jié),開展了多層次課程實驗教學(xué),根據(jù)學(xué)生的需要和實踐能力培養(yǎng)的漸進(jìn)規(guī)則,將實驗課安排大學(xué)四年的各個環(huán)節(jié)。
多層次實驗教學(xué)是指在實驗大綱與目標(biāo)的規(guī)范基礎(chǔ)上,將實驗項目設(shè)計成基礎(chǔ)型、綜合設(shè)計型、研究創(chuàng)新型不同層次的實驗。同一學(xué)生從基礎(chǔ)規(guī)范一綜合設(shè)計一研究創(chuàng)新這樣難度遞增的實驗項目中逐漸進(jìn)行訓(xùn)練,實現(xiàn)系統(tǒng)培養(yǎng)學(xué)生綜合實踐能力。課程實驗主要包括:手繪訓(xùn)練、視頻特技與非線性編輯、多媒體網(wǎng)頁設(shè)計、移動娛樂軟件開發(fā)、網(wǎng)絡(luò)娛樂軟件開發(fā)、界面設(shè)計課程設(shè)計、虛擬現(xiàn)實開發(fā)課程設(shè)計等。
4.2 專業(yè)實訓(xùn)
專業(yè)實訓(xùn)作為知識、能力、綜合素質(zhì)教育的結(jié)合點(diǎn),成為數(shù)字媒體技術(shù)專業(yè)實踐教學(xué)的重點(diǎn)之一。專業(yè)實訓(xùn)是對課堂教學(xué)具有延伸作用,是學(xué)生培訓(xùn)職業(yè)能力、熟悉職業(yè)環(huán)境、了解實際知識的重要渠道。通過專業(yè)實訓(xùn),學(xué)生不僅可以把所學(xué)轉(zhuǎn)化為所用,還能使學(xué)生在學(xué)習(xí)操作過程中通過不斷調(diào)整自己的知識結(jié)構(gòu)來慢慢適應(yīng)相應(yīng)職業(yè)崗位,鍛煉職業(yè)的能力,為實習(xí)以及今后走向社會積累經(jīng)驗、打下基礎(chǔ)。
我校軟件工程專業(yè)是校級專業(yè)綜合改革試點(diǎn)專業(yè),以爭建微軟IT學(xué)院、HP軟件學(xué)院為契機(jī),與知名IT企業(yè)開展深度合作,聯(lián)合培養(yǎng)具有國際視野的軟件開發(fā)、軟件測試和服務(wù)外包人才。與中軟國際、Tarena(達(dá)內(nèi))科技等十多家IT企業(yè)聯(lián)合建立了實習(xí)實訓(xùn)基地、就業(yè)基地。
4.3 畢業(yè)實習(xí)和畢業(yè)設(shè)計
畢業(yè)實習(xí)是學(xué)生將前期學(xué)習(xí)到的知識運(yùn)用到生產(chǎn)實踐中,真正了解、感受未來的工作,鍛煉自己各方面的綜合能力。真正實現(xiàn)與行業(yè)需求的專業(yè)實踐能力對接。能勝任相應(yīng)崗位的工作,從而積累工作經(jīng)驗,為就業(yè)做準(zhǔn)備。為了增強(qiáng)學(xué)生和指導(dǎo)老師對畢業(yè)設(shè)計(論文)及畢業(yè)實習(xí)的重視,提高畢業(yè)設(shè)計(論文)的質(zhì)量和提高學(xué)生在畢業(yè)設(shè)計(論文)及畢業(yè)實習(xí)實踐環(huán)節(jié)獲得的實踐能力,也為緩解畢業(yè)設(shè)計時間(論文)不足,筆者將畢業(yè)實習(xí)與畢業(yè)設(shè)計(論文)有機(jī)結(jié)合,實行“畢業(yè)實習(xí)+畢業(yè)設(shè)計”相結(jié)合的模式,學(xué)生畢業(yè)設(shè)計的內(nèi)容來自于畢業(yè)實習(xí),并且畢業(yè)設(shè)計的內(nèi)容要將畢業(yè)實習(xí)的內(nèi)容進(jìn)行一定的升華,除體現(xiàn)學(xué)生四年來所學(xué)知識綜合之外,還要體現(xiàn)出學(xué)生的創(chuàng)新能力與科研能力,達(dá)到培養(yǎng)創(chuàng)新型、復(fù)合型人才的標(biāo)準(zhǔn)。
5.結(jié)束語
通過對國內(nèi)外數(shù)字媒體技術(shù)相關(guān)專業(yè)及方向的調(diào)研,基于創(chuàng)新性人才培養(yǎng)目標(biāo),建立了相關(guān)的核心課程和多層次實踐教學(xué)體系,融合專業(yè)技術(shù)、實踐教學(xué)、校企合作共同培養(yǎng)為一體的軟件工程數(shù)字媒體特色專業(yè)方向的知識體系,著力培養(yǎng)學(xué)生的藝術(shù)與技術(shù)交叉結(jié)合的數(shù)字媒體制作與開發(fā)能力和職業(yè)素質(zhì),進(jìn)而使得學(xué)生的基礎(chǔ)知識、科學(xué)素養(yǎng)、藝術(shù)感悟、專業(yè)知識、創(chuàng)新能力、工程能力和職業(yè)素質(zhì)都得到全面均衡的發(fā)展,以增強(qiáng)他們在數(shù)字媒體行業(yè)就業(yè)的競爭能力。
參考文獻(xiàn)
[1]沈琦,于學(xué)軍,張麗,等.軟件工程(數(shù)字媒體技術(shù))特色專業(yè)復(fù)合型創(chuàng)新型人才培養(yǎng)模式研究[J].中國校外教育,2010,16:162-163.
[2]蔡建平,沈琦,于學(xué)軍等.軟件工程(數(shù)字媒體技術(shù))特色專業(yè)的特色建設(shè)[J].軟件,2012,33(4):108-111.
[3]耿衛(wèi)東等.面向數(shù)字媒體技術(shù)專業(yè)的數(shù)字化學(xué)習(xí)平臺建設(shè)[J].計算機(jī)教育,2010(16):99-101.
[4]向輝.數(shù)字媒體技術(shù)專業(yè)課程體系探討[J].計算機(jī)教育,2008(15):28-30.
[5]黃成云.數(shù)字媒體技術(shù)本科專業(yè)實踐教學(xué)體系研究[D].華中師范大學(xué),2012,5.
關(guān)鍵詞:CDIO;課程群;軟件開發(fā);實踐教學(xué)
0 引言
隨著高等教育進(jìn)入大眾化階段,國內(nèi)高等教育呈現(xiàn)多樣化的辦學(xué)格局。許多新升本科院校確立了培養(yǎng)應(yīng)用型人才的目標(biāo)定位,應(yīng)用型本科教育已逐漸成為我國高等教育體系中一種新的重要類型。應(yīng)用型人才是高等學(xué)校根據(jù)社會實際需要所培養(yǎng)面向?qū)嶋H、面向生產(chǎn)一線掌握一定基礎(chǔ)理論知識并有一定的創(chuàng)新能力的人才。因此,在應(yīng)用型人才的培養(yǎng)過程中,既要重視對基本概念和基礎(chǔ)理論的掌握和理解,更應(yīng)重視實踐動手能力的培養(yǎng),使培養(yǎng)的人才面向市場、面向應(yīng)用,具備基礎(chǔ)理論適度、技術(shù)應(yīng)用能力強(qiáng)、知識面較寬、素質(zhì)高等特點(diǎn)。
計算機(jī)科學(xué)與技術(shù)是一個實踐性很強(qiáng)的工科專業(yè),不僅要求從業(yè)者具有扎實的理論知識,更要求從業(yè)者具有較強(qiáng)的應(yīng)用能力和實踐動手能力。而軟件開發(fā)能力是計算機(jī)科學(xué)與技術(shù)專業(yè)學(xué)生最重要的一種能力,如何通過一系列理論課程的學(xué)習(xí)和實踐環(huán)節(jié)的鍛煉使學(xué)生獲得這種能力,為今后的工作打下牢固的基礎(chǔ),是一個非?,F(xiàn)實和重要的課題。
本文以應(yīng)用型軟件開發(fā)人才培養(yǎng)為目標(biāo),以加強(qiáng)軟件開發(fā)課程群建設(shè)為契機(jī),結(jié)合CDIO的一體化、工程、主動學(xué)習(xí)等理念,對軟件開發(fā)課程群的實踐環(huán)節(jié)進(jìn)行改進(jìn),采用先進(jìn)的工程教育培養(yǎng)模式,提高學(xué)生的軟件開發(fā)水平和實踐動手能力,從而提升畢業(yè)生在軟件產(chǎn)業(yè)人才市場的競爭能力和適應(yīng)能力。
1 CDIO工程教育模式
CDIO工程教育模式是近年來國際工程教育改革的最新成果。為了應(yīng)對經(jīng)濟(jì)全球化形勢下的產(chǎn)業(yè)發(fā)展對工程人才的大量需求,麻省理工學(xué)院、瑞典皇家工學(xué)院等4所大學(xué)從2000年起成立的跨國研究組,經(jīng)過4年的探索研究后創(chuàng)立了CDIO工程教育理念。CDIO是構(gòu)思(Conceive)、設(shè)計(Design)、實現(xiàn)(Implement)、運(yùn)作(Operate)的集合體,讓學(xué)生以主動、實踐、課程內(nèi)容有機(jī)聯(lián)系學(xué)習(xí)工程的方式,即“做中學(xué)”的方式來學(xué)習(xí)。CDIO培養(yǎng)模式通過項目將整個課程體系有機(jī)而系統(tǒng)地結(jié)合起來,目標(biāo)是培養(yǎng)高素質(zhì)的工程應(yīng)用人才。將CDIO理念貫穿于軟件開發(fā)課程群實踐教學(xué)中,對應(yīng)用型工程人才實踐動手能力的提高具有重要作用和實際意義。
2 軟件開發(fā)課程群的設(shè)置
課程群是數(shù)門課程的集合,對于課程體系、課程群和課程建設(shè),它處于中觀的位置。其核心都是從培養(yǎng)學(xué)生的能力出發(fā),研究各子課程之間的內(nèi)在聯(lián)系,將它們進(jìn)行合理整合,通過課程群建設(shè)得以提升到一個新檔次,從而使整體教學(xué)質(zhì)量得到提高。軟件開發(fā)課程群是計算機(jī)科學(xué)與技術(shù)專業(yè)的主干課程,軟件開發(fā)課程群應(yīng)以“培養(yǎng)應(yīng)用型的本科人才,注重計算機(jī)實踐能力培養(yǎng)”為核心進(jìn)行建設(shè)。隨著專業(yè)的發(fā)展,專業(yè)內(nèi)涵逐漸從“計算機(jī)”延伸到“計算”,學(xué)科目標(biāo)也應(yīng)進(jìn)行相應(yīng)的轉(zhuǎn)換和充實。在這樣的背景下,跟軟件開發(fā)系列有關(guān)的課程相對比較多。為了便于管理和進(jìn)行分類,將軟件開發(fā)課程群按遞進(jìn)關(guān)系進(jìn)行設(shè)置,分為軟件開發(fā)基礎(chǔ)、算法分析和軟件開發(fā)工具3個子課程群。軟件開發(fā)課程群的具體設(shè)置如表1所示。
表1 軟件開發(fā)課程群設(shè)置
上表中,隨著移動應(yīng)用開發(fā)成為新的熱門產(chǎn)業(yè),嵌入式軟件開發(fā)模塊側(cè)重于智能手機(jī)應(yīng)用軟件的開發(fā),并且以Android平臺為基礎(chǔ)進(jìn)行教學(xué)。
3 基于CDIO的實踐教學(xué)改革
通過分析軟件開發(fā)課程群的特點(diǎn)以及CDIO工程教育模式中以能力培養(yǎng)為目標(biāo)的大綱和相應(yīng)標(biāo)準(zhǔn),以CDIO的工程教育理念為指導(dǎo),對課程群的實踐教學(xué)環(huán)節(jié)進(jìn)行改革。
軟件開發(fā)課程群由十多門相互獨(dú)立又聯(lián)系緊密的課程組成,它們有著不同的課程目標(biāo),但又銜接緊密,共同構(gòu)成了一個培養(yǎng)軟件開發(fā)人才的課程體系。軟件開發(fā)課程群不僅僅重視基本理論的驗證,在教學(xué)過程中更應(yīng)特別突出實踐教學(xué)的重要性,制定相宜的系統(tǒng)實踐教學(xué)計劃和學(xué)生訓(xùn)練目標(biāo)。為構(gòu)建良好的實踐環(huán)節(jié),需要在CDIO教學(xué)理念的指導(dǎo)下,根據(jù)工程化實踐教學(xué)的需求,全面調(diào)整實踐課程與教學(xué)模式,實現(xiàn)工程化教學(xué)模式。
根據(jù)軟件開發(fā)人才的培養(yǎng)目標(biāo)及相應(yīng)專業(yè)能力的要求,結(jié)合CDIO的一體化理念、工程理念、主動學(xué)習(xí)理念、團(tuán)隊協(xié)作理念等,我們將軟件開發(fā)課程群實踐教學(xué)分為三個層次,即基礎(chǔ)層、綜合應(yīng)用層和創(chuàng)新層。每個層次的實踐教學(xué)內(nèi)容及能力訓(xùn)練目標(biāo)如圖1所示。
圖1 軟件開發(fā)課程群實踐教學(xué)層次及能力訓(xùn)練目標(biāo)
在圖1中,基礎(chǔ)層主要通過計算機(jī)程序設(shè)計語言和專業(yè)基礎(chǔ)課程的驗證性實驗為主,為了鍛煉學(xué)生的自主學(xué)習(xí)能力,部分實踐操作由學(xué)生課后獨(dú)立完成;綜合應(yīng)用層強(qiáng)調(diào)技術(shù)知識和工程能力的培養(yǎng),由綜合性和設(shè)計性實驗、課程設(shè)計(項目實訓(xùn))的方式訓(xùn)練完成,該階段面對簡單的工程問題,在教師指導(dǎo)下由學(xué)生組成3-5人的開發(fā)小組自行完成設(shè)計、制作、調(diào)試、測試實驗結(jié)果,共同完成實驗課題。面對一個綜合性的小型項目,能較好地培養(yǎng)學(xué)生的過程與系統(tǒng)構(gòu)建能力,在共同開發(fā)中,還培養(yǎng)了學(xué)生團(tuán)隊協(xié)作能力;創(chuàng)新層強(qiáng)調(diào)創(chuàng)新能力的培養(yǎng),主要通過頂崗實習(xí)、畢業(yè)設(shè)計、科研訓(xùn)練和科技競賽的方式完成,它涵蓋了CDIO“在企業(yè)與社會環(huán)境下的構(gòu)思-設(shè)計-實現(xiàn)-運(yùn)作”層面所需要的能力。該階段吸納學(xué)生進(jìn)行與“產(chǎn)學(xué)研”相關(guān)課題的編程創(chuàng)新訓(xùn)練。通過學(xué)生科技競賽、程序設(shè)計大賽和深入企業(yè)實踐教學(xué)基地、畢業(yè)實習(xí)單位進(jìn)行頂崗實習(xí)等方式,在公司環(huán)境中,真實感受軟件工程項目的整個開發(fā)流程,該實踐環(huán)節(jié)要求學(xué)生按軟件企業(yè)產(chǎn)品開發(fā)周期進(jìn)行構(gòu)思、設(shè)計、實現(xiàn)以及運(yùn)作,屬于高級層次的項目;或者對學(xué)術(shù)型學(xué)生,吸引他們參與教師的科研課題,爭取發(fā)表學(xué)術(shù)論文和科研成果等。教師在提供畢業(yè)設(shè)計選題過程中,也要注重畢業(yè)設(shè)計課題的綜合性和創(chuàng)新性。因為在創(chuàng)新性實踐教學(xué)環(huán)節(jié),需要學(xué)生查閱英文資料,而且開發(fā)環(huán)境也是英文版,所以該環(huán)節(jié)也涵蓋了CDIO能力大綱中的外語交流能力。
軟件開發(fā)課程群實踐教學(xué)中兩個主體分別是教師和學(xué)生,為了培養(yǎng)學(xué)生的工程實踐能力,顯然教師也需具備CDIO能力。為了提高主講教師的工程經(jīng)驗,學(xué)校派遣教師去企業(yè)進(jìn)行為期半年的工程實踐鍛煉培養(yǎng)。此外還邀請軟件開發(fā)企業(yè)的項目經(jīng)理到校對教師和學(xué)生進(jìn)行短期培訓(xùn)。學(xué)校也鼓勵教師承接企業(yè)委托的橫向項目開發(fā),通過實實在在的企業(yè)課題提高教師的工程實踐能力。
4 學(xué)生實踐教學(xué)的評價機(jī)制
為了保證軟件開發(fā)課程群實踐教學(xué)體系的良好運(yùn)行,必須建立起一套易于操作的評價機(jī)制,對實踐教學(xué)中涉及的各項能力進(jìn)行有效評價。對學(xué)生的評價機(jī)制貫穿整個學(xué)習(xí)過程,包括學(xué)生學(xué)習(xí)評價機(jī)制、實驗評價機(jī)制、課程設(shè)計評價機(jī)制、實習(xí)評價機(jī)制、畢業(yè)設(shè)計評價機(jī)制等等。實踐教學(xué)的具體考核方法如表2所示。
表2 軟件開發(fā)課程群實踐教學(xué)考核方法
上表中,綜合性和設(shè)計性實驗由于涉及學(xué)生綜合應(yīng)用知識的能力和工程實踐能力,僅僅看報告并不能客觀評價一個學(xué)生,因此需要學(xué)生做課堂答辯,除了當(dāng)堂演示系統(tǒng)運(yùn)行之外,還要敘述自己的系統(tǒng)設(shè)計思路,并回答教師提問。課程設(shè)計為小組團(tuán)隊完成,為了考察一個學(xué)生的團(tuán)隊協(xié)作能力,協(xié)作能力的好壞小組成員最清楚,因此需要組員對考核者做小組評定。創(chuàng)新性實踐教學(xué)是對學(xué)生更高層次的培養(yǎng),并不需要每個學(xué)生都必須完成該項考核,對那些綜合素質(zhì)較高、創(chuàng)新能力強(qiáng)的學(xué)生,通過他們的獲獎證書、發(fā)表的科研論文、申報的專利或者參與科研課題的總結(jié)報告,由班主任進(jìn)行考核評定,作為學(xué)生評優(yōu)、評先的重要依據(jù)。通過上表所述的各項考核方法,我們對學(xué)生基于CDIO的各項能力有一個客觀的評價標(biāo)準(zhǔn),使老師及時分析學(xué)生情況,從而為進(jìn)一步調(diào)整優(yōu)化工程化教學(xué)實踐要求提供依據(jù)。
5 結(jié)束語
教學(xué)改革的最終目的是培養(yǎng)符合市場和社會需求的工程實踐型人才,學(xué)生軟件開發(fā)能力的培養(yǎng)是適應(yīng)社會對計算機(jī)專業(yè)人才的需要。本文通過分析軟件開發(fā)課程群和CDIO工程教育模式的特點(diǎn),同時綜合考慮應(yīng)用型本科高校對學(xué)生的培養(yǎng)目標(biāo),對軟件開發(fā)課程群的實踐教學(xué)改革進(jìn)行了探討。軟件開發(fā)課程群實踐教學(xué)是一個多層次、全方位、重應(yīng)用的完整體系,以培養(yǎng)學(xué)生CDIO能力為目標(biāo),包括實驗教學(xué)、課程設(shè)計、頂崗實習(xí)、畢業(yè)設(shè)計及創(chuàng)新性實踐活動等,從基礎(chǔ)到課程綜合知識的運(yùn)用,到真正的軟件開發(fā)流程訓(xùn)練,到學(xué)生創(chuàng)新思維能力的培養(yǎng),一步步地將計算機(jī)專業(yè)學(xué)生培養(yǎng)成社會有用的軟件人才。實踐結(jié)果表明,本課程群實踐教學(xué)體系一是能滿足不同學(xué)生層次的學(xué)習(xí)需要;二是通過真實的企業(yè)環(huán)境進(jìn)行工程化培訓(xùn),學(xué)生的學(xué)習(xí)目的明確,團(tuán)隊意識、職業(yè)素養(yǎng)和就業(yè)能力等方面均有明顯提高;三是通過校企實踐教學(xué)基地的實訓(xùn)及創(chuàng)新實踐教學(xué)的訓(xùn)練,部分學(xué)生的創(chuàng)新能力明顯得到了提高,為今后研究性學(xué)習(xí)打下了堅實的基礎(chǔ)。
參考文獻(xiàn):
[1] 王勇,王忠群.面向應(yīng)用的計算機(jī)軟件方向課程群研究[J].長春大學(xué)學(xué)報.2011,21(12):98-103.
[2] 譚德坤,吳潤秀.以《數(shù)據(jù)結(jié)構(gòu)》為核心的軟件開發(fā)課程群建設(shè)[J].南昌工程學(xué)院學(xué)報,2010(2):32-34.
[3] 廖志芳,胡志剛,任勝兵等.軟件工程CDIO“五位一體”實踐教學(xué)體系[J].計算機(jī)教育,2010(11):128-131.
[4] 陳昊,明仲,彭小剛.軟件工程課程群實驗教學(xué)改革探討[J].實驗科學(xué)與技術(shù),2011(4):93-96.
[5] 陶維安,范會聯(lián).應(yīng)用型軟件開發(fā)人才培養(yǎng)模式研究[J].教育與職業(yè),2012(20):105-106.
[6] 洪小娟,楊小進(jìn),黃衛(wèi)東. 依托課程群構(gòu)建信管專業(yè)模擬實驗平臺[J].實驗室研究與探索,2011(4):130-133,181.
[7] 丁衛(wèi)平,陳建平,管致錦等.以程序設(shè)計課程群實踐教學(xué)改革為契機(jī),培養(yǎng)地方普通本科院校學(xué)生編程創(chuàng)新能力[J].計算機(jī)教育,2009(20):10-13.
[8] 王艷玲.借鑒CDIO理念的軟件技術(shù)專業(yè)“雙工程”實踐教學(xué)改革探索[J].價值工程,2013(1):293-294.
[9] 雷建云.淺談高校計算機(jī)專業(yè)軟件實踐教學(xué)體系的建立與實施[J].計算機(jī)教育,2009(8):110-111.
關(guān)鍵詞:應(yīng)用型;基于項目;實踐訓(xùn)練;答辯考核
隨著我國高等教育改革的進(jìn)一步深化,由教育部提出針對在校大學(xué)生的創(chuàng)新型人才和創(chuàng)業(yè)型人才的培養(yǎng)正逐漸成為應(yīng)用型院校轉(zhuǎn)型的目標(biāo)。那么如何讓在校大學(xué)生具備軟件項目開發(fā)的技能和知識也是軟件工程專業(yè)的培養(yǎng)目標(biāo)之一。培養(yǎng)學(xué)生軟件開發(fā)的應(yīng)用能力已經(jīng)成為軟件工程專業(yè)的人才培養(yǎng)的首要目標(biāo)。[1]《軟件工程導(dǎo)論》課程的教學(xué)任務(wù)也由原來軟件開發(fā)理論知識的講授轉(zhuǎn)變?yōu)檐浖_發(fā)基本技能和文檔撰寫能力的訓(xùn)練和培養(yǎng),通過學(xué)習(xí)這門課使學(xué)生能夠了解軟件開發(fā)的流程,并且知道在開發(fā)的過程中每個階段都做什么和怎么去做,讓學(xué)生能夠直接進(jìn)入到項目組里,參與軟件項目開發(fā)。這樣改革的好處是多樣的:1.這樣除了對學(xué)生應(yīng)用能力進(jìn)行了培養(yǎng),而且讓學(xué)生對軟件項目的了解進(jìn)一步加深,后續(xù)為以后的其它專業(yè)課的學(xué)習(xí)也打下了基礎(chǔ);2.在同步開設(shè)的其他課程中,進(jìn)行橫向聯(lián)合,讓學(xué)生都針對同一項目進(jìn)行訓(xùn)練,讓學(xué)生能夠?qū)W有所用,大大提高了學(xué)習(xí)興趣和積極性;3.對各門專業(yè)課的教學(xué)內(nèi)容和方式都有所觸動,促進(jìn)了教學(xué)改革的深入。目前,國內(nèi)各個高校的軟件專業(yè)中都開設(shè)有《軟件工程導(dǎo)論》這門課。多數(shù)學(xué)校還是當(dāng)作一門專業(yè)基礎(chǔ)理論課來講授,這樣的學(xué)校大多是研究型大學(xué),學(xué)生基礎(chǔ)比較扎實,對枯燥的理論可以接受,但是只學(xué)理論沒有實踐造成的后果是學(xué)完就忘,學(xué)生只會答題;還有一些學(xué)校對《軟件工程導(dǎo)論》課程進(jìn)行了一些改革,比如將理論基于一種開發(fā)環(huán)境的軟件開發(fā),試圖將理論和實踐相結(jié)合,但是多數(shù)是面向?qū)ο箝_發(fā)方式,理論多實踐少,落到實際課堂教學(xué)上還是教師說的多,學(xué)生做的少,對學(xué)生實踐能力培養(yǎng)并沒有多大的改變。對課程的教學(xué)改革主要包括教學(xué)內(nèi)容的改革,教學(xué)方式方法的改革,考核方法的改革。
一、教學(xué)內(nèi)容的改革
目前《軟件工程導(dǎo)論》課程的教學(xué)內(nèi)容包括:軟件開發(fā)基礎(chǔ)知識,需求分析,總體設(shè)計、詳細(xì)設(shè)計、編碼、測試[2]、項目管理這些內(nèi)容,采用的是結(jié)構(gòu)化的軟件開發(fā)方法。之前我們只講理論知識,特別是開發(fā)過程中的一些技術(shù)和軟件,但是學(xué)生學(xué)完即使會做題也不會開發(fā)項目?,F(xiàn)在,我們將教師實際參與開發(fā)的項目帶領(lǐng)學(xué)生從需求開始分析,進(jìn)行總體設(shè)計和詳細(xì)設(shè)計加入到授課內(nèi)容中,結(jié)合實際的項目開發(fā)的內(nèi)容,把理論和實踐相結(jié)合。學(xué)生邊學(xué)理論知識,邊完成自己的項目,可以將學(xué)到的知識應(yīng)用到項目中,做到學(xué)有所用。希望培養(yǎng)學(xué)生整體軟件開發(fā)的方法、軟件項目管理能力、軟件需求分析能力、數(shù)據(jù)庫設(shè)計能力、人機(jī)交互設(shè)計能力、軟件測試計劃及方案的制定能力、課程報告撰寫能力、學(xué)習(xí)態(tài)度等各方面能力。
二、教學(xué)方式方法的改革
《軟件工程導(dǎo)論》是一門理論課,多數(shù)是在多媒體教室由教師講授為主進(jìn)行授課?,F(xiàn)在,在開課之初,我們要求每個學(xué)生申報一個題目,整個學(xué)習(xí)過程中學(xué)到哪個階段,學(xué)生就自己去完成所申報題目的該階段的任務(wù),這樣課堂上老師講怎么開發(fā)軟件,在課下布置了大量的階段性文檔要求學(xué)生去完成,而且各個階段所采用的方法也不同,隨著各階段任務(wù)的完成,學(xué)生也體會到了項目開發(fā)的過程、方法。為了保證學(xué)生提交的階段文檔的質(zhì)量和保證學(xué)生的項目能夠順利進(jìn)行,我們將階段評審添加到了教學(xué)過程中。學(xué)生需要提交的階段任務(wù)文檔有:《軟件需求規(guī)格說明書》、《軟件概要設(shè)計說明書》、《軟件測試報告》和《課程綜合報告》。其中《課程綜合報告》中要求按照畢業(yè)論文的格式要求去排版和完成,希望同學(xué)們通過這樣的訓(xùn)練能夠在畢業(yè)設(shè)計中取得較好的效果和成績。在教學(xué)改革時我們還嘗試著和同時開設(shè)的《數(shù)據(jù)庫原理與應(yīng)用》、《面向?qū)ο蟪绦蛟O(shè)計》等課聯(lián)合起來,分別針對同一題目進(jìn)行階段訓(xùn)練,在最終答辯的時候由三門課的老師同時參與答辯,答辯成績被記入到三門課的最終成績里,比如《數(shù)據(jù)庫原理與應(yīng)用》課學(xué)習(xí)如何設(shè)計數(shù)據(jù)庫就應(yīng)用在了《軟件工程導(dǎo)論》課的總體設(shè)計階段,學(xué)生需要畫出E-R圖,給出主要表結(jié)構(gòu);《面向?qū)ο蟪绦蛟O(shè)計》課最終就是根據(jù)《軟件工程導(dǎo)論課》分析和設(shè)計的結(jié)果用JAVA語言開發(fā)出一個小項目,這樣學(xué)生不僅寫出了階段文檔,最終還能做出一個實際的項目,增加了完整性和學(xué)習(xí)積極性。
三、考核方法的改革
原來我們都是采用試卷考核的方式,但是試卷考核只能考察學(xué)生的知識掌握能力,并不能考核學(xué)生的實踐應(yīng)用能力,而我們希望通過這門課程讓學(xué)生具備一定的軟件開發(fā)實踐能力,所以由試卷考核改為答辯考核和平時階段性評審。[3]這也要求在開課之初就制定出比較詳細(xì)和全面的考核方案,我們的考核方案從課程報告、答辯平時表現(xiàn)這三大方面出發(fā)進(jìn)行考核,具體考核標(biāo)準(zhǔn)如表1。而且,在課程報告提交時,我們有統(tǒng)一的文檔格式和內(nèi)容要求,包括需求分析報告,概要設(shè)計報告、測試報告、課程設(shè)計報告,在平時授課階段就需要提交上來;而答辯時,將學(xué)生答辯的項目原型與學(xué)生之前提交的需求、設(shè)計進(jìn)行對應(yīng),審核是否是按照需求和設(shè)計進(jìn)行的開發(fā);而且在近幾次的答辯中,我們將答辯所占的比重逐步增加,這樣可以看出學(xué)生的表達(dá)能力、思維能力、項目綜合運(yùn)用能力的高低?!盾浖こ虒?dǎo)論》課程改革的目標(biāo)就是希望將枯燥、抽象的理論課變成充滿趣味和挑戰(zhàn)的實訓(xùn)課,讓學(xué)生通過本課程學(xué)習(xí)能夠知道項目開發(fā)各階段的工作內(nèi)容,且能夠開發(fā)一個簡單的項目,避免在畢業(yè)設(shè)計時犯一些軟件開發(fā)的常識性錯誤,比如項目開發(fā)流程弄錯,如何進(jìn)行分析和設(shè)計等等。同時為了提高學(xué)生的創(chuàng)新能力,讓學(xué)生自己申報題目,從需求分析到最終分析設(shè)計結(jié)束都需要學(xué)生自己動手來做,通過學(xué)習(xí)軟件工程思想和方法去完成軟件開發(fā)過程,可以調(diào)動學(xué)生的主觀能動性,真正做到獨(dú)立思考,能夠激發(fā)學(xué)生的潛能和創(chuàng)新性,為創(chuàng)新型和應(yīng)用型人才的培養(yǎng)打下堅實的基礎(chǔ)。
參考文獻(xiàn)
[1]王菁華.地方高校向應(yīng)用型轉(zhuǎn)型必須實現(xiàn)三個根本轉(zhuǎn)變[J].職業(yè)教育,2016.
[2]韓萬江.軟件工程實例教程[M].機(jī)械工業(yè)出版社,2014,3.
關(guān)鍵詞:軟件工程;實踐化教學(xué);軟件構(gòu)造;教學(xué)方法
0引言
軟件工程是一門實踐性很強(qiáng)的課程,課程實踐對于鞏固課堂教學(xué)成果、培養(yǎng)學(xué)生軟件工程能力具有重要作用,因此實踐化教學(xué)已成為軟件工程課程建設(shè)的一個基本方向[1-4]。本文所討論的軟件工程課程是指軟件工程概論課程,一般會作為軟件工程或計算機(jī)專業(yè)本科生基礎(chǔ)課在大學(xué)二年級或三年級開設(shè),從而為軟件需求、軟件設(shè)計、軟件測試等后續(xù)專業(yè)課程學(xué)習(xí)打下基礎(chǔ)。例如,復(fù)旦大學(xué)軟件學(xué)院的軟件工程課程在大二下學(xué)期開設(shè),后續(xù)還開設(shè)了多門軟件工程專業(yè)課程以及軟件實踐課程。因此,這類概論性質(zhì)的軟件工程課程實踐教學(xué)的主要目的是通過實踐鞏固與加深對課程內(nèi)容的理解,同時初步培養(yǎng)學(xué)生的軟件工程能力。在此基礎(chǔ)上,可在高年級專門開設(shè)綜合性的軟件實踐課程,并突出規(guī)模性、綜合性、集成性、創(chuàng)新性等方面的實踐要求[2]。軟件工程課程實踐應(yīng)當(dāng)貼近工業(yè)界的軟件開發(fā)實踐,以一種迭代化的方式開展。通過多次迭代的系統(tǒng)理解、分析、糾錯、改進(jìn)等演化式的開發(fā)活動,不僅可增強(qiáng)學(xué)生的代碼理解、修改等軟件開發(fā)實踐能力,還可強(qiáng)化對其軟件設(shè)計準(zhǔn)則、編碼和文檔習(xí)慣以及軟件測試能力的培養(yǎng)[5]??紤]到授課對象的專業(yè)基礎(chǔ)及可接受性,本文在軟件工程課程教學(xué)與實踐中采用以軟件構(gòu)造活動為中心的思想。軟件構(gòu)造是指通過將編碼、驗證、單元測試、集成測試及調(diào)試相結(jié)合,具體創(chuàng)建可運(yùn)行的軟件的過程[6]。作為剛經(jīng)過2年專業(yè)學(xué)習(xí)、初步掌握編程能力的本科生而言,軟件構(gòu)造活動所覆蓋的軟件工程專業(yè)知識及能力是其最容易理解與接受的學(xué)習(xí)內(nèi)容。以軟件設(shè)計為例,其中包含兩個層次[6]:體系結(jié)構(gòu)設(shè)計關(guān)注軟件頂層結(jié)構(gòu)和組織,以及識別各種可用組件;詳細(xì)設(shè)計關(guān)注為每個組件(或模塊)提供足夠的細(xì)節(jié)以支持軟件構(gòu)造。在這兩個層次中,體系結(jié)構(gòu)設(shè)計通常在大規(guī)模、分布式軟件系統(tǒng)開發(fā)中有較多考慮,但在此階段的學(xué)生由于缺乏所需專業(yè)知識和軟件開發(fā)經(jīng)驗,一般很難理解體系結(jié)構(gòu)設(shè)計。屬于軟件構(gòu)造活動一部分的詳細(xì)設(shè)計則建立在面向?qū)ο笤O(shè)計等更貼近編碼開發(fā)能力的基礎(chǔ)上,比較適合在軟件工程課程中進(jìn)行介紹與實踐。此外,課程設(shè)計還充分考慮了軟件工程師成長路徑,按照局部編碼、詳細(xì)設(shè)計、總體設(shè)計、需求分析與測試的順序逐步開展課程教學(xué)與實踐。按照以上指導(dǎo)思想,本文設(shè)計了軟件工程課程教學(xué)及配套實踐內(nèi)容,在復(fù)旦大學(xué)軟件學(xué)院開展課程教學(xué),并依托華為軟件開發(fā)云DevCloud平臺[7]開展實踐教學(xué),取得了良好效果。
1課程教學(xué)及實踐安排
根據(jù)軟件工程實踐化教學(xué)的需要,同時考慮修讀本課程學(xué)生的專業(yè)基礎(chǔ)及可接受度,本文確定了以下3條課程教學(xué)內(nèi)容安排基本原則:(1)以軟件構(gòu)造活動為中心。以詳細(xì)設(shè)計、編碼、單元測試等軟件構(gòu)造活動以及與之密切相關(guān)的版本管理等協(xié)作支持能力為中心,強(qiáng)調(diào)本科生可深入理解并切實掌握的軟件工程能力。(2)突出實踐化培養(yǎng)特色。通過課程實踐項目加強(qiáng)學(xué)生對相關(guān)知識的理解、鍛煉對應(yīng)的軟件工程能力,課程教學(xué)內(nèi)容及進(jìn)度安排配合實踐項目進(jìn)展過程。(3)體現(xiàn)軟件工程師成長路徑。課程教學(xué)內(nèi)容安排體現(xiàn)企業(yè)中軟件工程師的成長路徑,按照局部編碼、詳細(xì)設(shè)計、總體設(shè)計、需求分析與測試的順序逐步培養(yǎng)學(xué)生的軟件工程能力,同時穿插版本管理和配置管理等團(tuán)隊協(xié)作能力培養(yǎng)。根據(jù)以上原則,本文設(shè)計了課程相關(guān)教學(xué)模塊及實踐內(nèi)容。
1.1課程教學(xué)模塊設(shè)計
課程教學(xué)內(nèi)容模塊及其教學(xué)順序如表1所示。軟件工程概述部分為學(xué)生提供了一個關(guān)于軟件工程思想及其基本內(nèi)容的概覽,為其理解后續(xù)學(xué)習(xí)內(nèi)容提供一個基本的上下文知識背景。后續(xù)學(xué)習(xí)過程從個人開發(fā)技能和必要的軟件過程與團(tuán)隊協(xié)作能力開始,逐步展開軟件設(shè)計、軟件需求、軟件測試等教學(xué)內(nèi)容。其中,個人開發(fā)技能和軟件設(shè)計兩部分中與軟件構(gòu)造密切相關(guān)的內(nèi)容是教學(xué)重點(diǎn),屬于學(xué)生較容易接受并掌握的基礎(chǔ)開發(fā)能力。各個課程教學(xué)模塊都需要與課程實踐及相應(yīng)的軟件開發(fā)環(huán)境和工具相結(jié)合,突出各部分的實踐要點(diǎn)。
1.2課程實踐內(nèi)容設(shè)計
課程的重點(diǎn)教學(xué)內(nèi)容需要通過課程實踐讓學(xué)生進(jìn)行體驗與鞏固。為此,本文設(shè)計了配套的課程實踐項目。除第一次的體驗性實驗外,整個實踐項目都是圍繞一個開發(fā)項目(如“在線論文投稿系統(tǒng)”)要求,以一種小組協(xié)作和迭代化的方式開展。教學(xué)側(cè)重點(diǎn)從編碼能力、設(shè)計能力到分析能力逐步進(jìn)階,同時伴隨著軟件需求逐步增加與變更。實踐項目依托華為軟件開發(fā)云DevCloud平臺進(jìn)行,可實現(xiàn)整個軟件開發(fā)與協(xié)作過程全程留痕,幫助學(xué)生更完整與系統(tǒng)地理解工程化軟件開發(fā),同時為課程項目評分提供依據(jù)。課程實踐項目以4人為一組,設(shè)置組長1名,根據(jù)交付及完成情況進(jìn)行整體評估打分,期末再通過組內(nèi)協(xié)商或互評將實踐項目評分分解到人。整個課程實踐項目分階段安排如下,其中針對卓越工程師班的特殊要求需單獨(dú)注明。階段1(個人任務(wù)):熟悉DevCloud及Git版本庫,在事先準(zhǔn)備好的Web項目內(nèi)容基礎(chǔ)上通過fork操作建立自己的代碼倉庫,利用Maven完成項目構(gòu)建,并在華為云上進(jìn)行在線部署。階段2(小組任務(wù)—初始項目開發(fā)):利用SpringBoot+Vue實現(xiàn)一個在線論文投稿系統(tǒng)的注冊、登錄以及會議申請等基本功能,并在華為云上進(jìn)行部署;要求使用DevCloud的需求規(guī)劃、工作分配以及代碼質(zhì)量檢查功能,確保功能實現(xiàn)的正確性和完整性,同時注重版本提交等開發(fā)過程的規(guī)范性。階段3(小組任務(wù)—代碼質(zhì)量):實現(xiàn)系統(tǒng)中的會議申請與管理等相關(guān)功能;實踐單元測試,要求項目中的代碼測試覆蓋率不低于80%;提升代碼質(zhì)量,要求使用DevCloud代碼質(zhì)量檢查工具進(jìn)行代碼質(zhì)量檢查,并解決檢查中暴露出來的代碼質(zhì)量問題。階段4(小組任務(wù)—設(shè)計與持續(xù)集成):完成系統(tǒng)的稿件分配與審稿功能,回顧并檢視軟件設(shè)計質(zhì)量,進(jìn)行必要的重構(gòu)與改進(jìn);為提交的代碼打標(biāo)簽(如按照每次迭代后實現(xiàn)的功能打標(biāo)簽),根據(jù)標(biāo)簽實現(xiàn)選擇性地編譯構(gòu)建;利用華為云平臺構(gòu)建CI/CD流水線,嘗試持續(xù)集成、持續(xù)交付與持續(xù)部署(卓越班要求)。階段5(小組任務(wù)—需求分析與測試):完成系統(tǒng)中的會議評審意見答復(fù)(rebuttal)與論文錄用相關(guān)功能;開展需求分析,檢視此前軟件實現(xiàn)中的需求完備性和準(zhǔn)確性;在單元測試的基礎(chǔ)上實踐集成測試;結(jié)合DevCloud和SonarQube的代碼檢測能力進(jìn)一步改善代碼質(zhì)量;進(jìn)一步完善CI/CD流水線,使每個任務(wù)的健康度都達(dá)到四星及以上(卓越班要求)。以上課程實踐項目安排通過迭代化的方式逐步完善項目各項功能,每個階段結(jié)束后都有可交付、可運(yùn)行的軟件版本。這種演化式的開發(fā)過程更有利于學(xué)生理解真實的軟件開發(fā)過程,同時對軟件代碼和設(shè)計質(zhì)量等方面要求有更深刻的理解與體會。與此同時,在每個課程項目階段中都加入與課程教學(xué)內(nèi)容相對應(yīng)的實踐要求。例如,第2階段在完成初始項目功能開發(fā)的基礎(chǔ)上,要求學(xué)生利用DevCloud的代碼質(zhì)量檢查功能發(fā)現(xiàn)代碼質(zhì)量問題并進(jìn)行修復(fù),同時建立基本的版本提交規(guī)范;第3階段在增量需求開發(fā)的基礎(chǔ)上,進(jìn)一步要求學(xué)生實踐單元測試并解決大部分代碼質(zhì)量問題。此外,整個課程實踐項目過程都貫穿了對軟件設(shè)計能力和團(tuán)隊協(xié)作能力的要求:通過迭代化和演化式的開發(fā)過程讓學(xué)生體驗軟件設(shè)計(特別是模塊化設(shè)計)質(zhì)量對軟件持續(xù)演化與擴(kuò)展能力的支持;持續(xù)的小組任務(wù)要求學(xué)生在項目中考慮前后端分離、模塊劃分、接口定義等設(shè)計問題,同時建立有效的分工協(xié)調(diào)、進(jìn)度管理、交流討論、版本分支與合并、集成與測試、構(gòu)建與部署等團(tuán)隊協(xié)作機(jī)制。
2實踐教學(xué)效果
采用上述實踐化教學(xué)方式在復(fù)旦大學(xué)軟件學(xué)院開展本科軟件工程教學(xué)取得了良好效果。學(xué)生普遍反饋課程實踐項目對其有一定壓力,但對于理解軟件工程理論及培養(yǎng)工程化開發(fā)能力有很大幫助。
2.1實踐中存在的問題
在課程實踐項目的每個階段,都會對各小組交付情況進(jìn)行評估,并通過課堂交流的方式邀請一些小組進(jìn)行分享。通過該過程也發(fā)現(xiàn)了學(xué)生在課程實踐中的一些問題,主要包括以下幾個方面:(1)邏輯不嚴(yán)密、測試不充分。對輸入的合法性檢查不夠,例如密碼長度限制檢查、必填數(shù)據(jù)項的非空檢查等;未使用登錄攔截器,可在未登錄狀態(tài)下直接使用URL訪問特定頁面。(2)代碼提交不規(guī)范。一些小組提交頻率過低,僅在項目開始和結(jié)束時各進(jìn)行了一次提交;一些版本提交的粒度過大或邏輯不完整,對提交消息的描述也不夠準(zhǔn)確;有些小組的代碼提交說明內(nèi)容非常隨意,缺乏可讀性(如圖1所示,其中第一列和第二列分別是代碼提交ID和提交說明)。(3)缺少必要的分支管理。一些小組成員在各自分支上進(jìn)行開發(fā),主分支合并較晚,因而導(dǎo)致較多沖突,修復(fù)負(fù)擔(dān)較重。(4)代碼質(zhì)量存在問題。典型的代碼質(zhì)量問題包括代碼重復(fù)率和圈復(fù)雜度過高、標(biāo)識符命名不規(guī)范、方法參數(shù)過多、在版本中包含alert語句、不合理的代碼重復(fù)等。(5)用戶界面不友好。界面上存在一些對用戶不友好的情況,例如點(diǎn)擊按鈕后系統(tǒng)沒有任何提示、執(zhí)行操作后無法看到操作結(jié)果、一些重要信息無處查看等。(6)前后端分離及模塊劃分不佳。一些小組沒有意識到在前后端分離及模塊化開發(fā)過程中建立接口契約的重要性,出現(xiàn)了模塊實現(xiàn)未按照契約編寫的情況,導(dǎo)致小組項目集成時問題較多,拖慢了開發(fā)進(jìn)度。
2.2進(jìn)一步的實踐探索
大部分小組通過階段性反饋意識到相關(guān)問題后都進(jìn)行了改進(jìn),最終大部分小組不僅圓滿完成了各項基本要求,而且還在多個方面進(jìn)行了一些有意義甚至創(chuàng)造性的實踐探索,具體包括以下幾個方面:(1)需求規(guī)劃和任務(wù)交流。使用DevCloud進(jìn)行需求分解與開發(fā)任務(wù)規(guī)劃,在此基礎(chǔ)上通過視頻會議或即時通信討論組的方式進(jìn)行溝通討論及結(jié)對開發(fā),通過共享文檔的方式約定開發(fā)接口、記錄會議紀(jì)要以及協(xié)作完成實驗報告。(2)設(shè)計思維和體系結(jié)構(gòu)理解。在前后端分離的基礎(chǔ)上,明確定義了后端接口及其契約,同時給出了包含后端模塊劃分及前端Web組件結(jié)構(gòu)的完整設(shè)計方案,在設(shè)計方案基礎(chǔ)上進(jìn)行開發(fā)任務(wù)分配與協(xié)同。(3)演化式設(shè)計與軟件重構(gòu)。在迭代化的開發(fā)過程中不斷評估設(shè)計方案的不足,據(jù)此對代碼進(jìn)行整理與重構(gòu),從而完善設(shè)計方案。(4)分支策略和開發(fā)協(xié)作。制定適合團(tuán)隊開發(fā)模式的分支策略,例如將主分支、特性分支、開發(fā)分支進(jìn)行分離,建立規(guī)范化的代碼分支(branching)與合并(merging)實踐模式,保持主干清晰,及時提交并解決代碼沖突;規(guī)范版本提交過程,采用規(guī)范化的模板,并按照新增特性、缺陷修復(fù)、重構(gòu)改進(jìn)等不同目的編寫提交消息。(5)高質(zhì)量編碼。建立良好的代碼注釋風(fēng)格;充分體現(xiàn)防御式編程,在前端輸入驗證的基礎(chǔ)上,后端代碼也進(jìn)行輸入值的合法性驗證,并在發(fā)現(xiàn)問題時拋出異常;充分利用DevCloud的代碼質(zhì)量檢查工具對前后端代碼進(jìn)行全面掃描,根據(jù)檢查結(jié)果改進(jìn)代碼質(zhì)量;開展代碼評審實踐,在發(fā)現(xiàn)代碼缺陷的同時,也促進(jìn)了組員對代碼的理解與共享。(6)軟件測試。初步建立測試驅(qū)動開發(fā)實踐,通過JUnit工具編寫測試用例,對類或方法進(jìn)行單元測試,并保證一定的代碼覆蓋率;采用Web自動化測試方法,通過大量測試用例的自動運(yùn)行保證后臺接口質(zhì)量。
【關(guān)鍵詞】軟件工程 高等學(xué)校 教學(xué)改革
一、高校軟件工程教學(xué)概述
現(xiàn)階段,軟件工程課程已經(jīng)逐漸的成為一門單獨(dú)的新學(xué)科,而且在我國許多高?;旧暇_設(shè)這門課程,因而其重要性可謂是不言而喻的。近些年以來,隨著科學(xué)技術(shù)的不斷發(fā)展,軟件工程課程已經(jīng)成為開發(fā)軟件的必備知識,所以,要想真正的成為一名合格的大學(xué)生,那么就必須對軟件工程知識加以熟練的掌握,這也是成為一名合格的信息人才所必須具備的一項技能。同時,高校在開展軟件工程教學(xué)時,應(yīng)當(dāng)恰當(dāng)?shù)倪x擇講授方式,要想方設(shè)法的創(chuàng)新教學(xué)理念,優(yōu)化課程教學(xué)結(jié)構(gòu),激發(fā)學(xué)生學(xué)習(xí)的熱情,只有這樣才能夠培養(yǎng)出更多優(yōu)秀的應(yīng)有型人才,才能夠進(jìn)一步推動科技的蓬勃發(fā)展。我國很多高校都設(shè)有計算機(jī)科學(xué)技術(shù)專業(yè),在這個專業(yè)的教學(xué)過程中,軟件工程是一個基礎(chǔ)性比較強(qiáng)的課程,而且也是學(xué)生必學(xué)的一門課程,只有切實的掌握了這門課程,學(xué)生學(xué)習(xí)軟件知識才能夠得心應(yīng)手。當(dāng)前,相當(dāng)一部分的高校在進(jìn)行軟件工程教學(xué)時,選用的教材基本上均是清華大學(xué)出版社出版的《軟件工程導(dǎo)論》。在具體的教學(xué)過程中,教師也都是采用理論知識教學(xué)和實際練習(xí)相結(jié)合的方式予以展開,簡單的來說也就是在課堂上由教師把相關(guān)的理論知識教授給學(xué)生,然后再對學(xué)生進(jìn)行相應(yīng)的實訓(xùn),讓學(xué)生們親自動手去設(shè)計一些東西。
二、軟件工程教學(xué)的特點(diǎn)
(一) 綜合性較強(qiáng)
學(xué)習(xí)軟件工程課程需要相關(guān)的前導(dǎo)課程作為學(xué)生學(xué)習(xí)的基礎(chǔ),前導(dǎo)課程主要包括數(shù)據(jù)結(jié)構(gòu)、計算機(jī)基礎(chǔ)導(dǎo)論、簡單的操作系統(tǒng)以及對數(shù)據(jù)庫的基本處理能力等。通過對這些前導(dǎo)課程的學(xué)習(xí),學(xué)生可以對局部性的問題有大體上的了解,并且能夠通過自己的努力去解決專業(yè)問題。軟件工程課程更為注重的是學(xué)生對全局問題的解決能力。我們都知道,軟件工程課程是綜合性比較強(qiáng)的學(xué)科,因而學(xué)生在學(xué)習(xí)的過程中,難以避免的會遇到一些無法獨(dú)立解決的問題,這時就需要去與其他學(xué)生共同討論,如果仍然解決不了,則需要去請教專業(yè)老師。從某種意義上說,對軟件工程的研究其實就是在具體的開發(fā)過程中,應(yīng)用自己已經(jīng)學(xué)到的理論知識以及解決問題的方法,在一定的時間內(nèi)且不超過預(yù)算的條件之下,做出高質(zhì)量、高水平的軟件。
(二)實踐性較強(qiáng)
正如前面提到的,軟件工程課程是一門實踐性非常強(qiáng)的課程,是經(jīng)過許多研究學(xué)者深入研究且精心提煉的結(jié)果。高校學(xué)生在進(jìn)行軟件工程課程學(xué)習(xí)時,應(yīng)當(dāng)在能夠掌握基礎(chǔ)概念和方法的前提下,切身的置身于軟件開發(fā)的實踐工作,只有這樣才能夠真正理解與體會書本上所講授的知識的內(nèi)在涵義,才能夠切實的掌握知識與技能把,從而為日后的工作及學(xué)習(xí)奠定堅實的基礎(chǔ)。
(三)課程發(fā)展速度較快
軟件工程從上世紀(jì)六十年代末提出,在近幾十年的時間里,軟件工程的發(fā)展速度是非常驚人的。在軟件開發(fā)過程中,通常有著多種多樣的開發(fā)方法,不僅有較為傳統(tǒng)的軟件工程,還有專門針對某個軟件的軟件工程開發(fā)項目,甚至還有一些其他的軟件工程開發(fā)項目,比如結(jié)構(gòu)軟件工程、形式軟件工程以及凈室型軟件工程等。然而,許多高校所選用的學(xué)習(xí)教材無法把多樣化的軟件工程開發(fā)方法全面的涵蓋進(jìn)去,進(jìn)而導(dǎo)致學(xué)生不能對比較前沿,比較先進(jìn)的開發(fā)軟件方法有整體上的認(rèn)識。所以,教師在實施軟件工程教學(xué)的過程中,切勿僅僅注重教材內(nèi)容的講授,還應(yīng)該在具體的教學(xué)中適當(dāng)?shù)囊氡容^先進(jìn)的軟件開發(fā)方法,以便于最大限度拓展學(xué)生的思維,充分的開闊學(xué)生的視野。
(四)對經(jīng)驗豐富教師的需求迫切
軟件工程是一門需要將理論和實踐密切結(jié)合的課程,如果是尚未切身參與過軟件開發(fā)的教師,可以說是無法完全夠勝任課程的教學(xué)工作的,即便是已經(jīng)從事軟件開發(fā)工作多年的教師,在課堂教學(xué)的過程中,如果不注重聯(lián)系實際,往往也無法把課程知識有效地教授給學(xué)生。軟件工程課程需要不斷地與實踐接軌,高校應(yīng)該提供給學(xué)生豐富的實習(xí)機(jī)會,讓學(xué)生可以在實習(xí)過程中不斷掌握豐富的軟件工程專業(yè)知識,但是目前這些問題已經(jīng)成為高校軟件工程教學(xué)的難題。因此,采用何種方法才能提高高校軟件工程教學(xué)的效果與效率,是擺在我們面前最重要的一個問題。
三、軟件工程教學(xué)中所存在的主要問題
(一)教材存在一定的局限性
我們?nèi)绻麖母咝\浖こ探滩牡慕嵌热シ治龈咝\浖こ陶n程的教學(xué),通常不難發(fā)現(xiàn)高校所使用的教材存在著較強(qiáng)的局限性。高校目前的軟件工程教學(xué)所沿用的依舊是以往傳統(tǒng)的教學(xué)方法,在組織開展軟件工程實驗時,仍然以生命周期的方式予以研究,這樣做的結(jié)果就很容易導(dǎo)致學(xué)生在軟件工程學(xué)習(xí)中出現(xiàn)時效性嚴(yán)重不足的不良現(xiàn)象,學(xué)生無法切實的跟上信息行業(yè)的發(fā)展步伐,并且很多軟件方面新興起的技術(shù)學(xué)生也無法接觸到,尤其是那些前沿的科研成果。過去傳統(tǒng)的教學(xué)方式主要是教師把書本上的理論知識講授給學(xué)生,學(xué)生可承擔(dān)額聽講中仿佛是已經(jīng)掌握了教師所講授的知識,但實際上絕大多數(shù)的學(xué)生對教師講解的專業(yè)知識僅僅是非常模糊的認(rèn)識,這是因為該課程的實踐性較強(qiáng),只是進(jìn)行理論知識教學(xué)是遠(yuǎn)遠(yuǎn)無法使學(xué)生掌握這門課程的。
(二) 實踐次數(shù)少且質(zhì)量不高
高校在進(jìn)行軟件工程教學(xué)時,不能夠提供給學(xué)生比較合適實踐的項目,這也是學(xué)生進(jìn)行試驗之后無法取得預(yù)期效果的原因之一。學(xué)生不能把自己所學(xué)習(xí)及掌握的理論知識很好地應(yīng)用到具體的實踐活動中去,這是實踐質(zhì)量差的一個重要原因,與此同時,另外的原因就是學(xué)生對教師所講授的理論知識沒有熟練地掌握,無法真正的確保知識的合理運(yùn)用。因此,當(dāng)學(xué)生做畢業(yè)論文時,便無法有效的將軟件工程的優(yōu)勢予以充分的展現(xiàn)與彰顯,甚至很多學(xué)生會將軟件工程視為畢業(yè)設(shè)計中的一個軟肋。除此之外,學(xué)生在進(jìn)行課題選擇時,也不知道到底什么樣的題目適合自己,可能有些學(xué)生會選擇軟件開發(fā)這個題目,但是在他們的畢業(yè)論文中,出現(xiàn)錯誤的頻率非常之多,學(xué)生對軟件工程的相關(guān)知識了解甚少,這些問題在畢業(yè)論文的撰寫中便可暴露出來。
(三)軟件工程教師能力不足
現(xiàn)在,除了專門培養(yǎng)軟件工程學(xué)生的學(xué)校之外,其他的學(xué)校也會開設(shè)軟件工程課程,但是這些學(xué)校的教師資源質(zhì)量不是很高,或者說是,這些教師進(jìn)行軟件工程教學(xué)相對比較欠缺。軟件工程是一門對教師素質(zhì)要求較高的課程,這門課程的教學(xué)迫切需要教師對教材的本質(zhì)知識有非常深入的理解,而且教師還應(yīng)該具備豐富的軟件開發(fā)方面的經(jīng)驗,最好是掌握一些開發(fā)軟件的親身經(jīng)歷,只有這樣的軟件工程教師才能夠把軟件工程這門課程很好地教授給學(xué)生,并且在進(jìn)行課程教授時才能夠把理論知識與實踐充分的結(jié)合起來,才能夠促使學(xué)生真正的將這門知識掌握好,進(jìn)同時對該課程產(chǎn)生強(qiáng)烈的學(xué)習(xí)欲望。高校軟件工程課程在教學(xué)中存在著的一系列弊端及問題,導(dǎo)致高校軟件工程課程的教學(xué)效果有欠理想,而如果想要把教學(xué)質(zhì)量予以提高,那么就必須將上述問題妥善的解決。
四、高校軟件工程課程教學(xué)改革途徑
面對軟件工程課程教學(xué)中所存在的諸多問題,教師應(yīng)當(dāng)針對軟件工程課程的特點(diǎn)以及課程學(xué)習(xí)的重要性,同時充分的結(jié)合實際的教學(xué)情況,盡快做出切實可行的教學(xué)改革計劃,要重點(diǎn)從教學(xué)內(nèi)容、教學(xué)模式以及教學(xué)資源等方面去實施改革?,F(xiàn)階段,許多地方高校在進(jìn)行軟件工程教學(xué)時,使用的依然是傳統(tǒng)的教師為課堂中心的教學(xué)模式;還有些高校雖然對理論知識的教學(xué)是非常重視的,但是卻極大的忽略了該課程實踐教學(xué)的必要性。以上這些內(nèi)容都是原來傳統(tǒng)教學(xué)出現(xiàn)的問題,軟件工程課程是一個實踐性非常強(qiáng)的課程,如果對學(xué)生只是單純的進(jìn)行理論知識的講授,那么他們對這門課程的理解和掌握是不能夠提供學(xué)生應(yīng)用及實踐的。對于這個問題,教師應(yīng)當(dāng)深刻予以了解,同時還應(yīng)當(dāng)盡快的開展教學(xué)改革。在軟件工程的教學(xué)過程中,教師需要擔(dān)任的角色就是講授教材上的知識,指導(dǎo)學(xué)生進(jìn)行具體的實踐操作,學(xué)生在具體的學(xué)習(xí)中也應(yīng)該積極主動地去進(jìn)行實踐操作,教師布置下來的任務(wù)必須積極的完成,并能夠通過完成任務(wù)更為深入且全面的了解課程知識。此外,教師還應(yīng)當(dāng)切實的立足于學(xué)生的性格特點(diǎn),有針對性的采取教學(xué)方式,以此開展課堂知識的講解。
五、結(jié)束語:
總而言之,為了進(jìn)一步提高軟件工程教學(xué)的質(zhì)量,本文軟件工程課程的現(xiàn)狀、教師在授課過程中所存在的問題以及應(yīng)對措施等進(jìn)行詳細(xì)的闡述,以供教育教學(xué)工作者參考與借鑒。
參考文獻(xiàn):
[1]何月梅,杜海艷,王保民.《軟件工程》課程教學(xué)改革的探索[J].中國成人教育,2010(13).
關(guān)鍵詞:軟件工程;畢業(yè)設(shè)計;課程教學(xué);教學(xué)改革
中圖分類號:TP434文獻(xiàn)標(biāo)識碼:A文章編號:1672-7800(2012)010-0200-02
基金項目:銅仁學(xué)院2011年教學(xué)改革項目(2011)
作者簡介:蒲天銀(1974-),男,碩士,銅仁學(xué)院計算機(jī)科學(xué)系副教授,研究方向為項目管理、信息安全;饒正嬋(1976-),女,碩士,銅仁學(xué)院計算機(jī)應(yīng)用研究所講師,研究方向為項目管理、數(shù)據(jù)挖掘。
0引言
當(dāng)前,軟件工程作為一個相對年輕的獨(dú)立學(xué)科,在高校受到越來越多的關(guān)注,不僅如此,軟件工程作為一種產(chǎn)業(yè)已成為軟件發(fā)展的關(guān)鍵技術(shù)。因此,作為一名當(dāng)代大學(xué)生,想要成為合格的信息技術(shù)人才,掌握一定的軟件工程新技術(shù)、新方法是必不可少的。
隨著現(xiàn)代計算機(jī)技術(shù)的飛速發(fā)展,軟件業(yè)也得到了很快的提高,為跟上世界信息技術(shù)發(fā)展的步伐,從20世紀(jì)80年代起,我國大多高校在計算機(jī)科學(xué)與技術(shù)專業(yè)人才培養(yǎng)方案中開設(shè)了軟件工程基礎(chǔ),此門課程一般安排在三年級進(jìn)行,課程的開設(shè)對學(xué)生在大學(xué)四年的軟件理論掌握中取得了不錯的效果。但縱觀近幾年來高校的畢業(yè)設(shè)計可以看出,在實踐性教學(xué)和教學(xué)效果檢驗等方面還存在著不少問題。課程教學(xué)中從教材的選用上看,重理論輕實踐的現(xiàn)象比較突出,學(xué)生畢業(yè)后往往通過要用人單位長時間培訓(xùn)后才能適應(yīng)崗位的要求,使得高校教育與社會的實際需求的脫節(jié);造成了資源的嚴(yán)重浪費(fèi)。
高校培養(yǎng)人才的目標(biāo)是以社會需求為導(dǎo)向,計算機(jī)專業(yè)人才的培養(yǎng)也不過如此,學(xué)校的教育教學(xué)應(yīng)該圍繞這個導(dǎo)向定位來組織教學(xué)內(nèi)容和配備教學(xué)資源。隨著軟件工程技術(shù)的發(fā)展,軟件工程領(lǐng)域的教學(xué)內(nèi)容不斷豐富,教育教學(xué)手段日新月異,教學(xué)改革已勢在必行。
1軟件工程教學(xué)的現(xiàn)狀概述
在計算機(jī)科學(xué)與技術(shù)本科專業(yè)的課程體系中,軟件工程作為一門基礎(chǔ)課程來開設(shè),很多高校選擇教材均為由清華大學(xué)出版社出版、張海藩教授編著的《軟件工程導(dǎo)論》。教師在課程教學(xué)中,一般采用講授與實訓(xùn)相結(jié)合的教學(xué)方法,即課堂上由教師講授理論、原理,實訓(xùn)時由學(xué)生動手設(shè)計一個項目。由于該教材以理論內(nèi)容為主,因此,該課程的教學(xué)存在諸多的問題,具體表現(xiàn)在:
(1)從教學(xué)內(nèi)容上看,由于教材的局限性,目前的軟件工程教學(xué)是以傳統(tǒng)的教學(xué)方法為主,實驗內(nèi)容以生命周期法體系為主要內(nèi)容,這樣容易造成學(xué)生的學(xué)習(xí)時效性差,跟不上信息產(chǎn)業(yè)技術(shù)發(fā)展的步伐,大多新技術(shù)還沒有傳授給學(xué)生,特別是近幾年新發(fā)展起來的構(gòu)件技術(shù)、234建模技術(shù)。傳統(tǒng)教學(xué)方式在課堂上主要講授理論知識,學(xué)習(xí)者似乎能聽懂,可聽完后大部分學(xué)生還是似懂非懂。當(dāng)學(xué)生在實訓(xùn)中進(jìn)行設(shè)計時卻不知從何入手,該運(yùn)用什么知識、哪種方法。
(2)實踐環(huán)節(jié)少且不夠理想??傮w來講,目前在軟件工程實訓(xùn)環(huán)節(jié)可供該課程選用的合適的項目不多,所以學(xué)生做實驗所達(dá)到的效果與教學(xué)要求存在一定的差距。一方面是學(xué)生不能把理論知識有效地運(yùn)用到實踐活動中;另一方面學(xué)生沒有真正掌握基礎(chǔ)理論及運(yùn)用理論的技能和方法。所以,在進(jìn)行畢業(yè)論文設(shè)計時,不能將軟件工程的理論充分運(yùn)用到他們的設(shè)計實踐中去,導(dǎo)致很多學(xué)生選題時無從下手,不知怎么做,大多學(xué)生即使選擇了軟件開發(fā),但在開發(fā)的軟件和撰寫的文檔在結(jié)構(gòu)、內(nèi)容等方面錯誤百出。
(3)教師問題。目前,除專門的軟件工程學(xué)院的院校外,大多開設(shè)有計算機(jī)專業(yè)的綜合院校軟件工程課程的主講教師本身也是一個問題。由于軟件工程這門課程對授課教師的素質(zhì)要求高,它不僅要求教師對工程內(nèi)涵本身有深刻的理解,還要求教師必須要掌握一定的軟件開發(fā)經(jīng)驗和一定的項目和工程背景,這樣教師才能從自己的開發(fā)實踐中理解軟件工程的基本原理與方法,講授時才能將理論與實踐相結(jié)合,學(xué)生能直觀地感覺到該門課程的重要性,從而產(chǎn)生強(qiáng)烈的學(xué)習(xí)興趣。正是因為以往教學(xué)中存在的這些問題,導(dǎo)致教學(xué)效果不明顯,并直接影響學(xué)生的就業(yè)競爭力。
2高校畢業(yè)設(shè)計現(xiàn)狀
目前大多高校計算機(jī)專業(yè)畢業(yè)設(shè)計不很理想,具體表現(xiàn)在兩個方面:
(1)從學(xué)生方面看,首先是學(xué)生入學(xué)后,通過3年的學(xué)習(xí),學(xué)生在前三年級中一般都較為系統(tǒng)地學(xué)習(xí)了計算機(jī)軟硬件方面的知識,并進(jìn)行了實驗、課程設(shè)計等多方面的訓(xùn)練。但由于大多實驗、課程設(shè)計等實踐訓(xùn)練屬于考查范圍,有一些學(xué)生抱著一種得過且過的心態(tài),沒有達(dá)到既定的學(xué)習(xí)目的,這樣就造成既沒有扎實的理論知識,也沒有較強(qiáng)動手能力的尷尬局面。同時,目前大多高校將學(xué)生選題時間定在四年級第一學(xué)期,學(xué)生在導(dǎo)師的指導(dǎo)下準(zhǔn)備畢業(yè)設(shè)計內(nèi)容。但由于指導(dǎo)教師考慮到學(xué)生就業(yè)等實際情況,平時并沒有對學(xué)生進(jìn)行嚴(yán)格的時間要求和進(jìn)度管理,很多學(xué)生直到畢業(yè)離校時才倉促完成任務(wù),整個論文也是東拼西湊、質(zhì)量不高。
(2)從指導(dǎo)教師方面看,首先是選題問題,指導(dǎo)老師把關(guān)不嚴(yán),很多同學(xué)由于沒有扎實的專業(yè)基礎(chǔ),30%左右的同學(xué)不敢選擇設(shè)計類的問題,選擇設(shè)計類的項目同學(xué)也存在問題,有的題目過大,如銀行管理系統(tǒng)的開發(fā),有的題目過小,如搶答器的設(shè)計;其次是指導(dǎo)過程不科學(xué),在設(shè)計環(huán)節(jié)中,不論是軟件開發(fā)還是硬件設(shè)計,大多同學(xué)只注重核心功能的實現(xiàn),而忽略培養(yǎng)學(xué)生規(guī)范的設(shè)計過程及良好的設(shè)計習(xí)慣,使得畢業(yè)設(shè)計沒達(dá)到對學(xué)生的鍛煉價值。比如,在進(jìn)行軟件開發(fā)時只注重功能的實現(xiàn),沒有認(rèn)真進(jìn)行需求分析、設(shè)計方案的討論、設(shè)計書的編寫、編碼風(fēng)格的規(guī)范以及軟件測試的要求。
3以畢業(yè)設(shè)計為導(dǎo)向,做好軟件工程課程教學(xué)改革
3.1教學(xué)過程的正確引導(dǎo)
針對學(xué)生在畢業(yè)設(shè)計過程中存在的很多問題,作為教師如何將新的技術(shù)和方法傳授給學(xué)生,使他們能真正掌握基本的軟件工程的原理和方法是課程教學(xué)改革的核心內(nèi)容。為此一般要求授課老師要能正確地把握目前軟件工程的發(fā)展方向,掌握最新的軟件開發(fā)技術(shù),并能結(jié)合軟件開發(fā)的實際例子,將該門課的精華有效地傳授給學(xué)生。
3.2強(qiáng)化可行性分析與開題任務(wù)的結(jié)合
在學(xué)生畢業(yè)設(shè)計中,開題的任務(wù)是由指導(dǎo)教師與學(xué)生共同確定所選的畢業(yè)設(shè)計題目是否符合本科畢業(yè)設(shè)計基本要求。在軟件開發(fā)過程中,可行性分析的主要任務(wù)是從經(jīng)濟(jì)、技術(shù)等方面分析擬將開發(fā)的系統(tǒng)在技術(shù)、花費(fèi)財力、人力與物力等方面是否可行。首先,師生要分析所選的題目在法律上是否可行,有無違反國家的相關(guān)法律,有無違反當(dāng)今社會的道德行為規(guī)范;其次,分析所選的題目在技術(shù)上是否可行,即所選的題目技術(shù)含量很高,現(xiàn)有市場還沒有類似的產(chǎn)品,且該產(chǎn)品一旦開發(fā)成功,將帶來巨大的收益;再次,如果該題目在法律上、技術(shù)上都是可行的,還應(yīng)考慮經(jīng)濟(jì)上是否可行。
3.3將需求分析階段在畢業(yè)設(shè)計過程中有效實施
軟件需求分析的目的是澄清用戶的要求,并把雙方共同的理解明確地表達(dá)成一份書面文檔——軟件需求規(guī)格說明書。需求分析階段對鍛煉學(xué)生的溝通能力有很大的幫助,按照傳統(tǒng)軟件工程學(xué)的原理,需求分析的目的主要有3個:一是功能性需求分析,確定待開發(fā)軟件需要哪些方面的功能;二是性能需求分析,確定待開發(fā)軟件在性能方面有哪些具體的要求;三是數(shù)據(jù)需求分析,確定待開發(fā)軟件在數(shù)據(jù)信息方面的需求。確定這3個需求的依據(jù)均源于對客戶的了解,因此,需求分析的一個至關(guān)重要的任務(wù)便是與客戶溝通。
在實際應(yīng)用中,需求分析也是一個讓人頭疼的問題。用戶的不配合是需求分析階段的最大困難所在,在這種情況下,教學(xué)過程中可以考慮把學(xué)生分為若干小組,大家互相作為開發(fā)人員與用戶,把即將完成的畢業(yè)設(shè)計題目作為項目,可以讓學(xué)生身臨其境地體會作為開發(fā)人員在需求分析階段所應(yīng)完成的任務(wù),體會實際開發(fā)過程中用戶以各種理由拒絕合作的無奈,以及應(yīng)該以何種方式與客戶溝通,如何調(diào)動客戶的積極性與主動性。同時,也可以讓學(xué)生體會作為客戶與用戶可以享受的權(quán)利及其應(yīng)該承擔(dān)的義務(wù),使其走向軟件編程的工作崗位時能更加懂得如何從客戶與用戶口中獲取項目所需的功能、性能與數(shù)據(jù)。
3.4環(huán)環(huán)相扣,全面提升課堂教學(xué)的有效性
學(xué)生通過可行性分析、需求分析兩個階段的實踐后,既學(xué)到了教材上的理論知識,又能與實踐很好地結(jié)合起來,相信對課程教學(xué)已有了濃厚的興趣。在接下來的設(shè)計環(huán)節(jié)中,作為教師要充分將工程體系的知識應(yīng)用起來,結(jié)合現(xiàn)實生活中的工程問題舉實例,讓學(xué)生能主動地進(jìn)入角色,處理好這些問題后,相信后面的問題就迎忍而解,既解決了理論課堂學(xué)習(xí)的枯燥無味,又幫助學(xué)生完成了畢業(yè)設(shè)計任務(wù),全面提升了課堂教學(xué)的有效性。
參考文獻(xiàn):
[1]熊仕勇,張登國,黃星華.試論“軟件工程”課程的實踐性教學(xué)[J].重慶郵電大學(xué)學(xué)報:社會科學(xué)版,2007(6).
[2]何月梅,杜海艷,王保民.《軟件工程》課程教學(xué)改革的探索[J].中國成人教育,2009(13).
1.CDIO模式下軟件工程碩士培養(yǎng)過程的探索與實踐
2.軟件工程碩士勝任特征模型研究
3.軟件工程碩士專業(yè)課教學(xué)中科學(xué)思維與創(chuàng)新思維能力的培養(yǎng)
4.國際化、工業(yè)化軟件工程碩士培養(yǎng)體系實踐
5.專業(yè)學(xué)位碩士研究生評教指標(biāo)的構(gòu)建及應(yīng)用——以中國科學(xué)院研究生院軟件工程碩士為例
6.目標(biāo)驅(qū)動的軟件工程碩士培養(yǎng)模式探索
7.軟件工程碩士招生問題探討
8.軟件工程碩士實踐能力培養(yǎng)探索與實踐
9.創(chuàng)新的全日制軟件工程碩士培養(yǎng)探索之路
10.軟件工程碩士國際化培養(yǎng)模式的探索與實踐
11.以知識體系為核心構(gòu)建軟件工程碩士教學(xué)與實踐體系
12.軟件學(xué)院軟件工程碩士開放式教學(xué)體系研究
13.軟件工程碩士“現(xiàn)代物流”課程的創(chuàng)新設(shè)計與教學(xué)實踐
14.黨建工作在軟件工程碩士研究生培養(yǎng)中的作用——以浙江大學(xué)軟件學(xué)院為例
15.軟件工程碩士“算法與算法復(fù)雜性分析”的教學(xué)思考與實踐
16.軟件工程碩士“數(shù)字媒體信息安全”課程的教學(xué)探索
17.軟件工程碩士論文質(zhì)量評價模型及相關(guān)問題研究
18.教育技術(shù)學(xué)之教育軟件工程碩士點(diǎn)建設(shè)研究
19.省屬高校軟件工程全日制工程碩士培養(yǎng)模式探索與研究
20.軟件工程領(lǐng)域工程碩士培養(yǎng)模式與管理體系研究
21.軟件工程碩士研究生專業(yè)學(xué)位教育——東北大學(xué)專業(yè)學(xué)位研究生教育的回顧與思考
22.軟件工程專業(yè)工程碩士數(shù)字圖像處理課程建設(shè)
23.探索軟件工程領(lǐng)域?qū)I(yè)碩士培養(yǎng)模式
24.校企合作軟件工程碩士專業(yè)學(xué)位人才培養(yǎng)
25.服務(wù)地方產(chǎn)業(yè)發(fā)展需求的軟件工程碩士培養(yǎng)模式研究
26.探索軟件工程碩士的課程教學(xué)
27.軟件工程碩士產(chǎn)學(xué)研合作培養(yǎng)模式的探索
28.軟件工程碩士生實踐能力培養(yǎng)探析
29.軟件工程碩士教學(xué)質(zhì)量評價指標(biāo)體系建立的必要性
30.從企業(yè)用人需求看軟件工程碩士培養(yǎng)
31.寧波大學(xué)科技學(xué)院將與同濟(jì)大學(xué)聯(lián)合培養(yǎng)軟件工程碩士
32.軟件工程碩士研究生培養(yǎng)方案改革
33.Sun中國攜手南京大學(xué)全力培養(yǎng)企業(yè)架構(gòu)設(shè)計方向軟件工程碩士(MSE)
34.如何撰寫工程報告類論文
35.2012級北京郵電大學(xué)軟件工程碩士班在哈開課
36.基于軟件工程專業(yè)碩士的三級思想教育模式探索與實踐
37.哈工大軟件學(xué)院“MSE+X”軟件工程碩士跨國聯(lián)合培養(yǎng)項目(英文)
38.軟件質(zhì)量管理與測試專業(yè)課程體系構(gòu)建——基于北航軟件學(xué)院工程碩士課程培養(yǎng)體系分析
39.國際軟件工程專業(yè)碩士研究生教程初探
40.關(guān)于軟件工程專業(yè)碩士研究生培養(yǎng)的新思考
41.軟件工程專業(yè)學(xué)位碩士培養(yǎng)質(zhì)量體系改革
42.軟件工程碩士研究生知識結(jié)構(gòu)模型研究
43.軟件工程領(lǐng)域?qū)I(yè)碩士培養(yǎng)模式初探
44.國家示范性軟件學(xué)院工程碩士培養(yǎng)導(dǎo)師組模式探析
45.軟件工程全日制專業(yè)碩士課程體系改革探討
46.碩士階段軟件工程課程教學(xué)探索
47.面向卓越軟件工程人才培養(yǎng)的實踐教學(xué)體系研究
48.軟件工程的研究與應(yīng)用
49.計算機(jī)軟件工程管理方案初探
50.談軟件工程中軟件測試的重要性及方法
51.關(guān)注點(diǎn)分離在計算思維和軟件工程中的方法論意義
52.軟件工程在軟件開發(fā)過程中的應(yīng)用研究
53.軟件工程專業(yè)“2+1+1”校企聯(lián)合人才培養(yǎng)模式的探索與實踐
54.軟件工程學(xué)科的特征及其課程體系設(shè)計原則
55.影響軟件工程學(xué)科建設(shè)的幾個因素
56.軟件工程思想在計算機(jī)語言類課程教學(xué)中的貫徹實施
57.面向Agent軟件工程綜述
58.多樣化軟件工程人才培養(yǎng)模式研究
59.漸進(jìn)性階梯式工程實踐教學(xué)體系的構(gòu)造
60.軟件工程專業(yè)應(yīng)用型人才培養(yǎng)模式的探索與實踐
61.淺析軟件工程中的數(shù)據(jù)流圖的畫法
62.軟件工程學(xué)生團(tuán)隊構(gòu)建的案例分析
63.軟件工程專業(yè)課程體系研究
64.軟件工程增設(shè)為一級學(xué)科后的機(jī)遇與挑戰(zhàn)
65.軟件工程國家精品課程建設(shè)的思考與實踐
66.軟件工程專業(yè)課程體系研究與實踐
67.探析軟件工程的開發(fā)和應(yīng)用
68.基于能力培養(yǎng)的軟件工程專業(yè)實踐教學(xué)研究與探討
69.關(guān)于“軟件工程”課程體系的基本架構(gòu)及課程系列設(shè)置的探討
70.軟件工程專業(yè)課程體系研究與實踐
71.軟件工程專業(yè)在線課程建設(shè)思考
72.基于項目驅(qū)動模式下的“軟件工程”教學(xué)改革
73.UML結(jié)合軟件工程教學(xué)改革探討
74.基于校企合作的應(yīng)用型軟件工程人才培養(yǎng)模式研究
75.軟件工程發(fā)展歷程及其發(fā)展趨勢探討
76.CMM在軟件工程中的應(yīng)用研究及實現(xiàn)
77.基于案例的軟件工程課程教學(xué)研究
78.軟件工程學(xué)科何以獨(dú)特——形式化方法的雙重路徑
79.軟件工程課程教學(xué)改革的研究
80.軟件工程課程案例教學(xué)方法的研究
81.CDIO與軟件工程人才培養(yǎng)模式改革
82.應(yīng)用型軟件工程人才培養(yǎng)產(chǎn)學(xué)研一體化實訓(xùn)體系建設(shè)探索——以梧州學(xué)院軟件工程人才培養(yǎng)為例
83.國外軟件工程教學(xué)法初探
84.以社會需求為導(dǎo)向的軟件工程專業(yè)課程體系改革的研究
85.“軟件工程”課程啟發(fā)式教學(xué)的研究與實踐
86.面向?qū)ο筌浖_發(fā)及軟件工程方法學(xué)實踐與探討
87.軟件工程實踐教學(xué)平臺的設(shè)計與實現(xiàn)
88.軟件工程專業(yè)本科畢業(yè)設(shè)計過程管理
89.基于項目實踐的軟件工程本科課程教學(xué)模式探討
90.基于軟件工程的系統(tǒng)設(shè)計與開發(fā)
91.案例驅(qū)動與項目導(dǎo)向結(jié)合的軟件工程課程教學(xué)模式
92.軟件工程人才團(tuán)隊協(xié)作能力培養(yǎng)的研究與實踐
93.軟件工程與UML關(guān)系概述
94.應(yīng)用型本科高校教師MOOC教學(xué)現(xiàn)狀分析——以《軟件工程》課程為例
95.軟件工程案例教學(xué)法探討
96.軟件工程專業(yè)實踐能力培養(yǎng)體系設(shè)計探討
97.軟件工程專業(yè)應(yīng)用型人才培養(yǎng)模式的探索與實踐
98.傳統(tǒng)軟件工程與面向?qū)ο?、?gòu)件軟件工程的比較分析
99.軟件工程專業(yè)“項目驅(qū)動”實驗教學(xué)模式研究
100.面向?qū)ο蠹夹g(shù)與軟件工程
101.軟件工程課程模塊化教學(xué)改革的實踐與思考
102.軟件工程經(jīng)濟(jì)的研究及發(fā)展趨勢
103.面向應(yīng)用型人才培養(yǎng)的軟件工程課程教學(xué)改革
104.軟件工程敏捷方法的實驗框架及實施
105.案例教學(xué)法在軟件工程教學(xué)中的應(yīng)用
106.基于WORKSHOP的“軟件工程”教學(xué)模式研究
107.“軟件工程”課程教學(xué)改革的探討
108.面向卓越工程師的軟件工程專業(yè)課程體系建設(shè)——以安徽大學(xué)為例
109.創(chuàng)新實踐教學(xué)體系,培養(yǎng)軟件工程應(yīng)用型人才
110.“項目驅(qū)動+案例教學(xué)”模式在軟件工程教學(xué)中的應(yīng)用
111.淺析需求分析在軟件工程中的作用
112.軟件工程實踐教學(xué)方法探索
113.教育軟件工程框架的構(gòu)建
114.淺談軟件工程的發(fā)展
115.軟件工程專業(yè)課程體系優(yōu)化方法研究與實踐
116.軟件工程專業(yè)課程體系與課程群研究
117.軟件工程的團(tuán)隊項目驅(qū)動教學(xué)模式探討
118.軟件工程與教育軟件開發(fā)的思考
119.基于軟件開發(fā)團(tuán)隊的軟件工程教學(xué)實踐研究
120.校企合作共建軟件工程專業(yè)實踐教學(xué)體系
121.軟件工程中主要開發(fā)模型的比較分析
122.軟件工程專業(yè)和計算機(jī)軟件與理論專業(yè)的內(nèi)涵與反思
123.軟件工程專業(yè)人才培養(yǎng)模式探析