概要設(shè)計(jì)寫(xiě)法_第1頁(yè)
概要設(shè)計(jì)寫(xiě)法_第2頁(yè)
概要設(shè)計(jì)寫(xiě)法_第3頁(yè)
概要設(shè)計(jì)寫(xiě)法_第4頁(yè)
概要設(shè)計(jì)寫(xiě)法_第5頁(yè)
已閱讀5頁(yè),還剩2頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、概要設(shè)計(jì)怎么寫(xiě)做軟件到定層次了,就要考慮到設(shè)計(jì)了,設(shè)計(jì)了很久,就是不系統(tǒng),系統(tǒng)的設(shè)計(jì)需要一個(gè) 記錄,記錄就用文檔,那么對(duì)項(xiàng)目所有包括技術(shù)上的設(shè)計(jì)都記錄下來(lái),我們就可以理解為軟 件的概要設(shè)計(jì)了。設(shè)計(jì)規(guī)范以做參考在需求明確、準(zhǔn)備開(kāi)始編碼之前,要做概要設(shè)計(jì),而詳細(xì)設(shè)計(jì)可能大部分公司沒(méi)有做,有做 的也大部分是和編碼同步進(jìn)行,或者在編碼之后。因此,對(duì)大部分的公司來(lái)說(shuō),概要設(shè)計(jì)文 檔是唯一的設(shè)計(jì)文檔,對(duì)后面的開(kāi)發(fā)、測(cè)試、實(shí)施、維護(hù)工作起到關(guān)鍵性的影響。一、問(wèn)題的提出概要設(shè)計(jì)寫(xiě)什么?概要設(shè)計(jì)怎么做?如何判斷設(shè)計(jì)的模塊是完整的?為什么說(shuō)設(shè)計(jì)階段過(guò)于重視業(yè)務(wù)流程是個(gè)誤區(qū)?以需求分析文檔還是以概要設(shè)計(jì)文檔來(lái)評(píng)估開(kāi)

2、發(fā)工作量、指導(dǎo)開(kāi)發(fā)計(jì)劃準(zhǔn)確?結(jié)構(gòu)化好還是面向?qū)ο蠛茫恳陨蠁?wèn)題的答案請(qǐng)?jiān)谖恼轮姓?。二、概要設(shè)計(jì)的目的將軟件系統(tǒng)需求轉(zhuǎn)換為未來(lái)系統(tǒng)的設(shè)計(jì);逐步開(kāi)發(fā)強(qiáng)壯的系統(tǒng)構(gòu)架;使設(shè)計(jì)適合于實(shí)施環(huán)境,為提高性能而進(jìn)行設(shè)計(jì);結(jié)構(gòu)應(yīng)該被分解為模塊和庫(kù)。三、概要設(shè)計(jì)的任務(wù)制定規(guī)范:代碼體系、接口規(guī)約、命名規(guī)則。這是項(xiàng)目小組今后共同作戰(zhàn)的基礎(chǔ),有了 開(kāi)發(fā)規(guī)范和程序模塊之間和項(xiàng)目成員彼此之間的接口規(guī)則、方式方法,大家就有了共同的工 作語(yǔ)言、共同的工作平臺(tái),使整個(gè)軟件開(kāi)發(fā)工作可以協(xié)調(diào)有序地進(jìn)行??傮w結(jié)構(gòu)設(shè)計(jì):功能(加工)一模塊:每個(gè)功能用那些模塊實(shí)現(xiàn),保證每個(gè)功能都有相應(yīng)的模塊來(lái)實(shí)現(xiàn);模塊層次結(jié)構(gòu):某個(gè)角度的軟件框架視圖;模

3、塊間的調(diào)用關(guān)系:模塊間的接口的總體描述;模塊間的接口:傳遞的信息及其結(jié)構(gòu);處理方式設(shè)計(jì):滿足功能和性能的算法用戶界面設(shè)計(jì);數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì):詳細(xì)的數(shù)據(jù)結(jié)構(gòu):表、索引、文件;算法相關(guān)邏輯數(shù)據(jù)結(jié)構(gòu)及其操作;上述操作的程序模塊說(shuō)明(在前臺(tái)?在后臺(tái)?用視圖?用過(guò)程?)接口控制表的數(shù)據(jù)結(jié)構(gòu)和使用規(guī)則其他性能設(shè)計(jì)。四、概要設(shè)計(jì)寫(xiě)什么結(jié)構(gòu)化軟件設(shè)計(jì)說(shuō)明書(shū)結(jié)構(gòu)任務(wù):目標(biāo)、環(huán)境、需求、局限;總體設(shè)計(jì):處理流程、總體結(jié)構(gòu)與模塊、功能與模塊的關(guān)系;接口設(shè)計(jì):總體說(shuō)明外部用戶、軟、硬件接口;內(nèi)部模塊間接口(注:接口 W系統(tǒng)界面)數(shù)據(jù)結(jié)構(gòu):邏輯結(jié)構(gòu)、物理結(jié)構(gòu),與程序結(jié)構(gòu)的關(guān)系;模塊設(shè)計(jì):每個(gè)模塊“做什么”、簡(jiǎn)要說(shuō)明“怎么做

4、”(輸入、輸出、處理邏輯、與其它模塊的 接口,與其它系統(tǒng)或硬件的接口),處在什么邏輯位置、物理位置;運(yùn)行設(shè)計(jì):運(yùn)行模塊組合、控制、時(shí)間;出錯(cuò)設(shè)計(jì):出錯(cuò)信息、處錯(cuò)處理;其他設(shè)計(jì):保密、維護(hù);OO軟件設(shè)計(jì)說(shuō)明書(shū)結(jié)構(gòu)1概述系統(tǒng)簡(jiǎn)述、軟件設(shè)計(jì)目標(biāo)、參考資料、修訂版本記錄這部分論述整個(gè)系統(tǒng)的設(shè)計(jì)目標(biāo),明確地說(shuō)明哪些功能是系統(tǒng)決定實(shí)現(xiàn)而哪些不準(zhǔn)備實(shí)現(xiàn) 的。同時(shí),對(duì)于非功能性的需求例如性能、可用性等,亦需提及。需求規(guī)格說(shuō)明書(shū)對(duì)于這部 分的內(nèi)容來(lái)說(shuō)是很重要的參考,看看其中明確了的功能性以及非功能性的需求。這部分必須說(shuō)清楚設(shè)計(jì)的全貌如何,務(wù)必使讀者看后知道將實(shí)現(xiàn)的系統(tǒng)有什么特點(diǎn)和功能。在隨后的文檔部分,將解釋設(shè)

5、計(jì)是怎么來(lái)實(shí)現(xiàn)這些的。2術(shù)語(yǔ)表對(duì)本文檔中所使用的各種術(shù)語(yǔ)進(jìn)行說(shuō)明。如果一些術(shù)語(yǔ)在需求規(guī)格說(shuō)明書(shū)中已經(jīng)說(shuō)明過(guò)了, 此處不用再重復(fù),可以指引讀者參考需求說(shuō)明。3用例此處要求系統(tǒng)用用例圖表述(UML),對(duì)每個(gè)用例(正常處理的情況)要有中文敘述。4設(shè)計(jì)概述4.1簡(jiǎn)述這部分要求突出整個(gè)設(shè)計(jì)所采用的方法(是面向?qū)ο笤O(shè)計(jì)還是結(jié)構(gòu)化設(shè)計(jì))、系統(tǒng)的體系 結(jié)構(gòu)(例如客戶/服務(wù)器結(jié)構(gòu))以及使用到的相應(yīng)技術(shù)和工具(例如OMT、Rose)4.2系統(tǒng)結(jié)構(gòu)設(shè)計(jì)這部分要求提供高層系統(tǒng)結(jié)構(gòu)(頂層系統(tǒng)結(jié)構(gòu)、各子系統(tǒng)結(jié)構(gòu))的描述,使用方框圖來(lái)顯 示主要的組件及組件間的交互。最好是把邏輯結(jié)構(gòu)同物理結(jié)構(gòu)分離,對(duì)前者進(jìn)行描述。別忘 了說(shuō)

6、明圖中用到的俗語(yǔ)和符號(hào)。4.3系統(tǒng)界面各種提供給用戶的界面以及外部系統(tǒng)在此處要予以說(shuō)明。如果在需求規(guī)格說(shuō)明書(shū)中已經(jīng)對(duì) 用戶界面有了敘述,此處不用再重復(fù),可以指引讀者參考需求說(shuō)明。如果系統(tǒng)提供了對(duì)其它 系統(tǒng)的接口,比如說(shuō)從其它軟件系統(tǒng)導(dǎo)入/導(dǎo)出數(shù)據(jù),必須在此說(shuō)明。4.4約束和假定描述系統(tǒng)設(shè)計(jì)中最主要的約束,這些是由客戶強(qiáng)制要求并在需求說(shuō)明書(shū)寫(xiě)明的。說(shuō)明系統(tǒng) 是如何來(lái)適應(yīng)這些約束的。另外如果本系統(tǒng)跟其它外部系統(tǒng)交互或者依賴其它外部系統(tǒng)提供一些功能輔助,那么系統(tǒng) 可能還受到其它的約束。這種情況下,要求清楚地描述與本系統(tǒng)有交互的軟件類型以及這樣 導(dǎo)致的約束。實(shí)現(xiàn)的語(yǔ)言和平臺(tái)也會(huì)對(duì)系統(tǒng)有約束,同樣在此予

7、以說(shuō)明。對(duì)于因選擇具體的設(shè)計(jì)實(shí)現(xiàn)而導(dǎo)致對(duì)系統(tǒng)的約束,簡(jiǎn)要地描述你的想法思路,經(jīng)過(guò)怎么樣 的權(quán)衡,為什么要采取這樣的設(shè)計(jì)等等。5對(duì)象模型提供整個(gè)系統(tǒng)的對(duì)象模型,如果模型過(guò)大,按照可行的標(biāo)準(zhǔn)把它劃分成小塊,例如可以把 客戶端和服務(wù)器端的對(duì)象模型分開(kāi)成兩個(gè)圖表述。在其中應(yīng)該包含所有的系統(tǒng)對(duì)象。這些對(duì) 象都是從理解需求后得到的。要明確哪些應(yīng)該、哪些不應(yīng)該被放進(jìn)圖中。所有對(duì)象之間的關(guān) 聯(lián)必須被確定并且必須指明聯(lián)系的基數(shù)。聚合和繼承關(guān)系必須清楚地確定下來(lái)。每個(gè)圖必須 附有簡(jiǎn)單的說(shuō)明。6對(duì)象描述在這個(gè)部分?jǐn)⑹雒總€(gè)對(duì)象的細(xì)節(jié),它的屬性、它的方法。在這之前必須從邏輯上對(duì)對(duì)象進(jìn) 行組織。你可能需要用結(jié)構(gòu)圖把對(duì)象按

8、子系統(tǒng)劃分好。為每個(gè)對(duì)象做一個(gè)條目。在系統(tǒng)對(duì)象模型中簡(jiǎn)要的描述它的用途、約束(如只能有一個(gè)實(shí) 例),列出它的屬性和方法。如果對(duì)象是存儲(chǔ)在持久的數(shù)據(jù)容器中,標(biāo)明它是持久對(duì)象,否 則說(shuō)明它是個(gè)臨時(shí)對(duì)象(transient object)。對(duì)每個(gè)對(duì)象的每個(gè)屬性詳細(xì)說(shuō)明:名字、類型,如果屬性不是很直觀或者有約束(例如, 每個(gè)對(duì)象的該屬性必須有一個(gè)唯一的值或者值域是有限正整數(shù)等)。對(duì)每個(gè)對(duì)象的每個(gè)方法詳細(xì)說(shuō)明:方法名,返回類型,返回值,參數(shù),用途以及使用的算 法的簡(jiǎn)要說(shuō)明(如果不是特別簡(jiǎn)單的話)。如果對(duì)變量或者返回值由什么假定的話, Pre-conditions和Post-conditions必須在此說(shuō)

9、明。列出它或者被它調(diào)用的方法需要訪問(wèn)或者 修改的屬性。最后,提供可以驗(yàn)證實(shí)現(xiàn)方法的測(cè)試案例。7動(dòng)態(tài)模型這部分的作用是描述系統(tǒng)如何響應(yīng)各種事件。一般使用順序圖和狀態(tài)圖。確定不同的場(chǎng)景(Scenario)是第一步,不需要確定所有可能的場(chǎng)景,但是必須至少要覆 蓋典型的系統(tǒng)用例。不要自己去想當(dāng)然地創(chuàng)造場(chǎng)景,通常的策略是描述那些客戶可以感受得 到的場(chǎng)景。7.1 場(chǎng)景(Scenarios)對(duì)每個(gè)場(chǎng)景做一則條目,包括以下內(nèi)容:場(chǎng)景名:給它一個(gè)可以望文生義的名字場(chǎng)景描述:簡(jiǎn)要敘述場(chǎng)景是干什么的以及發(fā)生的動(dòng)作的順序。順序圖:描述各種事件及事件發(fā)生的相對(duì)時(shí)間順序。7.2狀態(tài)圖這部分的內(nèi)容包括系統(tǒng)動(dòng)態(tài)模型重要的部分

10、的狀態(tài)圖??赡苣阆霝槊總€(gè)對(duì)象畫(huà)一個(gè)狀態(tài)圖, 但事實(shí)上會(huì)導(dǎo)致太多不期望的細(xì)節(jié)信息,只需要確定系統(tǒng)中一些重要的對(duì)象并為之提供狀態(tài) 圖即可。8非功能性需求五、概要設(shè)計(jì)怎么做結(jié)構(gòu)化軟件設(shè)計(jì)方法:詳細(xì)閱讀需求規(guī)格說(shuō)明書(shū),理解系統(tǒng)建設(shè)目標(biāo)、業(yè)務(wù)現(xiàn)狀、現(xiàn)有系統(tǒng)、客戶需求的各功能 說(shuō)明;分析數(shù)據(jù)流圖,弄清數(shù)據(jù)流加工的過(guò)程;根據(jù)數(shù)據(jù)流圖決定數(shù)據(jù)處理問(wèn)題的類型(變換型、事務(wù)型、其他型);通過(guò)以上分析,推導(dǎo)出系統(tǒng)的初始結(jié)構(gòu)圖;對(duì)初始結(jié)構(gòu)圖進(jìn)行改進(jìn)完善:所有的加工都要能對(duì)應(yīng)到相應(yīng)模塊(模塊的完整性在于他們 完成了需求中的所有加工),消除完全相似或局部相似的重復(fù)功能(智者察同),理清模塊 間的層次、控制關(guān)系,減少高扇出

11、結(jié)構(gòu),隨著深度增大扇入,平衡模塊大小。由對(duì)數(shù)據(jù)字典的修改補(bǔ)充完善,導(dǎo)出邏輯數(shù)據(jù)結(jié)構(gòu),導(dǎo)出每種數(shù)據(jù)結(jié)構(gòu)上的操作,這些操 作應(yīng)當(dāng)屬于某個(gè)模塊。確定系統(tǒng)包含哪些應(yīng)用服務(wù)系統(tǒng)、客戶端、數(shù)據(jù)庫(kù)管理系統(tǒng);確定每個(gè)模塊放在哪個(gè)應(yīng)用服務(wù)器或客戶端的哪個(gè)目錄、哪個(gè)文件(庫(kù)),或是在數(shù)據(jù)庫(kù) 內(nèi)部建立的對(duì)象。對(duì)每個(gè)篩選后的模塊進(jìn)行列表說(shuō)明。對(duì)邏輯數(shù)據(jù)結(jié)構(gòu)進(jìn)行列表說(shuō)明。根據(jù)結(jié)構(gòu)化軟件設(shè)計(jì)說(shuō)明書(shū)結(jié)構(gòu)對(duì)其他需要說(shuō)明的問(wèn)題進(jìn)行補(bǔ)充說(shuō)明,形成概要設(shè)計(jì)說(shuō)明 書(shū)。OO軟件設(shè)計(jì)方法:在OOA基礎(chǔ)上設(shè)計(jì)對(duì)象與類:在問(wèn)題領(lǐng)域分析(業(yè)務(wù)建模和需求分析)之后,開(kāi)始建立 系統(tǒng)構(gòu)架。第一步是抽取建立領(lǐng)域的概念模型,在UML中表現(xiàn)為建立對(duì)象類圖

12、、活動(dòng)圖和交互圖。 對(duì)象類就是從對(duì)象中經(jīng)過(guò)“察同”找出某組對(duì)象之間的共同特征而形成類:對(duì)象與類的屬性:數(shù)據(jù)結(jié)構(gòu);對(duì)象與類的服務(wù)操作:操作的實(shí)現(xiàn)算法;對(duì)象與類的各外部聯(lián)系的實(shí)現(xiàn)結(jié)構(gòu);設(shè)計(jì)策略:充分利用現(xiàn)有的類;方法:繼承、復(fù)用、演化;活動(dòng)圖用于定義工作流,主要說(shuō)明工作流的5W(Do What、Who Do、When Do、WhereDo、Why Do)等問(wèn)題,交互圖把人員和業(yè)務(wù)聯(lián)系在一起是為了理解交互過(guò)程,發(fā)現(xiàn)業(yè)務(wù)工 作流中相互交互的各種角色。第二步是構(gòu)建完善系統(tǒng)結(jié)構(gòu):對(duì)系統(tǒng)進(jìn)行分解,將大系統(tǒng)分解為若干子系統(tǒng),子系統(tǒng)分解 為若干軟件組件,并說(shuō)明子系統(tǒng)之間的靜態(tài)和動(dòng)態(tài)接口,每個(gè)子系統(tǒng)可以由用例模型

13、、分析 模型、設(shè)計(jì)模型、測(cè)試模型表示。軟件系統(tǒng)結(jié)構(gòu)的兩種方式:層次、塊狀層次結(jié)構(gòu):系統(tǒng)、子系統(tǒng)、模塊、組件(同一層之間具有獨(dú)立性);塊狀結(jié)構(gòu):相互之間弱耦合系統(tǒng)的組成部分:?jiǎn)栴}論域:業(yè)務(wù)相關(guān)類和對(duì)象(OOA的重點(diǎn));人機(jī)界面:窗口、菜單、按鈕、命令等等;數(shù)據(jù)管理:數(shù)據(jù)管理方法、邏輯物理結(jié)構(gòu)、操作對(duì)象類;任務(wù)管理:任務(wù)協(xié)調(diào)和管理進(jìn)程;第三步是利用“4+1”視圖描述系統(tǒng)架構(gòu):用例視圖及劇本;說(shuō)明體系結(jié)構(gòu)的設(shè)計(jì)視圖;以 模塊形式組成包和層包含概要實(shí)現(xiàn)模型的實(shí)現(xiàn)視圖;說(shuō)明進(jìn)程與線程及其架構(gòu)、分配和相互 交互關(guān)系的過(guò)程視圖;說(shuō)明系統(tǒng)在操作平臺(tái)上的物理節(jié)點(diǎn)和其上的任務(wù)分配的配置視圖。在 RUP中還有可選的

14、數(shù)據(jù)視圖。第四步是性能優(yōu)化(速度、資源、內(nèi)存)、模型清晰化、簡(jiǎn)單化(簡(jiǎn)單就是享受)。六、概要設(shè)計(jì)的原則總體原則和方法:由粗到細(xì)的原則,互相結(jié)合的原則,定性分析和定量分析相結(jié)合的方法, 分解和協(xié)調(diào)的方法和模型化方法。要系統(tǒng)考慮系統(tǒng)的一般性、關(guān)聯(lián)性、整體性和層次性。分解協(xié)調(diào):目的是為了創(chuàng)造更好的系統(tǒng)。系統(tǒng)分解是指將一個(gè)復(fù)雜的系統(tǒng)分解為若干個(gè)子 系統(tǒng),系統(tǒng)協(xié)調(diào)一是系統(tǒng)內(nèi)協(xié)調(diào),即根據(jù)系統(tǒng)的總結(jié)構(gòu)、總功能、總?cè)蝿?wù)和總目標(biāo)的要求, 使各個(gè)子系統(tǒng)之間互相協(xié)調(diào)配合,在各個(gè)子系統(tǒng)局部?jī)?yōu)化基礎(chǔ)上,通過(guò)內(nèi)部平衡的協(xié)調(diào)控制, 實(shí)現(xiàn)系統(tǒng)的整體優(yōu)化;屏蔽抽象:從簡(jiǎn)單的框架開(kāi)始,隱含細(xì)節(jié);一致性:統(tǒng)一的規(guī)范、統(tǒng)一的標(biāo)準(zhǔn)、統(tǒng)

15、一的文件模式;每個(gè)模塊應(yīng)當(dāng)有一個(gè)統(tǒng)一命名的容易理解的名字;編碼:由外向內(nèi)(界面一 核心);面向用戶:概要設(shè)計(jì)是對(duì)于按鈕按下后系統(tǒng)怎么做”的簡(jiǎn)要說(shuō)明;模塊、組件的充分獨(dú)立性、封閉性;同時(shí)考慮靜態(tài)結(jié)構(gòu)與動(dòng)態(tài)運(yùn)行;每個(gè)邏輯對(duì)象都應(yīng)當(dāng)說(shuō)明其所處物理對(duì)象(非一一對(duì)應(yīng));每個(gè)物理對(duì)象都有合適的開(kāi)發(fā)人員,并且利于分工與組裝。(詳細(xì)說(shuō)明見(jiàn)本人另一篇文章: 系統(tǒng)構(gòu)架設(shè)計(jì)應(yīng)考慮的因素);確立每個(gè)構(gòu)架視圖的整體結(jié)構(gòu):視圖的詳細(xì)組織結(jié)構(gòu)、元素的分組以及這些主要分組之間 的接口;軟件構(gòu)架與使用的技術(shù)平臺(tái)密切相關(guān),目前常用的平臺(tái)有J2EE、.NET、CORBA等等, 因此具體的軟件構(gòu)架人員應(yīng)當(dāng)具備使用這些平臺(tái)的軟件開(kāi)發(fā)經(jīng)

16、驗(yàn);通過(guò)需求功能與設(shè)計(jì)模塊之間的列表對(duì)應(yīng),檢查每個(gè)需求功能是否都有相應(yīng)的模塊來(lái)實(shí)現(xiàn), 保證需求功能的可追溯性和需求實(shí)現(xiàn)(模塊)的完整性,同時(shí)可以檢查重復(fù)和不必要的模塊。在需求調(diào)研分析過(guò)程中對(duì)業(yè)務(wù)處理過(guò)程了解的完整性和準(zhǔn)確性非常重要。調(diào)查了解清楚所 有的業(yè)務(wù)流程才能設(shè)計(jì)出適合各流程業(yè)務(wù)節(jié)點(diǎn)用戶業(yè)務(wù)特點(diǎn)和習(xí)慣的軟件,使開(kāi)發(fā)出來(lái)的軟 件更受歡迎。當(dāng)然在進(jìn)行軟件概要設(shè)計(jì)時(shí),要盡量排除業(yè)務(wù)流程的制約,即把流程中的各項(xiàng) 業(yè)務(wù)結(jié)點(diǎn)工作作為獨(dú)立的對(duì)象,設(shè)計(jì)成獨(dú)立的模塊,充分考慮他們與其他各種業(yè)務(wù)對(duì)象模塊 的接口,在流程之間通過(guò)業(yè)務(wù)對(duì)象模塊的相互調(diào)用實(shí)現(xiàn)各種業(yè)務(wù),這樣,在業(yè)務(wù)流程發(fā)生有 限的變化時(shí)(每個(gè)業(yè)務(wù)模塊

17、本身的業(yè)務(wù)邏輯沒(méi)有變的情況下),就能夠比較方便地修改系統(tǒng) 程序模塊間的調(diào)用關(guān)系而實(shí)現(xiàn)新的需求。如果這種調(diào)用關(guān)系被設(shè)計(jì)成存儲(chǔ)在配置庫(kù)的數(shù)據(jù)字 典里,則連程序代碼都不用修改,只需修改數(shù)據(jù)字典里的模塊調(diào)用規(guī)則即可。七、概要設(shè)計(jì)的重要輸出編碼規(guī)范:信息形式、接口規(guī)約、命名規(guī)則;物理模型:組件圖、配置圖;不同角度的構(gòu)架視圖:用例視圖、邏輯視圖、進(jìn)程視圖、部署視圖、實(shí)施視圖、數(shù)據(jù)視圖 (可選);系統(tǒng)總體布局:哪些部分組成、各部分在物理上、邏輯上的相互關(guān)系;兩個(gè)不可忽視的輸出:與需求功能的關(guān)系:對(duì)于需求中的每一個(gè)功能,用哪一層、哪個(gè)模塊、哪個(gè)類、哪個(gè)對(duì)象 來(lái)實(shí)現(xiàn)(一對(duì)多關(guān)系);反過(guò)來(lái),應(yīng)當(dāng)說(shuō)明將要?jiǎng)?chuàng)建的系統(tǒng)

18、每一層、每個(gè)模塊、每個(gè)對(duì)象、 每一個(gè)類“做什么二他們是為了幫助實(shí)現(xiàn)哪些功能(一對(duì)多關(guān)系)。(需求的顆粒度在一開(kāi) 始往往是比較粗的,因此根據(jù)功能點(diǎn)對(duì)于整體項(xiàng)目規(guī)模的估計(jì)或得到項(xiàng)目WBS其誤差范圍 也是比較大的。更為重要的原因是,需求往往不是編碼工作分解的準(zhǔn)確依據(jù),因?yàn)橐粋€(gè)需求 的功能點(diǎn)可能對(duì)應(yīng)多個(gè)代碼模塊,而多個(gè)需求的功能點(diǎn)也可能只對(duì)應(yīng)一個(gè)或少數(shù)代碼模塊, 同時(shí)還有軟件復(fù)用等因素要考慮,因此只有在概要設(shè)計(jì)完成以后才能準(zhǔn)確地得到詳細(xì)設(shè)計(jì)或 編碼階段的二次WBS,并估計(jì)較為準(zhǔn)確的整體項(xiàng)目規(guī)模。)邏輯與物理位置:每個(gè)對(duì)象在邏輯上分別落在哪一層、哪個(gè)模塊、哪個(gè)類;在物理上每個(gè) 模塊、每個(gè)對(duì)象、每一個(gè)類放在哪個(gè)應(yīng)用服務(wù)器或客戶端的哪個(gè)目錄、哪個(gè)文件(庫(kù)),或 者是建立在數(shù)據(jù)庫(kù)管理系統(tǒng)中的什么東東(過(guò)程、函數(shù)、視圖、觸發(fā)器等

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論