軟件工程導(dǎo)論第4版第2章_第1頁
軟件工程導(dǎo)論第4版第2章_第2頁
軟件工程導(dǎo)論第4版第2章_第3頁
軟件工程導(dǎo)論第4版第2章_第4頁
軟件工程導(dǎo)論第4版第2章_第5頁
已閱讀5頁,還剩69頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

第2章可行性研究2.1可行性研究的任務(wù)2.2可行性研究過程2.3系統(tǒng)流程圖2.4數(shù)據(jù)流圖2.5數(shù)據(jù)字典2.6本錢/效益分析2.7小結(jié)習(xí)題可行性研究的目的不是解決問題,而是確定問題是否值得去解決。怎樣到達(dá)這個(gè)目的呢?當(dāng)然不能靠主觀猜測(cè)而只能靠客觀分析。必須分析幾種主要的可能解法的利弊,從而判斷原定的系統(tǒng)規(guī)模和目標(biāo)是否現(xiàn)實(shí),系統(tǒng)完成后所能帶來的效益是否大到值得投資開發(fā)這個(gè)系統(tǒng)的程度。因此,可行性研究實(shí)質(zhì)上是要進(jìn)行一次大大壓縮簡化了的系統(tǒng)分析和設(shè)計(jì)的過程,也就是在較高層次上以較抽象的方式進(jìn)行的系統(tǒng)分析和設(shè)計(jì)的過程。2.1可行性研究的任務(wù)首先需要進(jìn)一步分析和澄清問題定義。在問題定義階段初步確定的規(guī)模和目標(biāo),如果是正確的就進(jìn)一步加以肯定,如果有錯(cuò)誤就應(yīng)該及時(shí)改正,如果對(duì)目標(biāo)系統(tǒng)有任何約束和限制,也必須把它們清楚地列舉出來。在澄清了問題定義之后,分析員應(yīng)該導(dǎo)出系統(tǒng)的邏輯模型。然后從系統(tǒng)邏輯模型出發(fā),探索假設(shè)干種可供選擇的主要解法(即系統(tǒng)實(shí)現(xiàn)方案)。對(duì)每種解法都應(yīng)該仔細(xì)研究它的可行性,一般說來,至少應(yīng)該從下述三方面研究每種解法的可行性??尚行匝芯孔罡镜娜蝿?wù)是對(duì)以后的行動(dòng)方針提出建議。如果問題沒有可行的解,分析員應(yīng)該建議停止這項(xiàng)開發(fā)工程,以防止時(shí)間、資源、人力和金錢的浪費(fèi);如果問題值得解,分析員應(yīng)該推薦一個(gè)較好的解決方案,并且為工程制定一個(gè)初步的方案??尚行匝芯啃枰臅r(shí)間長短取決于工程的規(guī)模。一般說來,可行性研究的本錢只是預(yù)期的工程總本錢的5%~10%。典型的可行性研究過程有下述一些步驟:1.復(fù)查系統(tǒng)規(guī)模和目標(biāo)分析員訪問關(guān)鍵人員,仔細(xì)閱讀和分析有關(guān)的材料,以便對(duì)問題定義階段書寫的關(guān)于規(guī)模和目標(biāo)的報(bào)告書進(jìn)一步復(fù)查確認(rèn),改正模糊或不確切的表達(dá),清晰地描述對(duì)目標(biāo)系統(tǒng)的一切限制和約束。這個(gè)步驟的工作,實(shí)質(zhì)上是為了確保分析員正在解決的問題確實(shí)是要求他解決的問題。2.2可行性研究過程沒有一個(gè)系統(tǒng)是在“真空〞中運(yùn)行的,絕大多數(shù)系統(tǒng)都和其他系統(tǒng)有聯(lián)系。應(yīng)該注意了解并記錄現(xiàn)有系統(tǒng)和其他系統(tǒng)之間的接口情況,這是設(shè)計(jì)新系統(tǒng)時(shí)的重要約束條件。3.導(dǎo)出新系統(tǒng)的高層邏輯模型優(yōu)秀的設(shè)計(jì)過程通??偸菑默F(xiàn)有的物理系統(tǒng)出發(fā),導(dǎo)出現(xiàn)有系統(tǒng)的邏輯模型,再參考現(xiàn)有系統(tǒng)的邏輯模型,設(shè)想目標(biāo)系統(tǒng)的邏輯模型,最后根據(jù)目標(biāo)系統(tǒng)的邏輯模型建造新的物理系統(tǒng)。通過前一步的工作,分析員對(duì)目標(biāo)系統(tǒng)應(yīng)該具有的根本功能和所受的約束已有一定了解,能夠使用數(shù)據(jù)流圖(參看2.4節(jié)),描繪數(shù)據(jù)在系統(tǒng)中流動(dòng)和處理的情況,從而概括地表達(dá)出他對(duì)新系統(tǒng)的設(shè)想。通常為了把新系統(tǒng)描繪得更清晰準(zhǔn)確,還應(yīng)該有一個(gè)初步的數(shù)據(jù)字典(參看2.5節(jié)),定義系統(tǒng)中使用的數(shù)據(jù)。數(shù)據(jù)流圖和數(shù)據(jù)字典共同定義了新系統(tǒng)的邏輯模型,以后可以從這個(gè)邏輯模型出發(fā)設(shè)計(jì)新系統(tǒng)。4.進(jìn)一步定義問題新系統(tǒng)的邏輯模型實(shí)質(zhì)上表達(dá)了分析員對(duì)新系統(tǒng)必須做什么的看法。分析員應(yīng)該和用戶一起再次復(fù)查問題定義、工程規(guī)模和目標(biāo),這次復(fù)查應(yīng)該把數(shù)據(jù)流圖和數(shù)據(jù)字典作為討論的根底。如果分析員對(duì)問題有誤解或者用戶曾經(jīng)遺漏了某些要求,那么現(xiàn)在是發(fā)現(xiàn)和改正這些錯(cuò)誤的時(shí)候了。可行性研究的前4個(gè)步驟實(shí)質(zhì)上構(gòu)成一個(gè)循環(huán)。分析員定義問題,分析這個(gè)問題,導(dǎo)出一個(gè)試探性的解;在此根底上再次定義問題,再一次分析這個(gè)問題,修改這個(gè)解;繼續(xù)這個(gè)循環(huán)過程,直到提出的邏輯模型完全符合系統(tǒng)目標(biāo)。6.推薦行動(dòng)方針根據(jù)可行性研究結(jié)果應(yīng)該做出的一個(gè)關(guān)鍵性決定是,是否繼續(xù)進(jìn)行這項(xiàng)開發(fā)工程。分析員必須清楚地說明他對(duì)這個(gè)關(guān)鍵性決定的建議。如果分析員認(rèn)為值得繼續(xù)進(jìn)行這項(xiàng)開發(fā)工程,那么他應(yīng)該選擇一種最好的解法,并且說明選擇這個(gè)解決方案的理由。通常使用部門的負(fù)責(zé)人主要根據(jù)經(jīng)濟(jì)上是否劃算決定是否投資于一項(xiàng)開發(fā)工程,因此分析員對(duì)于所推薦的系統(tǒng)必須進(jìn)行比較仔細(xì)的本錢/效益分析。7.草擬開發(fā)方案分析員應(yīng)該為所推薦的方案草擬一份開發(fā)方案,除了制定工程進(jìn)度表之外還應(yīng)該估計(jì)對(duì)各類開發(fā)人員和各種資源的需要情況,應(yīng)該指明什么時(shí)候使用以及使用多長時(shí)間。此外還應(yīng)該估計(jì)系統(tǒng)生命周期每個(gè)階段的本錢。最后應(yīng)該給出下一個(gè)階段(需求分析)的詳細(xì)進(jìn)度表和本錢估計(jì)。8.書寫文檔提交審查應(yīng)該把上述可行性研究各個(gè)步驟的工作結(jié)果寫成清晰的文檔,請(qǐng)用戶、客戶組織的負(fù)責(zé)人及評(píng)審組審查,以決定是否繼續(xù)這項(xiàng)工程及是否接受分析員推薦的方案。系統(tǒng)流程圖是概括地描繪物理系統(tǒng)的傳統(tǒng)工具。它的根本思想是用圖形符號(hào)以黑盒子形式描繪組成系統(tǒng)的每個(gè)部件(程序,文檔,數(shù)據(jù)庫,人工過程等)。系統(tǒng)流程圖表達(dá)的是數(shù)據(jù)在系統(tǒng)各部件之間流動(dòng)的情況,而不是對(duì)數(shù)據(jù)進(jìn)行加工處理的控制過程,因此盡管系統(tǒng)流程圖的某些符號(hào)和程序流程圖的符號(hào)形式相同,但是它卻是物理數(shù)據(jù)流圖而不是程序流程圖。2.3系統(tǒng)流程圖當(dāng)以概括的方式抽象地描繪一個(gè)實(shí)際系統(tǒng)時(shí),僅僅使用圖2.1中列出的根本符號(hào)就足夠了。當(dāng)需要更具體地描繪一個(gè)物理系統(tǒng)時(shí)還需要使用圖2.2〔見書29頁〕中列出的系統(tǒng)符號(hào),利用這些符號(hào)可以把一個(gè)廣義的輸入輸出操作具體化為讀寫存儲(chǔ)在特殊設(shè)備上的文件〔或數(shù)據(jù)庫〕,把抽象處理具體化為特定的程序或手工操作等。2.3.1符號(hào)圖2.1根本符號(hào)介紹系統(tǒng)流程圖的最好方法可能是通過一個(gè)具體例子說明它的用法。下面是一個(gè)簡單的例子。某裝配廠有一座存放零件的倉庫,倉庫中現(xiàn)有的各種零件的數(shù)量以及每種零件的庫存量臨界值等數(shù)據(jù)記錄在庫存清單主文件中。當(dāng)倉庫中零件數(shù)量有變化時(shí),應(yīng)該及時(shí)修改庫存清單主文件,如果哪種零件的庫存量少于它的庫存量臨界值,那么應(yīng)該報(bào)告給采購部門以便定貨,規(guī)定每天向采購部門送一次定貨報(bào)告。2.3.2例子

該裝配廠使用一臺(tái)小型計(jì)算機(jī)處理更新庫存清單主文件和產(chǎn)生定貨報(bào)告的任務(wù)。零件庫存量的每一次變化稱為一個(gè)事務(wù),由放在倉庫中的CRT終端輸入到計(jì)算機(jī)中;系統(tǒng)中的庫存清單程序?qū)κ聞?wù)進(jìn)行處理,更新存儲(chǔ)在磁盤上的庫存清單主文件,并且把必要的定貨信息寫在磁帶上。最后,每天由報(bào)告生成程序讀一次磁帶,并且打印出定貨報(bào)告。圖2.3的系統(tǒng)流程圖描繪了上述系統(tǒng)的概貌。圖中每個(gè)符號(hào)用黑盒子形式定義了組成系統(tǒng)的一個(gè)部件,然而并沒有指明每個(gè)部件的具體工作過程;圖中的箭頭確定了信息通過系統(tǒng)的邏輯路徑。系統(tǒng)流程圖的習(xí)慣畫法是使信息在圖中從頂向下或從左向右流動(dòng)。圖2.3庫存清單系統(tǒng)的系統(tǒng)流程圖面對(duì)復(fù)雜的系統(tǒng)時(shí),一個(gè)比較好的方法是分層次地描繪這個(gè)系統(tǒng)。首先用一張高層次的系統(tǒng)流程圖描繪系統(tǒng)總體概貌,說明系統(tǒng)的關(guān)鍵功能。然后分別把每個(gè)關(guān)鍵功能擴(kuò)展到適當(dāng)?shù)脑敿?xì)程度,畫在單獨(dú)的一頁紙上。這種分層次的描繪方法便于閱讀者按從抽象到具體的過程逐步深入地了解一個(gè)復(fù)雜的系統(tǒng)。2.3.3分層2.4數(shù)據(jù)流圖數(shù)據(jù)流圖(DataFlowDiagram簡稱DFD)是結(jié)構(gòu)化分析的一種主要工具,是軟件系統(tǒng)開發(fā)的主要工具,是組織中信息運(yùn)動(dòng)的抽象,是系統(tǒng)邏輯模型的主要形式。它使用一組簡單的符號(hào),描述系統(tǒng)的數(shù)據(jù)由外部“流入〞系統(tǒng),經(jīng)過多級(jí)的加工處理,經(jīng)過不同結(jié)構(gòu)的存儲(chǔ),最后以用戶所需要的各種形式“流出〞的全過程。它是面向功能的。①①DFD是結(jié)構(gòu)化分析工具、是系統(tǒng)開發(fā)的重要工具、是組織中信息運(yùn)動(dòng)的抽象、是系統(tǒng)邏輯模型的重要形式。②DFD是系統(tǒng)設(shè)計(jì)的主要依據(jù)。③采用自頂向下、逐層分解、先整體后局部的思想〔結(jié)構(gòu)化思想〕進(jìn)行設(shè)計(jì)。具體分為:頂層圖:反映系統(tǒng)總的處理功能及系統(tǒng)的外部環(huán)境〔外部實(shí)體、數(shù)據(jù)流〕。一級(jí)細(xì)化圖(第一層):對(duì)頂層圖功能的分解與細(xì)化。二級(jí)細(xì)化圖(第二層):對(duì)一級(jí)細(xì)化圖每個(gè)處理功能的進(jìn)一步分解細(xì)化。④

上層圖的概括與抽象程度高,而下層圖的細(xì)化程度高。⑤細(xì)化原那么:細(xì)化不是無止境的,以功能單一為止。1.?dāng)?shù)據(jù)流圖說明2.?dāng)?shù)據(jù)流圖符號(hào)

外部實(shí)體:系統(tǒng)之外向系統(tǒng)提供原始數(shù)據(jù)的實(shí)體及接受系統(tǒng)結(jié)果數(shù)據(jù)的實(shí)體。Rm①實(shí)體可以是人或機(jī)構(gòu)。②DFD中的實(shí)體與業(yè)務(wù)流程圖中的實(shí)體不是一一對(duì)應(yīng)的,業(yè)務(wù)流程圖中進(jìn)行系統(tǒng)內(nèi)部處理的實(shí)體在DFD中不屬于外部實(shí)體。③有些查詢信息的接收者較多,可用“有關(guān)人員〞來表示外部實(shí)體。④有些輸入或輸出的數(shù)據(jù)流涉及多個(gè)外部實(shí)體,可用概括的名稱來表示。如:“基層單位〞、“各車間〞等。說明:PmC處理:計(jì)算機(jī)對(duì)數(shù)據(jù)的加工處理。

說明:①

處理的名稱用動(dòng)賓結(jié)構(gòu)。②分解、細(xì)化的過程中要注意代碼的對(duì)應(yīng)反映出在處理DFD中的層次關(guān)系。如:P;P1,P2…;P1.1,P1.2…;P2.1,P2.2…DnS數(shù)據(jù)存儲(chǔ):保存數(shù)據(jù)的數(shù)據(jù)庫文件。說明:①DFD中的存儲(chǔ)是數(shù)據(jù)庫設(shè)計(jì)的根底。②數(shù)據(jù)存儲(chǔ)也可以細(xì)分,分解后的數(shù)據(jù)存儲(chǔ)代碼要反映出其層次關(guān)系。Dn→Dn1,Dn2,Dn3……③數(shù)據(jù)存儲(chǔ)的名稱是唯一的,是名詞或名詞詞組。數(shù)據(jù)流:系統(tǒng)輸入與輸出的數(shù)據(jù)。

說明:①數(shù)據(jù)流的名稱應(yīng)與業(yè)務(wù)中的各種票據(jù)、報(bào)表相對(duì)應(yīng),其名稱應(yīng)是唯一的。②對(duì)于流入或流出存儲(chǔ)的數(shù)據(jù)流,當(dāng)其名稱與存儲(chǔ)名稱相同時(shí)可以省略其名稱及代碼。③在頂層DFD圖中已經(jīng)給出了數(shù)據(jù)流的名稱及代碼時(shí),在其細(xì)化的圖中可以不再標(biāo)明其名稱而只標(biāo)代碼即可。④數(shù)據(jù)流也可以細(xì)化。Fm(Fn)〔1〕按照自頂向下逐層分解的思想,將系統(tǒng)的功能逐步分解成功能獨(dú)立的處理。一個(gè)處理分解后的圖稱其為該處理的子圖,子圖與父圖必須保持輸入與輸出的一致。〔2〕同一級(jí)細(xì)化圖的各子圖可以通過公共的存儲(chǔ)聯(lián)系起來組成該級(jí)完整的細(xì)化圖?!?〕為減少數(shù)據(jù)流線的交叉,允許同一存儲(chǔ)或?qū)嶓w在同一個(gè)圖中重復(fù)畫出?!?〕處理與處理是通過存儲(chǔ)聯(lián)系的,不能直接用數(shù)據(jù)流線連結(jié)。3.?dāng)?shù)據(jù)流圖設(shè)計(jì)規(guī)那么〔5〕存儲(chǔ)的輸入來源或輸出去向不能是外部實(shí)體,只能是處理。〔6〕同一數(shù)據(jù)流不允許在同一級(jí)圖中重復(fù)出現(xiàn),數(shù)據(jù)不允許重復(fù)錄入?!?〕處理中的非正常的錯(cuò)誤情況處理,在DFD中不予表示,在DFD中,輸入的數(shù)據(jù)就應(yīng)該是正確的?!?〕數(shù)據(jù)處理對(duì)一個(gè)數(shù)據(jù)存儲(chǔ)中的數(shù)據(jù)即讀又寫時(shí),那么數(shù)據(jù)流應(yīng)用雙向箭頭?!?〕輸入的查詢條件及對(duì)話信息,不應(yīng)作為數(shù)據(jù)流出現(xiàn)在DFD中。3.?dāng)?shù)據(jù)流程圖設(shè)計(jì)規(guī)則3.?dāng)?shù)據(jù)流程圖設(shè)計(jì)規(guī)則〔10〕一個(gè)處理必須有輸入與輸出?!?1〕簡化DFD畫圖的規(guī)那么:a.各圖形元素的名稱,只要上一級(jí)中已經(jīng)給出,在其后面的圖中就可以省略而只用其代碼即可。b.流入或流出存儲(chǔ)的數(shù)據(jù)流不必為之命名和確定代碼。c.外部實(shí)體在頂層圖中給出后,在其后的各圖中均可省略?!?〕子圖與父圖的輸入、輸出必需保持一致的原那么。D1XP1.1A子圖P1.2P1XA父圖4.?dāng)?shù)據(jù)流圖設(shè)計(jì)規(guī)那么說明4.?dāng)?shù)據(jù)流程圖設(shè)計(jì)規(guī)則說明〔2〕各子圖可通過公共的存儲(chǔ)聯(lián)系起來。P3的細(xì)化DFDP3.2P3.1P2.1P2.2BP2的細(xì)化DFDD1D2D2D3Y4.?dāng)?shù)據(jù)流程圖設(shè)計(jì)規(guī)則說明〔3〕存儲(chǔ)的輸入來源與輸出去向不能是外部實(shí)體,而只能是處理。F1RD1錯(cuò)誤的輸入F8D1R錯(cuò)誤的輸出4.?dāng)?shù)據(jù)流程圖設(shè)計(jì)規(guī)則說明〔4〕非正常的錯(cuò)誤情況處理,在DFD中不予表示。P2.1F1D1R正確的F1不正確的F1錯(cuò)誤的數(shù)據(jù)流表示校核F1〔5〕處理與處理是通過存儲(chǔ)聯(lián)系的,不能直接用數(shù)據(jù)流線連結(jié)。4.?dāng)?shù)據(jù)流程圖設(shè)計(jì)規(guī)則說明(6)任何一個(gè)處理至少應(yīng)有一個(gè)輸入的數(shù)據(jù)流和一個(gè)輸出的數(shù)據(jù)流。4.?dāng)?shù)據(jù)流程圖設(shè)計(jì)規(guī)則說明〔7〕同一個(gè)數(shù)據(jù)流在同一個(gè)圖中不能重復(fù)出現(xiàn)。4.?dāng)?shù)據(jù)流程圖設(shè)計(jì)規(guī)則說明P2.1P2.2D1D2F1F1〔1〕明確用戶需求及業(yè)務(wù)處理詳細(xì)過程與方法;〔2〕明確系統(tǒng)的界限;〔3〕做好數(shù)據(jù)庫的概念設(shè)計(jì);〔4〕考慮網(wǎng)絡(luò)環(huán)境下各子系統(tǒng)的數(shù)據(jù)共享問題;〔5〕設(shè)計(jì)頂層圖;〔6〕設(shè)計(jì)一級(jí)細(xì)化DFD;〔7〕設(shè)計(jì)二級(jí)細(xì)化DFD;〔8〕設(shè)計(jì)三級(jí)及三級(jí)以下的細(xì)化DFD。5.?dāng)?shù)據(jù)流圖設(shè)計(jì)步驟〔1〕功能分解。根據(jù)處理業(yè)務(wù)而逐步細(xì)化,就是將一個(gè)整體業(yè)務(wù),先分成幾個(gè)局部,再進(jìn)一步將每個(gè)局部分解成小的局部,……。在實(shí)際設(shè)計(jì)中,高層按功能分解,低層按輸入、處理、輸出三局部分解。〔2〕寬度與深度的考慮。在分解功能時(shí),既不能過細(xì),也不應(yīng)過粗,一般一個(gè)處理分解后的處理個(gè)數(shù)應(yīng)在3—7之間為宜。寬度大那么深度小,寬度小那么深度大,設(shè)計(jì)時(shí)應(yīng)很好地權(quán)衡這兩方面?!?〕細(xì)化不是越細(xì)越好,原那么是數(shù)據(jù)處理具有單一功能。6.DFD設(shè)計(jì)考慮的幾個(gè)問題方案1:按業(yè)務(wù)處理功能分解

(1)學(xué)生成績管理頂層DFD教師P成績管理各院系重修通知F5留級(jí)通知F6成績單F1處長成績統(tǒng)計(jì)表F77.學(xué)生成績管理DFD設(shè)計(jì)舉例(2)學(xué)生成績管理一級(jí)細(xì)化DFD成績輸入重修處理成績統(tǒng)計(jì)留級(jí)處理D2

重修名單F1F5F6F7D1

成績薄P2P3P4P1(3)學(xué)生成績管理二級(jí)細(xì)化DFD確定重修名單打印重修通知D1F5D2P2的細(xì)化DFDP2.2P2.1D3留級(jí)名單F6確定留級(jí)名單打印留級(jí)通知D2P3的細(xì)化DFDP3.2P3.1統(tǒng)計(jì)計(jì)算打印成績統(tǒng)計(jì)表D1D4成績統(tǒng)計(jì)表F7

P4的細(xì)化DFDP4.2P4.1方案2:按“輸入、處理、輸出〞的方法分解(1)學(xué)生成績管理頂層DFD教師P成績管理各院系重修通知F5留級(jí)通知F6成績單F1處長成績統(tǒng)計(jì)表F7(2)學(xué)生成績管理一級(jí)細(xì)化DFDP1成績單輸入P2成績處理P3報(bào)表打印F1F6F5F7D4成績統(tǒng)計(jì)表D3留級(jí)名單D2

重修名單D1

成績薄(3)學(xué)生成績管理二級(jí)細(xì)化DFDD1P2.3D4成績統(tǒng)計(jì)D1P2.1D2P2.2D3確定重修名單確定留級(jí)名單F6P3.2打印留級(jí)通知D3F7P3.3打印成績統(tǒng)計(jì)表D4F5P3.1D2打印重修通知2.5數(shù)據(jù)字典數(shù)據(jù)字典是數(shù)據(jù)流程圖中所有元素的定義和說明的集合。這些元素是:⒈數(shù)據(jù)項(xiàng)數(shù)據(jù)項(xiàng)又稱數(shù)據(jù)元素,是系統(tǒng)中不可再分解的數(shù)據(jù)單元,是系統(tǒng)處理的根本數(shù)據(jù)單元,是數(shù)據(jù)流、數(shù)據(jù)存儲(chǔ)的根本組成元素。在數(shù)據(jù)字典中,數(shù)據(jù)項(xiàng)條目包括數(shù)據(jù)項(xiàng)名稱、別名、類型、長度和值域等屬性。⒉數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)用于描述某些數(shù)據(jù)項(xiàng)之間的關(guān)系。一個(gè)數(shù)據(jù)結(jié)構(gòu)可以由假設(shè)干個(gè)數(shù)據(jù)項(xiàng)組成,也可以由假設(shè)干個(gè)數(shù)據(jù)結(jié)構(gòu)組成,還可以由假設(shè)干個(gè)數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu)組成。數(shù)據(jù)字典中,數(shù)據(jù)結(jié)構(gòu)條目包括數(shù)據(jù)結(jié)構(gòu)的名稱、編號(hào)、簡單描述及其組成等。⒊數(shù)據(jù)流數(shù)據(jù)流描述數(shù)據(jù)項(xiàng)或數(shù)據(jù)結(jié)構(gòu)在系統(tǒng)中的傳輸路徑。數(shù)據(jù)流條目包括數(shù)據(jù)流來源、去向、組成和流量等屬性。⒋數(shù)據(jù)存儲(chǔ)數(shù)據(jù)存儲(chǔ)指數(shù)據(jù)暫存或永久保存的地方。數(shù)據(jù)存儲(chǔ)條目包括:名稱、編號(hào)、流入/流出的數(shù)據(jù)流、組成、存取分析和關(guān)鍵字說明等。⒌處理邏輯處理邏輯條目是對(duì)數(shù)據(jù)流程圖中最底層的處理邏輯加以說明。處理邏輯條目包括:在數(shù)據(jù)流程圖中的名稱、編號(hào)、對(duì)處理過程的簡單描述、處理過程的輸入/輸出、數(shù)據(jù)流及其來源和去向、主要功能的描述等。⒍外部實(shí)體外部實(shí)體是信息系統(tǒng)數(shù)據(jù)的來源與去向。外部實(shí)體條目包括:實(shí)體名稱、對(duì)實(shí)體的簡單描述和有關(guān)的數(shù)據(jù)流等。數(shù)據(jù)字典的建立有兩種方式,即可以由手工方式生成,也可以由計(jì)算機(jī)方式生成。手工方式是將各類條目按要求寫在卡片上或者寫在紙上,并分類建立一覽表。計(jì)算機(jī)方式是在手工方式的根底上,將各條目整理、存儲(chǔ)在計(jì)算機(jī)中,由軟件進(jìn)行管理。

編號(hào):唯一標(biāo)識(shí),DFD中的數(shù)據(jù)流代碼。來源:外部實(shí)體、處理。去向:處理、外部實(shí)體。數(shù)據(jù)結(jié)構(gòu):構(gòu)成它的數(shù)據(jù)項(xiàng)。數(shù)據(jù)流卡名稱:成績單編號(hào):F1來源:外部實(shí)體“教師〞去向:處理“成績輸入”(P1)數(shù)據(jù)結(jié)構(gòu):課名、課號(hào)、姓名、學(xué)號(hào)、成績、學(xué)期說明:注意①所定義的數(shù)據(jù)流是TOP圖中所給出的數(shù)據(jù)流;②數(shù)據(jù)流的“來源〞、“去向〞以最底層的DFD來決定。數(shù)據(jù)流條目的內(nèi)容與格式數(shù)據(jù)流條目的內(nèi)容與格式數(shù)據(jù)存儲(chǔ)條目的內(nèi)容與格式

編號(hào):唯一標(biāo)識(shí)=DFD中的存儲(chǔ)代碼。相關(guān)處理:說明進(jìn)行讀寫操作的哪些作。說明:數(shù)據(jù)結(jié)構(gòu):

數(shù)據(jù)存儲(chǔ)卡名稱:成績簿編號(hào):D1相關(guān)處理:由處理P1寫入,讀取其數(shù)據(jù)的處理有P2.1、P4.1。注意

①它所定義的存儲(chǔ)與DFD中的存儲(chǔ)的名稱和代碼必須一致。②它所定義的存儲(chǔ)對(duì)應(yīng)DFD中最底層的存儲(chǔ)。編號(hào):等于處理的代碼,唯一標(biāo)識(shí)。輸入:數(shù)據(jù)流、存儲(chǔ)。處理:實(shí)際處理業(yè)務(wù)的描述。如:計(jì)算方法、公式、分析、比較、加工等。輸出:數(shù)據(jù)流、存儲(chǔ)。

數(shù)據(jù)處理卡名稱:成績輸入編號(hào):P1

輸入:數(shù)據(jù)流“成績單”輸出:數(shù)據(jù)存儲(chǔ)“成績簿”處理:將數(shù)據(jù)流“成績單”中的數(shù)據(jù)通過鍵盤輸入,經(jīng)過數(shù)據(jù)校驗(yàn),確認(rèn)后存儲(chǔ)到數(shù)據(jù)存儲(chǔ)“成績簿”中。說明:注意只定義最底層的數(shù)據(jù)處理。

數(shù)據(jù)處理?xiàng)l目的內(nèi)容與格式數(shù)據(jù)元素卡

名稱:姓名

別名:

編號(hào):I001

所屬數(shù)據(jù)流:F1、F5、F6

所屬存儲(chǔ):D1、D2、D3

類型:字符

位數(shù):8取值范圍:漢字

說明:

數(shù)據(jù)元素條目的內(nèi)容與格式編號(hào):順序號(hào)。名稱、別名:意義相同,名稱不同的情況。取值范圍:對(duì)數(shù)據(jù)校驗(yàn)有用。相關(guān)數(shù)據(jù)流、相關(guān)存儲(chǔ):用于DFD中的數(shù)據(jù)流和存儲(chǔ)。開發(fā)一個(gè)軟件系統(tǒng)是一種投資,期望將來獲得更大的經(jīng)濟(jì)效益。經(jīng)濟(jì)效益通常表現(xiàn)為減少運(yùn)行費(fèi)用或(和)增加收入。但是,投資開發(fā)新系統(tǒng)往往要冒一定風(fēng)險(xiǎn),系統(tǒng)的開發(fā)本錢可能比預(yù)計(jì)的高,效益可能比預(yù)期的低。效益分析的目的正是要從經(jīng)濟(jì)角度分析開發(fā)一個(gè)特定的新系統(tǒng)是否劃算,從而幫助客戶組織的負(fù)責(zé)人正確地作出是否投資于這項(xiàng)開發(fā)工程的決定。為了比照本錢和效益,首先需要估計(jì)它們的數(shù)量。2.6本錢/效益分析2.6.1本錢估計(jì)本錢/效益分析的第一步是估計(jì)開發(fā)本錢、運(yùn)行費(fèi)用和新系統(tǒng)將帶來的經(jīng)濟(jì)效益。運(yùn)行費(fèi)用取決于系統(tǒng)的操作費(fèi)用(操作員人數(shù),工作時(shí)間,消耗的物資等等)和維護(hù)費(fèi)用。系統(tǒng)的經(jīng)濟(jì)效益等于因使用新系統(tǒng)而增加的收入加上使用新系統(tǒng)可以節(jié)省的運(yùn)行費(fèi)用。因?yàn)檫\(yùn)行費(fèi)用和經(jīng)濟(jì)效益兩者在軟件的整個(gè)生命周期內(nèi)都存在,總的效益和生命周期的長度有關(guān),所以應(yīng)該合理地估計(jì)軟件的壽命。2.6.2本錢/效益分析的方法雖然許多系統(tǒng)在開發(fā)時(shí)預(yù)期生命周期長達(dá)10年以上,但是時(shí)間越長系統(tǒng)被廢棄的可能性也越大,為了保險(xiǎn)起見,以后在進(jìn)行本錢/效益分析時(shí)一律假設(shè)生命周期為5年。應(yīng)該比較新系統(tǒng)的開發(fā)本錢和經(jīng)濟(jì)效益,以便從經(jīng)濟(jì)角度判斷這個(gè)系統(tǒng)是否值得投資,但是,投資是現(xiàn)在進(jìn)行的,效益是將來獲得的,不能簡單地比較本錢和效益,應(yīng)該考慮貨幣的時(shí)間價(jià)值。1.貨幣的時(shí)間價(jià)值通常用利率的形式表示貨幣的時(shí)間價(jià)值。假設(shè)年利率為i,如果現(xiàn)在存入P元,那么n年后可以得到的錢數(shù)為:F=P(1+i)n這也就是P元錢在n年后的價(jià)值。反之,如果n年后能收入F元錢,那么這些錢的現(xiàn)在價(jià)值是:P=F/(1+i)n例如,修改一個(gè)已有的庫存清單系統(tǒng),使它能在每天送給采購員一份定貨報(bào)表。修改已有的庫存清單程序并且編寫產(chǎn)生報(bào)表的程序,估計(jì)共需5000元;系統(tǒng)修改后能及時(shí)定貨將消除零件短缺問題,估計(jì)因此每年可以節(jié)省2500元,5年共可節(jié)省12500元。但是,不能簡單地把5000元和12500元相比較,因?yàn)榍罢呤乾F(xiàn)在投資的錢,后者是假設(shè)干年以后節(jié)省的錢。假定年利率為12%,利用上面計(jì)算貨幣現(xiàn)在價(jià)值的公式可以算出修改庫存清單系統(tǒng)后每年預(yù)計(jì)節(jié)省的錢的現(xiàn)在價(jià)值,如表2.3〔見書41頁〕所示。2.投資回收期通常用投資回收期衡量一項(xiàng)開發(fā)工程的價(jià)值。所謂投資回收期就是使累計(jì)的經(jīng)濟(jì)效益等于最初投資所需要的時(shí)間。顯然,投資回收期越短就能越快獲得利潤,因此這項(xiàng)工程也就越值得投資。投資回收期僅僅是一項(xiàng)經(jīng)濟(jì)指標(biāo),為了衡量一項(xiàng)開發(fā)工程的價(jià)值,還應(yīng)該考慮其他經(jīng)濟(jì)指標(biāo)。3.純收入衡量工程價(jià)值的另一項(xiàng)經(jīng)濟(jì)指標(biāo)是工程的純收入,也就是在整個(gè)生命周期之內(nèi)系統(tǒng)的累計(jì)經(jīng)濟(jì)效益(折合成現(xiàn)在值)與投資之差。這相當(dāng)于比較投資開發(fā)一個(gè)軟件系統(tǒng)和把錢存在銀行中(或貸給其他企業(yè))這兩種方案的優(yōu)劣。如果純收入為零,那么工程的預(yù)期效益和在銀行存款一樣,但是開發(fā)一個(gè)系統(tǒng)要冒風(fēng)險(xiǎn),因此從經(jīng)濟(jì)觀點(diǎn)看這項(xiàng)工程可能是不值得投資的。如果純收入小于零,那么這項(xiàng)工程顯然不值得投資。4.投資回收率把資金存入銀行或貸給其他企業(yè)能夠獲得利息,通常用年利率衡量利息多少。類似地也可以計(jì)算投資回收率,用它衡量投資效益的大小,并且可以把它和年利率相比較,在衡量工程的經(jīng)濟(jì)效益時(shí),它是最重要的參考數(shù)據(jù)。現(xiàn)在的投資額,并且已經(jīng)估計(jì)出將來每年可以獲得的經(jīng)濟(jì)效益,那么,給定軟件的使用壽命之后,怎樣計(jì)算投資回收率呢?設(shè)想把數(shù)量等于投資額的資金存入銀行,每年年底從銀行取回的錢等于系統(tǒng)每年預(yù)期可以獲得的效益,在時(shí)間等于系統(tǒng)壽命時(shí),正好把在銀行中的存款全部取光,那么,年利率等于多少呢?這個(gè)假想的年利率就等于投資回收率。2.7小結(jié)在表達(dá)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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)論