小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

度量

 馨馨 2006-05-31

      軟件度量software measurement)是對(duì)軟件開(kāi)發(fā)項(xiàng)目、過(guò)程及其產(chǎn)品進(jìn)行數(shù)據(jù)定義、收集以及分析的持續(xù)性定量化過(guò)程,目的在于對(duì)此加以理解、預(yù)測(cè)、評(píng)估、控制和改善。沒(méi)有軟件度量,就不能從軟件開(kāi)發(fā)的暗箱中跳將出來(lái)。通過(guò)軟件度量可以改進(jìn)軟件開(kāi)發(fā)過(guò)程,促進(jìn)項(xiàng)目成功,開(kāi)發(fā)高質(zhì)量的軟件產(chǎn)品。度量取向是軟件開(kāi)發(fā)諸多事項(xiàng)的橫斷面,包括顧客滿意度度量、質(zhì)量度量、項(xiàng)目度量、以及品牌資產(chǎn)度量、知識(shí)產(chǎn)權(quán)價(jià)值度量,等等。度量取向要依靠事實(shí)、數(shù)據(jù)、原理、法則;其方法是測(cè)試、審核、調(diào)查;其工具是統(tǒng)計(jì)、圖表、數(shù)字、模型;其標(biāo)準(zhǔn)是量化的指標(biāo)。

一、軟件度量的發(fā)展歷程

      如Lemmerich所言, 測(cè)量在科學(xué)領(lǐng)域有悠久的歷史[116]。相對(duì)早在1889年就定義好了度量單位~米的長(zhǎng)度測(cè)量[116],溫度的度量復(fù)雜的多。
Fahrenheit和Celsius分別在1714年和1742年提出了基于某固定點(diǎn)間隔遞增等級(jí)的溫度度量方法。Celsius將100度和0度之間分為100個(gè)等份。但問(wèn)題是一直不能唯一確定50攝氏度。而且長(zhǎng)度的測(cè)量總是一個(gè)比例尺度,但是溫度可能用間隔( 攝氏/華氏溫度表) 或者比例尺度(開(kāi)氏溫度)來(lái)衡量。

      今天,計(jì)算機(jī)在我們生活的每個(gè)領(lǐng)域幾乎都扮演了非常重要的角色。在計(jì)算機(jī)上運(yùn)行的軟件也越來(lái)越重要。因此,可預(yù)測(cè)、可重復(fù)、準(zhǔn)確地控制軟件開(kāi)發(fā)過(guò)程和軟件產(chǎn)品已經(jīng)非常重要。軟件度量就是衡量軟件品質(zhì)的一種手段。
  軟件度量或者說(shuō)軟件工程度量領(lǐng)域是一個(gè)在過(guò)去30多年研究非常活躍的軟件工程領(lǐng)域。軟件度量(software meASurement)和軟件量度(software metrics)一樣非常有名(譯者注:為了區(qū)分,譯者將software measurement和software metrics分別譯成軟件度量和軟件量度,其實(shí)他們都可以表示軟件度量)。但目前學(xué)界還沒(méi)有明確這兩個(gè)術(shù)語(yǔ)的區(qū)別。參照測(cè)量理論[159]的相關(guān)術(shù)語(yǔ),我們采用軟件度量(software measurement)。從文獻(xiàn)上看,這兩個(gè)術(shù)語(yǔ)是同義詞。量度(metric)在這里不作度量空間理解,它理解為:度量是客觀對(duì)象到數(shù)字對(duì)象的同態(tài)映射。同態(tài)映射包括所有關(guān)系和結(jié)構(gòu)映射。用另一句話說(shuō),軟件品質(zhì)和軟件度量成直對(duì)關(guān)系。這是度量和軟件度量的根本理念。

      軟件度量研究主要分為兩個(gè)陣營(yíng):一部分認(rèn)為軟件可以度量,一部分認(rèn)為軟件無(wú)法通過(guò)度量分析。無(wú)論如何,研究主流是關(guān)心軟件的品質(zhì)和認(rèn)為軟件需要定量化度量。目前有超過(guò)上千種軟件度量方法被軟件研究人員及從業(yè)人員提出,并且到今天有超過(guò)5000份論文出版發(fā)表。

二、簡(jiǎn)單軟件度量流程圖


三、軟件度量三維度

      軟件度量能夠?yàn)?a href="http://www./phrase/200604240825565.html" target="_new">項(xiàng)目管理者提供有關(guān)項(xiàng)目的各種重要信息,其實(shí)質(zhì)是根據(jù)一定規(guī)則,將數(shù)字或符號(hào)賦予系統(tǒng)、構(gòu)件、過(guò)程或者質(zhì)量等實(shí)體的特定屬性,即對(duì)實(shí)體屬性的量化表示,從而能夠清楚地理解該實(shí)體。軟件度量貫穿整個(gè)軟件開(kāi)發(fā)生命周期,是軟件開(kāi)發(fā)過(guò)程中進(jìn)行理解、預(yù)測(cè)、評(píng)估、控制和改善的重要載體。軟件質(zhì)量度量建立在度量數(shù)學(xué)理論基礎(chǔ)之上。軟件度量包括3個(gè)維度,即項(xiàng)目度量、產(chǎn)品度量和過(guò)程度量,具體情況如表-1所示。

四、為什么需要軟件度量 

  在軟件開(kāi)發(fā)中,軟件度量的根本目的是為了管理的需要。利用度量來(lái)改進(jìn)軟件過(guò)程。人們是無(wú)法管理不能度量的事物。在軟件開(kāi)發(fā)的歷史中,我們可以意識(shí)到,在60年代末期的大型軟件所面臨的軟件危機(jī)反映了軟件開(kāi)發(fā)中管理的重要性。而對(duì)于管理層人員來(lái)說(shuō):沒(méi)有對(duì)軟件過(guò)程的可見(jiàn)度就無(wú)法管理;而沒(méi)有對(duì)見(jiàn)到的事物有適當(dāng)?shù)亩攘炕蜻m當(dāng)?shù)臏?zhǔn)則去判斷、評(píng)估和決策,也無(wú)法進(jìn)行優(yōu)秀的管理。我們說(shuō)軟件工程的方法論主要在提供可見(jiàn)度方面下工夫。但僅僅是方法論的提高并不能使其成為工程學(xué)科。這就需要使用度量。度量是一種可用于決策的可比較的對(duì)象。度量已知的事物是為了進(jìn)行跟蹤和評(píng)估。對(duì)于未知的事物,度量則用于預(yù)測(cè)。本專題將討論軟件度量的一些基本問(wèn)題。但應(yīng)認(rèn)識(shí)到軟件度量的成果是非常初步的,還需要大量工作才可能真正地做到實(shí)用化,但它的實(shí)用化成就將對(duì)軟件的高質(zhì)量和高速發(fā)展有不可估量的影響。那么, 一、什么是度量呢? 1、度量概念:度量存在于左右我們生活的很多系統(tǒng)的核心之中。在經(jīng)濟(jì)領(lǐng)域,度量決定著價(jià)格和付款的增加;在雷達(dá)系統(tǒng)中,度量使我們能透過(guò)云層探測(cè)到飛機(jī);在醫(yī)療系統(tǒng)中,度量使得能夠診斷某些特殊疾病;在天氣預(yù)測(cè)系統(tǒng)中,度量是天氣預(yù)報(bào)的基礎(chǔ);沒(méi)有度量,技術(shù)的發(fā)展根本無(wú)法進(jìn)行。度量的正式定義是: 度量 是指在現(xiàn)實(shí)的世界中,把數(shù)字或符號(hào)指定給實(shí)體的某一屬性, 以便以這種方式來(lái)根據(jù)已明確的規(guī)則來(lái)描述它們.

   因此,度量關(guān)注的是獲取關(guān)于實(shí)體屬性的信息。一個(gè)實(shí)體可以是一個(gè)實(shí)物,如人或房間;或者是一個(gè)事件,如旅行;或軟件項(xiàng)目的測(cè)試階段。屬性是我們所關(guān)注的實(shí)體的特征或特性,如血壓的高度(人)、時(shí)間(測(cè)試階段)、范圍或顏色(房間)、花銷(旅行) 等。因此,說(shuō)"度量事物"或"度量屬性"的說(shuō)法是不完全正確的;應(yīng)該說(shuō)"度量事物的屬性"。"度量房間"的說(shuō)法是模糊的;我們可以說(shuō)度量它的長(zhǎng)度、范圍和溫度等。同樣說(shuō)"度量溫度"的說(shuō)法也是模糊的,應(yīng)該說(shuō):我們度量的是某一特定地理位置和特定情況下的溫度。

2、工程學(xué)科需要度量軟件工程要的是有模型和理論支持的方法。
  如在設(shè)計(jì)電路的時(shí)候我們應(yīng)用歐姆定律。這個(gè)定律描述了電路中電阻、電流和電壓三者之間的關(guān)系。但是這些理論已超出了一般意義上的科學(xué)方法的范疇,在這種范疇里最基本的東西是度量。度量除了在發(fā)展一個(gè)理論的過(guò)程中起作用外,我們使用度量并應(yīng)用它們。因此設(shè)計(jì)一個(gè)特定電流和電阻的電路時(shí)我們就知道需要多大的電壓。

  如果沒(méi)有度量,我們很難想象關(guān)于電子、機(jī)械、及普通工程的定律能得到發(fā)展。但事實(shí)上現(xiàn)在在軟件工程的主流里度量卻被忽略了。

  現(xiàn)在的情況是:
  ■當(dāng)我們?cè)谠O(shè)計(jì)和開(kāi)發(fā)軟件產(chǎn)品的時(shí)候,我們并未能制定出度量的目標(biāo)。例如:我們保證說(shuō)我們將使用戶界面友好、可靠、易于維護(hù);而并未使用度量的術(shù)語(yǔ)來(lái)詳細(xì)說(shuō)明它們的具體含義。Gilb曾經(jīng)說(shuō)過(guò):所謂模糊目標(biāo)定理,就是沒(méi)有明確目標(biāo)的項(xiàng)目將不能明確地達(dá)到它的目標(biāo)。
  ■我們未能對(duì)構(gòu)成軟件項(xiàng)目實(shí)際費(fèi)用的各個(gè)不同的部分進(jìn)行有效的度量。譬如:通常我們并不知道,和測(cè)試階段相比,設(shè)計(jì)階段花費(fèi)時(shí)間多大。
  ■我們并未試圖使我們開(kāi)發(fā)的產(chǎn)品的各種質(zhì)量合格。因此我們未能使用術(shù)語(yǔ)(如:在一段時(shí)間里使用故障的可能性、把產(chǎn)品安裝到新環(huán)境中需花費(fèi)的工作量等)向潛在的用戶說(shuō)明產(chǎn)品的可靠性很高。
  ■我們總是試圖說(shuō)服自己使用另一種新的革新的開(kāi)發(fā)技術(shù)和方法進(jìn)行軟件開(kāi)發(fā)

      事實(shí)上,我們?cè)谲浖攘糠矫孀龅墓ぷ骱苌俸苌?,而且所作的度量方面的工作也與一般科學(xué)意義上的度量相分離。我們經(jīng)常會(huì)看到諸如此的話:"軟件的費(fèi)用有80%花費(fèi)在維護(hù)上。"或"軟件每一千行程序中平均有55個(gè)Bugs。"。但是這些話并沒(méi)有告訴我們這樣的結(jié)果是怎樣產(chǎn)生的、試驗(yàn)是怎樣設(shè)計(jì)、執(zhí)行的、度量的是那個(gè)實(shí)體、及錯(cuò)誤的框架是什么等等。沒(méi)有這些東西,我們就不能在我們自己的環(huán)境中客觀地進(jìn)行反復(fù)度量,重現(xiàn)度量的結(jié)果以獲得與工業(yè)標(biāo)準(zhǔn)的真實(shí)比較。因此,歸因于度量不充分的問(wèn)題的產(chǎn)生是由于缺乏嚴(yán)格的度量方法造成的。
      除了傳統(tǒng)的對(duì)計(jì)算機(jī)硬件的性能進(jìn)行度量外,對(duì)算法的復(fù)雜性的度量一直是計(jì)算機(jī)科學(xué)的重要組成部分。但是,這種度量方法只適用于小程序,而對(duì)大型、復(fù)雜的軟件來(lái)說(shuō)它卻無(wú)能為力了。這就屬于軟件工程的范疇了。如果我們不承認(rèn)度量將會(huì)一個(gè)更重要的作用的話,軟件危機(jī)將在隨后的幾年里依然存在
 
五、軟件度量工具

      隨著軟件定量方法(如:軟件度量)的重要性不斷增加,市場(chǎng)上出現(xiàn)了許多度量工具。然而,度量工具目前還是很混亂。因?yàn)闆](méi)有統(tǒng)一的度量標(biāo)準(zhǔn)規(guī)范,每種工具發(fā)明商家都是按照他們自己的軟件度量規(guī)范。文獻(xiàn)[44]對(duì)度量工具做了好的綜述。DAIch等根據(jù)分類學(xué)把度量工具分成了以下幾種:

      ● 通用度量工具;
      ● 小生境度量工具(Niche Metrics TOOl);
      ● 靜態(tài)分析;
      ● 源代碼靜態(tài)分析;
      ● 規(guī)模度量

六、軟件度量的目標(biāo)

  軟件開(kāi)發(fā)正在經(jīng)受一場(chǎng)危機(jī)。費(fèi)用超支(特別是在維護(hù)階段的花費(fèi)太大)、生產(chǎn)率低下、 以及質(zhì)量不高等問(wèn)題正困擾著它。簡(jiǎn)言之,軟件開(kāi)發(fā)經(jīng)常處于失控狀態(tài)。軟件之所以失控是因?yàn)闆](méi)有度量。Tom DEMarco曾經(jīng)說(shuō)過(guò):"沒(méi)有度量就不能控制。"這種說(shuō)法是好的,但不完全。并不能說(shuō)為了獲得控制必須進(jìn)行度量。度量活動(dòng)必須有明確的目標(biāo)或目的,而正是這決定著我們選擇哪種屬性和實(shí)體進(jìn)行度量。這個(gè)目標(biāo)與軟件開(kāi)發(fā)、使用時(shí)所涉及的人的層次有關(guān)。
以下主要從管理者和軟件工程師兩種角度來(lái)考慮,為了達(dá)到各種目標(biāo)所要進(jìn)行的度量工作。

      ●對(duì)管理者而言:


  1.需要度量軟件開(kāi)發(fā)過(guò)程中的不同階段的費(fèi)用。
  例如:度量開(kāi)發(fā)整個(gè)軟件系統(tǒng)的費(fèi)用(包括從需求分析階段到發(fā)布之后的維護(hù)階段)。必須清楚這個(gè)費(fèi)用以決定在保證一定的利潤(rùn)的情況下的價(jià)格。

  2.為了決定付給不同的開(kāi)發(fā)小組的費(fèi)用,需要度量不同小組職員的生產(chǎn)率。
  3.為了對(duì)不同的項(xiàng)目進(jìn)行比較、對(duì)將來(lái)的項(xiàng)目進(jìn)行預(yù)測(cè)、建立基線以及設(shè)定合理的改進(jìn)目標(biāo)等,需要度量開(kāi)發(fā)的產(chǎn)品的質(zhì)量。

  4.需要決定項(xiàng)目的度量目標(biāo)。例如:應(yīng)達(dá)到多大的測(cè)試覆蓋率、系統(tǒng)最后的可靠性應(yīng)有多大等。

  5.為了找出是什么因素影響著費(fèi)用和生產(chǎn)率,需要反復(fù)測(cè)試某一特定過(guò)程和資源的屬性。

  6.需要度量和估計(jì)不同軟件工程方法和工具的效用,以便決定是否有必要把它們引入到公司中。

  ●對(duì)軟件工程師而言:

  1.需要制定過(guò)程度量以監(jiān)視不斷演進(jìn)的系統(tǒng)。這包括設(shè)計(jì)過(guò)程中的改動(dòng)、在不同的回顧或測(cè)試階段發(fā)現(xiàn)的錯(cuò)誤等等。

  2.需使用嚴(yán)格的度量的術(shù)語(yǔ)來(lái)指定對(duì)軟件質(zhì)量和性能的要求,以便使這些要求是可測(cè)試的。例如:系統(tǒng)必須"可靠",可用如下的更具體 的文字加以描述:"平均錯(cuò)誤時(shí)間必須大于15個(gè)CPU時(shí)間片。"

  3.為了合格需要度量產(chǎn)品和過(guò)程的屬性。例如:看一個(gè)產(chǎn)品是否合格要看產(chǎn)品的一些可度量的特性如"β測(cè)試階段少于20個(gè)錯(cuò)誤。","每個(gè)模塊的代碼行不超過(guò)100行。",和開(kāi)發(fā)過(guò)程的一些屬性如"單元測(cè)試必須覆蓋90%以上的用例。"等。

  4.需要度量當(dāng)前已存在的產(chǎn)品和過(guò)程的屬性以便預(yù)測(cè)將來(lái)的產(chǎn)品。例如:

  (1).通過(guò)度量軟件規(guī)格說(shuō)明書的大小來(lái)預(yù)測(cè)目標(biāo)? 的大小。
  (2).通過(guò)度量設(shè)計(jì)文檔的結(jié)構(gòu)特性來(lái)預(yù)測(cè)將來(lái)維護(hù)的"盲點(diǎn)"。
  (3).通過(guò)度量測(cè)試階段的軟件的可靠性來(lái)預(yù)測(cè)軟件今后操作、運(yùn)行的可靠性。

  研究上面我們列出的度量的目標(biāo)和活動(dòng)我們可以發(fā)現(xiàn):軟件度量的目標(biāo)可大致 概括為兩類。

  其一,我們使用度量來(lái)進(jìn)行估計(jì)。這使得我們可以同步地跟蹤一個(gè)特定的軟件項(xiàng)目 。
  其二,我們應(yīng)用度量來(lái)預(yù)測(cè)項(xiàng)目的一些重要的特性。但是,值得指出的是我們不能 過(guò)分夸大這些預(yù)測(cè)。因?yàn)樗鼈儾⒉皇峭耆_的。軟件度量得到也僅僅是預(yù)測(cè)而已。有些人甚至認(rèn)為只要使用合適的模型和工具,所獲得的預(yù)測(cè)可以精確到只需使用極少的其他度量(甚至根本就不用使用度量)。事實(shí)上,這種期望是不現(xiàn)實(shí)的。

七、軟件度量的方法體系

      項(xiàng)目度量

      項(xiàng)目度量是針對(duì)軟件開(kāi)發(fā)項(xiàng)目的特定度量,目的在于度量項(xiàng)目規(guī)模、項(xiàng)目成本、項(xiàng)目進(jìn)度、顧客滿意度等,輔助項(xiàng)目管理進(jìn)行項(xiàng)目控制。

      規(guī)模度量

      軟件開(kāi)發(fā)項(xiàng)目規(guī)模度量(size measurement)是估算軟件項(xiàng)目工作量、編制成本預(yù)算、策劃合理項(xiàng)目進(jìn)度的基礎(chǔ)。規(guī)模度量是軟件項(xiàng)目失敗的重要原因之一。一個(gè)好的規(guī)模度量模型可以解決這一問(wèn)題。有效的軟件規(guī)模度量是成功項(xiàng)目的核心要素:基于有效的軟件規(guī)模度量可以策劃合理的項(xiàng)目計(jì)劃,合理的項(xiàng)目計(jì)劃有助于有效地管理項(xiàng)目。規(guī)模度量的要點(diǎn)在于:由開(kāi)發(fā)現(xiàn)場(chǎng)的項(xiàng)目成員進(jìn)行估算;靈活運(yùn)用實(shí)際開(kāi)發(fā)作業(yè)數(shù)據(jù);杜絕盲目迎合顧客需求的“交期逆推法”。

      軟件規(guī)模度量有助于軟件開(kāi)發(fā)團(tuán)隊(duì)準(zhǔn)確把握開(kāi)發(fā)時(shí)間、費(fèi)用分布以及缺陷密度等等。軟件規(guī)模的估算方法有很多種,如:功能點(diǎn)分析(FPA:function points analysis)、代碼行(LOC:linES of code)、德?tīng)柗品?Delphi tEChnique)、COCOMO模型、特征點(diǎn)(feature point)、對(duì)象點(diǎn)(object point)、3-D功能點(diǎn)(3-D function points)、Bang度量(DeMarco‘s bang metric)、模糊邏輯(fuzzy logic)、標(biāo)準(zhǔn)構(gòu)件法(STandard Component)等,這些方法不斷細(xì)化為更多具體的方法。

      成本度量

      軟件開(kāi)發(fā)成本度量主要指軟件開(kāi)發(fā)項(xiàng)目所需的財(cái)務(wù)性成本的估算。主要方法如下:

      類比估算法。類比估算法是通過(guò)比較已完成的類似項(xiàng)目系統(tǒng)來(lái)估算成本,適合評(píng)估一些與歷史項(xiàng)目在應(yīng)用領(lǐng)域、環(huán)境和復(fù)雜度方面相似的項(xiàng)目。其約束條件在于必須存在類似的具有可比性的軟件開(kāi)發(fā)系統(tǒng),估算結(jié)果的精確度依賴于歷史項(xiàng)目數(shù)據(jù)的完整性、準(zhǔn)確度以及現(xiàn)行項(xiàng)目與歷史項(xiàng)目的近似程度。

      細(xì)分估算法。細(xì)分估算法是將整個(gè)項(xiàng)目系統(tǒng)分解成若干個(gè)小系統(tǒng),逐個(gè)估算成本,然后合計(jì)起來(lái)作為整個(gè)項(xiàng)目的估算成本。細(xì)分估算法通過(guò)逐漸細(xì)化的方式對(duì)每個(gè)小系統(tǒng)進(jìn)行詳細(xì)的估算,可能獲得貼近實(shí)際的估算成本。其難點(diǎn)在于,難以把握各小系統(tǒng)整合為大系統(tǒng)的整合成本。

      周期估算法。周期估算法是按軟件開(kāi)發(fā)周期進(jìn)行劃分,估算各個(gè)階段的成本,然后進(jìn)行匯總合計(jì)。周期估算法基于軟件工程理論對(duì)軟件開(kāi)發(fā)的各個(gè)階段進(jìn)行估算,很適合瀑布型軟件開(kāi)發(fā)方法,但是需要估算者對(duì)軟件工程各個(gè)階段的作業(yè)量和相互間的比例具有相當(dāng)?shù)牧私狻?

      顧客滿意度度量

      顧客滿意是軟件開(kāi)發(fā)項(xiàng)目的主要目的之一,而顧客滿意目標(biāo)要得以實(shí)現(xiàn),需要建立顧客滿意度度量體系和指標(biāo)對(duì)顧客滿意度進(jìn)行度量。顧客滿意度指標(biāo)(CSI:customer SAtisfaction index)以顧客滿意研究為基礎(chǔ),對(duì)顧客滿意度加以界定和描述。項(xiàng)目顧客滿意度量的要點(diǎn)在于:確定各類信息、數(shù)據(jù)、資料來(lái)源的準(zhǔn)確性、客觀性、合理性、有效性,并以此建立產(chǎn)品、服務(wù)質(zhì)量的衡量指標(biāo)和標(biāo)準(zhǔn)。企業(yè)顧客滿意度度量的標(biāo)準(zhǔn)會(huì)因?yàn)楦髌髽I(yè)的經(jīng)營(yíng)理念、經(jīng)營(yíng)戰(zhàn)略、經(jīng)營(yíng)重點(diǎn)、價(jià)值取向、顧客滿意度調(diào)查結(jié)果等因素而有所不同。比如:NEC于2002年12月開(kāi)始實(shí)施的CSMP 活動(dòng)的度量尺度包括共感性、誠(chéng)實(shí)性、革新性、確實(shí)性和迅速性,其中,將共感性和誠(chéng)實(shí)性作為CS活動(dòng)的核心姿態(tài),而將革新性、確實(shí)性和迅速性作為提供商品和服務(wù)中不可或缺的尺度。每個(gè)尺度包括兩個(gè)要素,各要素包括兩個(gè)項(xiàng)目,共計(jì)5大尺度、10個(gè)要素和20個(gè)項(xiàng)目。例如,共感性這一尺度包括“了解顧客的期待”、“從顧客的立場(chǎng)考慮問(wèn)題”這兩個(gè)要素;“了解顧客的期待”這一要素又包括“不僅僅能勝任目前的工作還能意識(shí)到為顧客提供價(jià)值而專心投入”、“對(duì)顧客的期望不是囫圇吞棗而是根據(jù)顧客的立場(chǎng)和狀況來(lái)思考‘顧客到底需要什么’并加以應(yīng)對(duì)”這兩個(gè)項(xiàng)目。

      美國(guó)專家斯蒂芬(Stephen H.Kan)在《軟件質(zhì)量工程的度量與模型》(Metrics and Models in Software Quality Engineering)中認(rèn)為,企業(yè)的顧客滿意度要素如表7-1所示:

顧客滿意度要素 顧客滿意度要素的內(nèi)容
技術(shù)解決方案 質(zhì)量、可靠性、有效性、易用性、價(jià)格、安裝、新技術(shù)
支持與維護(hù) 靈活性、易達(dá)性、產(chǎn)品知識(shí)
市場(chǎng)營(yíng)銷 解決方案、接觸點(diǎn)、信息
管理 購(gòu)買流程、請(qǐng)求手續(xù)、保證期限、注意事項(xiàng)
交付 準(zhǔn)時(shí)、準(zhǔn)確、交付后過(guò)程
企業(yè)形象 技術(shù)領(lǐng)導(dǎo)、財(cái)務(wù)穩(wěn)定性、執(zhí)行印象

表7-1 顧客滿意度要素及其內(nèi)容

      作為企業(yè)的顧客滿意度的基本構(gòu)成單位,項(xiàng)目的顧客滿意度會(huì)受到項(xiàng)目要素的影響,主要包括:開(kāi)發(fā)的軟件產(chǎn)品、開(kāi)發(fā)文檔、項(xiàng)目進(jìn)度以及交期、技術(shù)水平、溝通能力、運(yùn)用維護(hù)等等。具體而言,可以細(xì)分為如表7-2所示的度量要素,并根據(jù)這些要素進(jìn)行度量。

顧客滿意度項(xiàng)目 顧客滿意度度量要素
軟件產(chǎn)品 功能性、可靠性、易用性、效率性、可維護(hù)性、可移植性
開(kāi)發(fā)文檔 文檔的構(gòu)成、質(zhì)量、外觀、圖表以及索引、用語(yǔ)
項(xiàng)目進(jìn)度以及交期 交期的根據(jù)、進(jìn)度遲延情況下的應(yīng)對(duì)、進(jìn)展報(bào)告
技術(shù)水平 項(xiàng)目組的技術(shù)水平、項(xiàng)目組的提案能力、項(xiàng)目組的問(wèn)題解決能力
溝通能力 事件記錄、式樣確認(rèn)、Q&A
運(yùn)用維護(hù) 支持、問(wèn)題發(fā)生時(shí)的應(yīng)對(duì)速度、問(wèn)題解決能力

表7-2顧客滿意度項(xiàng)目度量要素

      產(chǎn)品度量

      軟件質(zhì)量的生命周期及其度量
      軟件產(chǎn)品度量用于對(duì)軟件產(chǎn)品進(jìn)行評(píng)價(jià),并在此基礎(chǔ)之上推進(jìn)產(chǎn)品設(shè)計(jì)、產(chǎn)品制造和產(chǎn)品服務(wù)優(yōu)化。軟件產(chǎn)品的度量實(shí)質(zhì)上是軟件質(zhì)量的度量,而軟件的質(zhì)量度量與其質(zhì)量的周期密切相關(guān),如圖7-1所示:

      軟件質(zhì)量度量模型

      軟件產(chǎn)品的度量主要針對(duì)作為軟件開(kāi)發(fā)成果的軟件產(chǎn)品的質(zhì)量而言,獨(dú)立于其過(guò)程。軟件的質(zhì)量由一系列質(zhì)量要素組成,每一個(gè)質(zhì)量要素又由一些衡量標(biāo)準(zhǔn)組成,每個(gè)衡量標(biāo)準(zhǔn)又由一些量度標(biāo)準(zhǔn)加以定量刻劃。質(zhì)量度量貫穿于軟件工程的全過(guò)程以及軟件交付之后,在軟件交付之前的度量主要包括程序復(fù)雜性、模塊的有效性和總的程序規(guī)模,在軟件交付之后的度量則主要包括殘存的缺陷數(shù)和系統(tǒng)的可維護(hù)性方面。一般情況下,可以將軟件質(zhì)量特性定義成分層模型。勃姆(Barry W. BOehm)在《軟件風(fēng)險(xiǎn)管理》(Software Risk Management)中第一次提出了軟件質(zhì)量度量的層次模型。而麥考爾(McCall)等人將軟件質(zhì)量分解至能夠度量的層次,提出FCM 3層模型(參見(jiàn)表5-13):軟件質(zhì)量要素(factor)、衡量標(biāo)準(zhǔn)(CRiteria)和量度標(biāo)準(zhǔn)(metrics),包括11個(gè)標(biāo)準(zhǔn),分為產(chǎn)品操作(product operation)、產(chǎn)品修正(product revision)和產(chǎn)品轉(zhuǎn)移(product transition)。ISO 9126將軟件質(zhì)量總結(jié)為6大特性,每個(gè)特性包括一系列副特性,其軟件質(zhì)量模型包括3層,即高層:軟件質(zhì)量需求評(píng)價(jià)準(zhǔn)則(SQRC);中層:軟件質(zhì)量設(shè)計(jì)評(píng)價(jià)準(zhǔn)則(SQDC);低層:軟件質(zhì)量度量評(píng)價(jià)準(zhǔn)則(SQMC)。

層 級(jí) 名 稱 內(nèi) 容
第一層 質(zhì)量要素:描述和評(píng)價(jià)軟件質(zhì)量的一組屬性 功能性、可靠性、易用性、效率性、可維護(hù)性、可移植性等質(zhì)量特性以及將質(zhì)量特性細(xì)化產(chǎn)生的副特性
第二層 衡量標(biāo)準(zhǔn): 衡量標(biāo)準(zhǔn)的組合反映某一軟件質(zhì)量要素 精確性、穩(wěn)健性、安全性、通信有效性、處理有效性、設(shè)備有效性、可操作性、培訓(xùn)性、完備性、一致性、可追蹤性、可見(jiàn)性、硬件系統(tǒng)無(wú)關(guān)性、軟件系統(tǒng)無(wú)關(guān)性、可擴(kuò)充性、公用性、模塊性、清晰性、自描述性、簡(jiǎn)單性、結(jié)構(gòu)性、文件完備性等
第三層 量度標(biāo)準(zhǔn):
可由各使用單位自定義
根據(jù)軟件的需求分析、概要設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼、測(cè)試、確認(rèn)、維護(hù)與使用等階段,針對(duì)每一個(gè)階段制定問(wèn)卷表,以此實(shí)現(xiàn)軟件開(kāi)發(fā)過(guò)程的質(zhì)量度量

表7-3 軟件質(zhì)量度量FCM模型

      凱悅(Lawrence E. Hyatt)和羅森貝克(Linda H. ROSenberg)在《識(shí)別項(xiàng)目風(fēng)險(xiǎn)以及評(píng)價(jià)軟件質(zhì)量的軟件質(zhì)量模型與度量》(A Software Quality Model and Metrics for IDEntifying Project Risks and Assessing Software Quality)中比較了這3種最常用的軟件質(zhì)量模型,其基本情況如表5-14所示。

度量標(biāo)準(zhǔn)/目標(biāo) 麥 考 爾 勃 姆 ISO 9126
正確性(Correctness) X X 可維護(hù)性
可靠性(ReliaBIlity) X X X
完整性(Integrity) X X  
可用性(Usability) X X X
效率性(Efficiency) X X X
可維護(hù)性(Maintainability) X X X
可測(cè)試性(Testability) X   可維護(hù)性
互操作性(Interoperability) X    
適應(yīng)性(Flexibility) X X  
可重用性(Reusability) X X  
可移植性(Portability) X X X
明確性(Clarity)   X  
可變更性(MoDIfiability)   X 可維護(hù)性
文檔化(Documentation)   X  
恢復(fù)力(Resilience)   X  
易懂性(Understandability)   X  
有效性(Validity)   X 可維護(hù)性
功能性(Functionality)     X
普遍性(Generality)   X  
經(jīng)濟(jì)性(Economy)   X  


表7-4 3種軟件質(zhì)量模型之比較 


      軟件質(zhì)量度量方法
      軟件質(zhì)量度量方法比較多,例如:(1)Halstead復(fù)雜性度量法,基本思路是根據(jù)程序中可執(zhí)行代碼行的操作符和操作數(shù)的數(shù)量來(lái)計(jì)算程序的復(fù)雜性。操作符和操作數(shù)的量越大,程序結(jié)構(gòu)就越復(fù)雜。(2)McCabe復(fù)雜性度量法,其基本思想是程序的復(fù)雜性很大程度上取決于程序控制流的復(fù)雜性,單一的順序程序結(jié)構(gòu)最簡(jiǎn)單,循環(huán)和選擇所構(gòu)成的環(huán)路越多,程序就越復(fù)雜。

      過(guò)程度量

      軟件過(guò)程性能
      過(guò)程度量是對(duì)軟件開(kāi)發(fā)過(guò)程的各個(gè)方面進(jìn)行度量,目的在于預(yù)測(cè)過(guò)程的未來(lái)性能,減少過(guò)程結(jié)果的偏差,對(duì)軟件過(guò)程的行為進(jìn)行目標(biāo)管理,為過(guò)程控制、過(guò)程評(píng)價(jià)持續(xù)改善提供定量性基礎(chǔ)。過(guò)程度量與軟件開(kāi)發(fā)流程密切相關(guān),具有戰(zhàn)略性意義。軟件過(guò)程質(zhì)量的好壞會(huì)直接影響軟件產(chǎn)品質(zhì)量的好壞,度量并評(píng)估過(guò)程、提高過(guò)程成熟度可以改進(jìn)產(chǎn)品質(zhì)量。相反,度量并評(píng)估軟件產(chǎn)品質(zhì)量會(huì)為提高軟件過(guò)程質(zhì)量提供必要的反饋和依據(jù)。過(guò)程度量與軟件過(guò)程的成熟度密切相關(guān),其度量模型如圖7-2所示:

圖7-2 軟件過(guò)程性能的度量模型

      軟件過(guò)程管理中的過(guò)程度量
      弗羅哈克(WilliAM A.Florac)、帕克(Robert E.Park)和卡爾頓(Anita D.Carleton)在《實(shí)用軟件度量:過(guò)程管理和改善之度量》(Practical Software Measurement:Measuring for Process Management and Improvement)中描述了過(guò)程管理和項(xiàng)目管理的關(guān)系。認(rèn)為軟件項(xiàng)目團(tuán)隊(duì)生產(chǎn)產(chǎn)品基于三大要素:產(chǎn)品需求、項(xiàng)目計(jì)劃和已定義軟件過(guò)程。度量數(shù)據(jù)在項(xiàng)目管理中將被用來(lái):(1)識(shí)別和描述需求,(2)準(zhǔn)備能夠?qū)崿F(xiàn)目標(biāo)的計(jì)劃,(3)執(zhí)行計(jì)劃,(4)跟蹤基于項(xiàng)目計(jì)劃目標(biāo)的工作執(zhí)行狀態(tài)和進(jìn)展。而過(guò)程管理也能使用相同的數(shù)據(jù)和相關(guān)度量來(lái)控制和改善軟件過(guò)程本身。這就意味著,軟件組織能使用建構(gòu)和維持度量活動(dòng)的共同框架來(lái)為過(guò)程管理和項(xiàng)目管理兩大管理功能提供數(shù)據(jù)。

      軟件過(guò)程管理包括定義過(guò)程、計(jì)劃度量、執(zhí)行軟件過(guò)程、應(yīng)用度量、控制過(guò)程和改善過(guò)程,其中計(jì)劃度量和應(yīng)用度量是軟件過(guò)程管理中的重要步驟,也是軟件過(guò)程度量的核心內(nèi)容。計(jì)劃度量建立在對(duì)已定義軟件過(guò)程的理解之上,產(chǎn)品、過(guò)程、資源的相關(guān)事項(xiàng)和屬性已經(jīng)被識(shí)別,收集和使用度量以進(jìn)行過(guò)程性能跟蹤的規(guī)定都被集成到軟件過(guò)程之中。應(yīng)用度量通過(guò)過(guò)程度量將執(zhí)行軟件過(guò)程所獲得的數(shù)據(jù),以及通過(guò)產(chǎn)品度量將產(chǎn)品相關(guān)數(shù)據(jù)用來(lái)控制和改善軟件過(guò)程。

      軟件過(guò)程度量的內(nèi)容
      軟件過(guò)程度量主要包括三大方面的內(nèi)容,一是成熟度度量(maturity metrics),主要包括組織度量、資源度量、培訓(xùn)度量、文檔標(biāo)準(zhǔn)化度量、數(shù)據(jù)管理與分析度量、過(guò)程質(zhì)量度量等等;二是管理度量(management metrics),主要包括項(xiàng)目管理度量(如里程碑管理度量、風(fēng)險(xiǎn)度量、作業(yè)流程度量、控制度量、管理數(shù)據(jù)庫(kù)度量等)、質(zhì)量管理度量(如質(zhì)量審查度量、質(zhì)量測(cè)試度量、質(zhì)量保證度量等)、配置管理度量(如式樣變更控制度量、版本管理控制度量等);三是生命周期度量(life cycle metrics),主要包括問(wèn)題定義度量、需求分析度量、設(shè)計(jì)度量、制造度量、維護(hù)度量等。

      軟件過(guò)程度量流程
      軟件過(guò)程的度量,需要按照已經(jīng)明確定義的度量流程加以實(shí)施,這樣能使軟件過(guò)程度量作業(yè)具有可控制性和可跟蹤性,從而提高度量的有效性。軟件過(guò)程度量的一般流程主要包括:確認(rèn)過(guò)程問(wèn)題;收集過(guò)程數(shù)據(jù);分析過(guò)程數(shù)據(jù);解釋過(guò)程數(shù)據(jù);匯報(bào)過(guò)程分析;提出過(guò)程建議;實(shí)施過(guò)程行動(dòng);實(shí)施監(jiān)督和控制。這一度量過(guò)程的流程質(zhì)量能保證軟件過(guò)程度量獲得有關(guān)軟件過(guò)程的數(shù)據(jù)和問(wèn)題,并進(jìn)而對(duì)軟件過(guò)程實(shí)施改善。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多