邵康 徐傳運(yùn) 李剛 袁含香
摘? 要:針對傳統(tǒng)學(xué)生實(shí)踐基地多依靠虛擬項(xiàng)目,對提高學(xué)生軟件開發(fā)能力幫助有限的問題,本文提出了以學(xué)生團(tuán)隊(duì)為主體、開發(fā)商業(yè)軟件項(xiàng)目的軟件工程培養(yǎng)模式。基于客觀需求、復(fù)雜多樣的商業(yè)項(xiàng)目,為軟件開發(fā)實(shí)訓(xùn)提供了真實(shí)工程環(huán)境。提出一系列項(xiàng)目管理方案和學(xué)生培養(yǎng)方式,彌補(bǔ)學(xué)生能力的不足,保證項(xiàng)目高質(zhì)量完成,有效提高學(xué)生的軟件開發(fā)能力。通過重慶理工大學(xué)的實(shí)踐證明,該培養(yǎng)模式能顯著提升學(xué)生的創(chuàng)新實(shí)踐能力,并保持長期可持續(xù)發(fā)展。
關(guān)鍵詞:培養(yǎng)模式;軟件工程;學(xué)生團(tuán)隊(duì);商業(yè)軟件開發(fā);實(shí)踐能力培養(yǎng)
Abstract: Aiming at the problem that student practice traditionally based on virtual projects with limited help in improving students' software development capabilities, this paper proposes a software engineering training mode that uses student teams as a mainstay of developing commercial software projects. Based on objective requirements, complex and diverse commercial projects provide a real engineering environment for software development training. The paper puts forward a series of project management schemes and student training methods to guide students completing project with high quality, so to effectively improve students software development capabilities. The practice of Chongqing University of Science and Technology has proved that this training mode can significantly improve students' innovative and practical ability and maintain sustainable development.
Keywords: training mode; software engineering; student team; commercial software development; practical ability training
1? ?引言(Introduction)
隨著計(jì)算機(jī)和信息技術(shù)的不斷普及應(yīng)用,軟件的需求量也不斷增加,科技信息社會的發(fā)展對軟件開發(fā)人才的需求也不斷增大。面臨新工科教育的新時代和新形勢,有必要強(qiáng)化學(xué)生的工程實(shí)踐能力和創(chuàng)新能力,為企業(yè)和社會培養(yǎng)更多的核心型、技能型的高素質(zhì)軟件開發(fā)技術(shù)人才[1,2]。但目前,計(jì)算機(jī)軟件專業(yè)學(xué)生的知識結(jié)構(gòu)和應(yīng)用能力與企業(yè)需求還存在較大的差距。
為縮短與企業(yè)人才的差距,基地組建學(xué)生團(tuán)隊(duì)開發(fā)項(xiàng)目,以提高學(xué)生軟件開發(fā)水平。但仍然存在各種問題,例如:學(xué)生能力不足導(dǎo)致軟件質(zhì)量低、團(tuán)隊(duì)執(zhí)行力不夠?qū)е麻_發(fā)進(jìn)度難以控制、開發(fā)過程艱難導(dǎo)致學(xué)生挫敗感強(qiáng)。本文針對實(shí)踐過程中遇到的問題和難點(diǎn),提出合理的創(chuàng)新實(shí)踐方案與對策,制定科學(xué)的培養(yǎng)方式。從而保證以學(xué)生為主體的校內(nèi)實(shí)踐基地能持續(xù)健康的發(fā)展,保證項(xiàng)目能高質(zhì)量的交付,保證學(xué)生有良好的實(shí)踐能力訓(xùn)練的環(huán)境,來提高學(xué)生們的軟件開發(fā)能力,為社會貢獻(xiàn)高水平的軟件開發(fā)人才。
2? 以學(xué)生為主體的商業(yè)項(xiàng)目開發(fā)培養(yǎng)模式(The training mode with student-centered business project development)
高校為了鍛煉學(xué)生的實(shí)踐能力開設(shè)了一些實(shí)踐基地,但是傳統(tǒng)的實(shí)踐基地模式和商業(yè)項(xiàng)目開發(fā)培養(yǎng)模式相比卻略遜一籌,對于傳統(tǒng)實(shí)踐基地中的學(xué)生的能力得不到真正的提升,原因在于以下幾點(diǎn):(1)實(shí)踐虛擬項(xiàng)目,學(xué)生得不到真實(shí)工程化的實(shí)踐開發(fā)。(2)團(tuán)隊(duì)能力各有差異,學(xué)生水平參差不齊,師資力量不夠。(3)缺乏合理的項(xiàng)目管理方案。
針對上述存在的問題,以學(xué)生團(tuán)隊(duì)為主體開發(fā)商業(yè)項(xiàng)目的培養(yǎng)模式正好解決了上述問題。如圖1所示,該培養(yǎng)模式以提高軟件工程專業(yè)學(xué)生的創(chuàng)新實(shí)踐能力為目標(biāo),以商業(yè)項(xiàng)目開發(fā)為依托,模擬商業(yè)化開發(fā)環(huán)境,以階梯培養(yǎng)模式為導(dǎo)向,漸進(jìn)性培養(yǎng)學(xué)生開發(fā)水平。選取雙師型導(dǎo)師(具有理論和實(shí)踐“雙能力”教師),根據(jù)團(tuán)隊(duì)角色和學(xué)生能力的不同組建的開發(fā)團(tuán)隊(duì),并與企業(yè)進(jìn)行合作,引進(jìn)適合學(xué)生團(tuán)隊(duì)的中小型真實(shí)項(xiàng)目,創(chuàng)建一個商業(yè)化的真實(shí)項(xiàng)目環(huán)境,構(gòu)建合理的項(xiàng)目管理方案,采用合適的項(xiàng)目開發(fā)模式,進(jìn)而推動項(xiàng)目進(jìn)程,最終順利交付高質(zhì)量的產(chǎn)品。
3? ?培養(yǎng)模式內(nèi)容(Training mode content)
該培養(yǎng)模式通過以下方面保證項(xiàng)目順利完成,同時又能真正培養(yǎng)學(xué)生的軟件開發(fā)能力。組建開發(fā)團(tuán)隊(duì)是項(xiàng)目實(shí)施開發(fā)的基礎(chǔ),其好壞對項(xiàng)目成敗有著至關(guān)重要的影響。軟件開發(fā)模型能清晰、直觀地表達(dá)軟件開發(fā)全過程,明確規(guī)定了要完成的主要活動和任務(wù),是項(xiàng)目完成的關(guān)鍵。根據(jù)不同的開發(fā)團(tuán)隊(duì)的特點(diǎn)選擇適合該團(tuán)隊(duì)的開發(fā)模式。項(xiàng)目管理方案是項(xiàng)目高質(zhì)量按時交付的保障,幫助管理者指導(dǎo)項(xiàng)目的執(zhí)行和控制。逆向CDIO模式能夠保證項(xiàng)目在開發(fā)過程中漸進(jìn)式地鍛煉學(xué)生的開發(fā)能力和設(shè)計(jì)思維。
3.1? ?組建開發(fā)團(tuán)隊(duì)
軟件開發(fā)團(tuán)隊(duì)是項(xiàng)目實(shí)施的基礎(chǔ),團(tuán)隊(duì)建設(shè)對項(xiàng)目管理有不可小覷的影響,所以選擇合適的成員組建開發(fā)團(tuán)隊(duì)極為重要。該培養(yǎng)模式下的開發(fā)團(tuán)隊(duì)由指導(dǎo)老師和學(xué)生團(tuán)隊(duì)組成。要求具有較高的軟件理論水平和較高的實(shí)踐開發(fā)能力的指導(dǎo)老師,一方面確保學(xué)生能學(xué)習(xí)更多的理論知識,另一方面能夠保證項(xiàng)目的開發(fā)進(jìn)度并順利交付成果。
根據(jù)成員角色和學(xué)生能力、特長來選擇組建學(xué)生團(tuán)隊(duì)。選擇成員上要考慮開發(fā)上的幾種角色[3],基本上包括:(1)管理,包括項(xiàng)目經(jīng)理和產(chǎn)品經(jīng)理;(2)業(yè)務(wù),需求分析師、系統(tǒng)設(shè)計(jì)師、測試人員;(3)技術(shù),界面設(shè)計(jì)師(美工)、前端開發(fā)、后端開發(fā)。其次就是根據(jù)每個學(xué)生的能力來進(jìn)行選擇,一般選擇能力互補(bǔ)的學(xué)生組成團(tuán)隊(duì),能起到相互幫助、相互進(jìn)步的效果。比如:選取大四能力強(qiáng)的學(xué)生擔(dān)任項(xiàng)目負(fù)責(zé)人,大三同學(xué)主要參與業(yè)務(wù)組的開發(fā),根據(jù)不同技術(shù)能力可選擇不同的業(yè)務(wù)方向,可選擇大二部分同學(xué)參與測試組進(jìn)行測試學(xué)習(xí),以此來組建一個高效的開發(fā)團(tuán)隊(duì)。根據(jù)業(yè)務(wù)與產(chǎn)品開發(fā)需要,合理預(yù)測一個團(tuán)隊(duì)規(guī)模,基于工作量的預(yù)測來配備團(tuán)隊(duì)大小,學(xué)生團(tuán)隊(duì)合理人數(shù)在6—10人。
在整個教學(xué)過程中,以學(xué)生為中心,由教師扮演組織者、指導(dǎo)者的角色,分配合理的項(xiàng)目任務(wù),充分發(fā)揮學(xué)生的主動性、積極性和創(chuàng)新精神,使學(xué)生將當(dāng)前所學(xué)知識有效應(yīng)用到實(shí)際項(xiàng)目中去。
3.2? ?快速原型開發(fā)
在軟件開發(fā)的過程中一定要明確開發(fā)的目的,根據(jù)不同的項(xiàng)目和團(tuán)隊(duì)組織來選用不同的開發(fā)模式。由于學(xué)生團(tuán)隊(duì)不了解行業(yè)發(fā)展和軟件背景,用戶需要直白明確地闡述項(xiàng)目需求,避免團(tuán)隊(duì)和用戶間出現(xiàn)需求上的分歧,可利用原型模式保證一致的需求理解。
為保證需求分析階段獲得完整、一致、準(zhǔn)確和合理的需求規(guī)格,學(xué)生基地采用快速原型模式[4],在獲得基本需求規(guī)范后,通過快速構(gòu)建原型來確定系統(tǒng)的雛形。構(gòu)建好的原型向用戶進(jìn)行演示并獲取用戶的修改意見,不斷了解并滿足用戶的基本需求,補(bǔ)充和完善需求描述,消除不一致的系統(tǒng)需求。通過修改迭代逐步確認(rèn),得到清晰明確的需求定義和用戶界面要求,完成最終的原型設(shè)計(jì)。采用快速原型開發(fā)模式可以準(zhǔn)確表達(dá)需求,能夠及時地響應(yīng)用戶的需求變化,降低開發(fā)成本和風(fēng)險(xiǎn),并縮短開發(fā)周期,從而盡最大可能避免學(xué)生團(tuán)隊(duì)因能力和經(jīng)驗(yàn)不足導(dǎo)致商業(yè)項(xiàng)目開發(fā)失敗的問題。
3.3? ?項(xiàng)目管理方案
由于學(xué)生能力的不足和經(jīng)驗(yàn)的匱乏很有可能導(dǎo)致項(xiàng)目的失敗或者延期,通過以下項(xiàng)目管理方案,來彌補(bǔ)學(xué)生的不足,確保項(xiàng)目的正常進(jìn)行和交付。
(1)需求管理
一般情況下,學(xué)生實(shí)踐基地通過校企合作,項(xiàng)目驅(qū)動的方式組織學(xué)生團(tuán)隊(duì)進(jìn)行實(shí)踐開發(fā)。但是學(xué)生開發(fā)團(tuán)隊(duì)往往缺乏項(xiàng)目的業(yè)務(wù)背景和行業(yè)經(jīng)驗(yàn),很有可能不了解用戶的需求,導(dǎo)致需求分析不到位,從而在項(xiàng)目后期開發(fā)中出現(xiàn)大量問題。
因此在需求分析階段,教師和企業(yè)方人員要相互溝通需求,進(jìn)行系統(tǒng)分析和設(shè)計(jì)。團(tuán)隊(duì)核心成員也可加入其中,從而起到更好的領(lǐng)頭作用。需求分析之后向開發(fā)團(tuán)隊(duì)進(jìn)行需求講述。最好通過情景描述,切身表達(dá)真實(shí)的使用場景,詳細(xì)完整的表述出來。
(2)團(tuán)隊(duì)管理
由于學(xué)生有課程沖突不能按時參與項(xiàng)目開發(fā),學(xué)生之間缺乏溝通進(jìn)而影響團(tuán)隊(duì)決策等問題。團(tuán)隊(duì)管理上需要明確角色、權(quán)利、職責(zé)、能力。確定項(xiàng)目團(tuán)隊(duì)成員,保證團(tuán)隊(duì)成員能夠勝任分配的角色和完成項(xiàng)目的各項(xiàng)工作及任務(wù)。團(tuán)隊(duì)管理上要做到分工明確、因人施用,發(fā)揮每個成員的能力,合理的協(xié)調(diào)團(tuán)隊(duì)內(nèi)部各項(xiàng)工作。明確項(xiàng)目職責(zé),確定項(xiàng)目負(fù)責(zé)人、系統(tǒng)開發(fā)師、系統(tǒng)設(shè)計(jì)師、系統(tǒng)測試師等角色,明確每種角色的任務(wù)和安排。
(3)開發(fā)管理
學(xué)生團(tuán)隊(duì)缺乏正式項(xiàng)目的訓(xùn)練,沒有良好的開發(fā)素質(zhì),沒有合理的開發(fā)和測試計(jì)劃。所以團(tuán)隊(duì)需要確定開發(fā)規(guī)范、開發(fā)周期、開發(fā)技術(shù)和工具,按照統(tǒng)一的開發(fā)規(guī)范進(jìn)行開發(fā),包括統(tǒng)一界面風(fēng)格、命名規(guī)范、設(shè)計(jì)規(guī)范、分層規(guī)范、測試規(guī)范等,保證項(xiàng)目的穩(wěn)定性,促進(jìn)團(tuán)隊(duì)合作,有助于代碼審查,減少后期維護(hù)的困難。確定開發(fā)周期,保證項(xiàng)目進(jìn)度。
(4)文檔管理
由于學(xué)生對需求、方法、工具和技術(shù)理解不到位往往導(dǎo)致開發(fā)進(jìn)度緩慢或者情緒低落。所以在項(xiàng)目開發(fā)的過程中,必須重視文檔的管理,這也是學(xué)生實(shí)踐基地比較欠缺的。建立需求、技術(shù)、設(shè)計(jì)文檔,對后期的維護(hù)、升級都有很大的幫助。并且要注意文檔的版本控制,保障系統(tǒng)開發(fā)的一致性。還能通過文檔建立實(shí)踐基地的一套知識體系,確定開發(fā)過程的每項(xiàng)工作,會對后期開發(fā)和新成員培訓(xùn)有非常大的幫助。
3.4? ?逆向CDIO模式
學(xué)生實(shí)踐基地的建設(shè),需要思考如何采用正確的培養(yǎng)模式才能鍛煉學(xué)生在實(shí)踐過程中獲取工程化思維和實(shí)踐性能力,采用CDIO模式培養(yǎng)學(xué)生工程實(shí)踐能力、綜合能力是很好的出發(fā)點(diǎn)。CDIO代表構(gòu)思(Conceive)、設(shè)計(jì)(Design)、實(shí)施(Implement)和運(yùn)行(Operate),以產(chǎn)品和系統(tǒng)的設(shè)計(jì)到實(shí)現(xiàn)完整周期為載體,提高學(xué)生的工程實(shí)踐能力和綜合職業(yè)素養(yǎng),解決工程教育中理論與實(shí)踐脫節(jié)的問題[5]。但考慮到學(xué)生基礎(chǔ)較低,為保證基地建設(shè),學(xué)生基地采用“逆向CDIO”的漸進(jìn)式培養(yǎng)方式[6],結(jié)合學(xué)生自身特點(diǎn),在學(xué)生進(jìn)入實(shí)踐基地不久能力尚缺時,通過加入項(xiàng)目軟件測試初步了解項(xiàng)目開發(fā)。再等學(xué)生能力初步培養(yǎng),有了一定的技術(shù)和綜合能力支撐后,開始進(jìn)入項(xiàng)目組,擔(dān)任核心人員進(jìn)行項(xiàng)目開發(fā)實(shí)踐。當(dāng)學(xué)生積累了一定項(xiàng)目經(jīng)驗(yàn),并對系統(tǒng)開發(fā)有一定了解后,教師需要引導(dǎo)學(xué)生進(jìn)行產(chǎn)品的構(gòu)思和設(shè)計(jì)。在需求分析和設(shè)計(jì)階段可讓學(xué)生進(jìn)行思考,提出自己的想法。當(dāng)有了一定的經(jīng)驗(yàn)支撐和系統(tǒng)看法之后,學(xué)生提出來的想法也會相應(yīng)成熟、貼近實(shí)際。
所以,逆向CDIO培養(yǎng)方式與項(xiàng)目開發(fā)過程相反,根據(jù)學(xué)生缺乏思考、但勤于實(shí)踐的特點(diǎn),可以通過“見聞廣博”的方式,讓學(xué)生從一無所知蛻變成有想法和構(gòu)思的軟件人才。通過先實(shí)踐接觸,再深入分析理解,以此培養(yǎng)學(xué)生的構(gòu)思、設(shè)計(jì)理念。
4? 商業(yè)項(xiàng)目實(shí)踐教學(xué)體系的構(gòu)建(Construction of practical teaching system for commercial projects)
商業(yè)項(xiàng)目實(shí)踐教學(xué)體系以人才培養(yǎng)為目標(biāo),構(gòu)建成以“商業(yè)項(xiàng)目”為理論定義,“階梯培養(yǎng)、學(xué)為主教為輔”為理論架構(gòu),“應(yīng)用型實(shí)踐”為實(shí)踐說明,將項(xiàng)目實(shí)踐與學(xué)生培養(yǎng)緊密結(jié)合,進(jìn)而全面提高學(xué)生的綜合能力。學(xué)生實(shí)踐基地通過引入商業(yè)真實(shí)項(xiàng)目,以項(xiàng)目為驅(qū)動,促使學(xué)生自主學(xué)習(xí);通過學(xué)生自身特點(diǎn),結(jié)合軟件開發(fā)流程,建立一套適合學(xué)習(xí)實(shí)踐的漸進(jìn)式培養(yǎng)模式;通過將理論和實(shí)踐相結(jié)合,以項(xiàng)目實(shí)踐為基礎(chǔ),加強(qiáng)學(xué)生軟件開發(fā)理解和綜合實(shí)踐能力。以培養(yǎng)出和企業(yè)要求相符、綜合應(yīng)用實(shí)踐能力強(qiáng)的高素質(zhì)人才。
4.1? ?商業(yè)項(xiàng)目
學(xué)生實(shí)踐基地與企業(yè)合作,引入適合學(xué)生開發(fā)的真實(shí)商業(yè)項(xiàng)目。選擇中小型項(xiàng)目并且系統(tǒng)安全性和技術(shù)難度不高的項(xiàng)目,以學(xué)生發(fā)展和企業(yè)人才需求為導(dǎo)向,創(chuàng)建一個工程化、商業(yè)化的真實(shí)項(xiàng)目環(huán)境[6]。這樣能夠有效地提升學(xué)生們的軟件設(shè)計(jì)、開發(fā)水平,讓學(xué)生能夠更早熟悉企業(yè)開發(fā)流程,能夠更好地縮小學(xué)生與企業(yè)所需人才之間的差距。為增強(qiáng)企業(yè)的參與度,加強(qiáng)實(shí)踐基地建設(shè),構(gòu)建合作企業(yè)培訓(xùn)教師隊(duì)伍,委派技術(shù)人員定期為學(xué)生進(jìn)行指導(dǎo)培訓(xùn)。加強(qiáng)校企合作的溝通,讓企業(yè)作為項(xiàng)目合作的引領(lǐng)者,實(shí)踐基地作為項(xiàng)目合作的實(shí)施者。通過企業(yè)實(shí)踐技術(shù)指導(dǎo)和教師的理論指導(dǎo),不僅能夠構(gòu)建校企合作的良好生態(tài),達(dá)到校企雙方互利共贏的局面,在企業(yè)和指導(dǎo)教師的“雙培訓(xùn)”下[7],還能讓學(xué)生更好的將理論聯(lián)系實(shí)際,并運(yùn)用到真實(shí)項(xiàng)目中。
4.2? ?階梯培養(yǎng)
如圖2所示,項(xiàng)目實(shí)踐在學(xué)生階梯式培養(yǎng)中的應(yīng)用將根據(jù)學(xué)生每個時段不同能力的劃分,采用“大一選拔、大二強(qiáng)化、大三實(shí)踐、大四幫帶”的階梯培養(yǎng)[8]。以年級和專業(yè)劃分階段,對學(xué)生團(tuán)隊(duì)進(jìn)行階段培養(yǎng):(1)在大一的時候?qū)Ρ驹簩W(xué)生進(jìn)行面試選拔,選擇能力強(qiáng)有責(zé)任心的學(xué)生引進(jìn)學(xué)生實(shí)踐基地。(2)在大二的時候可根據(jù)專業(yè)選擇學(xué)生不同的開發(fā)方向,如美工設(shè)計(jì)、前后端開發(fā)、系統(tǒng)測試,并在此期間對學(xué)生進(jìn)行基礎(chǔ)的專業(yè)知識和技能培訓(xùn),主要由高年級的同學(xué)對低年級同學(xué)進(jìn)行知識的傳授,既能鞏固高年級同學(xué)的知識儲備和溝通能力,同時高年級以自身經(jīng)驗(yàn)對低年級同學(xué)能進(jìn)行更貼近實(shí)際的教學(xué)。(3)在大三期間劃分項(xiàng)目小組,所有成員進(jìn)入項(xiàng)目組,將理論知識投入真實(shí)的項(xiàng)目實(shí)踐中;在項(xiàng)目開發(fā)前,可選擇能力強(qiáng)、有領(lǐng)導(dǎo)力的一兩名同學(xué)擔(dān)任學(xué)生團(tuán)隊(duì)的項(xiàng)目負(fù)責(zé)人;在真實(shí)的項(xiàng)目開發(fā)中,學(xué)生不斷積累能力和技術(shù),提升自身水平。(4)在大四的時候,學(xué)生已經(jīng)積累了基本的開發(fā)技能,可選擇一部分學(xué)生參與項(xiàng)目組擔(dān)任負(fù)責(zé)人帶領(lǐng)低年級同學(xué)開發(fā),并一部分組成授課小組對低年級學(xué)生進(jìn)行知識講解。
4.3? ?教為輔、學(xué)為主
該模式是主要由學(xué)生為主、教師為輔的培養(yǎng)模式,教師作為指導(dǎo)者,主要參與需求分析階段,幫助團(tuán)隊(duì)梳理需求并指導(dǎo)原型的設(shè)計(jì),其次參與每個階段的評審,幫助學(xué)生解決拿不準(zhǔn)的問題。其他時間教師只需和企業(yè)項(xiàng)目聯(lián)系人采取溝通,商量下一階段需要完成的任務(wù),保障項(xiàng)目各個階段的順利完成。
學(xué)生作為主體,需要不同程度地參與項(xiàng)目開發(fā)的每個階段:(1)需求和設(shè)計(jì)階段參與是以“聽”為主的策略,可提出自己的想法,主要學(xué)習(xí)教師在需求和設(shè)計(jì)階段是如何分析并實(shí)踐的,學(xué)習(xí)其中的想法和思路,拓展自己的理論知識庫。(2)在編碼和測試階段參與是以“做”為主的策略,根據(jù)最終的原型和美工設(shè)計(jì)的統(tǒng)一樣式,全身心投入編碼階段。在這一階段教師應(yīng)根據(jù)團(tuán)隊(duì)的開發(fā)規(guī)范,定期進(jìn)行代碼審查。
(3)在測試階段,組成不同的測試小組,進(jìn)行黑盒和白盒測試,并根據(jù)測試結(jié)果,完成測試報(bào)告;可發(fā)動本團(tuán)隊(duì)和其他團(tuán)隊(duì)學(xué)生志愿參與測試階段,由測試組長帶頭,根據(jù)業(yè)務(wù)流程統(tǒng)一進(jìn)行功能測試和壓力測試,每個志愿者將問題擬寫成文檔交由項(xiàng)目測試團(tuán)隊(duì),最終形成正式的測試報(bào)告;項(xiàng)目團(tuán)隊(duì)再根據(jù)測試文檔,進(jìn)行完善修改。(4)在最后的上線、運(yùn)維、管理階段,教師和學(xué)生項(xiàng)目負(fù)責(zé)人與企業(yè)進(jìn)行對接,確保最終階段的順利完成。
4.4? ?應(yīng)用型實(shí)踐
該模式下培養(yǎng)大量應(yīng)用型本科人才,面向未來軟件發(fā)展方向,以學(xué)科為依托,應(yīng)用型教育為基礎(chǔ),社會人才需求為導(dǎo)向,培養(yǎng)應(yīng)用實(shí)踐型人才。應(yīng)用型本科人才的培養(yǎng)核心是面向應(yīng)用實(shí)踐的教育,在教育目標(biāo)上,要求學(xué)生具備應(yīng)用理論知識解決實(shí)際問題的能力;在教育內(nèi)容上,要求人才培養(yǎng)與市場需求實(shí)現(xiàn)高度同步;在教育方法上,要求教學(xué)實(shí)踐中理論教學(xué)和實(shí)踐教學(xué)相統(tǒng)一[9]。以實(shí)踐教育為核心,強(qiáng)調(diào)動手能力和解決問題的能力,通過先實(shí)踐,奠定技術(shù)基礎(chǔ),再支撐理論構(gòu)思。實(shí)踐項(xiàng)目教學(xué)模式,要求學(xué)生積極參與。其中最為重要的一點(diǎn)是如何讓學(xué)生自覺主動參與,在大一的時候就進(jìn)行相應(yīng)的實(shí)踐基地文化宣傳,讓學(xué)生萌生渴望加入的想法。當(dāng)學(xué)生參與實(shí)踐中,教師應(yīng)鼓舞學(xué)生,充分調(diào)動學(xué)生的積極性。學(xué)生通過實(shí)踐項(xiàng)目開發(fā)過程,不斷積累項(xiàng)目開發(fā)經(jīng)驗(yàn),提升軟件開發(fā)和設(shè)計(jì)水平。在開發(fā)過程中,學(xué)生通過成員間的溝通和協(xié)作、文檔的組織和編寫、時間安排等提升綜合素質(zhì)和職業(yè)能力。商業(yè)項(xiàng)目的開發(fā),能讓學(xué)生了解企業(yè)開發(fā)現(xiàn)狀、行業(yè)發(fā)展趨勢,讓學(xué)生達(dá)成企業(yè)應(yīng)用人才的要求。學(xué)生在開發(fā)過程中掌握更多的知識和工具,將理論與實(shí)踐聯(lián)合,解決開發(fā)中的實(shí)際問題,不斷提升創(chuàng)新和實(shí)踐動手能力。
5? ?實(shí)施效果(Implementation effect)
實(shí)踐基地克服了建設(shè)過程中的大量困難,其中最大的困難還是學(xué)生自身:(1)學(xué)生初入實(shí)踐基地時,沒有明確目標(biāo),這時老師應(yīng)該為學(xué)生樹立以提高自身水平發(fā)展為目標(biāo),再經(jīng)高年級學(xué)生指導(dǎo)新生掌握基本的知識要點(diǎn),明確每個階段學(xué)生需要達(dá)到什么目標(biāo);(2)學(xué)生開始實(shí)踐項(xiàng)目情緒波動大、開發(fā)較困難,正如萬事開頭難,這時就需要高年級學(xué)生和老師一起為這些學(xué)生講解項(xiàng)目實(shí)施的整體流程,梳理一個清晰的開發(fā)步驟;(3)學(xué)生課程和項(xiàng)目的時間沖突,學(xué)生不光要完成基本課程,同時還需要參與項(xiàng)目的開發(fā)實(shí)踐。所以選擇大三同學(xué)擔(dān)任項(xiàng)目實(shí)踐開發(fā)的主體,因?yàn)榇藭r專業(yè)課學(xué)習(xí)正好能和項(xiàng)目開發(fā)較好結(jié)合,并且已有一定的理論基礎(chǔ),如果指導(dǎo)教師能合理安排項(xiàng)目開發(fā)任務(wù),督促學(xué)生課余時間按時完成,就能較好地確保項(xiàng)目開發(fā)進(jìn)度。
以學(xué)生為主體開發(fā)商業(yè)軟件項(xiàng)目的軟件工程培養(yǎng)模式的實(shí)施,獲得了顯著的效果:(1)從實(shí)踐基地本身來看,搭建了實(shí)踐學(xué)習(xí)平臺,形成了一套科學(xué)的創(chuàng)新實(shí)踐教學(xué)體系,并以獨(dú)特的教育培養(yǎng)模式,為學(xué)生教學(xué)培養(yǎng)提供了較好的案例,更為社會輸送了更多軟件技術(shù)性人才。(2)從項(xiàng)目實(shí)踐來看,項(xiàng)目在教師和學(xué)生的共同努力下高質(zhì)量完成,并且能按時交付,客戶普遍反響良好,并且成功實(shí)施了各種真實(shí)項(xiàng)目。
(3)從學(xué)生培養(yǎng)來看,學(xué)生的綜合實(shí)踐能力、團(tuán)隊(duì)協(xié)作和溝通表達(dá)能力也明顯提升,與企業(yè)所需人才之間的差距逐漸縮小,提高自身就業(yè)競爭力,其畢業(yè)生就業(yè)效果顯著。(4)從校企雙方來看,促進(jìn)校企雙方進(jìn)一步合作,校方明顯提高了就業(yè)率和考研成效,企業(yè)方獲得了教育資源和人才資源,校企雙方互利共贏。近年來,團(tuán)隊(duì)每年有數(shù)十人進(jìn)入阿里、騰訊、百度、小米等互聯(lián)網(wǎng)科技公司,學(xué)術(shù)競賽中團(tuán)隊(duì)每年獲獎數(shù)十項(xiàng),考研成功率也遠(yuǎn)高于非團(tuán)隊(duì)成員。
6? ?結(jié)論(Conclusion)
信息技術(shù)飛速發(fā)展的當(dāng)下,急需大量軟件高素質(zhì)人才,而大學(xué)生軟件開發(fā)能力與企業(yè)要求差距甚大。本文針對學(xué)生實(shí)踐基地存在的問題,提出了以學(xué)生團(tuán)隊(duì)為主體,開發(fā)商業(yè)軟件項(xiàng)目的軟件工程人才培養(yǎng)模式。通過組建一個能力互補(bǔ)、善于溝通、分工明確的學(xué)生團(tuán)隊(duì),選擇雙師導(dǎo)師團(tuán)隊(duì)合理安排項(xiàng)目,推動項(xiàng)目進(jìn)程。構(gòu)建商業(yè)化的工作環(huán)境,讓學(xué)生熟悉商業(yè)開發(fā)過程,能有效提高開發(fā)效率。采用適合學(xué)生團(tuán)隊(duì)的快速原型開發(fā)模式,并建立一套合理的項(xiàng)目管理方法,順利完成項(xiàng)目開發(fā),避免學(xué)生開發(fā)經(jīng)驗(yàn)和開發(fā)能力不足的問題。該模式以學(xué)生為主體,增加學(xué)生的項(xiàng)目參與度,通過商業(yè)項(xiàng)目和逆向CDIO模式,培養(yǎng)學(xué)生的實(shí)踐開發(fā)能力,培養(yǎng)構(gòu)思和設(shè)計(jì)理念,培養(yǎng)具有良好軟件開發(fā)水平和創(chuàng)新實(shí)踐應(yīng)用型人才。重慶理工大學(xué)軟件工程專業(yè)人才培養(yǎng)的實(shí)踐證明,這一模式具有較強(qiáng)的推廣應(yīng)用價值。
參考文獻(xiàn)(References)
[1] 張小川,周龍福,凃飛,等.面向新工科的軟件工程專業(yè)實(shí)踐教學(xué)模式的探索[J].軟件工程,2018,21(3):60-62.
[2] 周艷聰.“新工科”背景下計(jì)算機(jī)類實(shí)踐教學(xué)探討[J].軟件工程,2019,22(5):60-62.
[3] 胡嘉欣.軟件項(xiàng)目管理之高效團(tuán)隊(duì)合作[J].通訊世界,2017(18): 247-248.
[4] 石研.快速原型模型[J].中國科技博覽,2010(6):81.
[5] 潘益婷,潘修強(qiáng),錢冬云,等.CDIO理念下的軟件技術(shù)專業(yè)產(chǎn)教融合人才培養(yǎng)模式探索與實(shí)踐[J].軟件工程,2019,22(1):? 60-62.
[6] 徐傳運(yùn),張楊,李剛,等.本碩聯(lián)動的軟件工程實(shí)踐教學(xué)基地建設(shè)方法研究[J].計(jì)算機(jī)教育,2020(02):91-95.
[7] 陳琳琳,帥輝明,朱嫻,等.基于校企合作的獨(dú)立學(xué)院計(jì)算機(jī)專業(yè)人才實(shí)踐體系研究[J].軟件工程,2017,20(7):45-47.
[8] 徐傳運(yùn),李剛,張楊,等.軟件工程專業(yè)“本碩聯(lián)動”實(shí)踐基地建設(shè)[J].計(jì)算機(jī)教育,2017(05):145-149.
[9] 楊小勁,張亞紅.軟件工程專業(yè)應(yīng)用型人才培養(yǎng)模式探索[J].教育觀察(上半月),2016,5(12):62-65.
作者簡介:
邵? 康(1998-),男,本科生.研究領(lǐng)域:軟件開發(fā),計(jì)算機(jī)應(yīng)用技術(shù).
徐傳運(yùn)(1979-),男,博士,副教授.研究領(lǐng)域:軟件工程,智能計(jì)算.本文通訊作者.
李? 剛(1968-),男,博士,教授.研究領(lǐng)域:軟件工程,人工智能.
袁含香(1995-),女,碩士生.研究領(lǐng)域:軟件工程,智能計(jì)算.