孫海洋++陳珍
摘要:目前,各高校中開展的軟件類課程基本上都采用傳統(tǒng)的教學(xué)方式,脫離了企業(yè)生產(chǎn)實(shí)際,枯燥乏味的知識點(diǎn)灌輸使得學(xué)生對課程學(xué)習(xí)失去興趣,教學(xué)效果停滯不前。該文提出了一種新型的軟件開發(fā)綜合實(shí)訓(xùn)課程,模擬企業(yè)真實(shí)軟件開發(fā)環(huán)境,并給出了該新型課程的總體設(shè)計(jì)及各環(huán)節(jié)的具體方案。本次實(shí)踐教學(xué)改革期望通過具有激勵(lì)性的考核機(jī)制,作為引領(lǐng)教學(xué)的方向,來激發(fā)學(xué)生的學(xué)習(xí)熱情,以達(dá)到提高學(xué)生的軟件開發(fā)職業(yè)素養(yǎng)的目的。
關(guān)鍵詞:新型實(shí)訓(xùn)課;編程規(guī)范;模擬企業(yè);軟件設(shè)計(jì)
中圖分類號:G642 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2015)11-0132-03
Analysis on the Couse Construction of "The New Synthetic Training of Software Development" in Colleges
SUN Hai-yang , CHEN Zhen
(Nanjing University Jinling College, Nanjing 210089, China)
Abstract: At present, software courses carried out in colleges and universities basically use traditional teaching methods, which divorces from the reality of actual production. The boring model of thrusting knowledge down the throats of students makes them lose interest in learning, and teaching effectiveness stalled. Imitated real software development environment, this paper presents a new integrated software development training courses; it also proposes the overall design and specific programs of this new course. Through incentive assessment mechanism, this practice teaching reform expects to arouse students' enthusiasm for learning, in order to improve students' software development professionalism.
Key words: new training course; Programming specification; Development environment; software design
1 軟件類課程的教學(xué)現(xiàn)狀
目前國內(nèi)院校對《C語言程序設(shè)計(jì)》及《數(shù)據(jù)結(jié)構(gòu)》等軟件設(shè)計(jì)類課程仍采用“以系統(tǒng)知識點(diǎn)的灌輸”的傳統(tǒng)的教學(xué)模式,甚至以“計(jì)算機(jī)等級考試”通過率作為考核教學(xué)效果的標(biāo)準(zhǔn)。教學(xué)中理論和實(shí)驗(yàn)分離,實(shí)驗(yàn)多為單一章節(jié)實(shí)驗(yàn),缺乏對整個(gè)軟件開發(fā)知識的綜合訓(xùn)練,軟件開發(fā)中缺少團(tuán)隊(duì)建設(shè),編程亦不規(guī)范。主要原因在于老師不熟悉企業(yè)開發(fā)流程,教學(xué)與企業(yè)實(shí)際脫節(jié)較嚴(yán)重??菰锓ξ兜闹R點(diǎn)使得學(xué)生對課程學(xué)習(xí)失去興趣,逐漸產(chǎn)生抵觸的情緒,最終導(dǎo)致學(xué)生反應(yīng)學(xué)習(xí)難度大,教師反應(yīng)教學(xué)效果差[1]。
本文提出了一種綜合《C語言程序設(shè)計(jì)》、《數(shù)據(jù)結(jié)構(gòu)》、《數(shù)據(jù)庫》等課程,模擬真實(shí)企業(yè)軟件開發(fā)環(huán)境的新型實(shí)訓(xùn)課程。
本課程采用全新的教學(xué)理念,融合軟件開發(fā)各種知識,并模擬各知名企業(yè)通用的軟件開發(fā)模式,進(jìn)行實(shí)戰(zhàn)演習(xí),注重團(tuán)隊(duì)合作精神的培養(yǎng),進(jìn)一步提高軟件調(diào)試的能力。
2 《新型軟件開發(fā)綜合實(shí)訓(xùn)》課程出發(fā)點(diǎn)和意義的分析
本文從該新型實(shí)訓(xùn)課程的教學(xué)目標(biāo)、教學(xué)內(nèi)容、教學(xué)實(shí)施、課程考核辦法等幾個(gè)方面進(jìn)行詳細(xì)闡述。
本文提出開設(shè)的《新型軟件開發(fā)綜合實(shí)訓(xùn)》課程,旨在綜合運(yùn)用所學(xué)《C語言程序設(shè)計(jì)》、《數(shù)據(jù)結(jié)構(gòu)》等軟件開發(fā)基礎(chǔ)課程,結(jié)合具體的驅(qū)動(dòng)項(xiàng)目,并完全模擬企業(yè)真實(shí)的開發(fā)環(huán)境,以達(dá)到學(xué)以致用、教學(xué)與企業(yè)生產(chǎn)實(shí)踐相結(jié)合的目的。
《新型軟件開發(fā)綜合實(shí)訓(xùn)》課程是在學(xué)生完成編程語言等基本理論學(xué)習(xí)的基礎(chǔ)上,綜合運(yùn)用軟件開發(fā)相關(guān)的主要知識和技能,在校內(nèi)集中進(jìn)行綜合性、系統(tǒng)化的崗前訓(xùn)練,其目的是通過開發(fā)一個(gè)個(gè)完整的軟件項(xiàng)目,將軟件開發(fā)的各個(gè)主要階段串聯(lián)起來,讓學(xué)生掌握企業(yè)的軟件開發(fā)流程和規(guī)范,逐步培養(yǎng)軟件開發(fā)項(xiàng)目團(tuán)隊(duì)協(xié)作意識。熟悉真實(shí)企業(yè)開發(fā)環(huán)境及較通用的開發(fā)模式,逐步積累項(xiàng)目開發(fā)經(jīng)驗(yàn),養(yǎng)成良好的軟件開發(fā)職業(yè)素養(yǎng)。
3 《新型軟件開發(fā)綜合實(shí)訓(xùn)》課程具體實(shí)施方案
本課程屬于全新課程建設(shè),包括理論教學(xué)、實(shí)驗(yàn)教學(xué)、項(xiàng)目驅(qū)動(dòng)教學(xué)。
1)該課程的總體安排
該課程須有2~3名教師承擔(dān),才能保證其指導(dǎo)效果;其次,開展具體項(xiàng)目之前要進(jìn)行關(guān)于企業(yè)軟件開發(fā)流程及編程規(guī)范的理論授課。理論教學(xué)的內(nèi)容包括介紹軟件開發(fā)的基本知識、各大企業(yè)較通用的軟件開發(fā)流程、編程規(guī)范、團(tuán)隊(duì)建設(shè)等。理論授課教師應(yīng)由本校有企業(yè)開發(fā)經(jīng)驗(yàn)的雙師型教師承擔(dān)或邀請企業(yè)資深的軟件開發(fā)專家承擔(dān)。實(shí)驗(yàn)教學(xué)的教學(xué)內(nèi)容主要是指導(dǎo)學(xué)生在具體項(xiàng)目開發(fā)中的設(shè)計(jì)思路、調(diào)試方法,以及如何組織測試、編寫測試用例等。該課程的總體安排如表1所示。
表1 教學(xué)總體安排表
[《新型軟件開發(fā)綜合實(shí)訓(xùn)》教學(xué)總體安排\&授課類別\&課時(shí)\&內(nèi)容\&授課教師\&
理論課\&
3\&1.本課程的教學(xué)目的
2.企業(yè)軟件開發(fā)流程
3.各大企業(yè)通用的軟件開發(fā)模式介紹\&
1.有多年軟件開發(fā)經(jīng)驗(yàn)的雙師型教師
2.邀請企業(yè)軟件開發(fā)資深專家\&
3\&1.編程規(guī)范學(xué)習(xí)
2.軟件測試方法及測試用例編寫
3.課程考核說明\&3\&1.代碼檢視必要性及要求
2.一種代碼檢視工具的學(xué)習(xí)\&
實(shí)驗(yàn)課\&
6\&通過具體小項(xiàng)目《通訊錄程序設(shè)計(jì)》把企業(yè)軟件開發(fā)流程、模式、代碼檢視、代碼調(diào)試、測試用例編寫等貫穿其中,為后續(xù)項(xiàng)目實(shí)訓(xùn)課打基礎(chǔ)。\&
由負(fù)責(zé)本課程的2~3名教師承擔(dān)\&
項(xiàng)目實(shí)
訓(xùn)課\&
27~36\&可選項(xiàng)目名稱\&項(xiàng)目功能
要求\&學(xué)生管理系統(tǒng)\&1. …
2. …\&職工工資管理系統(tǒng)\&…\&…\&\&]
2)項(xiàng)目選取環(huán)節(jié)
項(xiàng)目驅(qū)動(dòng)教學(xué)過程中,將所有選修學(xué)生分組,每組控制在8人左右,由指導(dǎo)老師擬定5~10個(gè)具有一定創(chuàng)新的綜合性設(shè)計(jì)項(xiàng)目,項(xiàng)目選取要注重知識點(diǎn)覆蓋,并有一定趣味性,難度適中[2]。由學(xué)生自選項(xiàng)目并組建團(tuán)隊(duì),或?qū)W生自組團(tuán)隊(duì),自擬項(xiàng)目,通過教師評估其自擬項(xiàng)目的難度及涉及知識面符合教學(xué)目標(biāo)即可[3]。每個(gè)指導(dǎo)老師負(fù)責(zé)2~3個(gè)團(tuán)隊(duì),模擬企業(yè)軟件開發(fā)團(tuán)隊(duì)的模式指導(dǎo)學(xué)生。
3)團(tuán)隊(duì)組建環(huán)節(jié)
團(tuán)隊(duì)組建在對項(xiàng)目了解、對自身特長了解的基礎(chǔ)上堅(jiān)持自愿的原則自行組建,團(tuán)隊(duì)總成員一般為6~8人,為進(jìn)一步增強(qiáng)團(tuán)隊(duì)意識,提高戰(zhàn)斗力,每個(gè)團(tuán)隊(duì)需給出團(tuán)隊(duì)名稱及口號。項(xiàng)目團(tuán)隊(duì)必須有項(xiàng)目組長、開發(fā)人員、測試人員、維護(hù)人員、文檔負(fù)責(zé)人員等角色,組內(nèi)每個(gè)成員可兼職其他角色,最多2~3個(gè)。
4)組內(nèi)考核環(huán)節(jié)
組長定期組織開會,各成員匯報(bào)所負(fù)責(zé)的任務(wù)進(jìn)度,評價(jià)前一階段工作取得的成果與存在問題,并確定下一階段的任務(wù)與目標(biāo)。每一階段完成后,項(xiàng)目組長需對項(xiàng)目組各成員給出階段考評結(jié)果,每個(gè)項(xiàng)目根據(jù)實(shí)際情況可分為5~7個(gè)階段。各階段組內(nèi)考核平均分作為組內(nèi)考核總評。
各部分所占分值,態(tài)度:滿分20分;任務(wù)完成情況:滿分50分,按時(shí)完成基本功能可得40分,視具體情況可上下浮動(dòng);團(tuán)隊(duì)合作精神:滿分20分;對團(tuán)隊(duì)的特殊貢獻(xiàn):滿分10分。
階段考核表格式如表2所示。
表2 組內(nèi)階段考核表
[《新型軟件開發(fā)綜合實(shí)訓(xùn)》組內(nèi)階段考核表\&團(tuán)隊(duì)名稱\&成員\&態(tài)度\&任務(wù)完成\&團(tuán)隊(duì)合作\&特殊貢獻(xiàn)\&階段總評\&神
碼
隊(duì)\&譚潔\&20\&48\&20\&0\&88\&馬韻\&20\&50\&20\&5\&95\&…\&\&\&\&\&\&]
5)代碼檢視環(huán)節(jié)
本新型實(shí)訓(xùn)課程注重代碼檢視環(huán)節(jié),不僅要求完成項(xiàng)目基本功能,而且要確保所寫代碼符合編程規(guī)范。定期組織代碼檢視活動(dòng),各開發(fā)小組之間依據(jù)編程規(guī)范互相檢測,檢查結(jié)果量化公開,公開結(jié)果具體到某個(gè)開發(fā)小組某個(gè)開發(fā)人員,并把檢視結(jié)果納入考核。各部分參考比重為:
自己代碼質(zhì)量總分為70分,被檢測出每個(gè)嚴(yán)重問題-10分,被檢測出每個(gè)一般問題-3分。
代碼檢測能力,旨在提高學(xué)生閱讀代碼并發(fā)現(xiàn)問題的能力。其滿分為30分,每發(fā)現(xiàn)一個(gè)嚴(yán)重問題+5分,每發(fā)現(xiàn)一個(gè)一般問題+3分。如果到后期代碼質(zhì)量越來越高,問題越來越少,再進(jìn)行調(diào)整分值及比重。代碼檢視考核表如表3所示。
表3 代碼檢視考核表
[《新型軟件開發(fā)綜合實(shí)訓(xùn)》代碼檢視考核表\&團(tuán)隊(duì)名稱\&組員\&被檢出
嚴(yán)重問
題數(shù)量\&被檢出
一般問
題數(shù)量\&所寫代碼
質(zhì)量得分\&代碼檢測能力得分\&
代碼檢
視總評
\&神碼隊(duì)\&譚潔\&1\&3\&51\&25\&76\&馬韻\&\&\&\&\&\&…\&\&\&\&\&\&蒼鷹隊(duì)\&高霄\&\&\&\&\&\&…\&\&\&\&\&\&]
6)項(xiàng)目答辯環(huán)節(jié)
項(xiàng)目結(jié)束要進(jìn)行答辯,答辯組成員由2~3指導(dǎo)老師及邀請其他1~2名軟件課程老師組成。答辯總評各部分比重為:項(xiàng)目基本功能演示占60%,特色功能展示占20%,答辯ppt制作占10%,回答提問占10%。答辯考核表如表4所示,團(tuán)隊(duì)的答辯總評作為團(tuán)隊(duì)各成員的答辯總評。
4 考核方案
考核是教學(xué)過程中非常重要的環(huán)節(jié),既是體現(xiàn)教學(xué)的導(dǎo)向及側(cè)重點(diǎn),又是激勵(lì)學(xué)生的重要方式[4]。
本文提出的考核方案,注重項(xiàng)目開發(fā)的企業(yè)化,既體現(xiàn)團(tuán)隊(duì)合作的重要性又重視個(gè)人的才能的展示。
表4 答辯考核表
[《新型軟件開發(fā)綜合實(shí)訓(xùn)》項(xiàng)目答辯考核表\&團(tuán)隊(duì)名稱\&口號\&項(xiàng)目名稱\&組長、成員數(shù)\&基本功能\&特色功能\&PPT制作\&回答問題\&答辯總評\&神碼隊(duì)\&神碼都是賦韻\&學(xué)生管理系統(tǒng)\&譚潔
6人\&\&\&\&\&\&蒼鷹隊(duì)\&高效就是那么任性\&職工工資管理系統(tǒng)\&高霄
7人\&\&\&\&\&\&…\&…\&…\&…\&\&\&\&\&\&]
理論課總評占20%;各開發(fā)小組內(nèi)自主考核即階段考核總評比重較大,為30%,充分體現(xiàn)對團(tuán)隊(duì)合作的重視度;團(tuán)隊(duì)答辯成績作為個(gè)人答辯成績,占30%;代碼規(guī)范性檢查占20%,考核表如表5所示。
表5 《新型軟件開發(fā)綜合實(shí)訓(xùn)》課程總考核表
[《新型軟件開發(fā)綜合實(shí)訓(xùn)》總考核表\&姓名\&理論課考評(20%)\&組內(nèi)總評
(30%)\&答辯總評
(30%)\&代碼檢視總評(20%)\&總評\&譚潔\&\&\&\&\&\&高霄\&\&\&\&\&\&…\&\&\&\&\&\&]
參考文獻(xiàn):
[1] 羅杰紅, 胡建榮. 基于“四驅(qū)式”階梯遞進(jìn)的《C語言程序設(shè)計(jì)》課程教學(xué)體系設(shè)計(jì)與實(shí)踐[J]. 教育與職業(yè), 2009(17).
[2] 相方莉. 小項(xiàng)目引導(dǎo)的“螺旋式”教學(xué)模式研究—以C語言教學(xué)為例[J]. 職業(yè)教育研究, 2013(6).
[3] 張悅. 項(xiàng)目驅(qū)動(dòng)教學(xué)法在C語言課程中的應(yīng)用[J]. 職業(yè)教育研究, 2007(2).
[4] 侯宏霞. 提高“C語言程序設(shè)計(jì)”課程教學(xué)質(zhì)量的探索與實(shí)踐[J]. 內(nèi)蒙古師范大學(xué)學(xué)報(bào):教育科學(xué)版, 2012(25).