- 估算技術教程
- 估算技術 - 首頁
- 估算技術 - 概述
- 估算技術 - 功能點
- 估算技術 - 功能點計數
- 估算技術 - 用例
- 估算技術 - 德爾菲法
- 估算技術 - 三點估算
- 估算技術 - PERT
- 估算技術 - 類比估算
- 估算技術 - 工作分解結構 (WBS)
- 估算 - 撲克計劃
- 估算技術 - 測試
- 估算技術資源
- 估算技術 - 快速指南
- 估算技術 - 資源
- 估算技術 - 討論
估算技術 - 用例點
用例是一系列使用者與系統之間相關的互動,使使用者能夠實現目標。
用例是一種捕獲系統功能需求的方法。系統的使用者被稱為“參與者”。用例本質上是文字形式的。
用例點 – 定義
用例點 (UCP)是一種軟體估算技術,用於使用用例來衡量軟體規模。UCP 的概念類似於功能點。
專案中的 UCP 數量基於以下因素:
- 系統中用例的數量和複雜性。
- 系統中參與者的數量和複雜性。
各種非功能性需求(例如可移植性、效能、可維護性),這些需求未以用例的形式編寫。
專案將開發的環境(例如語言、團隊的積極性等)。
使用 UCP 進行估算要求所有用例都以目標編寫,並且大致處於同一級別,提供相同數量的細節。因此,在估算之前,專案團隊應確保他們編寫的用例具有明確的目標和詳細的級別。用例通常在一個會話內完成,並且在實現目標後,使用者可以繼續執行其他活動。
用例點歷史
用例點估算方法由 Gustav Karner 於 1993 年提出。這項工作後來被 Rational Software 授權,後者併入 IBM。
用例點計數過程
用例點計數過程包含以下步驟:
- 計算未調整的 UCP
- 根據技術複雜性進行調整
- 根據環境複雜性進行調整
- 計算調整後的 UCP
步驟 1:計算未調整的用例點。
首先,您可以透過以下步驟計算未調整的用例點:
- 確定未調整的用例權重
- 確定未調整的參與者權重
- 計算未調整的用例點
步驟 1.1 – 確定未調整的用例權重。
步驟 1.1.1 – 查詢每個用例中的事務數量。
如果用例是用使用者目標級別編寫的,則事務相當於用例中的一個步驟。透過計算用例中的步驟數來查詢事務數。
步驟 1.1.2 – 根據用例中的事務數量,將每個用例分類為簡單型、平均型或複雜型。此外,分配用例權重,如下表所示:
| 用例複雜度 | 事務數量 | 用例權重 |
|---|---|---|
| 簡單型 | ≤3 | 5 |
| 平均型 | 4 到 7 | 10 |
| 複雜型 | >7 | 15 |
≥8
步驟 1.1.4 – 使用下表查詢未調整的用例權重 (UUCW):
| 用例複雜度 | 用例權重 | 用例數量 | 乘積 |
|---|---|---|---|
| 簡單型 | 5 | NSUC(簡單用例數) | 5 × NSUC |
| 平均型 | 10 | NAUC(平均用例數) | 10 × NAUC |
| 複雜型 | 15 | NCUC(複雜用例數) | 15 × NCUC |
| 未調整的用例權重 (UUCW) | 5 × NSUC + 10 × NAUC + 15 × NCUC | ||
其中:
NSUC 是簡單用例的數量。
NAUC 是平均用例的數量。
NCUC 是複雜用例的數量。
步驟 1.2 – 確定未調整的參與者權重。
用例中的參與者可能是人、另一個程式等。某些參與者,例如具有已定義 API 的系統,需求非常簡單,只會稍微增加用例的複雜性。
某些參與者,例如透過協議互動的系統,需求更多,會在一定程度上增加用例的複雜性。
其他參與者,例如透過 GUI 互動的使用者,會對用例的複雜性產生重大影響。基於這些差異,您可以將參與者分類為簡單型、平均型和複雜型。
步驟 1.2.1 – 將參與者分類為簡單型、平均型和複雜型,並分配參與者權重,如下表所示:
| 參與者複雜度 | 示例 | 參與者權重 |
|---|---|---|
| 簡單型 | 具有已定義 API 的系統 | 1 |
| 平均型 | 1 | 2 |
| 複雜型 | 透過協議互動的系統 | 3 |
2
透過 GUI 互動的使用者
| 參與者複雜度 | 參與者權重 | 3 | 乘積 |
|---|---|---|---|
| 簡單型 | 1 | 步驟 1.2.2 – 對每個參與者重複此步驟,並獲取所有參與者權重。未調整的參與者權重 (UAW) 是所有參與者權重的總和。 | 步驟 1.2.3 – 使用下表查詢未調整的參與者權重 (UAW): |
| 平均型 | 2 | 參與者數量 | NSA(簡單參與者數) |
| 複雜型 | 3 | 1 × NSA | NAA(平均參與者數) |
| 2 × NAA | NCA(複雜參與者數) | ||
其中:
3 × NCA
未調整的參與者權重 (UAW)
1 × NSA + 2 × NAA + 3 × NCA
NSA 是簡單參與者的數量。
NAA 是平均參與者的數量。
NCA 是複雜參與者的數量。
步驟 1.3 – 計算未調整的用例點。
未調整的用例權重 (UUCW) 和未調整的參與者權重 (UAW) 一起給出系統的未調整大小,稱為未調整的用例點。
未調整的用例點 (UUCP) = UUCW + UAW
| 接下來的步驟是根據技術複雜性和環境複雜性調整未調整的用例點 (UUCP)。 | 步驟 2:根據技術複雜性進行調整 | 步驟 2.1 – 考慮 13 個影響專案技術複雜性對用例點的影響的因素及其相應的權重,如下表所示: |
|---|---|---|
| 因素 | 描述 | 2.0 |
| 權重 | T1 | 1.0 |
| 分散式系統 | 5 | 1.0 |
| T2 | 響應時間或吞吐量效能目標 | 1.0 |
| 4 | T3 | 1.0 |
| 終端使用者效率 | 4 | .5 |
| T4 | 複雜的內部處理 | .5 |
| 3 | T5 | 2.0 |
| 程式碼必須可重用 | 3 | 1.0 |
| T6 | 易於安裝 | 1.0 |
| 2 | T7 | 1.0 |
| 易於使用 | 2 | 1.0 |
| T8 | 可移植性 | 1.0 |
2
T9
易於更改
2
T10
| 接下來的步驟是根據技術複雜性和環境複雜性調整未調整的用例點 (UUCP)。 | 步驟 2:根據技術複雜性進行調整 | 併發 | 2 | T11 |
|---|---|---|---|---|
| 因素 | 描述 | 2.0 | ||
| 權重 | T1 | 1.0 | ||
| 分散式系統 | 5 | 1.0 | ||
| T2 | 響應時間或吞吐量效能目標 | 1.0 | ||
| 4 | T3 | 1.0 | ||
| 終端使用者效率 | 4 | .5 | ||
| T4 | 複雜的內部處理 | .5 | ||
| 3 | T5 | 2.0 | ||
| 程式碼必須可重用 | 3 | 1.0 | ||
| T6 | 易於安裝 | 1.0 | ||
| 2 | T7 | 1.0 | ||
| 易於使用 | 2 | 1.0 | ||
| T8 | 可移植性 | 1.0 | ||
| 包含特殊安全目標 | ||||
3
T12
為第三方提供直接訪問
3
| 接下來的步驟是根據技術複雜性和環境複雜性調整未調整的用例點 (UUCP)。 | 步驟 2:根據技術複雜性進行調整 | 步驟 2.1 – 考慮 13 個影響專案技術複雜性對用例點的影響的因素及其相應的權重,如下表所示: |
|---|---|---|
| T13 | 需要特殊的使用者培訓設施 | 1.5 |
| 3 | 這些因素中的許多都代表專案的非功能性需求。 | .5 |
| 步驟 2.2 – 對這 13 個因素中的每一個,評估專案並從 0(無關)到 5(非常重要)進行評分。 | 步驟 2.3 – 根據因素的影響權重和專案的評分值計算因素的影響: | 1.0 |
| 因素的影響 = 影響權重 × 評分值 | 步驟 (2.4) – 計算所有因素影響的總和。這將得出總技術因素 (TFactor),如下表所示: | .5 |
| 權重 (W) | 評分值 (0 到 5) (RV) | 1.0 |
| 影響 (I = W × RV) | 總技術因素 (TFactor) | 2.0 |
| 步驟 2.5 – 計算技術複雜性因素 (TCF): | TCF = 0.6 + (0.01 × TFactor) | -1.0 |
| 步驟 3:根據環境複雜性進行調整 | 步驟 3.1 – 考慮 8 個可能影響專案執行的環境因素及其相應的權重,如下表所示: | -1.0 |
F1
熟悉所使用的專案模型
2
4
| 接下來的步驟是根據技術複雜性和環境複雜性調整未調整的用例點 (UUCP)。 | 步驟 2:根據技術複雜性進行調整 | 併發 | 2 | T11 |
|---|---|---|---|---|
| T13 | 需要特殊的使用者培訓設施 | 1.5 | ||
| 3 | 這些因素中的許多都代表專案的非功能性需求。 | .5 | ||
| 步驟 2.2 – 對這 13 個因素中的每一個,評估專案並從 0(無關)到 5(非常重要)進行評分。 | 步驟 2.3 – 根據因素的影響權重和專案的評分值計算因素的影響: | 1.0 | ||
| 因素的影響 = 影響權重 × 評分值 | 步驟 (2.4) – 計算所有因素影響的總和。這將得出總技術因素 (TFactor),如下表所示: | .5 | ||
| 權重 (W) | 評分值 (0 到 5) (RV) | 1.0 | ||
| 影響 (I = W × RV) | 總技術因素 (TFactor) | 2.0 | ||
| 步驟 2.5 – 計算技術複雜性因素 (TCF): | TCF = 0.6 + (0.01 × TFactor) | -1.0 | ||
| 步驟 3:根據環境複雜性進行調整 | 步驟 3.1 – 考慮 8 個可能影響專案執行的環境因素及其相應的權重,如下表所示: | -1.0 | ||
| F2 | ||||
應用程式經驗
4
F3
面向物件經驗
3
F4
首席分析師的能力
3
F5
積極性
3
F6
穩定的需求
2
F7
兼職員工
2