摘 要:通過(guò)能力成熟度模型集成(CMMI)的框架分析了影響過(guò)程改進(jìn)的主要因素。以過(guò)程域中的需求開(kāi)發(fā)作為研究對(duì)象,系統(tǒng)闡述了需求開(kāi)發(fā)的主要活動(dòng),并以CMMI三級(jí)為基礎(chǔ)提出了一套適用于企業(yè)實(shí)踐的精簡(jiǎn)需求開(kāi)發(fā)模型,并討論了相關(guān)方法。
關(guān)鍵詞:需求開(kāi)發(fā);過(guò)程改進(jìn);CMMI三級(jí)過(guò)程域
1、CMMI模型
CMMI(Capability Maturity Model—Integration)即能力成熟度模型集成,是對(duì)于軟件組織在定義、實(shí)現(xiàn)、度量、控制和改善其軟件過(guò)程的各個(gè)發(fā)展階段的描述。旨在幫助企業(yè)進(jìn)行對(duì)軟件工程過(guò)程的管理和改進(jìn),增強(qiáng)開(kāi)發(fā)制造能力,從而能按時(shí)地、不超預(yù)算地制造出高質(zhì)量的軟件。
CMMI為學(xué)科分離構(gòu)筑了“橋梁”,將各類工程學(xué)科集成在一起,形成一個(gè)過(guò)程改進(jìn)框架。當(dāng)出現(xiàn)需求時(shí),為引進(jìn)新學(xué)科提供框架。CMMI來(lái)源于傳統(tǒng)的質(zhì)量工程理論,吸收了Walter Shewart的統(tǒng)計(jì)質(zhì)量控制原理,PhiiipCroseby在“Quality is free”中提出的將質(zhì)量管理改編為成熟度框架的思想。
2、過(guò)程改進(jìn)和需求開(kāi)發(fā)
在協(xié)助組織開(kāi)發(fā)與維護(hù)質(zhì)量產(chǎn)品及服務(wù)的研究中,組織可以專注數(shù)個(gè)改進(jìn)經(jīng)營(yíng)的維度。一般來(lái)說(shuō),人員、程序和方法,以及工具與設(shè)備是其中最重要的3個(gè)維度。而組織中使用的過(guò)程(Process)將一切結(jié)合在一起。過(guò)程代表著一系列活動(dòng)、任務(wù)和它們之間的關(guān)系,它們共同把一組輸入轉(zhuǎn)換成所需要的輸出,是產(chǎn)品成本,進(jìn)度和質(zhì)量的主要決定因素。過(guò)程透過(guò)協(xié)助人員更敏捷的工作而非費(fèi)力工作及一致性改進(jìn),來(lái)參考組織人員符合經(jīng)營(yíng)目標(biāo)。
有效的過(guò)程也提供導(dǎo)入與使用新技術(shù)的工具,以符合組織的經(jīng)營(yíng)目標(biāo)。優(yōu)化后的過(guò)程改進(jìn)模型可以改進(jìn)進(jìn)度和預(yù)算的可預(yù)測(cè)性,改進(jìn)開(kāi)發(fā)周期和提高生產(chǎn)率,增加客戶的滿意度和提高員工的士氣
軟件企業(yè)存在的過(guò)程包括需求開(kāi)發(fā)與管理,項(xiàng)目策劃和監(jiān)控,需求分析、設(shè)計(jì)、編碼、測(cè)試,配置管理,質(zhì)量保證等等。所有開(kāi)發(fā)項(xiàng)目都有需求,從項(xiàng)目于維護(hù)活動(dòng)的項(xiàng)目案例來(lái)看,產(chǎn)品或產(chǎn)品組件的變更,是基于現(xiàn)有需求、設(shè)計(jì)、或?qū)崿F(xiàn)的變更。需求變更可能來(lái)自顧客或使用者所記載的變更請(qǐng)求單,或來(lái)自于需求開(kāi)發(fā)過(guò)程的新需求形式。不論需求來(lái)源或型式,變更所驅(qū)動(dòng)的維護(hù)活動(dòng)也要加以管理。需求是設(shè)計(jì)的基礎(chǔ),需求的開(kāi)發(fā)包括下列活動(dòng):
●誘導(dǎo)、分析、驗(yàn)證,以及溝通客戶的需要、期望及限制,以獲得客戶需求,并達(dá)成千系人的共識(shí)
●收集和協(xié)調(diào)干系人的需要
●開(kāi)發(fā)產(chǎn)品的生命周期需求
●建立客戶需求
●建立與客戶需求一致的原始產(chǎn)品及產(chǎn)品組件需求
3、基于CMMI三級(jí)的需求開(kāi)發(fā)模型
在成熟度等級(jí)3上,項(xiàng)目執(zhí)行過(guò)程是通過(guò)剪裁組織的標(biāo)準(zhǔn)過(guò)程集合和組織過(guò)程財(cái)富產(chǎn)生的“已定義過(guò)程”,并具備與該過(guò)程相適應(yīng)的運(yùn)行環(huán)境。其與成熟度等級(jí)2的區(qū)別在于標(biāo)準(zhǔn)、過(guò)程描述、規(guī)范的應(yīng)用范圍是全組織級(jí)的。
“需求開(kāi)發(fā)”過(guò)程的目的是產(chǎn)生和分析客戶需求、產(chǎn)品需求和產(chǎn)品組件需求。需求開(kāi)發(fā)過(guò)程域包括三項(xiàng)特定目標(biāo)。 [開(kāi)發(fā)客戶需求]特定目標(biāo)說(shuō)明如何定義完整的客戶需求,以使用于產(chǎn)品需求開(kāi)發(fā)。收集共同利益者的需要、期望、限制條件和接口,并且把他們轉(zhuǎn)換成客戶需求。 [開(kāi)發(fā)產(chǎn)品需求]特定目標(biāo)說(shuō)明如何定義完整的產(chǎn)品和產(chǎn)品組件需求,以使用于產(chǎn)品和產(chǎn)品組件設(shè)計(jì)。對(duì)客戶需求加以精煉和細(xì)化,針對(duì)產(chǎn)品生存周期開(kāi)發(fā)產(chǎn)品和組件需求?!悍治霾⒋_認(rèn)需求J特定目標(biāo)說(shuō)明客戶、產(chǎn)品及產(chǎn)品組件需求須執(zhí)行的必要分析,以定義、衍生及了解需求。對(duì)各項(xiàng)需求進(jìn)行分析和確認(rèn)并且開(kāi)發(fā)所要求的功能度的定義。第三項(xiàng)特定目標(biāo)的特定實(shí)踐,用以輔助前兩項(xiàng)特定目標(biāo)的特定實(shí)踐。需求開(kāi)發(fā)過(guò)程域的過(guò)程和技術(shù)解決方案過(guò)程域的過(guò)程,可彼此相互循環(huán)互動(dòng)。
4、開(kāi)發(fā)流程及過(guò)程描述
4.1 相關(guān)角色和對(duì)應(yīng)職責(zé)
在需求開(kāi)發(fā)模型中,一共涉及需求人員、開(kāi)發(fā)組和客戶等三種角色。需求人員的職責(zé)包括制訂需求獲取計(jì)劃,獲取客戶需求,評(píng)審需求,開(kāi)發(fā)客戶需求,開(kāi)發(fā)產(chǎn)品需求等;開(kāi)發(fā)組的職責(zé)包括開(kāi)發(fā)客戶需求,構(gòu)建快速模型,對(duì)需求進(jìn)行承諾等;客戶的職責(zé)則是提出客戶需求,確認(rèn)需求獲取計(jì)劃以及對(duì)需求進(jìn)行承諾。
4.2 過(guò)程描述
4.2.1 建立需求獲取的計(jì)劃
此階段需求人員要依據(jù)《項(xiàng)目綜合計(jì)劃》草案,細(xì)化需求階段的具體活動(dòng)安排,形成需求獲取計(jì)劃。可將需求計(jì)劃增加到項(xiàng)目主計(jì)劃中或單獨(dú)編寫(xiě)《需求調(diào)研計(jì)劃》。然后由項(xiàng)目經(jīng)理與客戶確認(rèn)需求獲取計(jì)劃。
4.2.2 獲取需求
(1)客戶訪談
為了成功地進(jìn)行訪談,獲取盡可能多的信息,把訪談分成準(zhǔn)備、對(duì)話、結(jié)束和總結(jié)四個(gè)階段,每個(gè)階段都要有很好的氣氛和對(duì)答話人造成心理上的信任感。在準(zhǔn)備過(guò)程步驟如下:①選好訪談的人員(根據(jù)負(fù)責(zé)的領(lǐng)域、別人的推薦,或者不同層次的人員,上層人員談大局概貌,下層的人員談信息的細(xì)節(jié),中層的人則彌合了這兩者的間隙)。②寫(xiě)出初步議程(訪談議題范圍,避免泛泛而談,提出專門(mén)問(wèn)題)③編寫(xiě)問(wèn)題列表或問(wèn)卷,與被訪談人員建立聯(lián)系。④最后正式做出訪談議程。
(2)調(diào)查及分析
首先準(zhǔn)備調(diào)查材料。例如問(wèn)題列表,問(wèn)卷等。然后與被調(diào)查者建立聯(lián)系,確定調(diào)查的時(shí)間、地點(diǎn)、人員等。之后進(jìn)行客戶訪談, 將調(diào)查結(jié)果記錄在《需求調(diào)研記錄表》中并得到客戶確認(rèn)。
需求人員分析調(diào)查的記錄(《需求調(diào)研記錄表》),根據(jù)分析的結(jié)果,在組織財(cái)富庫(kù)中查找是否存在類似的項(xiàng)目。如果存在類似的項(xiàng)目,給客戶演示已有的項(xiàng)目,進(jìn)一步了解客戶的需求,并將客戶訪談內(nèi)容記錄在《需求調(diào)研記錄表》。如果不存在類似的項(xiàng)目,可以根據(jù)需要由開(kāi)發(fā)人員構(gòu)建快速原型,給客戶演示快速原型,進(jìn)一步了解客戶的需求,將結(jié)果記錄在《需求調(diào)研記錄表》中。
(3)分析需求并確認(rèn)產(chǎn)品需求
對(duì)收集到的需求進(jìn)行分析,分析的結(jié)果記錄在《需求規(guī)格說(shuō)明書(shū)》中。系統(tǒng)分析負(fù)責(zé)人根據(jù)訪談?dòng)涗浖胺治龅慕Y(jié)果,確定詳細(xì)的業(yè)務(wù)需求、功能需求和非功能需求、設(shè)計(jì)約束,劃分需求的等級(jí)(子系統(tǒng)、模塊、功能項(xiàng))、優(yōu)先級(jí)。根據(jù)分析的結(jié)果編寫(xiě)《需求規(guī)格說(shuō)明書(shū)》,項(xiàng)目組內(nèi)部參照《評(píng)審指南》中評(píng)審流程對(duì)《需求規(guī)格說(shuō)明書(shū)》進(jìn)行評(píng)審。主要從需求開(kāi)發(fā)的成本、開(kāi)發(fā)的進(jìn)度、和減少開(kāi)發(fā)風(fēng)險(xiǎn)的角度進(jìn)行評(píng)審。項(xiàng)目組內(nèi)部評(píng)審?fù)ㄟ^(guò)后,與客戶進(jìn)行確認(rèn),驗(yàn)證產(chǎn)品需求是否符合客戶的要求。
根據(jù)客戶的要求修改《需求規(guī)格說(shuō)明書(shū)》,修改之后要得到客戶的確認(rèn)??蛻艚?jīng)理依據(jù)SRS再進(jìn)行估計(jì),形成《項(xiàng)目綜合計(jì)劃》正式版,對(duì)于需求重點(diǎn)將每一個(gè)需求分配給不同的小組和個(gè)人,將分配的結(jié)果寫(xiě)到進(jìn)度計(jì)劃中。計(jì)劃采用:MS Project工具,并與進(jìn)度計(jì)劃相關(guān)的成員進(jìn)行溝通,并取得其承諾。
5、需求分析的方法
除了上述的問(wèn)答分析方法以外,需求分析常用的方法還包括繪制關(guān)聯(lián)圖及創(chuàng)建開(kāi)發(fā)原型、可行性分析,需求的圖形分析模型和創(chuàng)建數(shù)據(jù)字典等。

①繪制系統(tǒng)關(guān)聯(lián)圖是用于定義系統(tǒng)與系統(tǒng)外部實(shí)體間的界限和接口的簡(jiǎn)單模型。同時(shí)它也明確了通過(guò)接口的信息流和物質(zhì)流。創(chuàng)建開(kāi)發(fā)原型是當(dāng)開(kāi)發(fā)人員或用戶不能確定需求時(shí),開(kāi)發(fā)一個(gè)用戶接口原型,這樣使得許多概念和可能發(fā)生的事更為直觀明了。用戶通過(guò)評(píng)價(jià)原型將使項(xiàng)目參與者更好地相互理解所要解決的問(wèn)題。注意要找出需求文檔與原型之間所有的沖突之處。②分析需求可行性在允許的成本、性能要求下,分析每項(xiàng)需求實(shí)施的可行性,明確與每項(xiàng)需求實(shí)現(xiàn)相聯(lián)系的風(fēng)險(xiǎn),包括與其它需求的沖突,對(duì)外界因素的依賴和技術(shù)障礙。③需求的圖形分析模型是軟件需求規(guī)格說(shuō)明極好的補(bǔ)充說(shuō)明。它們能提供不同的信信與關(guān)系以有助于找到不正確的、不一致的、遺漏的和冗余的需求。這樣的模型包括數(shù)據(jù)流圖、實(shí)體關(guān)系圖、狀態(tài)變換圖、對(duì)話框圖、對(duì)象類及交互作用圖。④數(shù)據(jù)字典是對(duì)系統(tǒng)用到的所有數(shù)據(jù)項(xiàng)和結(jié)構(gòu)的定義,以確保開(kāi)發(fā)人員使用統(tǒng)一的數(shù)據(jù)定義。在需求階段,數(shù)據(jù)字典至少應(yīng)定義客戶數(shù)據(jù)項(xiàng)以確??蛻襞c開(kāi)發(fā)小組是使用一致的定義和術(shù)語(yǔ)。分析和設(shè)計(jì)工具通常包括數(shù)據(jù)字典組件。
參考文獻(xiàn):
[l]劉學(xué)仁,邵偉民,黃威基于CMMI三級(jí)的企業(yè)項(xiàng)目管理系統(tǒng)研究與設(shè)計(jì)[J],計(jì)算機(jī)工程與設(shè)計(jì),2009,30(13):3100-3103
[2]周金陵,張鵬基于CMMI的軟件過(guò)程改進(jìn)研究[J],計(jì)算機(jī)工程與設(shè)計(jì),2003,24(11):60-62
[3]毛超,林子禹,肖勁松,軟件企業(yè)CMMI評(píng)估系統(tǒng)的UML建模、設(shè)計(jì)與實(shí)現(xiàn)[J],計(jì)算機(jī)工程,2004,30(7):66—67.
[4]袁順波,企業(yè)知識(shí)管理成熟度模型研究[J]江蘇商論,2008(3):105-106
[5]毛明志,基于CMMI的需求管理模型[J],科技管理研究,2008(1):203-205
[6]邢彬彬,姚鄭,CMM/CMMI與軟件生命周期模型關(guān)系的研究[J]計(jì)算機(jī)應(yīng)用研究2007(11):65-69.
17]白思俊,朱宏超基于CMM與OPM3的軟件項(xiàng)目關(guān)鍵成功因素分析[J]管理工程學(xué)報(bào)2005(19):1-5