如何獲取有效的效能需求

2021-07-12 01:47:37 字數 1795 閱讀 9993

乙個實際的例子

這是乙個**系統中某個業務的「實際需求」

系統總容量達到日委託6000萬筆,成交9000萬筆

系統處理速度每秒7300筆,峰值處理能力達到每秒10000筆

實際股東帳號數3000萬

這個例子中已經包括幾個明確的需求:

最佳併發使用者數需求:每秒7300筆

最大併發使用者數需求:峰值處理能力達到每秒10000筆

基礎資料容量:實際股東帳號數3000萬

業務資料容量:日委託6000萬筆,成交9000萬筆——可以根據這個推算出每週、每月、每年系統容量的增長模型

什麼是「效的」效能需求?

--------------------

在軟體開發過程中,需求管理要遠遠簡單於需求開發,cmmi中也體現了這一點,並且實際工作中也常常需要我們思考,如何根據客戶的實際使用或粗線條的效能要求來開發滿足客戶需要的效能需求來。

就拿文中例子來說,客戶告訴我們「系統總容量達到日委託6000萬筆,成交9000萬筆;系統處理速度每秒7300筆,峰值處理能力達到每秒10000筆」,那我們將客戶的這個要求管理起來並實現了這一點,這叫需求管理;而如果我們根據以下2個假設:

採用2/8比例,即80%的業務在20%的峰值時間內完成,20%的業務在80%的非峰值時間內完成,那麼我們可以得到峰值處理業務量1.5億(6000w+9000w)的80%為1.2億,非峰值處理業務量1.5億的20%為3000萬;

1天系統執行時間為20小時,另4小時為非營業的後台處理時間,那麼峰值時間20小時的20%為4小時,非峰值時間20小時的80%為16小時。

我們可以計算到:

平均峰值處理速度1.2億/4*3600秒接近9000個/秒;

平均非峰值處理速度3000萬/16*3600秒約500個/秒;

考慮到特殊情況的發生,我們建議實際峰值處理速度要能達到理論計算的平均峰值處理速度的1.5到2倍,所以最終確定下來的建議峰值處理速度為9000個/ 秒*2=18000個/秒。拿這個結果向客戶說明,告訴他們原來的需求很可能在發生特殊情況時無法有效處理,客戶可能就會接受我們的說法並調整了他們的需求。

這叫需求開發,通過分析修正了客戶的不合理需求,滿足了他們最根本的需要「系統總容量達到日委託6000萬筆,成交9000萬筆」,而處理速度是他們根據自己的需要估算出來的,並不準確。

所謂需求開發,也就是根絕客戶的核心需求,為客戶設計完整的需求體系,甚至根據客戶的業務發展需要,為客戶設計核心需求和需求體系。

在我說的這個例子中只用了1個計算,而實際的需求開發中需要做調研、出可研報告、做需求方案、設計等一整套的工作。

----------------------------

(1)計算平均的併發使用者數:c=nl/t

(2)併發使用者數峰值:c』≈c+3根號c

公式(1)中,c是平均的併發使用者數;n是loginsession的數量;l是login session的平均長度;t指考察的時間段長度。

公式(2)則給出了併發使用者數峰值的計算方式中,其中,c』指併發使用者數的峰值,c就是公式(1)中得到的平均的併發使用者數。該公式的得出是假設使用者的loginsession產生符合泊松分布而估算得到的。

例項:假設乙個oa系統,該系統有3000個使用者,平均每天大約有400個使用者要訪問該系統,對乙個典型使用者來說,一天之內使用者從登入到退出該系統的平均時間為4小時,在一天的時間內,使用者只在8小時內使用該系統。

則根據公式(1)和公式(2),可以得到:

c=400*4/8=200

c』≈200+3*根號200=242

------------------------------------------   

如何定義效能需求

jvm監控解決方案提供商plumbr的官方部落格上發表了一篇題為 如何定義效能需求 的文章。文章指出,隨著企業資訊化程度的提高,業務人員對軟體功能性需求的描述越來越好。但涉及到易用性 相容性或效能等非功能性需求的時候,他們經常會不得要領。比如,他們可能會提出 它的執行速度要快 這樣的效能需求。在更好...

如何定義效能需求

jvm監控解決方案提供商plumbr的官方部落格上發表了一篇題為 如何定義效能需求 的文章。文章指出,隨著企業資訊化程度的提高,業務人員對軟體功能性需求的描述越來越好。但涉及到易用性 相容性或效能等非功能性需求的時候,他們經常會不得要領。比如,他們可能會提出 它的執行速度要快 這樣的效能需求。在更好...

效能需求分析

通過技術的手段模擬大量使用者同時訪問被測應用,觀察 記錄和分析系統的各項效能指標的過程。評估系統的效能瓶頸,系統的最大使用者負載能力 1 能夠有效評估系統的效能指標,用於系統的效能評估2 能夠識別系統的效能瓶頸,協助效能調優3 能夠指導突發流量承載方案的制定4 能夠用於系統運維成本的預算 測試 根據...