吳 鵬, 于世東, 王 晨
(沈陽(yáng)師范大學(xué) 科信軟件學(xué)院, 沈陽(yáng) 110034)
?
基于工程主線的軟件工程課程串行化及PM模型研究
吳 鵬, 于世東, 王 晨
(沈陽(yáng)師范大學(xué) 科信軟件學(xué)院, 沈陽(yáng) 110034)
教育部提出大學(xué)應(yīng)該培養(yǎng)理論與實(shí)踐相結(jié)合的社會(huì)需要的創(chuàng)新性人才,要進(jìn)行卓越人才培養(yǎng)和產(chǎn)業(yè)行業(yè)急需人才的培養(yǎng),這就需要大學(xué)課程體系做出與其要求相適應(yīng)的調(diào)整和改進(jìn),使課程體系具有科學(xué)性與工程性,在這樣的課程體系下才能培養(yǎng)出知識(shí)、素質(zhì)、能力全面發(fā)展的工程化的軟件工程專業(yè)的大學(xué)畢業(yè)生。提出基于工程主線的軟件工程課程串行化及PM模型,該模型采用相位匹配的方式將軟件工程不同的專業(yè)課程配置上相位參數(shù),通過(guò)對(duì)相位參數(shù)的調(diào)整建立專業(yè)課程的數(shù)學(xué)模型,對(duì)數(shù)學(xué)模型的優(yōu)化改進(jìn)來(lái)完成課程優(yōu)化與改進(jìn),達(dá)到課程之間的串行化,根據(jù)工程的需求調(diào)整課程的相位參數(shù),使課程達(dá)到最優(yōu)組合,建立基于工程的課程體系,培養(yǎng)出軟件工程專業(yè)卓越工程師。
工程主線; 軟件工程; 串行化; PM模型
我國(guó)教育部在2005年以IEEE軟件工程框架為基礎(chǔ)組成CCSE,重點(diǎn)研究我國(guó)軟件工程教育知識(shí)體系的框架,提出我國(guó)軟件工程專業(yè)的培養(yǎng)目標(biāo)、課程體系、實(shí)踐教學(xué)等核心內(nèi)容[1];2006 國(guó)家教育部軟件工程教指委提出教學(xué)改革機(jī)制,建立一種循環(huán)往復(fù)的教學(xué)改革過(guò)程,不斷提高教學(xué)質(zhì)量,培養(yǎng)大學(xué)生的創(chuàng)新精神和創(chuàng)新能力,培養(yǎng)適應(yīng)我國(guó)經(jīng)濟(jì)和產(chǎn)業(yè)發(fā)展的工程型、技術(shù)型人才[2];2008 軟件工程專業(yè)引入CDIO(工程化教育模式)孕育(Conceive)、設(shè)計(jì)(Design)、實(shí)現(xiàn)(Implement)、操作(Operation)[3]; 2011國(guó)家教育部提出高等學(xué)校軟件工程專業(yè)規(guī)范,涉及知識(shí)體系、實(shí)踐能力和創(chuàng)新[4];2012軟件工程教指委提出軟件工程師計(jì)劃[5];2013軟件工程國(guó)內(nèi)峰會(huì)引入印度NIIT 提出實(shí)踐能力國(guó)際認(rèn)證[6];2014軟件工程國(guó)內(nèi)峰會(huì)碩士培養(yǎng)體系提出創(chuàng)新能力認(rèn)證[7]。這些都要求軟件工程課程應(yīng)該使學(xué)生學(xué)會(huì)運(yùn)用工程化的理念技術(shù)和方法,合理而有效地設(shè)計(jì)出高質(zhì)量的軟件,并進(jìn)行有效的軟件維護(hù)。軟件工程專業(yè)的教學(xué)應(yīng)使學(xué)生能勝任其所從事的軟件開(kāi)發(fā)崗位,并為社會(huì)和企業(yè)創(chuàng)造價(jià)值產(chǎn)生重要的影響。在傳統(tǒng)的授課方式下,學(xué)生重理論輕實(shí)踐,畢業(yè)后無(wú)法應(yīng)對(duì)實(shí)際的工程問(wèn)題。本文提出基于工程為主線軟件工程課程串行化及PM模型,其宗旨是提高理論與實(shí)踐的結(jié)合,達(dá)到理論實(shí)踐再到理論的螺旋式循環(huán)上升,解決目前教學(xué)與實(shí)踐脫節(jié),實(shí)踐沒(méi)有針對(duì)性和工程性的問(wèn)題。
軟件的工程化是研究如何用系統(tǒng)化、規(guī)范化、數(shù)量化等工程原則和方法進(jìn)行軟件的開(kāi)發(fā)和維護(hù),其包括軟件開(kāi)發(fā)技術(shù)和軟件項(xiàng)目管理[8]。軟件開(kāi)發(fā)技術(shù)包括軟件開(kāi)發(fā)方法學(xué)、軟件工具和軟件工程環(huán)境[9]。軟件項(xiàng)目管理包括軟件度量、項(xiàng)目估算、進(jìn)度控制、人員組織、配置管理、項(xiàng)目計(jì)劃等[10]。目前高校軟件工程的教學(xué)開(kāi)設(shè)了軟件工程與軟件項(xiàng)目管理等相應(yīng)課程,這些課程都是在一個(gè)學(xué)期內(nèi)完成教學(xué)內(nèi)容,學(xué)生在學(xué)習(xí)過(guò)程中對(duì)軟件工程化只是一個(gè)概念上的接觸與理解,并沒(méi)有將其實(shí)質(zhì)內(nèi)容應(yīng)用到具體的工程項(xiàng)目中,同時(shí)軟件的工程化思想并沒(méi)有始終貫穿于軟件的開(kāi)發(fā)全過(guò)程中去。
軟件工程化主線的設(shè)計(jì)目標(biāo)是將工程化的思想貫穿于整個(gè)軟件工程專業(yè)的專業(yè)必修課的學(xué)習(xí)之中。將軟件工程化的思想貫穿于軟件需求、軟件設(shè)計(jì)、軟件構(gòu)造、軟件測(cè)試、軟件維護(hù)、軟件配置管理、軟件工程管理、軟件工程過(guò)程、軟件工程建模與方法、軟件質(zhì)量與測(cè)試的課程中去[10-12]。軟件工程化為主線的實(shí)施過(guò)程是將工程化的概念實(shí)施于具體項(xiàng)目的建設(shè)過(guò)程中,其作用貫穿于項(xiàng)目需求,項(xiàng)目準(zhǔn)備,項(xiàng)目設(shè)計(jì),代碼編寫(xiě),軟件測(cè)試,軟件的發(fā)布與維護(hù)過(guò)程中[13-15]。以工程化為主線的課程依賴與工程的時(shí)間推進(jìn),如圖1所示。

圖1 工程化主線圖
在項(xiàng)目需求階段學(xué)生應(yīng)了解項(xiàng)目的背景及項(xiàng)目所涉及到的專業(yè)知識(shí),這個(gè)階段主要是通過(guò)自主資料查詢來(lái)了解項(xiàng)目所涉及的知識(shí),此階段可以開(kāi)設(shè)學(xué)生社會(huì)實(shí)踐課或?qū)嵺`討論課程。在項(xiàng)目的準(zhǔn)備階段以項(xiàng)目的需求為目標(biāo),完成開(kāi)發(fā)人員的確定,該項(xiàng)目采用什么樣的軟件環(huán)境和硬件環(huán)境,該環(huán)境是否支持項(xiàng)目的開(kāi)發(fā),總體上估計(jì)出項(xiàng)目的開(kāi)發(fā)周期,在這個(gè)階段開(kāi)設(shè)軟件編程語(yǔ)言課程及軟件工程課程。在項(xiàng)目設(shè)計(jì)階段開(kāi)始使用軟件工程課程進(jìn)行項(xiàng)目設(shè)計(jì),項(xiàng)目拆分,制定項(xiàng)目的開(kāi)發(fā)模型,此階段開(kāi)設(shè)建模語(yǔ)言課程及軟件設(shè)計(jì)課程。在代碼編寫(xiě)階段,主要進(jìn)行代碼編寫(xiě)與代碼文檔的建立,前面的課程可以串行化的并發(fā)推進(jìn)教學(xué),同時(shí)開(kāi)設(shè)軟件測(cè)試課程。在發(fā)布與維護(hù)階段進(jìn)行文檔的整理與維護(hù),確定維護(hù)人員與維護(hù)人員的培訓(xùn),在此階段開(kāi)設(shè)軟件維護(hù)與項(xiàng)目管理課程。課程開(kāi)設(shè)的階段與周期如圖2所示。

圖2 串行化課程
課程串行化PM(相位匹配)模型是利用相位匹配數(shù)學(xué)理論,建立一個(gè)課程教學(xué)模型。在該模型中課程用正弦曲線表示,課程的不同階段用正弦曲線的頻率來(lái)表示,課程的前后順序也就是串行化的程度用正弦曲線的初始相位來(lái)表示,這樣一門課的開(kāi)課時(shí)間課程進(jìn)度都可以用正弦曲線來(lái)表示,而正弦曲線是螺旋線在二維平面上的投影,這樣其變化就能體現(xiàn)出整體螺旋線的變化。圖3是用正弦曲線對(duì)課程的表述。
從圖中可以看出課程1的開(kāi)課時(shí)間要早于課程2和課程3,課程2與課程2是同一個(gè)相位,表示同時(shí)開(kāi)課,但課程2的周期長(zhǎng),是課程3周期的2倍。以六門課程的串行化為基本模型,其中一門課是貫穿于整個(gè)課程周期中,其他的課程根據(jù)工程化需要,開(kāi)課的先后順序由課程的相位來(lái)表示,課程之間相差π/8個(gè)相位。這樣圖2的串行化課程可以由圖4來(lái)表示。

圖3 正弦曲線表示的課程

圖4 串行化課程的PM模型
模型曲線表示出最終的求和曲線是串行化課程的總體結(jié)果,其體現(xiàn)了所有課程相繼串行化授課后的整體效果,模型建立后從求和曲線可以看到在課程的學(xué)習(xí)周期內(nèi)各門課程形成了一個(gè)類正弦曲線,而這種類正弦周期曲線就是最終的課程串行化的體現(xiàn)。圖4橫坐標(biāo)是時(shí)間,表示各個(gè)課程階段,縱坐標(biāo)是課程串行化效果。如果把求和曲線看成是課程串行化螺旋線在平面上的投影,可以看出在第1、第2和第3階段的曲線是正弦曲線,表示課程平穩(wěn)進(jìn)行,第4和第5階段的曲線近似于直線,表示課程串行化總體體現(xiàn)出直線推進(jìn)作用,其變化正好符合于工程為主線的項(xiàng)目開(kāi)發(fā)過(guò)程。

圖5 比較圖
培養(yǎng)人才的宗旨是以社會(huì)和技術(shù)需求為導(dǎo)向,不斷調(diào)整人才培養(yǎng)目標(biāo),開(kāi)發(fā)新課程,調(diào)整課程設(shè)置,建設(shè)具有軟件工程特色的課程體系。圖5是將該模型引入到教學(xué)中,在學(xué)生比賽、學(xué)生項(xiàng)目和高質(zhì)量就業(yè)方面近3年的比較圖。
將該模型應(yīng)用于教學(xué)當(dāng)中去,突出了實(shí)踐環(huán)節(jié)的權(quán)重,強(qiáng)化培養(yǎng)學(xué)生解決問(wèn)題的能力,使學(xué)生在項(xiàng)目、比賽與就業(yè)方面得到了逐年的提高。
該模型在不同的階段引入不同的課程,由淺入深、螺旋式逐漸遞進(jìn),課程之間既相對(duì)獨(dú)立,又互相銜接、互相依賴、相互融合,以具體課程為載體,以軟件工程為背景,綜合知識(shí)和能力,實(shí)現(xiàn)以能力螺旋遞進(jìn)為目標(biāo)的綜合課程體系,使學(xué)生在一個(gè)實(shí)基礎(chǔ)、寬專業(yè)、重實(shí)踐、強(qiáng)個(gè)性的課程環(huán)境中逐漸成長(zhǎng)為軟件工程師。
[1]祁金華. 中國(guó)軟件工程化未來(lái)寫(xiě)在第28屆世界軟件工程大會(huì)之后[J]. 軟件世界, 2006(11):49-50.
[2]劉強(qiáng). 軟件工程專業(yè)教學(xué)指導(dǎo)分委員會(huì)第一次工作會(huì)議[EB/OL].[2015-05-12].http:∥www.edu.cn/20060703/3198212.shtml.
[3]査建中. 論做中學(xué)戰(zhàn)略下的CDIO模式[J]. 高等工程教育研究, 2008(3):1-6.
[4]教育部. 國(guó)家教育部2011協(xié)同創(chuàng)新中心建設(shè)發(fā)展規(guī)劃[EB/OL].[2015-05-15].http:∥www.moe.edu.cn/publicfiles/business/htmlfiles/moe/s7062/201404/167787.html.
[5]教育部高等學(xué)校軟件工程專業(yè)教學(xué)指導(dǎo)分委員會(huì).高等學(xué)校軟件工程專業(yè)規(guī)范[M]. 北京:高等教育出版社, 2011:25.
[6]劉尚東. 基于NIIT-ISAS課程的大學(xué)生信息素養(yǎng)培養(yǎng)研究[J]. 科教導(dǎo)刊, 2013(5):105-106.
[7]佚名. 全國(guó)高校軟件工程專業(yè)教學(xué)改革和創(chuàng)新人才培養(yǎng)峰會(huì)[EB/OL] .[2015-05-13]. http:∥www.hzbook.com/News/n460.html.
[8]劉強(qiáng). 軟件工程教學(xué)實(shí)施方案[J]. 中國(guó)大學(xué)教學(xué), 2011(2):41-44.
[9]林連南. 三位一體的卓越軟件工程師培養(yǎng)模式[J]. 計(jì)算機(jī)教育, 2015(2):1-4.
[10]董瑞志. 面向卓越軟件工程師培養(yǎng)的軟件測(cè)試與質(zhì)量保證課程建設(shè)[J]. 教育教學(xué)論壇, 2015(6):160-161.
[11]萬(wàn)榮澤,何春玫. 工作過(guò)程系統(tǒng)化課程開(kāi)發(fā)的思考與實(shí)踐[J]. 教育與職業(yè), 2008(36):118-120.
[12]李學(xué)鋒. 工作過(guò)程系統(tǒng)化高職課程建設(shè)的研究與實(shí)踐[J]. 成都航空職業(yè)技術(shù)學(xué)院學(xué)報(bào), 2008(3):10-15.
[13]董宗然. 應(yīng)用型院校軟件項(xiàng)目管理課程教學(xué)探討[J]. 計(jì)算機(jī)教育, 2011(3):43-46.
[14]包冬梅. 軟件項(xiàng)目管理課程教改革探索[J]. 中國(guó)教育技術(shù)裝備, 2015(15):121-122.
[15]杜宇. 工作分解結(jié)構(gòu)視域下的軟件項(xiàng)目管理研究[J]. 電子制作, 2015(1):81.
Software project serialization courses based on engineering and PM model research
WUPeng,YUShidong,WANGChen
(Software College, Shenyang Normal University, Shenyang 110034, China)
The national ministry of education put forward that college should cultivate innovative talents who are the combination of theory and practice and of society needs. Curriculum system with scientific and engineering cultivates knowledge, quality and ability of comprehensive development engineering of software engineering graduates. The college must cultivate outstanding and industry urgent needing talents. This would require that the university curriculum system adapt to make its adjustment and improvement. University graduates are comprehensive development on knowledge, quality and ability. In this paper, software project serialization courses based on engineering and PM model research has been proposed. Model for software engineering courses uses the mathematical model of phase matching to serialization courses. Through the adjustment of the parameters of the phase, the mathematical model of the specialized course is set up, and the optimization of the mathematical model is improved to accomplish the optimization and serialization of the course. Engineering curriculum system develops software engineering excellence engineers.
engineering principal line; software engineering; serialization; PM model
2015-07-10。
遼寧省教育廳教育科學(xué)“十二五”規(guī)劃立項(xiàng)課題(JG13DB088); 遼寧省教育廳科學(xué)研究一般項(xiàng)目(L2014440)。
吳 鵬(1973-),男,遼寧沈陽(yáng)人,沈陽(yáng)師范大學(xué)副教授,博士。
1673-5862(2016)01-0125-04
G433
A
10.3969/ j.issn.1673-5862.2016.01.029
沈陽(yáng)師范大學(xué)學(xué)報(bào)(自然科學(xué)版)2016年1期