摘要:軟件項(xiàng)目管理是軟件工程專業(yè)的主要專業(yè)課程,針對(duì)課程中理論知識(shí)抽象,學(xué)生學(xué)習(xí)積極性不高等問(wèn)題,文章結(jié)合筆者教學(xué)改革實(shí)踐,從教學(xué)內(nèi)容、教學(xué)過(guò)程、考核方法的設(shè)計(jì)等方面進(jìn)行了探討,重點(diǎn)論述先進(jìn)軟件平臺(tái)輔助下的項(xiàng)目導(dǎo)向型學(xué)習(xí)過(guò)程。
關(guān)鍵詞:軟件項(xiàng)目;項(xiàng)目管理;教學(xué)改革;項(xiàng)目導(dǎo)向
軟件項(xiàng)目管理課程作為軟件工程專業(yè)的主要專業(yè)課,對(duì)培養(yǎng)工程化的軟件人才有極為重要的意義。在早期軟件工程專業(yè)的課程設(shè)置中,對(duì)學(xué)生的軟件開發(fā)工程化教育主要由軟件工程課承擔(dān),但隨著計(jì)算機(jī)、網(wǎng)絡(luò)等技術(shù)的飛速發(fā)展,軟件項(xiàng)目的規(guī)模、復(fù)雜度等大大增加,同時(shí)對(duì)軟件項(xiàng)目的質(zhì)量、進(jìn)度、成本等約束又要求有更嚴(yán)格的控制。在此背景下,只依靠軟件工程課作為學(xué)生軟件工程化教育的支撐已經(jīng)無(wú)法達(dá)到培養(yǎng)合格軟件工程師的要求。
大連東軟信息學(xué)院作為培養(yǎng)應(yīng)用型IT專門人才的院校,2005年開始在軟件工程專業(yè)本科生中開設(shè)軟件項(xiàng)目管理課程。課程安排在三年級(jí)下半學(xué)年的軟件工程課之后、四年級(jí)的項(xiàng)目實(shí)訓(xùn)之前,講授軟件項(xiàng)目管理知識(shí),在鞏固軟件工程課所學(xué)知識(shí)的同時(shí),對(duì)后續(xù)的實(shí)訓(xùn)項(xiàng)目開發(fā)和畢業(yè)設(shè)計(jì)又進(jìn)行了知識(shí)和技能儲(chǔ)備。
雖然軟件項(xiàng)目管理課程有著重要的意義和作用,但作為本科生課程學(xué)習(xí)還有一些困難,主要體現(xiàn)在以下方面:
1)軟件項(xiàng)目管理概念抽象、知識(shí)點(diǎn)眾多,學(xué)生不愿記憶,學(xué)習(xí)沒(méi)有興趣。
2)在校學(xué)生缺少實(shí)際項(xiàng)目經(jīng)驗(yàn),對(duì)于課程中的工程概念不易理解,學(xué)習(xí)難度大。
31授課教師往往缺乏工程項(xiàng)目經(jīng)驗(yàn),照搬書本,授課過(guò)程枯燥乏味。
4)學(xué)生認(rèn)為學(xué)習(xí)軟件項(xiàng)目管理沒(méi)有學(xué)習(xí)編程語(yǔ)言那樣直接的效果,學(xué)習(xí)動(dòng)力不足。
針對(duì)以上問(wèn)題,結(jié)合軟件項(xiàng)目管理課程的教學(xué)實(shí)踐,我院在授課內(nèi)容設(shè)置、教學(xué)過(guò)程和方法以及課程考核等方面進(jìn)行了有益的探索,取得了較為顯著的教學(xué)效果。
1 教學(xué)內(nèi)容設(shè)計(jì)
軟件項(xiàng)目管理是一門理論性和實(shí)踐性都很強(qiáng)的課程,以往的教學(xué)活動(dòng)中往往更強(qiáng)調(diào)理論知識(shí)的識(shí)記,致使學(xué)生感覺(jué)概念難于理解,無(wú)法指導(dǎo)實(shí)際項(xiàng)目開發(fā),理論脫離實(shí)際。筆者在教學(xué)活動(dòng)中將理論和實(shí)踐教學(xué)的學(xué)時(shí)比重設(shè)置為1:1,更加強(qiáng)調(diào)實(shí)踐,對(duì)理論知識(shí)做有重點(diǎn)的講授,收到了理想的效果。
1.1 理論教學(xué)抓重點(diǎn)
在授課內(nèi)容上首先不能一味追求全面,因?yàn)槭艿秸n程學(xué)時(shí)及學(xué)生能力的限制,要想在教學(xué)中涵蓋PMBOK的9個(gè)知識(shí)領(lǐng)域,即項(xiàng)目綜合管理、范圍管理、時(shí)間管理、成本管理、質(zhì)量管理、人力資源管理、溝通管理、風(fēng)險(xiǎn)管理和采購(gòu)管理,并且講得較為深入細(xì)致是不可能的。為此課程中我們選擇項(xiàng)目管理的4個(gè)核心知識(shí)域重點(diǎn)講解,包括項(xiàng)目范圍管理、時(shí)間管理、成本管理和質(zhì)量管理,占理論學(xué)時(shí)的3/4。對(duì)于4個(gè)項(xiàng)目管理的輔助知識(shí)域(人力資源管理、風(fēng)險(xiǎn)管理、溝通管理、采購(gòu)管理)和對(duì)各領(lǐng)域管理進(jìn)行有機(jī)整合的項(xiàng)目綜合管理則作介紹性講解,占理論學(xué)時(shí)的1/4,要讓學(xué)生了解相關(guān)概念,在課程實(shí)踐過(guò)程中再結(jié)合項(xiàng)目滲透講解。
軟件項(xiàng)目在管理知識(shí)域上可以分為9部分,但如果授課過(guò)程僅按各部分割裂講解,學(xué)生必然不會(huì)對(duì)各項(xiàng)管理間的聯(lián)系以及各項(xiàng)管理該如何進(jìn)行實(shí)施有清楚的認(rèn)識(shí),所以按時(shí)間順序把項(xiàng)目分成啟動(dòng)、計(jì)劃、執(zhí)行和控制、收尾各個(gè)階段,授課時(shí)在各階段結(jié)合具體知識(shí)域講解,如表1所示。
1.2 實(shí)踐教學(xué)抓工具
隨著計(jì)算機(jī)技術(shù)的發(fā)展,諸多行業(yè)都引入了軟件工具的支持,軟件項(xiàng)目管理這個(gè)軟件產(chǎn)業(yè)的指揮棒更是不例外。學(xué)習(xí)項(xiàng)目管理軟件的使用能讓學(xué)生形象地認(rèn)識(shí)到項(xiàng)目管理的相關(guān)理論和過(guò)程是如何應(yīng)用的,因此在實(shí)踐教學(xué)中一個(gè)重要的內(nèi)容就是學(xué)習(xí)使用經(jīng)典項(xiàng)目管理軟件。
業(yè)界用來(lái)進(jìn)行軟件項(xiàng)目管理的工具軟件很多,其中最著名的就是微軟的MS Proiect軟件(當(dāng)然MS Proiect可以用在各類項(xiàng)目的管理中),這個(gè)軟件相對(duì)簡(jiǎn)單,對(duì)于有Office使用經(jīng)驗(yàn)的學(xué)生,在學(xué)習(xí)了項(xiàng)目管理的相關(guān)理論后比較容易掌握。MS Proiect主要是項(xiàng)目計(jì)劃的工具,不適合于軟件開發(fā)整個(gè)過(guò)程的管控。
IBM作為業(yè)界領(lǐng)先的軟件服務(wù)解決方案專家,在2008年推出了基于Jazz平臺(tái)的工具解決方案Rational TeamConcert,簡(jiǎn)稱RTC。RTC平臺(tái)整合了軟件項(xiàng)目中不同的階段性工具,使得軟件項(xiàng)目過(guò)程的各階段和項(xiàng)目管理的各項(xiàng)工作能在RTC平臺(tái)上進(jìn)行操作和控制,保證了開發(fā)過(guò)程的完整性和一致性,如圖l所示。RTC平臺(tái)有專門供學(xué)習(xí)者使用的免費(fèi)版本,教學(xué)過(guò)程中通過(guò)帶領(lǐng)學(xué)生學(xué)習(xí)在RTC平臺(tái)下進(jìn)行項(xiàng)目開發(fā),能夠讓學(xué)生直接感受到軟件項(xiàng)目管理的作用和意義,在進(jìn)行軟件項(xiàng)目開發(fā)的同時(shí)深化學(xué)生對(duì)軟件項(xiàng)目管理理論的理解。
2 教學(xué)過(guò)程設(shè)計(jì)
好的教學(xué)效果離不開好的教學(xué)內(nèi)容,也離不開有效的教學(xué)過(guò)程控制。在教學(xué)過(guò)程方面主要是調(diào)動(dòng)學(xué)生的主觀能動(dòng)性。傳統(tǒng)軟件項(xiàng)目管理教學(xué)主要以教師理論講解,學(xué)生傾聽為主。這種教學(xué)過(guò)程即便是教師講的再好也難收到好的學(xué)習(xí)效果。教育的目的是為了讓學(xué)生學(xué)會(huì),為此我們的課堂提倡以學(xué)生為中心,踐行“做中學(xué)”的學(xué)習(xí)模式,教師只講授必要的理論知識(shí),并且只是在需要的時(shí)候講?,F(xiàn)代工程教育理念CDIO強(qiáng)調(diào)以項(xiàng)目為中心,提倡團(tuán)隊(duì)協(xié)作,軟件項(xiàng)目管理課程為實(shí)踐這種教學(xué)理念提供了土壤。
2.1 項(xiàng)目導(dǎo)向型的分組教學(xué)
在學(xué)習(xí)軟件項(xiàng)目管理課程之前,學(xué)生已經(jīng)先修了軟件工程、數(shù)據(jù)庫(kù)、計(jì)算機(jī)網(wǎng)絡(luò)、程序設(shè)計(jì)語(yǔ)言等課程,具備了完成軟件項(xiàng)目開發(fā)的基本條件。為此軟件項(xiàng)目管理課程在學(xué)習(xí)過(guò)程中采用分組教學(xué),以具體模擬項(xiàng)目開發(fā)為導(dǎo)向的教學(xué)過(guò)程。分組即將班級(jí)中的學(xué)生按5~6人一組劃分為團(tuán)隊(duì),每個(gè)團(tuán)隊(duì)中有項(xiàng)目經(jīng)理1人、技術(shù)總工1人、開發(fā)人員2人、測(cè)試人員1到2人組成。在學(xué)習(xí)過(guò)程中,各團(tuán)隊(duì)在RTC平臺(tái)控制下完成各自模擬項(xiàng)目。在這個(gè)過(guò)程中,每位同學(xué)在完成各自任務(wù)的同時(shí),與團(tuán)隊(duì)成員共同學(xué)習(xí)RTC平臺(tái)的用法,感受項(xiàng)目管理理論是如何在RTC平臺(tái)上體現(xiàn)的。
在模擬項(xiàng)目的選型方面,教師要幫助學(xué)生進(jìn)行控制。模擬軟件項(xiàng)目要源于企業(yè)對(duì)實(shí)際問(wèn)題的解決,但又要“適合”學(xué)生學(xué)習(xí)開發(fā)。模擬軟件系統(tǒng)項(xiàng)目應(yīng)該具有如下一些特點(diǎn)。
1)可用于教學(xué)的軟件項(xiàng)目,即軟件項(xiàng)目是經(jīng)過(guò)教師“裁剪”后的,因?yàn)閷W(xué)生時(shí)間和精力有限,不適合開發(fā)業(yè)務(wù)、邏輯過(guò)于復(fù)雜的大系統(tǒng)。
2)項(xiàng)目要有先進(jìn)性,即選擇項(xiàng)目的開發(fā)環(huán)境和開發(fā)工具要與企業(yè)要求相一致。
3)選擇的項(xiàng)目在開發(fā)時(shí)要便于組員間協(xié)作,便于培養(yǎng)學(xué)生的溝通、協(xié)作能力。
4)選擇有多種解決方案的項(xiàng)目,以便不同能力的學(xué)生都能提出自己的問(wèn)題解決路線。
2.2 教師與學(xué)生共同的講臺(tái)
軟件項(xiàng)目管理中有很多重要的知識(shí)點(diǎn)需要教師在課堂上教授給學(xué)生。這些理論知識(shí)是學(xué)生項(xiàng)目實(shí)踐前的基本準(zhǔn)備,對(duì)學(xué)生理解軟件項(xiàng)目有指導(dǎo)作用。很多項(xiàng)目管理的概念比較抽象,例如“基線”、“配置項(xiàng)”等。教師如何能夠結(jié)合自己的經(jīng)驗(yàn),用形象的語(yǔ)言給學(xué)生解釋清楚是教師在備課過(guò)程中需要積極思考的。在筆者單位,遴選軟件項(xiàng)目管理課教師的一個(gè)重要條件就是教師要有軟件項(xiàng)目開發(fā)及管理經(jīng)驗(yàn)。理論知識(shí)的集中講解過(guò)程一般安排在每次課的前半段,內(nèi)容上要與后半段的項(xiàng)目實(shí)踐相聯(lián)系,以便學(xué)生把理論與實(shí)踐相結(jié)合。
學(xué)生將來(lái)要從事的軟件開發(fā)工作是一個(gè)特別注重溝通的職業(yè),課堂教學(xué)過(guò)程要給學(xué)生展示自己的舞臺(tái)。為此教師在課程中設(shè)計(jì)若干個(gè)軟件項(xiàng)目管理的問(wèn)題案例。每個(gè)團(tuán)隊(duì)選擇其一,并對(duì)此案例深入準(zhǔn)備,對(duì)案例中的問(wèn)題及解決方案進(jìn)行分析。之后在教師指定的課堂時(shí)間內(nèi),由團(tuán)隊(duì)成員配合完成案例的講解,形式不限。這種嘗試不僅鍛煉了學(xué)生分析問(wèn)題、解決問(wèn)題的能力,同時(shí)還讓學(xué)生開始思考如何在團(tuán)隊(duì)中溝通協(xié)作,如何在大家面前展示自我。
3 考核方法設(shè)計(jì)
學(xué)習(xí)的目的不是為了考核,但科學(xué)的考核方式能夠有效的激發(fā)學(xué)生主觀能動(dòng)性,讓學(xué)習(xí)更有效果。本課程的成績(jī)考核采用如下方式:
學(xué)生成績(jī)=期末考試(50%)+實(shí)踐項(xiàng)目作品(30%)+課堂表現(xiàn)(10%)+團(tuán)隊(duì)貢獻(xiàn)(10%)-缺勤、遲到扣分。
其中,期末考試主要是考察學(xué)生對(duì)項(xiàng)目管理知識(shí)的掌握和分析、解決案例問(wèn)題的能力,采用閉卷筆試。實(shí)踐項(xiàng)目作品是指在RTC平臺(tái)下學(xué)生團(tuán)隊(duì)完成的模擬項(xiàng)目,與以往團(tuán)隊(duì)作品容易產(chǎn)生無(wú)法衡量個(gè)人工作量的困難不同,RTC平臺(tái)能夠準(zhǔn)確記錄每個(gè)合法用戶的工作,包括完成的文檔、代碼,操作及時(shí)間。教師可以通過(guò)RTC平臺(tái)檢驗(yàn)項(xiàng)目,并核實(shí)團(tuán)隊(duì)成員的工作量。團(tuán)隊(duì)貢獻(xiàn)成績(jī)是指教師按每個(gè)團(tuán)隊(duì)在課程學(xué)習(xí)中的表現(xiàn)給0~10分的一個(gè)成績(jī)(m分),假設(shè)團(tuán)隊(duì)有n個(gè)人,則團(tuán)隊(duì)就有m×n的總分,然后由團(tuán)隊(duì)負(fù)責(zé)人按組內(nèi)成員貢獻(xiàn)分配分?jǐn)?shù)(每人不得多于10分),這樣可以有效地激勵(lì)團(tuán)隊(duì)成員多做貢獻(xiàn),且較為真實(shí)。課堂表現(xiàn)主要是記錄學(xué)生在案例分析和課堂提問(wèn)等環(huán)節(jié)中的成績(jī)。對(duì)于學(xué)生缺勤和遲到等行為,則通過(guò)扣分的方式給予懲戒。
4 結(jié)語(yǔ)
通過(guò)幾個(gè)學(xué)期的教學(xué)實(shí)踐,這種軟件項(xiàng)目管理課程教學(xué)模式在應(yīng)用型院校本科軟件人才培養(yǎng)方面取得了較好的效果。學(xué)生普遍反映這種理論與實(shí)踐并重,以模擬項(xiàng)目開發(fā)為導(dǎo)向,輔助先進(jìn)軟件開發(fā)過(guò)程平臺(tái),強(qiáng)調(diào)團(tuán)隊(duì)協(xié)作精神的授課模式,讓大家在學(xué)習(xí)軟件項(xiàng)目管理知識(shí)和技能的同時(shí),能夠更多地了解企業(yè)環(huán)境下的軟件開發(fā)和管理過(guò)程,做到了學(xué)以致用。
參考文獻(xiàn):
[1]蔣國(guó)瑞.IT項(xiàng)目管理[M].北京:電子工業(yè)出版社,2006:6.
[2]寧德軍.奏響軟件交付的爵士樂(lè):Jazz平臺(tái)實(shí)踐者之路[M].北京:清華大學(xué)出版社,2009:55.
[3]查建中.論“做中學(xué)”戰(zhàn)略下的CDIO模式[J].高等工程教育研究,2008(3):1-6.
[4]楊少波.J2BB課程設(shè)計(jì):項(xiàng)目開發(fā)指導(dǎo)[M].北京:清華大學(xué)出版社,2009:17-1