我們知道,軟件產(chǎn)業(yè)與傳統(tǒng)的制造業(yè)相比是一個(gè)年輕的產(chǎn)業(yè),但又是一個(gè)很獨(dú)特的產(chǎn)業(yè)。其突出的特征表現(xiàn)在產(chǎn)品和生命過程的不可見;所投入的工作絕大部分屬于智力勞動(dòng);而且它的復(fù)雜性和規(guī)模的提高和擴(kuò)大越來越突出。正是由于這些特征使得軟件產(chǎn)品的質(zhì)量以及軟件的需求完全獲得用戶的滿意十分困難,更不用說用戶的需求變更又是經(jīng)常發(fā)生的事,所有這些問題幾十年來一直困擾著軟件人員。十幾年前國(guó)際標(biāo)準(zhǔn)ISO9000的引入和實(shí)施讓我們理解了,要想把軟件產(chǎn)品做好,必須從開發(fā)軟件過程中所有和質(zhì)量相關(guān)的環(huán)節(jié)入手。再進(jìn)一步實(shí)施CMM中,我們逐漸體會(huì)了Humphrey的名言:“軟件產(chǎn)品的質(zhì)量取決于開發(fā)軟件的過程質(zhì)量”。于是我們開始重視軟件過程了,并且把軟件過程的改進(jìn)擺在涉及企業(yè)生存和發(fā)展的重要位置上來。
然而解決好過程改進(jìn)的工作需要有人來做,由誰來做呢?開發(fā)人員嗎?項(xiàng)目管理人員或是企業(yè)管理人員呢?這些人承擔(dān)過程改進(jìn)工作都不現(xiàn)實(shí),也不恰當(dāng)。因?yàn)樗麄円呀?jīng)忙于自己的項(xiàng)目或是企業(yè)的管理工作,不可能投入精力專門考慮過程改進(jìn)的問題。事實(shí)上,軟件過程改進(jìn)人員在軟件企業(yè)里是一個(gè)新的崗位,它所承擔(dān)的并不是一般的事務(wù)性管理工作,這些工作不可能由原有的管理人員承擔(dān)或兼管。
對(duì)于軟件過程改進(jìn)人員的業(yè)務(wù)要求,我們應(yīng)該從幾個(gè)放面考慮: (1)懂業(yè)務(wù)。他們應(yīng)該了解軟件開發(fā)和軟件工程項(xiàng)目要做些什么事情。這并不是靠別人的介紹和講解所能掌握的,必須親自參加軟件工程項(xiàng)目的實(shí)踐,也就是說要有開發(fā)軟件的經(jīng)驗(yàn)。 (2)懂管理。由于軟件產(chǎn)品和軟件過程具有上述的特征,軟件項(xiàng)目的管理必須通過實(shí)踐才能正真理解。例如,需求管理、進(jìn)度管理、配置管理(包括變更管理、版本管理等)、人員團(tuán)隊(duì)管理等。而項(xiàng)目計(jì)劃的制定與估算相關(guān)、風(fēng)險(xiǎn)分析與進(jìn)度管理有關(guān)、階段評(píng)審與質(zhì)量管理有關(guān)等等。這些都涉及到專門的管理知識(shí)和技能,并且要把過程的改進(jìn)引入量化管理的軌道。 (3)熟悉和掌握軟件過程改進(jìn)相關(guān)的標(biāo)準(zhǔn)或模型。例如CMMI、ISO9000標(biāo)準(zhǔn)、ISO90003標(biāo)準(zhǔn)、ISO20000標(biāo)準(zhǔn)以及ISO270001標(biāo)準(zhǔn)等。這些標(biāo)準(zhǔn)或模型是當(dāng)前國(guó)際軟件界流行的,涉及到產(chǎn)品質(zhì)量、軟件過程的逐步改進(jìn)、人員能力的等級(jí)、信息技術(shù)中的服務(wù)管理以及信息系統(tǒng)的安全等問題。