羅來俊 晏峰
摘要:為使軟件工程專業(yè)的畢業(yè)生能較好適應(yīng)軟件企業(yè)需求,提升本專業(yè)學(xué)生的綜合能力勢在必行。近年來我校在軟件工程專業(yè)中引入依托工作室的實(shí)踐教學(xué)形式,取得了良好的教學(xué)效果,畢業(yè)生的就業(yè)率明顯提升。該文從工作室的定位、教學(xué)項(xiàng)目的選擇以及工作室的運(yùn)作等方面進(jìn)行了較為詳細(xì)的闡述,對依托工作室的實(shí)踐教學(xué)進(jìn)行了有益的探索。
關(guān)鍵詞:工作室;實(shí)踐教學(xué);軟件工程;項(xiàng)目驅(qū)動
中圖分類號:G642 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2016)24-0140-02
Abstract: In order to train graduates to meet the needs of the software industry, it is imperative to enhance the all-round ability of students in software engineering. In recent years, our school has adopted the practice teaching mode based on the studio in the software engineering major, and has achieved good teaching effect. The employment of graduates has been greatly improved. This paper makes a detailed description of the location of the studio, the choice of the training program and the operation of the studio. A useful attempt had made for the practical teaching method based on the teacher studio.
Key words: studio; practice teaching; software engineering; project driven
軟件工程專業(yè)是一個實(shí)踐性很強(qiáng)的專業(yè),實(shí)踐教學(xué)在整個教學(xué)過程中具有突出地位,各高校對該專業(yè)的實(shí)踐教學(xué)都十分重視。然而多方面的信息顯示,當(dāng)前實(shí)踐教學(xué)的效果不甚理想,軟件工程專業(yè)畢業(yè)生的實(shí)踐動手能力普遍較弱,通常需要較長的時間才能融入企業(yè)的研發(fā)工作,導(dǎo)致軟件企業(yè)人才難覓,而畢業(yè)生又難以順利就業(yè)。實(shí)踐教學(xué)效果不理想的主要原因體現(xiàn)在以下幾個方面:①教學(xué)內(nèi)容相對簡單,以課程知識點(diǎn)的驗(yàn)證為主,與軟件企業(yè)的需求存在較大差距;②教學(xué)內(nèi)容較為松散,各學(xué)期間的教學(xué)內(nèi)容沒有良好銜接,各任課教師的教學(xué)內(nèi)容相對孤立,不能圍繞某方面的軟件研發(fā)能力持續(xù)深入地訓(xùn)練;③教學(xué)環(huán)境與企業(yè)實(shí)際環(huán)境存在較大差距,教學(xué)中的訓(xùn)練任務(wù)通常是面向單個學(xué)生設(shè)置的,難以培養(yǎng)學(xué)生的溝通能力及團(tuán)隊(duì)協(xié)作能力。
針對上述問題,有必要對軟件工程專業(yè)的實(shí)踐教學(xué)進(jìn)行相應(yīng)的改革與創(chuàng)新。通過實(shí)踐教學(xué)有效地培養(yǎng)學(xué)生的項(xiàng)目實(shí)踐及團(tuán)隊(duì)協(xié)作等方面的能力,使本專業(yè)畢業(yè)生具有良好的工程實(shí)踐能力,并能快速融入軟件企業(yè)的研發(fā)工作。本文將闡述依托工作室開展實(shí)踐教學(xué)的過程。
1 工作室概要
工作室教學(xué)模式起源于德國包豪斯設(shè)計(jì)學(xué)院,最初是設(shè)計(jì)教育領(lǐng)域的一種教學(xué)模式,后來延伸到許多學(xué)科的實(shí)踐教學(xué)當(dāng)中,并取得了良好的效果。工作室是為了共同目標(biāo)、理想或愿望等建立的由若干成員構(gòu)成的協(xié)作集體。工作室的規(guī)模通常不太大,成員之間的地位相對平等,每個成員都承擔(dān)相應(yīng)的工作任務(wù),并共同討論決定工作室的事務(wù)。從工作室的屬性來看,依托工作室的實(shí)踐教學(xué)有利于培養(yǎng)學(xué)生獨(dú)立思考、實(shí)踐動手及團(tuán)隊(duì)協(xié)作等能力。
我校軟件工程專業(yè)的工作室不僅具備普通工作室的基本屬性,還依據(jù)高校及軟件工程專業(yè)的特點(diǎn)進(jìn)行了一些調(diào)整與創(chuàng)新。首先每個工作室都有明確的研發(fā)方向和培養(yǎng)目標(biāo),比如:JSP軟件研發(fā)方向、ASP.NET軟件研發(fā)方向、嵌入式軟件研發(fā)方向等。其次每個研發(fā)方向的工作室通常又分為初級、中級與高級等三個層級的研發(fā)小組,研發(fā)小組分級設(shè)置是為了契合工作室成員來自不同年級以及水平存在差異等情況,分級能讓學(xué)生的能力與小組實(shí)訓(xùn)任務(wù)相匹配。另外每個研發(fā)小組推選一名學(xué)生擔(dān)任組長,組長通常采用輪流制,每個研發(fā)方向的工作室由1-2名專業(yè)實(shí)踐能力強(qiáng)的教師負(fù)責(zé)。從多年的實(shí)踐教學(xué)中發(fā)現(xiàn),良好的工作室組織架構(gòu)是工作室有序運(yùn)作的重要前提。
2 工作室學(xué)員的招募及組織
通常工作室的容量是有限的,所以只能以招募的方式定期定量吸收新學(xué)員進(jìn)入工作室。通常是每個學(xué)期招募一次新學(xué)員,招募的對象以軟件學(xué)院低年級的學(xué)生為主。工作室建立之初由教師挑選新學(xué)員,后期則由工作室的高級學(xué)員們來挑選新學(xué)員,教師只起監(jiān)督作用。這樣做的目的是為了培養(yǎng)學(xué)生對于新學(xué)員素質(zhì)的把握能力,這對于其走向工作崗位組建研發(fā)團(tuán)隊(duì)是有幫助的。我們規(guī)定選擇新學(xué)員的高級學(xué)員將自動成為被選擇的新學(xué)員的“導(dǎo)師”,導(dǎo)師要定向承擔(dān)其所選擇的新學(xué)員的技術(shù)指導(dǎo)工作,因此每位學(xué)員在選擇新學(xué)員的時候都十分認(rèn)真,與此同時工作室中學(xué)生之間 “傳、幫、帶”的共同進(jìn)步機(jī)制也就自然建立起來。通常每個研發(fā)方向的工作室每次招募20人左右的新學(xué)員,進(jìn)入工作室后新學(xué)員還將進(jìn)一步分配到具體的研發(fā)小組當(dāng)中,一般每個研發(fā)小組6人左右。新學(xué)員大都進(jìn)入新組建的初級研發(fā)小組之中,水平較高的個別學(xué)員則加入到與其能力相稱的更高級別的研發(fā)小組中。在項(xiàng)目實(shí)訓(xùn)過程中同一個級別的研發(fā)小組間可以橫向地比拼與促進(jìn),同時高層級的研發(fā)小組又能縱向指導(dǎo)相應(yīng)的低層級的研發(fā)小組。從目前的實(shí)際情況來看,上述學(xué)員的招募與組織模式十分有利于學(xué)員們的共同成長,并在教學(xué)過程中收到了良好的效果。
3 工作室實(shí)訓(xùn)項(xiàng)目的設(shè)置
實(shí)訓(xùn)項(xiàng)目是學(xué)生實(shí)踐學(xué)習(xí)的主要對象,是學(xué)生能力成長的重要載體。因此 工作室的指導(dǎo)教師應(yīng)該認(rèn)真研究并完成實(shí)訓(xùn)項(xiàng)目的精心設(shè)計(jì)。首先實(shí)訓(xùn)項(xiàng)目應(yīng)該分級,因?yàn)楣ぷ魇抑械某蓡T由不同年級的學(xué)生構(gòu)成,專業(yè)水平通常有差異,因此有必要依據(jù)學(xué)生的能力水平來設(shè)置實(shí)訓(xùn)項(xiàng)目。通常工作室的成員分為初級、中級與高級等三個層級的研發(fā)小組,所以實(shí)訓(xùn)項(xiàng)目也應(yīng)該相應(yīng)地分為初級、中級及高級等難度的項(xiàng)目庫。實(shí)訓(xùn)中應(yīng)該讓項(xiàng)目與學(xué)生的能力相匹配,經(jīng)過多年的實(shí)踐教學(xué)發(fā)現(xiàn),如果不加區(qū)分地讓所有學(xué)生都做類似的項(xiàng)目,則基礎(chǔ)薄弱的學(xué)生很難參與到超出其能力范圍的項(xiàng)目研發(fā)中,這樣不僅不能通過實(shí)訓(xùn)過程提升其能力,相反還會影響這部分學(xué)生對專業(yè)學(xué)習(xí)的自信心。
實(shí)踐教學(xué)不僅要關(guān)注項(xiàng)目難度與學(xué)生能力的匹配,而且要注意從初級到高級項(xiàng)目的關(guān)聯(lián)性與難度遞進(jìn)的把握,項(xiàng)目的設(shè)置必須符合學(xué)生的能力培養(yǎng)目標(biāo)及實(shí)踐教學(xué)規(guī)律。前期的實(shí)訓(xùn)項(xiàng)目是后期實(shí)訓(xùn)的基礎(chǔ),后期的實(shí)訓(xùn)項(xiàng)目是前期項(xiàng)目的進(jìn)一步發(fā)展,以此類推,經(jīng)過長期的、指向一致的若干階段項(xiàng)目實(shí)踐訓(xùn)練,學(xué)生的實(shí)踐動手能力將普遍得到較大幅度的提升。比如,要培養(yǎng)學(xué)生的JSP程序開發(fā)能力,工作室可以考慮選擇比較有代表性的進(jìn)銷存信息管理軟件為項(xiàng)目背景,對于初級學(xué)員可以考慮用C語言開發(fā)一個模擬的進(jìn)銷存信息管理軟件,該過程不僅要讓學(xué)生學(xué)會C語言的編程技術(shù),還要讓學(xué)生掌握基本的進(jìn)銷存業(yè)務(wù)流程;對于中級水平的學(xué)生可以讓其利用JAVA等語言結(jié)合SQL數(shù)據(jù)庫開發(fā)在功能上有所提升的進(jìn)銷存管理軟件;對于高級水平的學(xué)生則可以讓其利用JSP結(jié)合ORACLE開發(fā)功能相對完善、基本滿足現(xiàn)實(shí)需求的進(jìn)銷存管理軟件。我們發(fā)現(xiàn)在學(xué)生對典型的項(xiàng)目有了開發(fā)經(jīng)驗(yàn)之后,他們的能力及自信將得到很大的提升,進(jìn)而可以較容易地引導(dǎo)學(xué)生開發(fā)其他領(lǐng)域的實(shí)訓(xùn)項(xiàng)目。
4 工作室實(shí)踐教學(xué)的實(shí)施
工作室實(shí)踐教學(xué)主要依托軟件項(xiàng)目開展,學(xué)生的能力成長也是在完成一個個項(xiàng)目的過程中逐步實(shí)現(xiàn)的,因此我們對于每個項(xiàng)目的完成都有較為規(guī)范的執(zhí)行路線與流程。通常我們將項(xiàng)目的實(shí)施過程分為項(xiàng)目執(zhí)行計(jì)劃的制訂、項(xiàng)目的實(shí)施以及項(xiàng)目的評價等幾個方面。
優(yōu)秀的項(xiàng)目執(zhí)行計(jì)劃是保證項(xiàng)目科學(xué)高效完成的重要前提,通常包含需求分析、模塊分解以及任務(wù)分工等幾個方面。每個研發(fā)小組都要在項(xiàng)目的實(shí)施前提交一份操作性較強(qiáng)的項(xiàng)目執(zhí)行計(jì)劃書。在項(xiàng)目執(zhí)行計(jì)劃書的形成過程中應(yīng)該充分發(fā)揮每個小組成員的作用,計(jì)劃書必須是經(jīng)過大家集體討論并完善后的成果,項(xiàng)目計(jì)劃書的最后定稿由該小組的項(xiàng)目負(fù)責(zé)人來完成。研發(fā)小組采用按項(xiàng)目輪流選擇負(fù)責(zé)人的制度,這樣就能讓每個小組成員的組織協(xié)調(diào)能力都得到鍛煉。為了避免初級項(xiàng)目研發(fā)小組的執(zhí)行計(jì)劃書出現(xiàn)方向性的錯誤,項(xiàng)目計(jì)劃書最后都要交由更高一級的項(xiàng)目研發(fā)小組成員或教師進(jìn)行審定。
項(xiàng)目的實(shí)施過程就是依據(jù)項(xiàng)目計(jì)劃書將項(xiàng)目需求變成具體軟件的過程,每個小組成員都有自己要獨(dú)立承擔(dān)的程序開發(fā)任務(wù)。在項(xiàng)目的實(shí)施過程中學(xué)生將遇到不少技術(shù)上的問題,此時就可以利用前期有利的學(xué)員組織架構(gòu)來解決。首先每個研發(fā)小組要定期相互交流討論,討論內(nèi)容包括每個小組成員及時告知自己的研發(fā)進(jìn)度、討論各成員在項(xiàng)目實(shí)施過程中遇到的問題及解決方法;對于小組內(nèi)部無法解決的問題,則可以縱向?qū)で蟾髯缘摹皩W(xué)生導(dǎo)師”和相應(yīng)的高級別的研發(fā)小組或教師的幫助??傮w而言該過程應(yīng)充分鍛煉學(xué)生分析思考并解決問題的能力以及溝通協(xié)作能力。教師主要從事過程監(jiān)控及少量的技術(shù)指導(dǎo)工作。項(xiàng)目實(shí)踐過程的主要環(huán)節(jié)如下圖所示。
5 工作室實(shí)訓(xùn)教學(xué)的評價
在各小組完成實(shí)訓(xùn)任務(wù)之后,將對各小組及個人進(jìn)行綜合評價,該過程由進(jìn)行相同研發(fā)任務(wù)的若干小組的所有成員、評委(通常由若干個更高級別的研發(fā)小組成員擔(dān)任)及教師共同完成。評價過程不僅是一個成績量化的過程,同時也是學(xué)員能力進(jìn)一步提升的重要過程,因?yàn)樵谠u價過程中學(xué)員將能學(xué)到別的團(tuán)隊(duì)及個人的優(yōu)點(diǎn)并能發(fā)現(xiàn)自己團(tuán)隊(duì)及個人的不足。通過評價,每個學(xué)生的每一次實(shí)訓(xùn)成績都將量化為一個分?jǐn)?shù),學(xué)員的期末成績是每一次成績的總和,總成績是學(xué)員晉級或者淘汰的主要依據(jù)。合理的評價指標(biāo)是對學(xué)員進(jìn)行科學(xué)評價的重要依據(jù),也是督促學(xué)生在后繼的實(shí)訓(xùn)中認(rèn)真工作的標(biāo)尺,因此我們在制定評價指標(biāo)中會綜合考慮各種因素。每個研發(fā)小組的每一次實(shí)訓(xùn)評價分為團(tuán)隊(duì)評價和個人評價兩部分,團(tuán)隊(duì)評價成績主要由軟件的質(zhì)量、完成的時間及團(tuán)隊(duì)工作狀態(tài)等構(gòu)成,而個人評價成績則由其團(tuán)隊(duì)分?jǐn)?shù)、個人任務(wù)的完成質(zhì)量以及被其指導(dǎo)的低層級的學(xué)員的成績(初級學(xué)員沒有這一項(xiàng))等構(gòu)成。
評價過程中首先由組長對本組軟件研發(fā)的情況進(jìn)行概述,然后由各成員小組對自己的任務(wù)完成情況進(jìn)行限時闡述,最后由評委們依據(jù)各項(xiàng)指標(biāo)打出團(tuán)隊(duì)及個人分?jǐn)?shù)。因?yàn)樵u價過程是學(xué)員學(xué)習(xí)總結(jié)以及成績量化的重要過程,所以該過程得到了我們的足夠重視。實(shí)踐證明上述評價過程在我們的實(shí)踐教學(xué)中收到了良好的效果。
6 結(jié)束語
工作室作為實(shí)踐教學(xué)的一個平臺,為學(xué)生的實(shí)踐動手能力、分析思辨能力、專業(yè)創(chuàng)新能力及團(tuán)隊(duì)協(xié)作等能力的培養(yǎng)起到了積極作用。本文以我校軟件工程專業(yè)的教師工作室的實(shí)例為背景,從工作室的人才培養(yǎng)定位、項(xiàng)目的選擇及工作室的運(yùn)作等方面進(jìn)行了全面的闡述。實(shí)踐證明,經(jīng)過工作室培養(yǎng)的學(xué)生的實(shí)踐動手能力得到了明顯提升,就業(yè)率與就業(yè)質(zhì)量明顯提高,目前許多工作室的學(xué)員已經(jīng)成為了軟件企業(yè)的骨干。當(dāng)然依托工作室的實(shí)踐教學(xué)作為一種相對新穎的實(shí)踐教學(xué)方式,還有許多問題值得我們持續(xù)研究與探索。
參考文獻(xiàn):
[1] 蔣新革, 牛東育. 教師工作室教學(xué)模式及管理體制創(chuàng)新的探索[J]. 教育與職業(yè), 2014(9): 43-44.
[2] 聶方彥, 屠添翼. 工作室制下的計(jì)算機(jī)專業(yè)學(xué)生實(shí)踐能力培養(yǎng)探索[J]. 大眾科技, 2013(7): 149-150.
[3] 鄭劍. “工作室制”計(jì)算機(jī)軟件人才培養(yǎng)模式研究與實(shí)踐[J]. 教育教學(xué)論壇, 2012(10B):173-175.
[4] 董躍華, 楊書新, 李淑芝. 軟件工程專業(yè)多元化實(shí)踐教學(xué)體系研究[J]. 江西理工大學(xué)學(xué)報(bào), 2009, 30(3): 53-55.
[5] 彭晏飛, 崔彩峰. 計(jì)算機(jī)軟件系列課程教學(xué)方式研究[J]. 計(jì)算機(jī)教育, 2010(8):104-107.