讀書筆記-軟件開發過程-系統構思
UML面向對象建模與設計(第2版) Object-Oriented Modeling and Design with UML Second Edition系統構思(system conception)要處理的是某項應用的起源。系統構思的目的是延遲細節實現,理解完整圖景。
1.形成系統概念
多數有關新系統的思想都是對已有思想的擴展。偶爾,新系統也會大大地偏離原有系統。作者又利用下面的方法幫助發現新的系統概念:
新的功能;流水化;簡化;自動化;整合;類比;全球化
2. 闡釋概念
作者對優秀的系統給定了個標準,就是能回答下面幾個問題:
a.應用程序是為誰而做的?就是風險承擔人有哪些。用戶不會主動考慮新系統,除非能幫助他們獲利。作者指出:如果不能讓他們參與項目,那樣項目的需求就很可疑,需要重寫考慮。我覺得也對,做的項目如果毫無用處,干嘛費大力氣去做呢?
b.它解決了哪些問題?通過這個問題來幫助我們界定工作量,確定工作范圍。
c.它會用在什么地方?是關鍵性軟件、實現性軟件、新部署的功能等等
d.何時會需要它?這里提到了2個時間:可行時間和必需時間,如果這兩個時間脫節不一致了,技術人員和業務專家就得通過對話找解決方法。
e.為什么會需要它?可以做一份業務案例,包括成本、有形效益、無形效益、風險和候選方案,清晰的理解新系統的動機。
f.它是如何工作的?集體討論問題的可行性,這里不是選擇解決方案,是讓我們知道該問題有方法解決。
作者通過ATM案例來說明如何回答上面幾個問題。
3.準備問題陳述
回答了上面幾個問題后,下面要進行需求陳述,來概述待構建系統的目標和總體方案。
需求要從用戶的觀點來描述系統的行為,把系統看成黑盒子。問題陳述應該描述要完成哪些事情,而不是如何實現。它應該是需求的陳述,而不是對系統架構的建議。大多數問題陳述都是模糊的、不完整的、前后不一致的甚至完全錯誤的,所以要經過全面分析去除那些會對系統造成不良影響的部分。
作者通過ATM案例來展示了問題陳述內容。
4. 小結
項目的第一個階段是形成新的構思。在開發之前,先要評估系統的可行性、開發系統的困難和風險、系統的需求以及成本效益比例。這個過程,我們應該考慮到系統所有風險承擔人的觀點,做出必要的權衡。(開始,我是認為這些評估貌似不是開發人員應該關心的,但是想想如開發起來我們才發現這個項目不太現實,或者困難太多成本增高,再去和客戶溝通就會比較麻煩了,如果前期做好這方面工作后面開發就比較順了。)
posted on 2009-03-30 19:05 Terry Lee 閱讀(244) 評論(0) 編輯 收藏 所屬分類: OOM