軟件產品質量改進框架(二)
發表于:2008-01-24來源:作者:點擊數:
標簽:質量改進框架
3.1 特征調查 在明確地闡述產品 質量 改進計劃之前,我們應該與不同操作過程中的關鍵技術員進行交談,以較好地理解他們所認同的產品質量特征的含義。調查結果見下圖。圖中的數據代表項目的個數。調查涉及到的基本特征包括:操作性、可用性、有效性和改進能力
3.1 特征調查
在明確地闡述產品質量改進計劃之前,我們應該與不同操作過程中的關鍵技術員進行交談,以較好地理解他們所認同的產品質量特征的含義。調查結果見下圖。圖中的數據代表項目的個數。調查涉及到的基本特征包括:操作性、可用性、有效性和改進能力。
可操作性模型 進度分析 原型&仿真 |
根據可操作性模型對代碼部分進行精確估計 |
通過直接測試關注可操作性 |
在用戶滿意情況調查問卷中針對可操作性設計特定的問題 |
3.2 技術
與產品質量相關的關鍵技術組成包括:
—如何詳細說明質量特征?
—如何為質量特征進行設計?
—如何分析和測試質量特征?
我們研究的重點將放在下面四個質量特征上:操作性能、可用性、改進措施和有效性。
3.2.1 操作性能特征
操作性能特征規范特別適用于對時間、存儲器、帶寬和CPU資源進行約束。操作性能特征規范的時間約束包括最終期限、周期等潛在約束。存儲器約束包括內存占用范圍的約束。
下面給出一個按照SMAP2000標準[2]得到的操作性能特征規范的例子。
|
最小值 |
最大值 |
平均值 |
評價結果 (是/否) |
運行時內存占用量
|
|
16 MB |
|
是 |
CPU 使用率 |
|
50% |
|
|
屏幕刷新率 |
1 sec |
|
|
|
作為操作性能規范的一部分,設計約束條件最好采用一種相似的格式單獨獲得。它們如同輸入一樣是特定的并經過處理的。
設計約束條件——操作性能模型的輸入因素
|
最小值 |
最大值 |
數據達到率 |
0 Mbps |
10 Mbps |
設備響應時間 |
20 msec |
1 sec |
我們建議在設計期間[6]對所有的需要鑒定的性能規范進行分析,以確保該規范能用于設計過程。此外,我們還建議通過直接對案例進行測試來驗證所有的性能規范[10]。
3.2.2 改進能力特征
改進能力是系統的一種適應需求變化、操作環境變更和執行技術變化的能力。改進特征包括產品的不同方面:可操作性、可更改性、可測量性、可擴展性。下面給出一個按照SMAP2000標準[2]得到的改進特征規范的例子:
可操作性規范:
—SMAP2000工具應可以基于NM平臺在硬件或操作系統上運行。
可更改性規范:
—SMAP2000工具應可以支持新消息的添加。
可擴展性規范:
—當不得不提高操作性能時,SMAP2000工具應可以在分布式環境下運行。
可測量性規范:
—SMAP2000工具在ATM接口上應能達到155Mb/s的速度。
改進規范會影響設計結果。對設計類型、模式和技術進行分類并記錄下來,做到有備無患,將有助于提高系統的改進性能。
分析
—可以使用SAAM技術(軟件體系分析方法)[4]對體系/設計進行改進規范分析,并在設計檢查時對它進行討論。
—可以利用類似于復雜循環理論中的工具(如Logiscope)對代碼進行靜態分析,得出代碼的可維護性。
3.2.3 可用性特征
指定可用性特征包括兩個方面:
—鑒別用戶的不同類型以及他們的基本特征
—可用性目標
可用性目標的例子可以是:
該工具應能夠在60msec內啟動。一個命令不應該有多于5個的選擇,且選擇不應該是含義模糊的。
下表描述了在軟件開發的不同階段關于可用性的各種可能的分析。
體系/ 設計
|
測試(UT, IT, ST)
|
最終用戶反饋 |
原型基于SUMI對原型的可用性分析 |
通過對案例的測試來證明可用性規范的量化部分 |
通過使用 SUMI調查表對產品進行可用性分析 |
不同階段的可用性分析
產品是服務于用戶界面的,因此可以在設計和分析階段建立可用性原型,讓用戶來評價產品的可用性。直觀的案例測試可以用來驗證可用性規范的量化部分。
3.2.4 有效性特征
有效性特征在5NINES小組[11]中已經介紹過了。在MIEL中,我們計劃開設大量與有效性相關的MU課程。
3.3 特征說明
從某種意義上說,特征說明是需求分析過程的一部分。它的目的就是鑒別設計目標。設計必須滿足的目標的范圍是很廣的:不僅要求實現正確的功能,還包括時間周期、費用、性能、可靠性、可用性、風險措施、安全、易更改性、可擴展性、可操作性、可測量性以及可重用性。在實踐中,交付一個能夠使所有不同的風險承擔者感到完全滿意,能夠實現他們所關注的每一個軟件質量特征的產品是不可能的。相反,我們必須在不同的特征之間根據它們的相對重要性進行權衡,從而做出選擇。
在規范特征的行為中,我們應該按照平衡設計的觀點,結合所有特征的相對重要性,得到單個特征的期望目標??赡軙驗樘卣魈喽荒馨焉厦嫠械拿恳粋€特征都加以考慮,所以我們建議在制定真正的特征規范之前,首先確定哪些特征是值得詳細說明的。
在一個完整的特征規范化過程中,通常包括七個步驟。我們已經利用一些方法制訂了一個用于特征規范的提問單[1]。下表解釋了不同的提問單的目的。
表 2
提問單
|
得到什么? |
項目提問單 |
關于項目的一般性信息及其大致框架。 它的目的是在小組內部形成對項目的共識。該提問單通常只有2頁。 |
最終用戶提問單 |
該提問單從最終用戶的角度獲得產品特征的有關信息。該提問單在可用性、可靠性、有效性、操作性等方面向最終用戶提出問題。與這些特征相關的關鍵概念會體現在一張圖表里,這些概念通過接下來的步驟可以發展為一個詳細的規范。該提問單最終形成系統使用說明書。 |
商業提問單 |
該提問單從商業前景的角度獲得特征信息。該提問單在時間周期、費用、質量、可重用性等方面提出問題。與這些特征相關的關鍵概念會體現在一張圖表里,并在項目計劃中得到反應。 |
改進提問單 |
該提問單在系統的改進方面提出問題,比如易操作性、可擴展性、易更改性等。該提問單盡可能地符合生產線概念。
|
發展提問單 |
該提問單在發展特征上提出問題,比如可測試性、可調試性、可跟蹤性等等。 |
3.4 特征分析
3.4.1 改進性能分析
SAAM(軟件體系結構分析方法)
SAAM是由SEI,CMU開發的。它可以被用來分析例如易更改性這樣的定性的特征。到目前為止,SAAM已經擁有成功地應用于工業領域的大量案例。
SAAM通過想定或指定一系列包括使用/修改系統的步驟,對系統體系結構進行演練,并由此評估該體系結構相對于使用/修改行為的適宜性。想定是對購買者與系統之間專門的交互作用的一段描述。
在SCS-NM項目中, 可以用SAAM方法來指導如何改進體系結構的易更改性。它還可以被用來評估體系/設計的定性的特征,例如可更改性、可操作性、可擴展性等等。
SAAM還可以做出進一步的指導并將成為高級設計培訓課程的一部分。
3.4.2 可用性分析
SUMI(軟件可用性方法集成)
這是一個基于提問單的可用性評價方法。它重視用戶的理解。該方法分別對效率、影響、有用性、控制和易掌握性進行評分,同時給出一個綜合得分。這些分數都是在調查的基礎上通過科學的分析得到的。
效率得分取決于用戶對軟件的感覺,即軟件是否有助于他們采用一種有效的方式來更快的完成工作任務。影響得分反應了用戶使用工具后的心理狀態,例如他們是否產生滿意感或者失落感。有用性得分體現了用戶這樣一種感覺,即用戶是否能通過一種有用的途徑與軟件進行交流,從而有助于處理操作過程中出現的問題(錯誤、警告等等)??刂频梅煮w現了用戶在是否能夠有效地使用軟件方面的感覺。易掌握性得分反應了用戶在如下方面的感覺,即該軟件是否能夠通過幫助手冊比較容易的掌握并開始使用。在MIEL中對該方法進行了具體的指導[12]。
3.4.3 技術性能分析
在設計的基礎上,使用類似于在項目規模估計中使用的廣義Delphi法,可以對內存占用率做出估計。利用執行曲線圖[8]可以得到完成不同任務和部件的估計時間。當項目包括很多具有嚴格的最終期限約束的定期任務時,可以使用單調比率分析技術進行進度控制分析。進度控制模型考慮了由于對共享資源的爭奪而引起的等待時間,因而能夠對服務時間進行準確地估計。同樣,我們可以建立隊列模型用于估計一個已到達指令的完全響應時間及其單獨的計算或服務時間。
在MIEL中,系統工程組主要基于體系結構和設計關注技術性能分析。
原文轉自:http://www.kjueaiud.com