王芳 秦映波


摘? 要: 本文從軟件項(xiàng)目管理課程的教學(xué)實(shí)踐出發(fā),對(duì)筆者之前提出的敏捷軟件項(xiàng)目管理教學(xué)方案進(jìn)行了改進(jìn),文中描述了改進(jìn)過程和改進(jìn)效果,體現(xiàn)了自我改進(jìn)、不斷創(chuàng)新的教學(xué)改革精神。
關(guān)鍵詞: 軟件項(xiàng)目管理;敏捷;教學(xué)方案;教學(xué)改革
中圖分類號(hào): TP311? ? 文獻(xiàn)標(biāo)識(shí)碼: A? ? DOI:10.3969/j.issn.1003-6970.2020.10.047
本文著錄格式:王芳,秦映波. 敏捷軟件項(xiàng)目管理課程教學(xué)方案實(shí)踐過程改進(jìn)[J]. 軟件,2020,41(10):184186+197
【Abstract】: Starting from the teaching practice of software project management course, this paper improves the teaching scheme of agile software project management proposed by the author. The improvement process and effect are described in this paper, which embodies the teaching reform spirit of self-improvement and continuous innovation.
【Key words】: Software project management; Agile; Teaching scheme; Educational reform
0? 引言
軟件項(xiàng)目管理課程是軟件工程專業(yè)本科階段的必修課,對(duì)培養(yǎng)具有實(shí)踐和管理能力的軟件開發(fā)人才具有重要的意義[1]。然而很多人覺得大學(xué)時(shí)候?qū)W的軟件項(xiàng)目管理相關(guān)內(nèi)容很“虛”,那是因?yàn)榇髮W(xué)期間的軟件項(xiàng)目管理更側(cè)重理論,理解起來枯燥乏味,很難學(xué)以致用;學(xué)生沒有實(shí)際項(xiàng)目演練機(jī)會(huì),學(xué)的東西沒有辦法馬上進(jìn)行實(shí)踐;所有的概念都只是文字而已,根本談不上理解為何需要這樣的管理流程、管理方法和工具、技術(shù)標(biāo)準(zhǔn)等。
而對(duì)于有6年互聯(lián)網(wǎng)公司研發(fā)經(jīng)驗(yàn)、2年項(xiàng)目管理經(jīng)驗(yàn)、2年教學(xué)經(jīng)驗(yàn)的筆者而言,大學(xué)時(shí)期學(xué)軟件項(xiàng)目管理當(dāng)然是非常有用的。在真正的軟件開發(fā)工作中,不管用什么開發(fā)語(yǔ)言,不管是前端和后端,可以確定的說,現(xiàn)代軟件項(xiàng)目開發(fā)都離不開軟件項(xiàng)目管理知識(shí)的應(yīng)用。學(xué)好了軟件項(xiàng)目管理,工作可以按時(shí)完成,軟件質(zhì)量有保證,開發(fā)的時(shí)間和成本都可控。實(shí)踐中遇到的問題,要從理論和實(shí)踐兩個(gè)方面去尋找答案,如果沒有上過這些課程,就需要重新學(xué)習(xí)。可是在日常工作中,遇到了實(shí)際問題,留給我們解決問題的時(shí)間是不多的,所以未必來得及重新學(xué)習(xí)。目前處于本科階段的學(xué)生們當(dāng)然無法知曉這一因果聯(lián)系。
作為軟件項(xiàng)目管理課程的教師,最重要的工作就是打破學(xué)生對(duì)該課程的不良印象,把理論知識(shí)和鮮活的案例結(jié)合起來,和學(xué)生一起探討這些知識(shí)點(diǎn)背后的歷史和現(xiàn)實(shí)意義,讓學(xué)生認(rèn)識(shí)到此課程的價(jià)值,調(diào)動(dòng)學(xué)生的學(xué)習(xí)興趣、提高學(xué)生的實(shí)踐能力。
1? 軟件項(xiàng)目管理課程教學(xué)方案研究與實(shí)踐
國(guó)內(nèi)重點(diǎn)大學(xué)的教學(xué)團(tuán)隊(duì)走在軟件工程系列課程改革的前列。以韓萬(wàn)江副教授為代表的教學(xué)團(tuán)隊(duì)結(jié)合互聯(lián)網(wǎng)時(shí)代的軟件工程發(fā)展,重新構(gòu)建課程體系和教學(xué)內(nèi)容。筆者通過北京郵電大學(xué)《軟件項(xiàng)目管理》精品課程在中國(guó)大學(xué)MOOC的在線課程,深入學(xué)習(xí)了重點(diǎn)大學(xué)相關(guān)課程的課程內(nèi)容和教學(xué)模式。
這些課程的教師們?cè)诮淌谲浖こ滔盗姓n程的基本概念、基本原理和基本方法的同時(shí),更重視軟件工程實(shí)踐訓(xùn)練。這些課程突破以開發(fā)生命周期安排教學(xué)單元的形式,從可實(shí)踐的角度進(jìn)行案例教學(xué)和項(xiàng)目實(shí)戰(zhàn);以Web應(yīng)用開發(fā)項(xiàng)目為主線,完成基于敏捷模型的項(xiàng)目開發(fā)和管理過程,并構(gòu)建基于云服務(wù)的課程項(xiàng)目實(shí)驗(yàn)環(huán)境,將過程和工具結(jié)合在一起,以實(shí)現(xiàn)“做中學(xué)”和“基于項(xiàng)目的學(xué)習(xí)”;通過貫穿始終的項(xiàng)目案例和情景項(xiàng)目展示,讓學(xué)生切身體會(huì)軟件項(xiàng)目管理過程從而更好地將軟件工程思想和軟件項(xiàng)目管理理論與實(shí)踐相結(jié)合[2-5]。
筆者通過對(duì)軟件項(xiàng)目管理課程相關(guān)教學(xué)方案的學(xué)習(xí)[6-8],結(jié)合自身企業(yè)軟件開發(fā)和項(xiàng)目管理經(jīng)驗(yàn),針對(duì)本學(xué)院軟件工程專業(yè)軟件項(xiàng)目管理課程進(jìn)行了教學(xué)改革,對(duì)軟件項(xiàng)目管理課程的教學(xué)內(nèi)容、教學(xué)方式、考核制度等方面進(jìn)行了詳細(xì)規(guī)劃和設(shè)計(jì),形成了一套符合當(dāng)前互聯(lián)網(wǎng)行業(yè)軟件產(chǎn)品開發(fā)規(guī)律的、讓學(xué)生真實(shí)體會(huì)軟件產(chǎn)品迭代過程的敏捷軟件項(xiàng)目管理教學(xué)方案[9]。
經(jīng)過對(duì)本學(xué)院2016級(jí)和2017級(jí)軟件工程專業(yè)學(xué)生大三上學(xué)期《軟件項(xiàng)目管理》課程的教學(xué)改革,教學(xué)效果得到了各位同學(xué)的肯定。同學(xué)們經(jīng)過一個(gè)學(xué)期的團(tuán)隊(duì)項(xiàng)目實(shí)踐,在做的過程中不斷學(xué)習(xí),從產(chǎn)品規(guī)劃到項(xiàng)目部署,逐漸找到適合自己的角色,補(bǔ)充該角色應(yīng)該具備的知識(shí)和技能,為畢業(yè)后選擇合適的職位積累了寶貴經(jīng)驗(yàn)。很多學(xué)生把這次實(shí)踐經(jīng)驗(yàn)寫在實(shí)習(xí)簡(jiǎn)歷中;還有些團(tuán)隊(duì)的項(xiàng)目成了社團(tuán)的工作平臺(tái)、為師生工作和學(xué)習(xí)提供便利的小程序、大學(xué)生創(chuàng)新創(chuàng)業(yè)項(xiàng)目等。
2? 軟件項(xiàng)目管理課程教學(xué)方案改進(jìn)
在過去的兩年中,筆者所在學(xué)院的軟件項(xiàng)目管理教師團(tuán)隊(duì)不斷總結(jié)經(jīng)驗(yàn)教訓(xùn),通過對(duì)教學(xué)方案實(shí)施過程中遇到的問題進(jìn)行整理和思考,在原有方案的基礎(chǔ)上完成了4項(xiàng)改進(jìn)。
2.1? 整合教學(xué)資源
我校軟件工程專業(yè)在軟件項(xiàng)目管理課程中使用北京郵電大學(xué)的韓萬(wàn)江副教授的《軟件項(xiàng)目管理案例教程(第4版)》,該教材在中國(guó)大學(xué)MOOC上有精品課程《軟件項(xiàng)目管理》[2]。受該精品課程的啟發(fā),我校也在超星學(xué)習(xí)通建立了該課程的線上學(xué)習(xí)資源,方便學(xué)生在線學(xué)習(xí)和交流。學(xué)生按照教學(xué)計(jì)劃、結(jié)合自身情況隨時(shí)隨地地在線上學(xué)習(xí)課程理論基礎(chǔ)知識(shí),通過題庫(kù)練習(xí)鞏固理論基礎(chǔ)。在線學(xué)習(xí)平臺(tái)還有利于教師和學(xué)生以及學(xué)生和學(xué)生之間的互動(dòng)交流。圖1為我校軟件項(xiàng)目管理課程資源和題庫(kù)。
2.2? 優(yōu)化項(xiàng)目選題
學(xué)生在自主選擇項(xiàng)目時(shí),往往面臨缺乏用戶場(chǎng)景的難題。如果學(xué)生無法設(shè)身處地理解用戶需求,就無法保持產(chǎn)品持續(xù)迭代的熱情。課程提供的可選題目均來自2018年度和2019年度微信小程序開發(fā)大賽各賽區(qū)決賽入圍名單(微信小程序開發(fā)大賽為每年上半年,而軟件項(xiàng)目管理課程為每年的下半年),絕大部分項(xiàng)目需求來源于校園生活和學(xué)習(xí)。可選題目?jī)H供參考,大家可根據(jù)自身意愿和生活學(xué)習(xí)過程中的實(shí)際需求進(jìn)行思考或擴(kuò)展,最終產(chǎn)品名稱可自行決定。但選題必須從解決實(shí)際問題出發(fā),來源于生活和學(xué)習(xí),服務(wù)于生活和學(xué)習(xí)。
2.3? 優(yōu)化團(tuán)隊(duì)組建規(guī)則
在學(xué)生自愿組隊(duì)的基礎(chǔ)上增加教師干預(yù):一是根據(jù)個(gè)人意愿將女生分散到不同團(tuán)隊(duì),女生往往對(duì)產(chǎn)品設(shè)計(jì)、團(tuán)隊(duì)管理更擅長(zhǎng),避免女生扎堆的團(tuán)隊(duì)出現(xiàn)。二是將個(gè)別不能成團(tuán)的學(xué)生安排入整體能力較高的團(tuán)隊(duì),以便觀摩學(xué)習(xí),在良好的氛圍中進(jìn)行自我改進(jìn)。團(tuán)隊(duì)內(nèi)部要明確各項(xiàng)工作的負(fù)責(zé)人,確保項(xiàng)目過程的產(chǎn)出有責(zé)任人,避免抱大腿、打醬油等不公平現(xiàn)象的出現(xiàn)。
2.4? 鼓勵(lì)過程分享
要鼓勵(lì)學(xué)生分享和互動(dòng),鼓勵(lì)做得好的團(tuán)隊(duì)分享自己的創(chuàng)意和成果,不但為其他團(tuán)隊(duì)樹立了學(xué)習(xí)的榜樣,而且使自己的工作更有價(jià)值,能起到相互激勵(lì)的作用。以17級(jí)軟件工程專業(yè)的4個(gè)班級(jí)為例,有較多的團(tuán)隊(duì)愿意站上講臺(tái)來分享團(tuán)隊(duì)成果,圖2為分享團(tuán)隊(duì)及項(xiàng)目列表。教師要鼓勵(lì)學(xué)生將遇到問題的拋出來,分享后馬上收集學(xué)生的問題,圖3為學(xué)生對(duì)某項(xiàng)目的提問列表(篩選了學(xué)生對(duì)某項(xiàng)目的提問)。教師將問題整理后反饋給分享的團(tuán)隊(duì),他們?cè)跍?zhǔn)備后再次進(jìn)行分享,精準(zhǔn)地回答學(xué)生提出的問題。這一過程充分體現(xiàn)了“以教師為主導(dǎo),以學(xué)生為主體”的教學(xué)理念。在最后階段的課程總結(jié)問卷調(diào)查中,有超過半數(shù)的同學(xué)表示自己受益于分享,或從中學(xué)到知識(shí),或由此受到鼓舞,圖4為某同學(xué)通過問卷調(diào)查表單提交的課程總結(jié)內(nèi)容。
3? 結(jié)語(yǔ)
軟件行業(yè)日新月異,新的技術(shù)和工具層出不窮,軟件工程專業(yè)相關(guān)的課程內(nèi)容和教學(xué)手段也必須要“與時(shí)俱進(jìn)”,符合市場(chǎng)需求。軟件項(xiàng)目管理需要與實(shí)踐結(jié)合緊密的特點(diǎn),對(duì)師資提出了更高要求。為了讓學(xué)生了解到人們廣泛使用的軟件是如何開發(fā)出來的,課程教師需要有豐富的項(xiàng)目經(jīng)驗(yàn),有第一手的流程、文檔、數(shù)據(jù),能讓學(xué)生真切感受到了開發(fā)流程、需求管理、質(zhì)量控制的作用,體會(huì)到概念和理論并不是很有道理的廢話,而是對(duì)工業(yè)界經(jīng)驗(yàn)的總結(jié)。由此引發(fā)學(xué)生對(duì)互聯(lián)網(wǎng)行業(yè)的關(guān)注,激起學(xué)習(xí)興趣,使學(xué)生掌握規(guī)范化的軟件開發(fā)和質(zhì)量控制過程,培養(yǎng)良好的團(tuán)隊(duì)合作能力和實(shí)踐能力,為日后從事軟件開發(fā)相關(guān)工作打下堅(jiān)實(shí)的基礎(chǔ)[10-11]。
參考文獻(xiàn)
[1]張永平, 劉燕, 邵星. “案例驅(qū)動(dòng)+項(xiàng)目實(shí)踐”的軟件項(xiàng)目管理課程教學(xué)實(shí)踐[J]. 計(jì)算機(jī)教育, 2015, 23: 115-119.
[2]韓萬(wàn)江, 姜立新. 軟件項(xiàng)目管理案例教程(第4版)[M]. 北京: 機(jī)械工業(yè)出版社, 2019.
[3]韓萬(wàn)江, 姜立新, 張笑燕, 等. 基于工程化的軟件工程教學(xué)案例研究[J]. 軟件, 2019, 40(3): 78-87.
[4]韓萬(wàn)江, 張笑燕, 陸天波, 等. 軟件工程專業(yè)認(rèn)證的新思路研究[J]. 軟件, 2015, 36(3): 37-40.
[5]韓萬(wàn)江, 張笑燕, 陸天波. 《軟件項(xiàng)目管理》課程中理論與實(shí)踐的交融關(guān)系[J]. 軟件, 2014, 35(2): 165-168.
[6]Bob Hughes, Mike Cotterell 著. 廖彬山, 周衛(wèi)華 譯. 軟件項(xiàng)目管理(原書第5版)[M]. 北京: 機(jī)械工業(yè)出版社, 2010.
[7]Andrew Pham, Phuong-Van Pham著. 崔康 譯. Scrum實(shí)戰(zhàn)—敏捷軟件項(xiàng)目管理與開發(fā)[M]. 北京: 清華大學(xué)出版社, 2013.
[8]鄒欣. 構(gòu)建之法—現(xiàn)代軟件工程[M]. 北京: 人民郵電出版社, 2015.
[9]王芳, 鄧一星, 秦映波. 敏捷軟件項(xiàng)目管理課程教學(xué)方案研究與實(shí)踐[J]. 軟件, 2018, 39(4): 77-81.
[10]韓萬(wàn)江, 張笑燕, 陸天波. 基于混合式教學(xué)的軟件項(xiàng)目管理課程建設(shè)[J]. 大學(xué)教育, 2015, 10: 161-162.
[11]鄧一星. 軟件工程專業(yè)校企合作形式的探索與實(shí)現(xiàn), 2016, 37(8): 54-56.