偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

淺談軟件項目上的長期慢性需求問題

開發(fā) 項目管理
在處理軟件需求時,有三個問題一直折磨著我們,并使軟件項目消耗無數(shù)資金。其中很大一部分都產(chǎn)生在項目交付并運行后的新需求的收集工作中。

軟件生命周期


本文的作者Capers Jones是Namcook Analytics公司的副總裁和***技術(shù)總監(jiān)。他一直在收集軟件質(zhì)量和開發(fā)效率上的數(shù)據(jù)。他寫了幾十本關(guān)于軟件質(zhì)量、***實踐方法、評估、測量方面的著作。

在處理軟件需求時,有三個問題一直折磨著我們,并使軟件項目消耗無數(shù)資金。其中很大一部分都產(chǎn)生在項目交付并運行后的新需求的收集工作中。

下面是在軟件需求處理中三個廣泛存在的問題,需要我們?nèi)ふ冶犬斍捌毡榈某R?guī)做法更有效的解決方案:

  • 很多需求是非常危險或是有毒的,需要堅決抵制。
  • 很多客戶堅持要在軟件中強加入一些額外的、多余的功能。
  • 需求永遠提不完,并以每月1%的速率增加。

軟件開發(fā)者道德上有義務(wù)、職業(yè)上有責任在這些問題上提醒客戶,并盡可能的幫助他們解決這些問題。換句話說,軟件開發(fā)者需要充當?shù)慕巧愃朴谝粋€醫(yī)生。我們有責任幫助客戶診斷目前已知的需求,并開出有效的處方。

當然,一旦用戶需求收集完成,分析整理完成,承諾的軟件規(guī)格就應(yīng)該如實的交付給客戶。然而,為了保證軟件能安全有效的交付,危險的或有毒的需求必須被除去,多余的和不必要的需求需要讓用戶知道,潛在的能導致需求滋生的不清晰的地方需要被明確、量化。用戶應(yīng)該從軟件開發(fā)技術(shù)團隊那里獲得專業(yè)的幫助,而不應(yīng)該在需求收集和分析上被動的扮演旁觀者角色。

不幸的是,需求上的缺陷并不能通過普通的測試來消除。如果需求上的錯誤未能預(yù)防而出現(xiàn),或沒有能夠通過常規(guī)的檢查或其它方法消除,那么,從需求上構(gòu)造出來的測試用例只能再次證實需求的正確,而不是發(fā)現(xiàn)其中的錯誤。(這就是為什么多少年的軟件測試都不曾發(fā)現(xiàn)并消除”2000年”問題)

另一類需求上的問題,對于一些全新的創(chuàng)造性的軟件應(yīng)用,很可能最初用戶只有原創(chuàng)者,沒有第二人。參考一些成功的軟件的歷史,如APL編程語言,***個電子制表軟件,早期的Web搜索引擎(之后成為谷歌)。

這些具有革命性的應(yīng)用軟件全是發(fā)明人自己用來解決他們自己的問題的。他們并不是按照常規(guī)概念上的“用戶需求”開發(fā)出來的。除非演示程序被開發(fā)完成,其他人基本無法認識到這些軟件發(fā)明的價值所在。因此,“用戶需求”對于一些全新的革命性的軟件來說不是能完全適用的,除非它們已經(jīng)公開發(fā)布。

軟件需求會不斷的發(fā)展、繁殖、變化,在其隨后的設(shè)計和編碼階段統(tǒng)計出的數(shù)據(jù),每月增加的量大概是1%到4%,基于這種現(xiàn)狀,很顯然,要想達到對需求的完全理解是十分困難的。

需求是軟件開發(fā)的重要一環(huán)節(jié),但由于摻雜著有毒的需求,缺失的需求和多余的需求,使得簡單的諸如“品質(zhì)的標準就是照需求完成”這樣的定義成為了軟件工業(yè)的毒藥。

軟件交付之后

“增長的需求”這個問題經(jīng)常不受重視。一旦軟件應(yīng)用交付給客戶或用戶,需求并不是終止或不變了。對于大多數(shù)的應(yīng)用,需求的增長的延續(xù)會一直伴隨著應(yīng)用的使用期間。它們增長的速率***能達到每年15%。

因為需求在增長,軟件應(yīng)用的體量也會變大——不論從功能點,邏輯代碼量或其它尺度測量。

為了說明這種持續(xù)性增長,下面的表格顯示了一個我研究的大型Java應(yīng)用的變化。

測量周期 功能點 邏輯代碼量
1 需求階段結(jié)束時 10,000 530,000
2 需求補充 2,000 106,000
3 計劃交付量 12,000 636,000
4 延期的功能量 - 4,800 - 254,400
5 ***提交給客戶的量 7,200 381,600
6 一年使用后 12,000 636,000
7 2年使用后 13,000 689,000
8 3年使用后 14,000 742,000
9 4年使用后 (中期提升) 17,000 901,000
10 5年使用后 18,000 954,000
11 6年使用后 19,000 1,007,000
12 7年使用后 20,000 1,060,000
13 8年使用后 (中期提升) 23,000 1,219,000
14 9年使用后 24,000 1,272,000
15 10年使用后 25,000 1,325,000

這些數(shù)字在第4年和第8年有一個超出平均值的增加。對于商業(yè)軟件,為了跟***的其它軟件競爭,有必要增加一些重大的新功能。這叫做“中期提升”。

正如你看到的,需求增加在軟件應(yīng)用使用期間永不會停止,除非開發(fā)者開發(fā)出相同類型的新產(chǎn)品而放棄對老產(chǎn)品的支持。當然,一些軟件會很好的運行10幾年。例如,美國空中交通管制系統(tǒng)已經(jīng)使用了超過30年了。

怎么辦…

軟件需求是軟件工程技術(shù)中最薄弱的一個環(huán)節(jié)。因為需求總是不完備的,總是含有錯誤的,這就要求軟件開發(fā)者一定要使用***進的軟件需求方法。用戶并沒有培訓過這些需求收集/分析技術(shù),在沒有經(jīng)過受訓的需求專家的幫助下無法提供完整無誤的需求,更重要的,軟件開發(fā)者應(yīng)該理解——甚至擁抱——這樣的事實:在軟件交付運行之后,跟用戶關(guān)于需求的對話將不會停止。

英文原文:Chronic Requirements Problems

譯文鏈接:http://www.aqee.net/chronic-requirements-problems/

責任編輯:林師授 來源: 外刊IT評論
相關(guān)推薦

2011-05-19 08:57:41

軟件開發(fā)項目

2011-07-08 08:37:05

軟件開發(fā)

2012-12-13 11:05:42

IBMdW

2012-07-02 10:54:55

2023-11-10 16:11:35

架構(gòu)后端開發(fā)

2021-12-13 07:50:13

企業(yè)安全彈性

2011-03-16 10:04:41

MySQL服務(wù)器變量

2011-12-30 09:11:30

需求分析

2011-04-07 11:29:30

軟件項目項目需求

2017-12-05 06:14:16

軟件交付規(guī)模估計軟件

2017-11-27 05:52:44

2011-07-06 10:03:30

項目管理

2009-03-03 16:50:52

需求分析軟件需求需求管理

2011-08-09 09:37:57

風險管理策略

2014-10-22 13:17:41

布線光纜

2021-09-01 18:37:36

大數(shù)據(jù)功能風控

2009-06-18 13:18:32

軟件測試需求分析

2014-11-20 11:42:22

2011-05-17 08:58:29

軟件項目經(jīng)理

2016-09-10 08:20:09

IBM
點贊
收藏

51CTO技術(shù)棧公眾號