【摘 要】本文主要的研究主體是個體軟件過程的互動案例,使學(xué)生通過這一主體的案例學(xué)習(xí),提高學(xué)生的程序開發(fā)水平,改進(jìn)他們的學(xué)習(xí)方式,完善自我的設(shè)計方法,培養(yǎng)學(xué)生追蹤和評價自己工作的習(xí)慣,逐漸提高學(xué)生的編程能力。
【關(guān)鍵詞】個體軟件過程 學(xué)生 編程能力
隨著軟件工程知識的普及,社會對軟件開發(fā)的需求也逐漸增多,軟件的開發(fā)技術(shù)也隨之不斷變化。軟件規(guī)模增大,沒有軟件開發(fā)思想和理論指導(dǎo)的軟件開發(fā)成本和進(jìn)度難以估計,這也就對軟件開發(fā)人員的專業(yè)能力有了高要求。對于工程專業(yè)的學(xué)生,具備了專業(yè)的編程能力,才更好地從事專業(yè)領(lǐng)域的創(chuàng)新研究。個體軟件過程是結(jié)合先進(jìn)的軟件開發(fā)思想和經(jīng)驗的教學(xué)過程,這樣的教學(xué)過程能夠提高學(xué)生的編程能力,從而推動我國軟件產(chǎn)業(yè)的快速發(fā)展。
一、個體軟件過程
(一)個體軟件過程概述
為提高軟件質(zhì)量,便于軟件生產(chǎn)的管理,美國卡內(nèi)基·梅隆大學(xué)軟件工程研究所提出CMM模型(能力成熟度模型),用于評價軟件企業(yè)軟件過程能力等級。個體軟件過程是SMM 的提出者在總結(jié)了SMM實施中的問題后提出的。個體軟件過程從個體培養(yǎng)CMM 所需的軟件工程知識和技能,以改進(jìn)組織工作中的個人規(guī)范,幫助軟件工程師改進(jìn)自己的工作方式,培養(yǎng)他們個體軟件開發(fā)的能力,并提供詳細(xì)的方法,指導(dǎo)軟件工程師按計劃執(zhí)行任務(wù),利用計劃來指導(dǎo)開發(fā)工作。
(二)個體軟件過程的原理
個體軟件過程的設(shè)計原理如下:
1.數(shù)據(jù)工作計劃。每一個軟件開發(fā)人員的能力都是不同的,因此要追求最大效率,必須在個人的數(shù)據(jù)基礎(chǔ)上計劃他們的工作。
2.對產(chǎn)品負(fù)責(zé)。軟件開發(fā)人員必須對其生產(chǎn)的產(chǎn)品負(fù)責(zé),必須提高個人工作質(zhì)量。
3.防止缺陷產(chǎn)生。在軟件開發(fā)過程中,開發(fā)人員必須及時發(fā)現(xiàn)并修復(fù)缺陷,修復(fù)缺陷的時間越快,其成本越低。防止缺陷產(chǎn)生比發(fā)現(xiàn)缺陷更有效,因此,開發(fā)人員在工作過程中應(yīng)該集中注意力,防止缺陷的產(chǎn)生。
4.個人工作計劃。開發(fā)人員必須在個人工作開始之前對自己的工作進(jìn)行計劃,而且用一個定義對工作計劃進(jìn)行描述。為了了解每個軟件開發(fā)人員的工作表現(xiàn),必須測量每個工作步驟所花費的時間、產(chǎn)生和修復(fù)缺陷的數(shù)量,以及他們制造產(chǎn)品的規(guī)模。
5.關(guān)注產(chǎn)品質(zhì)量。開發(fā)人員必須計劃、測量產(chǎn)品質(zhì)量,從工作的開始就關(guān)注產(chǎn)品質(zhì)量。在工作的最后,他們必須分析每一個工作的結(jié)果,以改善個人的工作質(zhì)量。
(三)個體軟件過程的內(nèi)容
個體軟件過程與具體的技術(shù)相對獨立,其原則能夠應(yīng)用到幾乎任何的軟件工程任務(wù)之中。個體軟件過程的內(nèi)容包括一下幾個方面:1.說明個體軟件過程的原則;2.為軟件開發(fā)人員作出準(zhǔn)確的計劃;3.為軟件開發(fā)人員改善產(chǎn)品質(zhì)量采取步驟;4.建立度量個體軟件過程的基準(zhǔn);5.確定軟件對軟件工程師能力的影響。
二、個體軟件過程對學(xué)生編程能力的影響
(一)提高軟件工程能力
軟件工程師的所需要的一個重要能力是軟件工程能力,只有擁有良好的軟件技術(shù)和設(shè)計理念才可以稱為優(yōu)秀的程序員。然而好的軟件工程師必須還要懂得軟件工程。個體軟件過程就能夠提高學(xué)生軟件工程方面的能力,這一過程是通過循序漸進(jìn)的方法,先學(xué)習(xí)簡單、基礎(chǔ)的方法,然后再根據(jù)個人的實際條件應(yīng)用到軟件開發(fā)中,這樣循環(huán)往復(fù),能力就會得到提高。個體軟件過程使用自下而上的方法來改進(jìn)學(xué)習(xí)過程,向每個軟件開發(fā)人員表明過程改進(jìn)的原則,讓他們明白如何開發(fā)出高質(zhì)量的軟件。
(二)提高制定計劃的能力
在軟件的開發(fā)過程中,如果開發(fā)人員不經(jīng)過個體軟件過程的培訓(xùn),就只能在軟件開發(fā)的過程中逐步探索,慢慢掌握軟件開發(fā)的技巧和方法。這樣不僅學(xué)習(xí)時間較長,需要付出很大代價,而且風(fēng)險也會隨著開發(fā)的深入而逐漸增大。個體軟件過程可以通過過程的原則幫助軟件工程師了解自己的技能水平,學(xué)會自我管理和計劃,是自己的日常工作更加準(zhǔn)確有效,提高制定計劃的能力,從而提高軟件開發(fā)的質(zhì)量。通過個體軟件過程,學(xué)生在編碼規(guī)范、程序設(shè)計速度、時間管理、軟件開發(fā)等方面明顯得到了提高。
三、實施個體軟件過程應(yīng)注意的問題
(一)實施計劃的完善
個體軟件過程的實施是一個龐大的過程,涉及到所有的軟件開發(fā)人員。只有企業(yè)的領(lǐng)導(dǎo)者、學(xué)校教育的領(lǐng)導(dǎo)者發(fā)現(xiàn)個體軟件過程的重要性,并予以關(guān)注,個體軟件過程才能得以實施。由于每個企業(yè)的構(gòu)成、工作人員等方面都存在一定的差異,因此,難以找到實施個體軟件過程的標(biāo)準(zhǔn)。每個企業(yè)只有針對自身的特點,制定出適合自己的實施計劃,才能使個體軟件過程得到完整地實施,從而提高軟件開發(fā)的質(zhì)量。
(二)激勵機制的建立
在個體軟件過程的實施過程中,每個軟件開發(fā)人員的工作信息都會暴露給管理者,這會給軟件開發(fā)人員造成較大的心理壓力。為了解決這一問題,一方面要使軟件開發(fā)人員充分了解個體軟件過程對個人的好處。個體軟件過程不僅能提高軟件開發(fā)人員制定計劃的能力,還能提高軟件編程能力,對軟件的開發(fā)有巨大的促進(jìn)作用。另一方面,必須建立行之有效的激勵機制,使那些參與個體軟件過程,且工作質(zhì)量得到提高的軟件開發(fā)人員給予回報。及時的鼓勵和獎勵能夠激發(fā)軟件開發(fā)人員的工作的激情,創(chuàng)造出更加高質(zhì)量的軟件。
四、結(jié)束語
個體軟件過程把計劃制定、時間管理、缺陷管理、軟件規(guī)模度量等內(nèi)容納入學(xué)習(xí)中,全面培養(yǎng)學(xué)生的軟件開發(fā)能力。個體軟件過程完善個體過程教學(xué),提高學(xué)生的程序開發(fā)能力,使學(xué)生全面接受個體軟件過程培訓(xùn)過程,使學(xué)生的編程能力得到了很大程度地提高,達(dá)到軟件開發(fā)人員的基本素質(zhì)要求。
參考文獻(xiàn):
[1]趙有俊,劉紀(jì)敏,范明芳,張蓓. 基于PSP互動案例教學(xué)的研究與設(shè)計[J]. 計算機教育,2013,11:87-90.
[2]吳菲菲,韓福榮. 個體軟件過程(PSP)的原理與實施[J]. 世界標(biāo)準(zhǔn)化與質(zhì)量管理,2003,02:39-41+1.
[3]黃賢英,梁光春. 利用ePSP提高個人軟件開發(fā)能力[J]. 計算機系統(tǒng)應(yīng)用,2001,10:69-71.