一個實際的例子
為了便于大家的理解,我們先來看一個性能需求的例子,讓大家有一個感性的認識,本文后面的討論也會再次提到這個例子。
這是一個證券行業系統中某個業務的“實際需求”——實際上是我根據通過網絡搜集到的數據杜撰出來的,不過看起來像是真實的 ^_^
系統總容量達到日委托6000萬筆,成交9000萬筆
系統處理速度每秒7300筆,峰值處理能力達到每秒10000筆
實際股東帳號數3000萬
這個例子中已經包括幾個明確的需求:
最佳并發用戶數需求:每秒7300筆
最大并發用戶數需求:峰值處理能力達到每秒10000筆
基礎數據容量:實際股東帳號數3000萬
業務數據容量:日委托6000萬筆,成交9000萬筆——可以根據這個推算出每周、每月、每年系統容量的增長模型
什么是“有效的”性能需求?
要想獲得有效的性能需求,就要先了解什么樣的需求是“有效的”。有效的性能需求應該符合以下三個條件。
1. 明確的數字,而不是模糊的語句。
結合上面的例子來看,相信這個應該不難理解。但是有的時候有了數字未必就不模糊。例如常見的一種需求是“系統需要支持5000用戶”,或者“最大在線用戶數為8000”。這些有數字的需求仍然不夠明確,因為還需要考慮區分系統中不同業務模塊的負載,以及區分在線用戶和并發用戶的區別。關于這方面的內容,在下面兩篇文章中的留言內容中有精彩的討論:
2. 有憑有據,合理,有實際意義。
通常來說,性能需求要么由客戶提出,要么由開發方提出。對于第一種情況,要保證需求是合理的,有現實意義的,不能由著客戶使勁往高處說,要讓客戶明白性能是有成本的。對于第二種情況,性能需求不能簡單的來源于項目組成員、PM或者測試工程師的估計或者猜測,要保證性能需求的提出是有根據的,所使用的數據和計算公式是有出處的——本文后面的部分會介紹獲得可用的數據和計算公式的方法。
原文轉自:http://www.anti-gravitydesign.com