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