對(duì)于軟件開(kāi)發(fā)項(xiàng)目而言,控制是十分重要的管理活動(dòng)。下面介紹軟件工程控制活動(dòng)中的質(zhì)量保證和配置管理。其實(shí)上面所提到的風(fēng)險(xiǎn)分析也可以算是軟件工程控制活動(dòng)的一類。而進(jìn)度跟蹤則起到連接軟件項(xiàng)目計(jì)劃和控制的作用。
軟件質(zhì)量保證(SQA,Software Quality Insurance)是在軟件過(guò)程中的每一步都進(jìn)行的“保護(hù)性活動(dòng)”。SQA主要有基于非執(zhí)行的測(cè)試(也稱為評(píng)審)、基于執(zhí)行的測(cè)試(即通常所說(shuō)的測(cè)試)和程序正確性證明。
軟件評(píng)審是最為重要的SQA活動(dòng)之一。它的作用是,在發(fā)現(xiàn)及改正錯(cuò)誤的成本相對(duì)較小時(shí)就及時(shí)發(fā)現(xiàn)并排除錯(cuò)誤。審查和走查是進(jìn)行正式技術(shù)評(píng)審的兩類具體方法。審查過(guò)程不僅步數(shù)比走審多,而且每個(gè)步驟都是正規(guī)的。由于在開(kāi)發(fā)大型軟件過(guò)程中所犯的錯(cuò)誤絕大數(shù)是規(guī)格說(shuō)明錯(cuò)誤或設(shè)計(jì)錯(cuò)誤,而正式的技術(shù)評(píng)審發(fā)現(xiàn)這兩類錯(cuò)誤的有效性高達(dá)75%,因此是非常有效的軟件質(zhì)量保證方法。
軟件配置管理(SCM,Software configuration management)是應(yīng)用于整個(gè)軟件過(guò)程中的保護(hù)性活動(dòng),它是在軟件整個(gè)生命周期內(nèi)管理變化的一組活動(dòng)。
軟件配置由一組相互關(guān)聯(lián)的對(duì)象組成,這些對(duì)象也稱為軟件配置項(xiàng),它們是作為某些軟件工程活動(dòng)的結(jié)果而產(chǎn)生的。除了文檔、程序和數(shù)據(jù)這些軟件配置項(xiàng)之外,用于開(kāi)發(fā)軟件的開(kāi)發(fā)環(huán)境也可置于配置控制之下。一旦一個(gè)配置對(duì)象已被開(kāi)發(fā)出來(lái)并且通過(guò)了評(píng)審,它就變成了基線。對(duì)基線對(duì)象的修改導(dǎo)致建立該對(duì)象的版本。版本控制是用于管理這些對(duì)象而使用的一組規(guī)程和工具。
變更控制是一種規(guī)程活動(dòng),它能夠在對(duì)配置對(duì)象進(jìn)行修改時(shí)保證質(zhì)量和一致性。配置審計(jì)是一項(xiàng)軟件質(zhì)量保證活動(dòng),它有助于確保在進(jìn)行修改時(shí)仍然保持質(zhì)量。狀態(tài)報(bào)告向需要知道關(guān)于變化的信息的人,提供有關(guān)每項(xiàng)變化的信息。