之前的部落格較長的描述了軟體工程中的系統文獻映射研究方法。這裡接着給出一個我曾經做過的工作作為例子,以更直覺地展示這種研究類型。該研究的背景資訊這裡不再贅述。
這篇部落客要介紹第八個研究問題的結果,即軟體開發中假設條件管理的收益和挑戰是哪些。
下表将未被妥善管理的假設條件造成的後果分為五個大類:無效的假設條件、隐式的假設條件、不一緻的假設條件、未被妥善模組化的假設條件、其他。注意無效的假設條件也包括違反的假設條件、失敗的假設條件。
後果類型 | 後果子類型 |
無效的假設條件 | 系統問題。例如系統脆弱性、系統錯誤、內建缺陷。 |
對需求的消極影響。例如需求分析的無效結果、實作安全需求的障礙、無法實作需求、系統品質問題、需求違反、需求風險。 | |
不期望的後果。例如産品中不期望的變化、缺陷的副作用、無法預測或無法接受的程式、系統、環境行為。 | |
成本的提高。例如維護成本的提高、額外的資源消耗、返工。 | |
商業問題。例如不滿意的客戶、市場佔有率的縮減、聲望的降低、商業操作成本的提高。 | |
軟體操作環境的不比對的增加。 | |
漏洞出現幾率增加。 | |
API客戶和供應商之間的誤解。 | |
隐式的假設條件 | 系統問題。例如系統脆弱性、系統錯誤、運作時錯誤、有效性問題。 |
對需求的消極影響。例如需求違反、錯誤的需求、無法實作需求、不完整以及無法了解的需求、需求風險、需求不确定性的增加、系統品質問題。 | |
設計問題。例如設計的違反、構件的問題、僵化的體系結構、體系結構解決方案的可演化性、可變性、可複用性的降低、體系結構的誤解、體系結構的風險。 | |
成本的提高。例如改變系統的成本很高、下一個版本釋出需要更多的時間、返工、高維護成本、解決由隐式的假設條件導緻的問題的成本。 | |
一緻性問題。例如沖突的假設條件導緻的系統的不比對。 | |
阻礙軟體演化。 | |
不期望的後果。例如不期望的環境行為。 | |
可追溯性問題。 | |
項目延期。 | |
不一緻的假設條件 | 體系結構的不比對。例如構件或模型間的不比對。 |
系統問題。例如系統錯誤和內建缺陷。 | |
項目風險。 | |
構件間互操作性的沖突。 | |
成本的提高。例如超過預算或計劃時間。 | |
未被妥善模組化的假設條件 | 阻礙體系結構的變化影響分析及權衡分析。 |
提高的成本。例如額外的了解和分析需求的成本。 | |
其他 | 設計問題。例如昂貴的重新構造設計原理的成本、影響體系結構的不清晰的設計标準和環境因素、設計完整性的違反、設計決策的誤解。 |
對需求的消極影響。例如忽視商業目标和限制、不合适的針對需求和環境因素的變化影響分析。 |