版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
可行性研究2.1可行性研究的任務(wù)2.2可行性研究過(guò)程2.3系統(tǒng)流程圖2.4數(shù)據(jù)流圖2.5數(shù)據(jù)字典2.6成本/效益分析2.7小結(jié)習(xí)題可行性研究的目的不是解決問(wèn)題,而是確定問(wèn)題是否值得去解決。怎樣達(dá)到這個(gè)目的呢?當(dāng)然不能靠主觀猜想而只能靠客觀分析。必須分析幾種主要的可能解法的利弊,從而判斷原定的系統(tǒng)規(guī)模和目標(biāo)是否現(xiàn)實(shí),系統(tǒng)完成后所能帶來(lái)的效益是否大到值得投資開(kāi)發(fā)這個(gè)系統(tǒng)的程度。因此,可行性研究實(shí)質(zhì)上是要進(jìn)行一次大大壓縮簡(jiǎn)化了的系統(tǒng)分析和設(shè)計(jì)的過(guò)程,也就是在較高層次上以較抽象的方式進(jìn)行的系統(tǒng)分析和設(shè)計(jì)的過(guò)程。2.1可行性研究的任務(wù)首先需要進(jìn)一步分析和澄清問(wèn)題定義。在問(wèn)題定義階段初步確定的規(guī)模和目標(biāo),如果是正確的就進(jìn)一步加以肯定,如果有錯(cuò)誤就應(yīng)該及時(shí)改正,如果對(duì)目標(biāo)系統(tǒng)有任何約束和限制,也必須把它們清楚地列舉出來(lái)。在澄清了問(wèn)題定義之后,分析員應(yīng)該導(dǎo)出系統(tǒng)的邏輯模型。然后從系統(tǒng)邏輯模型出發(fā),探索若干種可供選擇的主要解法(即系統(tǒng)實(shí)現(xiàn)方案)。對(duì)每種解法都應(yīng)該仔細(xì)研究它的可行性,一般說(shuō)來(lái),至少應(yīng)該從下述三方面研究每種解法的可行性:(1)技術(shù)可行性使用現(xiàn)有的技術(shù)能實(shí)現(xiàn)這個(gè)系統(tǒng)嗎?(2)經(jīng)濟(jì)可行性這個(gè)系統(tǒng)的經(jīng)濟(jì)效益能超過(guò)它的開(kāi)發(fā)成本嗎?(3)操作可行性系統(tǒng)的操作方式在這個(gè)用戶(hù)組織內(nèi)行得通嗎?必要時(shí)還應(yīng)該從法律、社會(huì)效益等更廣泛的方面研究每種解法的可行性。分析員應(yīng)該為每個(gè)可行的解法制定一個(gè)粗略的實(shí)現(xiàn)進(jìn)度。可行性研究最根本的任務(wù)是對(duì)以后的行動(dòng)方針提出建議。如果問(wèn)題沒(méi)有可行的解,分析員應(yīng)該建議停止這項(xiàng)開(kāi)發(fā)工程,以避免時(shí)間、資源、人力和金錢(qián)的浪費(fèi);如果問(wèn)題值得解,分析員應(yīng)該推薦一個(gè)較好的解決方案,并且為工程制定一個(gè)初步的計(jì)劃??尚行匝芯靠尚行匝芯啃枰臅r(shí)間長(zhǎng)短取決于工程的規(guī)模。一般說(shuō)來(lái),可行性研究的成本只是預(yù)期的工程總成本的5%~10%。典型的可行性研究過(guò)程有下述一些步驟。1.復(fù)查系統(tǒng)規(guī)模和目標(biāo)分析員訪問(wèn)關(guān)鍵人員,仔細(xì)閱讀和分析有關(guān)的材料,以便對(duì)問(wèn)題定義階段書(shū)寫(xiě)的關(guān)于規(guī)模和目標(biāo)的報(bào)告書(shū)進(jìn)一步復(fù)查確認(rèn),改正含糊或不確切的敘述,清晰地描述對(duì)目標(biāo)系統(tǒng)的一切限制和約束。這個(gè)步驟的工作,實(shí)質(zhì)上是為了確保分析員正在解決的問(wèn)題確實(shí)是要求他解決的問(wèn)題。2.2可行性研究過(guò)程2.研究目前正在使用的系統(tǒng)現(xiàn)有的系統(tǒng)是信息的重要來(lái)源。新的目標(biāo)系統(tǒng)必須也能完成它的基本功能;另一方面,如果現(xiàn)有的系統(tǒng)是完美無(wú)缺的,用戶(hù)自然不會(huì)提出開(kāi)發(fā)新系統(tǒng)的要求,因此,現(xiàn)有的系統(tǒng)必然有某些缺點(diǎn),新系統(tǒng)必須能解決舊系統(tǒng)中存在的問(wèn)題。此外,運(yùn)行使用舊系統(tǒng)所需要的費(fèi)用是一個(gè)重要的經(jīng)濟(jì)指標(biāo),如果新系統(tǒng)不能增加收入或減少使用費(fèi)用,那么從經(jīng)濟(jì)角度看新系統(tǒng)就不如舊系統(tǒng)。應(yīng)該仔細(xì)閱讀分析現(xiàn)有系統(tǒng)的文檔資料和使用手冊(cè),也要實(shí)地考察現(xiàn)有的系統(tǒng)。應(yīng)該注意了解這個(gè)系統(tǒng)可以做什么,為什么這樣做,還要了解使用這個(gè)系統(tǒng)的代價(jià)。在了解上述這些信息的時(shí)候顯然必須訪問(wèn)有關(guān)的人員。常見(jiàn)的錯(cuò)誤做法是花費(fèi)過(guò)多時(shí)間去分析現(xiàn)有的系統(tǒng)。這個(gè)步驟的目的是了解現(xiàn)有系統(tǒng)能做什么,而不是了解它怎樣做這些工作。分析員應(yīng)該畫(huà)出描繪現(xiàn)有系統(tǒng)的高層系統(tǒng)流程圖(見(jiàn)2.3節(jié)),并請(qǐng)有關(guān)人員檢驗(yàn)他對(duì)現(xiàn)有系統(tǒng)的認(rèn)識(shí)是否正確。千萬(wàn)不要花費(fèi)太多時(shí)間去了解和描繪現(xiàn)有系統(tǒng)的實(shí)現(xiàn)細(xì)節(jié)。沒(méi)有一個(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ì)過(guò)程通??偸菑默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)。通過(guò)前一步的的工作,分析析員對(duì)目標(biāo)系系統(tǒng)應(yīng)該具有有的基本功能能和所受的約約束已有一定定了解,能夠夠使用數(shù)據(jù)流流圖(參看2.4節(jié)),描繪數(shù)據(jù)在在系統(tǒng)中流動(dòng)動(dòng)和處理的情情況,從而概概括地表達(dá)出出他對(duì)新系統(tǒng)統(tǒng)的設(shè)想。通通常為了把新新系統(tǒng)描繪得得更清晰準(zhǔn)確確,還應(yīng)該有有一個(gè)初步的的數(shù)據(jù)字典(參看2.5節(jié)),定義系統(tǒng)中中使用的數(shù)據(jù)據(jù)。數(shù)據(jù)流圖圖和數(shù)據(jù)字典典共同定義了了新系統(tǒng)的邏邏輯模型,以以后可以從這這個(gè)邏輯模型型出發(fā)設(shè)計(jì)新新系統(tǒng)。4.進(jìn)一步定義問(wèn)問(wèn)題新系統(tǒng)的邏輯輯模型實(shí)質(zhì)上上表達(dá)了分析析員對(duì)新系統(tǒng)統(tǒng)必須做什么么的看法。分分析員應(yīng)該和和用戶(hù)一起再再次復(fù)查問(wèn)題題定義、工程程規(guī)模和目標(biāo)標(biāo),這次復(fù)查查應(yīng)該把數(shù)據(jù)據(jù)流圖和數(shù)據(jù)據(jù)字典作為討討論的基礎(chǔ)。。如果分析員員對(duì)問(wèn)題有誤誤解或者用戶(hù)戶(hù)曾經(jīng)遺漏了了某些要求,,那么現(xiàn)在是是發(fā)現(xiàn)和改正正這些錯(cuò)誤的的時(shí)候了??尚行匝芯康牡那?個(gè)步驟實(shí)質(zhì)上上構(gòu)成一個(gè)循循環(huán)。分析員員定義問(wèn)題,,分析這個(gè)問(wèn)問(wèn)題,導(dǎo)出一一個(gè)試探性的的解;在此基基礎(chǔ)上再次定定義問(wèn)題,再再一次分析這這個(gè)問(wèn)題,修修改這個(gè)解;;繼續(xù)這個(gè)循循環(huán)過(guò)程,直直到提出的邏邏輯模型完全全符合系統(tǒng)目目標(biāo)。5.導(dǎo)出和評(píng)價(jià)供供選擇的解法法分析員應(yīng)該從從他建議的系系統(tǒng)邏輯模型型出發(fā),導(dǎo)出出若干個(gè)較高高層次的(較抽象的)物理解法供比比較和選擇。。導(dǎo)出供選擇擇的解法的最最簡(jiǎn)單的途徑徑,是從技術(shù)術(shù)角度出發(fā)考考慮解決問(wèn)題題的不同方案案。還可以使使用組合的方方法導(dǎo)出若干干種可能的物物理系統(tǒng)。當(dāng)從技術(shù)角度度提出了一些些可能的物理理系統(tǒng)之后,,應(yīng)該根據(jù)技技術(shù)可行性的的考慮初步排排除一些不現(xiàn)現(xiàn)實(shí)的系統(tǒng)。。把技術(shù)上行行不通的解法法去掉之后,,就剩下了一一組技術(shù)上可可行的方案。。其次可以考慮慮操作方面的的可行性。分分析員應(yīng)該根根據(jù)使用部門(mén)門(mén)處理事務(wù)的的原則和習(xí)慣慣檢查技術(shù)上上可行的那些些方案,去掉掉其中從操作作方式或操作作過(guò)程的角度度看用戶(hù)不能能接受的方案案。接下來(lái)應(yīng)該考考慮經(jīng)濟(jì)方面面的可行性。。分析員應(yīng)該該估計(jì)余下的的每個(gè)可能的的系統(tǒng)的開(kāi)發(fā)發(fā)成本和運(yùn)行行費(fèi)用,并且且估計(jì)相對(duì)于于現(xiàn)有的系統(tǒng)統(tǒng)而言這個(gè)系系統(tǒng)可以節(jié)省省的開(kāi)支或可可以增加的收收入。在這些些估計(jì)數(shù)字的的基礎(chǔ)上,對(duì)對(duì)每個(gè)可能的的系統(tǒng)進(jìn)行成成本/效益分析(參看2.6節(jié))。一般說(shuō)來(lái),,只有投資預(yù)預(yù)計(jì)能帶來(lái)利利潤(rùn)的系統(tǒng)才才值得進(jìn)一步步考慮。最后為每個(gè)在在技術(shù)、操作作和經(jīng)濟(jì)等方方面都可行的的系統(tǒng)制定實(shí)實(shí)現(xiàn)進(jìn)度表,,這個(gè)進(jìn)度表表不需要(也不可能)制定得很詳細(xì)細(xì),通常只需需要估計(jì)生命命周期每個(gè)階階段的工作量量。6.推薦行動(dòng)方針針根據(jù)可行性研研究結(jié)果應(yīng)該該做出的一個(gè)個(gè)關(guān)鍵性決定定是,是否繼繼續(xù)進(jìn)行這項(xiàng)項(xiàng)開(kāi)發(fā)工程。。分析員必須須清楚地表明明他對(duì)這個(gè)關(guān)關(guān)鍵性決定的的建議。如果果分析員認(rèn)為為值得繼續(xù)進(jìn)進(jìn)行這項(xiàng)開(kāi)發(fā)發(fā)工程,那么么他應(yīng)該選擇擇一種最好的的解法,并且且說(shuō)明選擇這這個(gè)解決方案案的理由。通通常使用部門(mén)門(mén)的負(fù)責(zé)人主主要根據(jù)經(jīng)濟(jì)濟(jì)上是否劃算算決定是否投投資于一項(xiàng)開(kāi)開(kāi)發(fā)工程,因因此分析員對(duì)對(duì)于所推薦的的系統(tǒng)必須進(jìn)進(jìn)行比較仔細(xì)細(xì)的成本/效益分析。7.草擬開(kāi)發(fā)計(jì)劃劃分析員應(yīng)該為為所推薦的方方案草擬一份份開(kāi)發(fā)計(jì)劃,,除了制定工工程進(jìn)度表之之外還應(yīng)該估估計(jì)對(duì)各類(lèi)開(kāi)開(kāi)發(fā)人員和各各種資源的需需要情況,應(yīng)應(yīng)該指明什么么時(shí)候使用以以及使用多長(zhǎng)長(zhǎng)時(shí)間。此外外還應(yīng)該估計(jì)計(jì)系統(tǒng)生命周周期每個(gè)階段段的成本。最最后應(yīng)該給出出下一個(gè)階段段(需求分析)的詳細(xì)進(jìn)度表表和成本估計(jì)計(jì)。8.書(shū)寫(xiě)文檔提交交審查應(yīng)該把上述可可行性研究各各個(gè)步驟的工工作結(jié)果寫(xiě)成成清晰的文檔檔,請(qǐng)用戶(hù)、、客戶(hù)組織的的負(fù)責(zé)人及評(píng)評(píng)審組審查,,以決定是否否繼續(xù)這項(xiàng)工工程及是否接接受分析員推推薦的方案。。系統(tǒng)流程圖是是概括地描繪繪物理系統(tǒng)的的傳統(tǒng)工具。。它的基本思思想是用圖形形符號(hào)以黑盒盒子形式描繪繪組成系統(tǒng)的的每個(gè)部件(程序,文檔,,數(shù)據(jù)庫(kù),人人工過(guò)程等)。系統(tǒng)流程圖圖表達(dá)的是數(shù)數(shù)據(jù)在系統(tǒng)各各部件之間流流動(dòng)的情況,,而不是對(duì)數(shù)數(shù)據(jù)進(jìn)行加工工處理的控制制過(guò)程,因此此盡管系統(tǒng)流流程圖的某些些符號(hào)和程序序流程圖的符符號(hào)形式相同同,但是它卻卻是物理數(shù)據(jù)據(jù)流圖而不是是程序流程圖圖。2.3系統(tǒng)流程圖當(dāng)以概括的方方式抽象地描描繪一個(gè)實(shí)際際系統(tǒng)時(shí),僅僅僅使用圖2.1中列出的基本本符號(hào)就足夠夠了。當(dāng)需要更具體體地描繪一個(gè)個(gè)物理系統(tǒng)時(shí)時(shí)還需要使用用圖2.2(見(jiàn)書(shū)29頁(yè))中列出的的系統(tǒng)符號(hào),,利用這些符符號(hào)可以把一一個(gè)廣義的輸輸入輸出操作作具體化為讀讀寫(xiě)存儲(chǔ)在特特殊設(shè)備上的的文件(或數(shù)數(shù)據(jù)庫(kù)),把把抽象處理具具體化為特定定的程序或手手工操作等。。符號(hào)圖2.1基本符號(hào)介紹系統(tǒng)流程程圖的最好方方法可能是通通過(guò)一個(gè)具體體例子說(shuō)明它它的用法。下下面是一個(gè)簡(jiǎn)簡(jiǎn)單的例子。。某裝配廠有一一座存放零件件的倉(cāng)庫(kù),倉(cāng)倉(cāng)庫(kù)中現(xiàn)有的的各種零件的的數(shù)量以及每每種零件的庫(kù)庫(kù)存量臨界值值等數(shù)據(jù)記錄錄在庫(kù)存清單單主文件中。。當(dāng)倉(cāng)庫(kù)中零零件數(shù)量有變變化時(shí),應(yīng)該該及時(shí)修改庫(kù)庫(kù)存清單主文文件,如果哪哪種零件的庫(kù)庫(kù)存量少于它它的庫(kù)存量臨臨界值,則應(yīng)應(yīng)該報(bào)告給采采購(gòu)部門(mén)以便便定貨,規(guī)定定每天向采購(gòu)購(gòu)部門(mén)送一次次定貨報(bào)告。。例子該裝配廠使用用一臺(tái)小型計(jì)計(jì)算機(jī)處理更更新庫(kù)存清單單主文件和產(chǎn)產(chǎn)生定貨報(bào)告告的任務(wù)。零零件庫(kù)存量的的每一次變化化稱(chēng)為一個(gè)事事務(wù),由放在在倉(cāng)庫(kù)中的CRT終端輸入到計(jì)計(jì)算機(jī)中;系系統(tǒng)中的庫(kù)存存清單程序?qū)?duì)事務(wù)進(jìn)行處處理,更新存存儲(chǔ)在磁盤(pán)上上的庫(kù)存清單單主文件,并并且把必要的的定貨信息寫(xiě)寫(xiě)在磁帶上。。最后,每天天由報(bào)告生成成程序讀一次次磁帶,并且且打印出定貨貨報(bào)告。圖2.3的系統(tǒng)流程圖圖描繪了上述述系統(tǒng)的概貌貌。圖中每個(gè)符號(hào)號(hào)用黑盒子形形式定義了組組成系統(tǒng)的一一個(gè)部件,然然而并沒(méi)有指指明每個(gè)部件件的具體工作作過(guò)程;圖中中的箭頭確定定了信息通過(guò)過(guò)系統(tǒng)的邏輯輯路徑。系統(tǒng)流程圖圖的習(xí)慣畫(huà)畫(huà)法是使信信息在圖中中從頂向下下或從左向向右流動(dòng)。。圖2.3庫(kù)存清單系系統(tǒng)的系統(tǒng)統(tǒng)流程圖面對(duì)復(fù)雜的的系統(tǒng)時(shí),,一個(gè)比較較好的方法法是分層次次地描繪這這個(gè)系統(tǒng)。。首先用一一張高層次次的系統(tǒng)流流程圖描繪繪系統(tǒng)總體體概貌,表表明系統(tǒng)的的關(guān)鍵功能能。然后分分別把每個(gè)個(gè)關(guān)鍵功能能擴(kuò)展到適適當(dāng)?shù)脑敿?xì)細(xì)程度,畫(huà)畫(huà)在單獨(dú)的的一頁(yè)紙上上。這種分分層次的描描繪方法便便于閱讀者者按從抽象象到具體的的過(guò)程逐步步深入地了了解一個(gè)復(fù)復(fù)雜的系統(tǒng)統(tǒng)。分層數(shù)據(jù)流圖(DFD)是一種圖形形化技術(shù),,它描繪信信息流和數(shù)數(shù)據(jù)從輸入入移動(dòng)到輸輸出的過(guò)程程中所經(jīng)受受的變換。。在數(shù)據(jù)流流圖中沒(méi)有有任何具體體的物理部部件,它只只是描繪數(shù)數(shù)據(jù)在軟件件中流動(dòng)和和被處理的的邏輯過(guò)程程。數(shù)據(jù)流流圖是系統(tǒng)統(tǒng)邏輯功能能的圖形表表示,即使使不是專(zhuān)業(yè)業(yè)的計(jì)算機(jī)機(jī)技術(shù)人員員也容易理理解它,因因此是分析析員與用戶(hù)戶(hù)之間極好好的通信工工具。此外外,設(shè)計(jì)數(shù)數(shù)據(jù)流圖時(shí)時(shí)只需考慮慮系統(tǒng)必須須完成的基基本邏輯功功能,完全全不需要考考慮怎樣具具體地實(shí)現(xiàn)現(xiàn)這些功能能,所以它它也是今后后進(jìn)行軟件件設(shè)計(jì)的很很好的出發(fā)發(fā)點(diǎn)。2.4數(shù)據(jù)流圖如圖2.4(a)(見(jiàn)書(shū)31頁(yè))所示,,數(shù)據(jù)流圖圖有四種基基本符號(hào)::正方形(或立方體)表示數(shù)據(jù)的的源點(diǎn)或終終點(diǎn);圓角角矩形(或圓形)代表變換數(shù)數(shù)據(jù)的處理理;開(kāi)口矩矩形(或兩條平行行橫線)代表數(shù)據(jù)存存儲(chǔ);箭頭頭表示數(shù)據(jù)據(jù)流,即特特定數(shù)據(jù)的的流動(dòng)方向向。注意,,數(shù)據(jù)流與與程序流程程圖(參看本書(shū)第第5章)中用箭頭表表示的控制制流有本質(zhì)質(zhì)不同,千千萬(wàn)不要混混淆。在數(shù)數(shù)據(jù)流圖中中應(yīng)該描繪繪所有可能能的數(shù)據(jù)流流向,而不不應(yīng)該描繪繪出現(xiàn)某個(gè)個(gè)數(shù)據(jù)流的的條件。符號(hào)處理并不一一定是一個(gè)個(gè)程序。一一個(gè)處理框框可以代表表一系列程程序、單個(gè)個(gè)程序或者者程序的一一個(gè)模塊;;它甚至可可以代表用用穿孔機(jī)穿穿孔或目視視檢查數(shù)據(jù)據(jù)正確性等等人工處理理過(guò)程。一一個(gè)數(shù)據(jù)存存儲(chǔ)也并不不等同于一一個(gè)文件,,它可以表表示一個(gè)文文件、文件件的一部分分、數(shù)據(jù)庫(kù)庫(kù)的元素或或記錄的一一部分等;;數(shù)據(jù)可以以存儲(chǔ)在磁磁盤(pán)、磁帶帶、磁鼓、、主存、微微縮膠片、、穿孔卡片片及其他任任何介質(zhì)上上(包括人腦)。數(shù)據(jù)存儲(chǔ)和和數(shù)據(jù)流都都是數(shù)據(jù),,僅僅所處處的狀態(tài)不不同。數(shù)據(jù)據(jù)存儲(chǔ)是處處于靜止?fàn)顮顟B(tài)的數(shù)據(jù)據(jù),數(shù)據(jù)流流是處于運(yùn)運(yùn)動(dòng)中的數(shù)數(shù)據(jù)。通常在數(shù)據(jù)據(jù)流圖中忽忽略出錯(cuò)處處理,也不不包括諸如如打開(kāi)或關(guān)關(guān)閉文件之之類(lèi)的內(nèi)務(wù)務(wù)處理。數(shù)數(shù)據(jù)流圖的的基本要點(diǎn)點(diǎn)是描繪““做什么””而不考慮慮“怎樣做做”。有時(shí)數(shù)據(jù)的的源點(diǎn)和終終點(diǎn)相同,,如果只用用一個(gè)符號(hào)號(hào)代表數(shù)據(jù)據(jù)的源點(diǎn)和和終點(diǎn),則則至少將有有兩個(gè)箭頭頭和這個(gè)符符號(hào)相連(一個(gè)進(jìn)一個(gè)個(gè)出),可能其中中一條箭頭頭線相當(dāng)長(zhǎng)長(zhǎng),這將降降低數(shù)據(jù)流流圖的清晰晰度。另一一種表示方方法是再重重復(fù)畫(huà)一個(gè)個(gè)同樣的符符號(hào)(正方形或立立方體)表示數(shù)據(jù)的的終點(diǎn)。有有時(shí)數(shù)據(jù)存存儲(chǔ)也需要要重復(fù),以以增加數(shù)據(jù)據(jù)流圖的清清晰程度。。為了避免免可能引起起的誤解,,如果代表表同一個(gè)事事物的同樣樣符號(hào)在圖圖中出現(xiàn)在在n個(gè)地方,則則在這個(gè)符符號(hào)的一個(gè)個(gè)角上畫(huà)((n-1)條短斜線線做標(biāo)記。。除了上述4種基本符號(hào)號(hào)之外,有有時(shí)也使用用幾種附加加符號(hào)。圖圖2.4(b)給出了這些些附加符號(hào)號(hào)的含義。。假設(shè)一家工工廠的采購(gòu)購(gòu)部每天需需要一張定定貨報(bào)表,,報(bào)表按零零件編號(hào)排排序,表中中列出所有有需要再次次定貨的零零件。對(duì)于于每個(gè)需要要再次定貨貨的零件應(yīng)應(yīng)該列出下下述數(shù)據(jù)::零件編號(hào)號(hào),零件名名稱(chēng),定貨貨數(shù)量,目目前價(jià)格,,主要供應(yīng)應(yīng)者,次要要供應(yīng)者。。零件入庫(kù)庫(kù)或出庫(kù)稱(chēng)稱(chēng)為事務(wù),,通過(guò)放在在倉(cāng)庫(kù)中的的CRT終端把事務(wù)務(wù)報(bào)告給定定貨系統(tǒng)。。當(dāng)某種零零件的庫(kù)存存數(shù)量少于于庫(kù)存量臨臨界值時(shí)就就應(yīng)該再次次定貨。例子數(shù)據(jù)流圖有有4種成分:源源點(diǎn)或終點(diǎn)點(diǎn),處理,,數(shù)據(jù)存儲(chǔ)儲(chǔ)和數(shù)據(jù)流流。因此,,第一步可可以從問(wèn)題題描述中提提取數(shù)據(jù)流流圖的4種成分:首首先考慮慮數(shù)據(jù)的源源點(diǎn)和終點(diǎn)點(diǎn),從上面面對(duì)系統(tǒng)的的描述可以以知道“采采購(gòu)部每天天需要一張張定貨報(bào)表表”,“通通過(guò)放在倉(cāng)倉(cāng)庫(kù)中的CRT終端把事務(wù)務(wù)報(bào)告給定定貨系統(tǒng)””,所以采采購(gòu)員是數(shù)數(shù)據(jù)終點(diǎn),,而倉(cāng)庫(kù)管管理員是數(shù)數(shù)據(jù)源點(diǎn)。。接下來(lái)考考慮處理,,再一次閱閱讀問(wèn)題描描述,“采采購(gòu)部需要要報(bào)表”,,顯然他們們還沒(méi)有這這種報(bào)表,,因此必須須有一個(gè)用用于產(chǎn)生報(bào)報(bào)表的處理理。事務(wù)的的后果是改改變零件庫(kù)庫(kù)存量,然然而任何改改變數(shù)據(jù)的的操作都是是處理,因因此對(duì)事務(wù)務(wù)進(jìn)行的加加工是另一一個(gè)處理。。注意,在問(wèn)問(wèn)題描述中中并沒(méi)有明明顯地提到到需要對(duì)事事務(wù)進(jìn)行處處理,但是是通過(guò)分析析可以看出出這種需要要。最后,,考慮數(shù)據(jù)據(jù)流和數(shù)據(jù)據(jù)存儲(chǔ):系系統(tǒng)把定貨貨報(bào)表送給給采購(gòu)部,,因此定貨貨報(bào)表是一一個(gè)數(shù)據(jù)流流;事務(wù)需需要從倉(cāng)庫(kù)庫(kù)送到系統(tǒng)統(tǒng)中,顯然然事務(wù)是另另一個(gè)數(shù)據(jù)據(jù)流。產(chǎn)生生報(bào)表和處處理事務(wù)這這兩個(gè)處理理在時(shí)間上上明顯不匹匹配——每當(dāng)有一個(gè)個(gè)事務(wù)發(fā)生生時(shí)立即處處理它,然然而每天只只產(chǎn)生一次次定貨報(bào)表表。因此,,用來(lái)產(chǎn)生生定貨報(bào)表表的數(shù)據(jù)必必須存放一一段時(shí)間,,也就是應(yīng)應(yīng)該有一個(gè)個(gè)數(shù)據(jù)存儲(chǔ)儲(chǔ)。注意,并不不是所有數(shù)數(shù)據(jù)存儲(chǔ)和和數(shù)據(jù)流都都能直接從從問(wèn)題描述述中提取出出來(lái)。表2.1(見(jiàn)書(shū)33頁(yè))總結(jié)了了上面分析析的結(jié)果,,其中加星星號(hào)標(biāo)記的的是在問(wèn)題題描述中隱隱含的成分分。數(shù)據(jù)流圖是是系統(tǒng)的邏邏輯模型,,然而任何何計(jì)算機(jī)系系統(tǒng)實(shí)質(zhì)上上都是信息息處理系統(tǒng)統(tǒng),也就是是說(shuō)計(jì)算機(jī)機(jī)系統(tǒng)本質(zhì)質(zhì)上都是把把輸入數(shù)據(jù)據(jù)變換成輸輸出數(shù)據(jù)。。因此,任任何系統(tǒng)的的基本模型型都由若干干個(gè)數(shù)據(jù)源源點(diǎn)/終點(diǎn)以及一一個(gè)處理組組成,這個(gè)個(gè)處理就代代表了系統(tǒng)統(tǒng)對(duì)數(shù)據(jù)加加工變換的的基本功能能。對(duì)于上上述的定貨貨系統(tǒng)可以以畫(huà)出圖2.5這樣的基本本系統(tǒng)模型型。圖2.5定貨系統(tǒng)的的基本系統(tǒng)統(tǒng)模型從基本系統(tǒng)統(tǒng)模型這樣樣非常高的的層次開(kāi)始始畫(huà)數(shù)據(jù)流流圖是一個(gè)個(gè)好辦法。。在這個(gè)高高層次的數(shù)數(shù)據(jù)流圖上上是否列出出了所有給給定的數(shù)據(jù)據(jù)源點(diǎn)/終點(diǎn)是一目目了然的,,因此它是是很有價(jià)值值的通信工工具。然而,圖2.5畢竟太抽象象了,從這這張圖上對(duì)對(duì)定貨系統(tǒng)統(tǒng)所能了解解到的信息息非常有限限。下一步步應(yīng)該把基基本系統(tǒng)模模型細(xì)化,,描繪系統(tǒng)統(tǒng)的主要功功能。從表表2.1可知,“產(chǎn)產(chǎn)生報(bào)表””和“處理理事務(wù)”是是系統(tǒng)必須須完成的兩兩個(gè)主要功功能,它們們將代替圖圖2.5中的“定貨貨系統(tǒng)”(圖2.6)。此外,細(xì)化化后的數(shù)據(jù)據(jù)流圖中還還增加了兩兩個(gè)數(shù)據(jù)存存儲(chǔ):處理理事務(wù)需要要“庫(kù)存清清單”數(shù)據(jù)據(jù);產(chǎn)生報(bào)報(bào)表和處理理事務(wù)在不不同時(shí)間,,因此需要要存儲(chǔ)“定定貨信息””。除了表表2.1中列出的兩兩個(gè)數(shù)據(jù)流流之外還有有另外兩個(gè)個(gè)數(shù)據(jù)流,,它們與數(shù)數(shù)據(jù)存儲(chǔ)相相同。這是是因?yàn)閺囊灰粋€(gè)數(shù)據(jù)存存儲(chǔ)中取出出來(lái)的或放放進(jìn)去的數(shù)數(shù)據(jù)通常和和原來(lái)存儲(chǔ)儲(chǔ)的數(shù)據(jù)相相同,也就就是說(shuō),數(shù)數(shù)據(jù)存儲(chǔ)和和數(shù)據(jù)流只只不過(guò)是同同樣數(shù)據(jù)的的兩種不同同形式。在圖2.6中給處理和和數(shù)據(jù)存儲(chǔ)儲(chǔ)都加了編編號(hào),這樣樣做的目的的是便于引引用和追蹤蹤。圖2.6定貨系統(tǒng)的的功能級(jí)數(shù)數(shù)據(jù)流圖接下來(lái)應(yīng)該該對(duì)功能級(jí)級(jí)數(shù)據(jù)流圖圖中描繪的的系統(tǒng)主要要功能進(jìn)一一步細(xì)化。??紤]通過(guò)過(guò)系統(tǒng)的邏邏輯數(shù)據(jù)流流:當(dāng)發(fā)生生一個(gè)事務(wù)務(wù)時(shí)必須首首先接收它它;隨后按按照事務(wù)的的內(nèi)容修改改庫(kù)存清單單;最后如如果更新后后的庫(kù)存量量少于庫(kù)存存量臨界值值時(shí),則應(yīng)應(yīng)該再次定定貨,也就就是需要處處理定貨信信息。因此此,把“處處理事務(wù)””這個(gè)功能能分解為下下述3個(gè)步驟,這這在邏輯上上是合理的的:“接收收事務(wù)”、、“更新庫(kù)庫(kù)存清單””和“處理理定貨”(圖2.7)。當(dāng)對(duì)數(shù)據(jù)流流圖分層細(xì)細(xì)化時(shí)必須須保持信息息連續(xù)性,,也就是說(shuō)說(shuō),當(dāng)把一一個(gè)處理分分解為一系系列處理時(shí)時(shí),分解前前和分解后后的輸入輸輸出數(shù)據(jù)流流必須相同同。圖2.7把處理事務(wù)務(wù)的功能進(jìn)進(jìn)一步分解解后的數(shù)據(jù)據(jù)流圖數(shù)據(jù)流圖中中每個(gè)成分分的命名是是否恰當(dāng),,直接影響響數(shù)據(jù)流圖圖的可理解解性。因此此,給這些些成分起名名字時(shí)應(yīng)該該仔細(xì)推敲敲。下面講講述在命名名時(shí)應(yīng)注意意的問(wèn)題::1.為數(shù)據(jù)流(或數(shù)據(jù)存儲(chǔ)儲(chǔ))命名(1)名字應(yīng)代表表整個(gè)數(shù)據(jù)據(jù)流(或數(shù)據(jù)存儲(chǔ)儲(chǔ))的內(nèi)容,而而不是僅僅僅反映它的的某些成分分。(2)不要使用空空洞的、缺缺乏具體含含義的名字字(如“數(shù)據(jù)””、“信息息”、“輸輸入”之類(lèi)類(lèi))。命名(3)如果在為某某個(gè)數(shù)據(jù)流流(或數(shù)據(jù)存儲(chǔ)儲(chǔ))起名字時(shí)遇遇到了困難難,則很可可能是因?yàn)闉閷?duì)數(shù)據(jù)流流圖分解不不恰當(dāng)造成成的,應(yīng)該該試試重新新分解,看看是否能克克服這個(gè)困困難。2.為處理命名名(1)通常先為數(shù)數(shù)據(jù)流命名名,然后再再為與之相相關(guān)聯(lián)的處處理命名。。這樣命名名比較容易易,而且體體現(xiàn)了人類(lèi)類(lèi)習(xí)慣的““由表及里里”的思考考過(guò)程。(2)名字應(yīng)該反反映整個(gè)處處理的功能能,而不是是它的一部部分功能。。(3)名字最好由由一個(gè)具體體的及物動(dòng)動(dòng)詞加上一一個(gè)具體的的賓語(yǔ)組成成。應(yīng)該盡盡量避免使使用“加工工”、“處處理”等空空洞籠統(tǒng)的的動(dòng)詞作名名字。(4)通常名字中中僅包括一一個(gè)動(dòng)詞,,如果必須須用兩個(gè)動(dòng)動(dòng)詞才能描描述整個(gè)處處理的功能能,則把這這個(gè)處理再再分解成兩兩個(gè)處理可可能更恰當(dāng)當(dāng)些。(5)如果在為某某個(gè)處理命命名時(shí)遇到到困難,則則很可能是是發(fā)現(xiàn)了分分解不當(dāng)?shù)牡嫩E象,應(yīng)應(yīng)考慮重新新分解。數(shù)據(jù)源點(diǎn)/終點(diǎn)并不需需要在開(kāi)發(fā)發(fā)目標(biāo)系統(tǒng)統(tǒng)的過(guò)程中中設(shè)計(jì)和實(shí)實(shí)現(xiàn),它并并不屬于數(shù)數(shù)據(jù)流圖的的核心內(nèi)容容,只不過(guò)過(guò)是目標(biāo)系系統(tǒng)的外圍圍環(huán)境部分分(可能是人員員、計(jì)算機(jī)機(jī)外部設(shè)備備或傳感器器裝置)。通常,為為數(shù)據(jù)源點(diǎn)點(diǎn)/終點(diǎn)命名時(shí)時(shí)采用它們們?cè)趩?wèn)題域域中習(xí)慣使使用的名字字(如“采購(gòu)員員”、“倉(cāng)倉(cāng)庫(kù)管理員員”等)。畫(huà)數(shù)據(jù)流圖圖的基本目目的是利用用它作為交交流信息的的工具。分分析員把他他對(duì)現(xiàn)有系系統(tǒng)的認(rèn)識(shí)識(shí)或?qū)δ繕?biāo)標(biāo)系統(tǒng)的設(shè)設(shè)想用數(shù)據(jù)據(jù)流圖描繪繪出來(lái),供供有關(guān)人員員審查確認(rèn)認(rèn)。由于在在數(shù)據(jù)流圖圖中通常僅僅僅使用4種基本符號(hào)號(hào),而且不不包含任何何有關(guān)物理理實(shí)現(xiàn)的細(xì)細(xì)節(jié),因此此,絕大多多數(shù)用戶(hù)都都可以理解解和評(píng)價(jià)它它。數(shù)據(jù)流圖應(yīng)應(yīng)該分層,,并且在把把功能級(jí)數(shù)數(shù)據(jù)流圖細(xì)細(xì)化后得到到的處理超超過(guò)9個(gè)時(shí),應(yīng)該該采用畫(huà)分分圖的辦法法,也就是是把每個(gè)主主要功能都都細(xì)化為一一張數(shù)據(jù)流流分圖,而而原有的功功能級(jí)數(shù)據(jù)據(jù)流圖用來(lái)來(lái)描繪系統(tǒng)統(tǒng)的整體邏邏輯概貌。。用途數(shù)據(jù)流圖的的另一個(gè)主主要用途是是作為分析析和設(shè)計(jì)的的工具。分分析員在研研究現(xiàn)有的的系統(tǒng)時(shí)常常用系統(tǒng)流流程圖表達(dá)達(dá)他對(duì)這個(gè)個(gè)系統(tǒng)的認(rèn)認(rèn)識(shí),這種種描繪方法法形象具體體,比較容容易驗(yàn)證它它的正確性性;但是,,開(kāi)發(fā)工程程的目標(biāo)往往往不是完完全復(fù)制現(xiàn)現(xiàn)有的系統(tǒng)統(tǒng),而是創(chuàng)創(chuàng)造一個(gè)能能夠完成相相同的或類(lèi)類(lèi)似的功能能的新系統(tǒng)統(tǒng)。用系統(tǒng)統(tǒng)流程圖描描繪一個(gè)系系統(tǒng)時(shí),系系統(tǒng)的功能能和實(shí)現(xiàn)每每個(gè)功能的的具體方案案是混在一一起的。因因此,分析析員希望以以另一種方方式進(jìn)一步步總結(jié)現(xiàn)有有的系統(tǒng),,這種方式式應(yīng)該著重重描繪系統(tǒng)統(tǒng)所完成的的功能而不不是系統(tǒng)的的物理實(shí)現(xiàn)現(xiàn)方案。數(shù)數(shù)據(jù)流圖是是實(shí)現(xiàn)這個(gè)個(gè)目標(biāo)的極極好手段。。當(dāng)用數(shù)據(jù)流流圖輔助物物理系統(tǒng)的的設(shè)計(jì)時(shí),,以圖中不不同處理的的定時(shí)要求求為指南,,能夠在數(shù)數(shù)據(jù)流圖上上畫(huà)出許多多組自動(dòng)化化邊界,每每組自動(dòng)化化邊界可能能意味著一一個(gè)不同的的物理系統(tǒng)統(tǒng),因此可可以根據(jù)系系統(tǒng)的邏輯輯模型考慮慮系統(tǒng)的物物理實(shí)現(xiàn)。。例如,考考慮圖2.7,事務(wù)隨時(shí)時(shí)可能發(fā)生生,因此處處理1.1(““接收事務(wù)””)必須是聯(lián)機(jī)機(jī)的;采購(gòu)購(gòu)員每天需需要一次定定貨報(bào)表,,因此處理理2(“產(chǎn)生報(bào)表””)應(yīng)該以批量量方式進(jìn)行行。問(wèn)題描描述并沒(méi)有有對(duì)其他處處理施加限限制,例如如,可以聯(lián)聯(lián)機(jī)地接收收事務(wù)并放放入隊(duì)列中中,然而更更新庫(kù)存清清單、處理理定貨和產(chǎn)產(chǎn)生報(bào)表以以批量方式式進(jìn)行(圖2.8)。當(dāng)然,這這種方案需需要增加一一個(gè)數(shù)據(jù)存存儲(chǔ)以存放放事務(wù)數(shù)據(jù)據(jù)。圖2.8這種劃分自自動(dòng)化邊界界的方法暗暗示以批量方式式更新庫(kù)存存清單改變自動(dòng)化化邊界,把把處理1.1,1.2和1.3放在同一個(gè)個(gè)邊界內(nèi)(圖2.9),這個(gè)系統(tǒng)統(tǒng)將聯(lián)機(jī)地地接收事務(wù)務(wù)、更新庫(kù)庫(kù)存清單和和處理定貨貨及輸出定定貨信息;;然而處理理2將以批量方方式產(chǎn)生定定貨報(bào)表。。還能設(shè)想想出建立自自動(dòng)化邊界界的其他方方案嗎?如果把處理理1.1和處理1.2放在一個(gè)自自動(dòng)化邊界界內(nèi),把處處理1.3和處理2放在另一個(gè)個(gè)邊界內(nèi),,意味著什什么樣的物物理系統(tǒng)呢呢?數(shù)據(jù)流圖對(duì)對(duì)更詳細(xì)的的設(shè)計(jì)步驟驟也有幫助助,本書(shū)第第5章將講述從從數(shù)據(jù)流圖圖出發(fā)映射射出軟件結(jié)結(jié)構(gòu)的方法法——面向數(shù)據(jù)流流的設(shè)計(jì)方方法。圖2.9另一種劃分分自動(dòng)化邊邊界的方法法建議以聯(lián)機(jī)方式式更新庫(kù)存存清單數(shù)據(jù)字典是是關(guān)于數(shù)據(jù)據(jù)的信息的的集合,也也就是對(duì)數(shù)數(shù)據(jù)流圖中中包含的所所有元素的的定義的集集合。任何字典最最主要的用用途都是供供人查閱對(duì)對(duì)不了解的的條目的解解釋?zhuān)瑪?shù)據(jù)據(jù)字典的作作用也正是是在軟件分分析和設(shè)計(jì)計(jì)的過(guò)程中中給人提供供關(guān)于數(shù)據(jù)據(jù)的描述信信息。數(shù)據(jù)流圖和和數(shù)據(jù)字典典共同構(gòu)成成系統(tǒng)的邏邏輯模型,,沒(méi)有數(shù)據(jù)據(jù)字典數(shù)據(jù)據(jù)流圖就不不嚴(yán)格,然然而沒(méi)有數(shù)數(shù)據(jù)流圖數(shù)數(shù)據(jù)字典也也難于發(fā)揮揮作用。只只有數(shù)據(jù)流流圖和對(duì)數(shù)數(shù)據(jù)流圖中中每個(gè)元素素的精確定定義放在一一起,才能能共同構(gòu)成成系統(tǒng)的規(guī)規(guī)格說(shuō)明。。2.5數(shù)據(jù)字典一般說(shuō)來(lái),,數(shù)據(jù)字典典應(yīng)該由對(duì)對(duì)下列4類(lèi)元素的定定義組成::(1)數(shù)據(jù)流(2)數(shù)據(jù)流分量量(即數(shù)據(jù)元素素)(3)數(shù)據(jù)據(jù)存存儲(chǔ)儲(chǔ)(4)處理理但是是,,對(duì)對(duì)數(shù)數(shù)據(jù)據(jù)處處理理的的定定義義用用其其他他工工具具(如IPO圖或或PDL)描述述更更方方便便,,因因此此本本書(shū)書(shū)中中數(shù)數(shù)據(jù)據(jù)字字典典將將主主要要由由對(duì)對(duì)數(shù)數(shù)據(jù)據(jù)的的定定義義組組成成,,這這樣樣做做可可以以使使數(shù)數(shù)據(jù)據(jù)字字典典的的內(nèi)內(nèi)容容更更單單純純,,形形式式更更統(tǒng)統(tǒng)一一。。數(shù)據(jù)據(jù)字字典典的的內(nèi)內(nèi)容容除了了數(shù)數(shù)據(jù)據(jù)定定義義之之外外,,數(shù)數(shù)據(jù)據(jù)字字典典中中還還應(yīng)應(yīng)該該包包含含關(guān)關(guān)于于數(shù)數(shù)據(jù)據(jù)的的一一些些其其他他信信息息。。典典型型的的情情況況是是,,在在數(shù)數(shù)據(jù)據(jù)字字典典中中記記錄錄數(shù)數(shù)據(jù)據(jù)元元素素的的下下列列信信息息::一一般般信信息息(名字字,,別別名名,,描描述述等等等等),定定義義(數(shù)據(jù)據(jù)類(lèi)類(lèi)型型,,長(zhǎng)長(zhǎng)度度,,結(jié)結(jié)構(gòu)構(gòu)等等等等),使使用用特特點(diǎn)點(diǎn)(值的的范范圍圍,,使使用用頻頻率率,,使使用用方方式式———輸入入、、輸輸出出、、本本地地,,條條件件值值等等等等),控控制制信信息息(來(lái)源源,,用用戶(hù)戶(hù),,使使用用它它的的程程序序,,改改變變權(quán)權(quán),,使使用用權(quán)權(quán)等等等等)和分分組組信信息息(父結(jié)結(jié)構(gòu)構(gòu),,從從屬屬結(jié)結(jié)構(gòu)構(gòu),,物物理理位位置置———記錄錄、、文文件件和和數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)等等等等)。數(shù)據(jù)據(jù)元元素素的的別別名名就就是是該該元元素素的的其其他他等等價(jià)價(jià)的的名名字字,,出出現(xiàn)現(xiàn)別別名名主主要要有有下下述述3個(gè)原原因因::(1)對(duì)于于同同樣樣的的數(shù)數(shù)據(jù)據(jù),,不不同同的的用用戶(hù)戶(hù)使使用用了了不不同同的的名名字字;;(2)一個(gè)個(gè)分分析析員員在在不不同同時(shí)時(shí)期期對(duì)對(duì)同同一一個(gè)個(gè)數(shù)數(shù)據(jù)據(jù)使使用用了了不不同同的的名名字字;;(3)兩個(gè)分析析員分別別分析同同一個(gè)數(shù)數(shù)據(jù)流時(shí)時(shí),使用用了不同同的名字字。雖然應(yīng)該該盡量減減少出現(xiàn)現(xiàn)別名,,但是不不可能完完全消除除別名。。定義絕大大多數(shù)復(fù)復(fù)雜事物物的方法法,都是是用被定定義的事事物的成成分的某某種組合合表示這這個(gè)事物物,這些些組成成成分又由由更低層層的成分分的組合合來(lái)定義義。從這這個(gè)意義義上說(shuō),,定義就就是自頂頂向下的的分解,,所以數(shù)數(shù)據(jù)字典典中的定定義就是是對(duì)數(shù)據(jù)據(jù)自頂向向下的分分解。那那么,應(yīng)應(yīng)該把數(shù)數(shù)據(jù)分解解到什么么程度呢呢?一般說(shuō)來(lái)來(lái),當(dāng)分分解到不不需要進(jìn)進(jìn)一步定定義,每每個(gè)和工工程有關(guān)關(guān)的人也也都清楚楚其含義義的元素素時(shí),這這種分解解過(guò)程就就完成了了。由數(shù)據(jù)元元素組成成數(shù)據(jù)的的方式只只有下述述三種基基本類(lèi)型型:定義數(shù)據(jù)據(jù)的方法法(1)順序即即以確確定次序序連接兩兩個(gè)或多多個(gè)分量量;(2)選擇即即從兩兩個(gè)或多多個(gè)可能能的元素素中選取取一個(gè);;(3)重復(fù)即即把指指定的分分量重復(fù)復(fù)零次或或多次。。因此,可可以使用用上述3種關(guān)系算算符定義義數(shù)據(jù)字字典中的的任何條條目。為為了說(shuō)明明重復(fù)次次數(shù),重重復(fù)算符符通常和和重復(fù)次次數(shù)的上上下限同同時(shí)使用用(當(dāng)上下限限相同時(shí)時(shí)表示重重復(fù)次數(shù)數(shù)固定)。當(dāng)重復(fù)復(fù)的上下下限分別別為1和0時(shí),可以以用重復(fù)復(fù)算符表表示某個(gè)個(gè)分量是是可選的的。但是是,“可可選”是是由數(shù)據(jù)據(jù)元素組組成數(shù)據(jù)據(jù)時(shí)一種種常見(jiàn)的的方式,,把它單單獨(dú)列為為一種算算符可以以使數(shù)據(jù)據(jù)字典更更清晰一一些。因因此,增增加了下下述的第第4種關(guān)系算算符:(4)可選即即一個(gè)個(gè)分量是是可有可可無(wú)的(重復(fù)零次次或一次次)。雖然可以以使用自自然語(yǔ)言言描述由由數(shù)據(jù)元元素組成成數(shù)據(jù)的的關(guān)系,,但是為為了更加加清晰簡(jiǎn)簡(jiǎn)潔,建建議采用用下列符符號(hào):=意思是等等價(jià)于(或定義為為);+意思是和和(即,連接接兩個(gè)分分量);[]意意思是或或(即,從方方括弧內(nèi)內(nèi)列出的的若干個(gè)個(gè)分量中中選擇一一個(gè)),通常用用“|”號(hào)隔開(kāi)供供選擇的的分量;;{}意思是重重復(fù)(即,重復(fù)復(fù)花括弧弧內(nèi)的分分量);()意思是可可選(即,圓括括弧里的的分量可可有可無(wú)無(wú))。常常使用用上限和和下限進(jìn)進(jìn)一步注注釋表示示重復(fù)的的花括弧弧。一種種注釋方方法是在在開(kāi)括弧弧的左邊邊用上角角標(biāo)和下下角標(biāo)分分別表明明重復(fù)的的上限和和下限;;另一種種注釋方方法是在在開(kāi)括弧弧左側(cè)標(biāo)標(biāo)明重復(fù)復(fù)的下限限,在閉閉括弧的的右側(cè)標(biāo)標(biāo)明重復(fù)復(fù)的上限限。下面舉例例說(shuō)明上上述定義義數(shù)據(jù)的的符號(hào)的的使用方方法:某某程序設(shè)設(shè)計(jì)語(yǔ)言言規(guī)定,,用戶(hù)說(shuō)說(shuō)明的標(biāo)標(biāo)識(shí)符是是長(zhǎng)度不不超過(guò)8個(gè)字符的的字符串串,其中中第一個(gè)個(gè)字符必必須是字字母字符符,隨后后的字符符既可以以是字母母字符也也可以是是數(shù)字字字符。使使用上面面講過(guò)的的符號(hào),,我們可可以像下下面那樣樣定義標(biāo)標(biāo)識(shí)符::標(biāo)識(shí)符=字母字符符+字母數(shù)字字串字母數(shù)字字串=0{字母或或數(shù)字}}7字母或數(shù)數(shù)字=[字母字字符|數(shù)數(shù)字字符符]由于和項(xiàng)項(xiàng)目有關(guān)關(guān)的人都都知道字字母字符符和數(shù)字字字符的的含義,,因此,,關(guān)于標(biāo)標(biāo)識(shí)符的的定義分分解到這這種程度度就可以以結(jié)束了了。數(shù)據(jù)字典典最重要要的用途途是作為為分析階階段的工工具。在在數(shù)據(jù)字字典中建建立的一一組嚴(yán)密密一致的的定義很很有助于于改進(jìn)分分析員和和用戶(hù)之之間的通通信,因因此將消消除許多多可能的的誤解。。對(duì)數(shù)據(jù)據(jù)的這一一系列嚴(yán)嚴(yán)密一致致的定義義也有助助于改進(jìn)進(jìn)在不同同的開(kāi)發(fā)發(fā)人員或或不同的的開(kāi)發(fā)小小組之間間的通信信。如果果要求所所有開(kāi)發(fā)發(fā)人員都都根據(jù)公公共的數(shù)數(shù)據(jù)字典典描述數(shù)數(shù)據(jù)和設(shè)設(shè)計(jì)模塊塊,則能能避免許許多麻煩煩的接口口問(wèn)題。。數(shù)據(jù)字典典的用途途數(shù)據(jù)字典典中包含含的每個(gè)個(gè)數(shù)據(jù)元元素的控控制信息息是很有有價(jià)值的的。因?yàn)闉榱谐隽肆耸褂靡灰粋€(gè)給定定的數(shù)據(jù)據(jù)元素的的所有程程序(或模塊),所以很很容易估估計(jì)改變變一個(gè)數(shù)數(shù)據(jù)將產(chǎn)產(chǎn)生的影影響,并并且能對(duì)對(duì)所有受受影響的的程序或或模塊作作出相應(yīng)應(yīng)的改變變。最后,數(shù)數(shù)據(jù)字典典是開(kāi)發(fā)發(fā)數(shù)據(jù)庫(kù)庫(kù)的第一一步,而而且是很很有價(jià)值值的一步步。目前,數(shù)數(shù)據(jù)字典典幾乎總總是作為為CASE“結(jié)構(gòu)化分分析與設(shè)設(shè)計(jì)工具具”的一一部分實(shí)實(shí)現(xiàn)的。。在開(kāi)發(fā)發(fā)大型軟軟件系統(tǒng)統(tǒng)的過(guò)程程中,數(shù)數(shù)據(jù)字典典的規(guī)模模和復(fù)雜雜程度迅迅速增加加,人工工維護(hù)數(shù)數(shù)據(jù)字典典幾乎是是不可能能的。如果在開(kāi)開(kāi)發(fā)小型型軟件系系統(tǒng)時(shí)暫暫時(shí)沒(méi)有有數(shù)據(jù)字字典處理理程序,,建議采采用卡片片形式書(shū)書(shū)寫(xiě)數(shù)據(jù)據(jù)字典,,每張卡卡片上保保存描述述一個(gè)數(shù)數(shù)據(jù)的信信息。這這樣做更更新和修修改起來(lái)來(lái)比較方方便,而而且能單單獨(dú)處理理描述每每個(gè)數(shù)據(jù)據(jù)的信息息。每張張卡片上上主要應(yīng)應(yīng)該包含含下述這這樣一些些信息::名字、別別名、描描述、定定義、位位置。數(shù)據(jù)字典典的實(shí)現(xiàn)現(xiàn)開(kāi)發(fā)一個(gè)個(gè)軟件系系統(tǒng)是一一種投資資,期望望將來(lái)獲獲得更大大的經(jīng)濟(jì)濟(jì)效益。。經(jīng)濟(jì)效效益通常常表現(xiàn)為為減少運(yùn)運(yùn)行費(fèi)用用或(和)增加收入入。但是是,投資資開(kāi)發(fā)新新系統(tǒng)往往往要冒冒一定風(fēng)風(fēng)險(xiǎn),系系統(tǒng)的開(kāi)開(kāi)發(fā)成本本可能比比預(yù)計(jì)的的高,效效益可能能比預(yù)期期的低。。效益分分析的目目的正是是要從經(jīng)經(jīng)濟(jì)角度度分析開(kāi)開(kāi)發(fā)一個(gè)個(gè)特定的的新系統(tǒng)統(tǒng)是否劃劃算,從從而幫助助客戶(hù)組組織的負(fù)負(fù)責(zé)人正正確地作作出是否否投資于于這項(xiàng)開(kāi)開(kāi)發(fā)工程程的決定定。為了對(duì)比比成本和和效益,,首先需需要估計(jì)計(jì)它們的的數(shù)量。。2.6成本/效益分析析軟件開(kāi)發(fā)發(fā)成本主主要表現(xiàn)現(xiàn)為人力力消耗(乘以平均均工資則則得到開(kāi)開(kāi)發(fā)費(fèi)用用)。成本估估計(jì)不是是精確的的科學(xué),,因此應(yīng)應(yīng)該使用用幾種不不同的估估計(jì)技術(shù)術(shù)以便相相互校驗(yàn)驗(yàn)。下面面簡(jiǎn)單介介紹3種估算技技術(shù)。1.代碼行技技術(shù)代碼行技技術(shù)是比比較簡(jiǎn)單單的定量量估算方方法,它它把開(kāi)發(fā)發(fā)每個(gè)軟軟件功能能的成本本和實(shí)現(xiàn)現(xiàn)這個(gè)功功能需要要用的源源代碼行行數(shù)聯(lián)系系起來(lái)。。通常根根據(jù)經(jīng)驗(yàn)驗(yàn)和歷史史數(shù)據(jù)估估計(jì)實(shí)現(xiàn)現(xiàn)一個(gè)功功能需要要的源程程序行數(shù)數(shù)。當(dāng)有有以往開(kāi)開(kāi)發(fā)類(lèi)似似工程的的歷史數(shù)數(shù)據(jù)可供供參考時(shí)時(shí),這個(gè)個(gè)方法是是非常有有效的。。成本估計(jì)計(jì)一旦估計(jì)計(jì)出源代代碼行數(shù)數(shù)以后,,用每行行代碼的的平均成成本乘以以行數(shù)就就可以確確定軟件件的成本本。每行行代碼的的平均成成本主要要取決于于軟件的的復(fù)雜程程度和工工資水平平。2.任務(wù)分解解技術(shù)這種方法法首先把把軟件開(kāi)開(kāi)發(fā)工程程分解為為若干個(gè)個(gè)相對(duì)獨(dú)獨(dú)立的任任務(wù)。再再分別估估計(jì)每個(gè)個(gè)單獨(dú)的的開(kāi)發(fā)任任務(wù)的成成本,最最后累加加起來(lái)得得出軟件件開(kāi)發(fā)工工程的總總成本。。估計(jì)每每個(gè)任務(wù)務(wù)的成本本時(shí),通通常先估估計(jì)完成成該項(xiàng)任任務(wù)需要要用的人人力(以人月為為單位),再乘以以每人每每月的平平均工資資而得出出每個(gè)任任務(wù)的成成本。最常用的的辦法是是按開(kāi)發(fā)發(fā)階段劃劃分任務(wù)務(wù)。如果果軟件系系統(tǒng)很復(fù)復(fù)雜,由由若干個(gè)個(gè)子系統(tǒng)統(tǒng)組成,,則可以以把每個(gè)個(gè)子系統(tǒng)統(tǒng)再按開(kāi)開(kāi)發(fā)階段段進(jìn)一步步劃分成成更小的的任務(wù)。。典型環(huán)境境下各個(gè)個(gè)開(kāi)發(fā)階階段需要要使用的的人力的的百分比比大致如如表2.2(見(jiàn)書(shū)40頁(yè))所示示。當(dāng)然然,應(yīng)該該針對(duì)每每個(gè)開(kāi)發(fā)發(fā)工程的的具體特特點(diǎn),并并且參照照以往的的經(jīng)驗(yàn)盡盡可能準(zhǔn)準(zhǔn)確地估估計(jì)每個(gè)個(gè)階段實(shí)實(shí)際需要要使用的的人力。。3.自動(dòng)估計(jì)計(jì)成本技技術(shù)采用自動(dòng)動(dòng)估計(jì)成成本的軟軟件工具具可以減減輕人的的勞動(dòng),,并且使使得估計(jì)計(jì)的結(jié)果果更客觀觀。但是是,采用用這種技技術(shù)必須須有長(zhǎng)期期搜集的的大量歷歷史數(shù)據(jù)據(jù)為基礎(chǔ)礎(chǔ),并且且需要有有良好的的數(shù)據(jù)庫(kù)庫(kù)系統(tǒng)支支持。成本/效益分析析的第一一步是估估計(jì)開(kāi)發(fā)發(fā)成本、、運(yùn)行費(fèi)費(fèi)用和新新系統(tǒng)將將帶來(lái)的的經(jīng)濟(jì)效效益。運(yùn)運(yùn)行費(fèi)用用取決于于系統(tǒng)的的操作費(fèi)費(fèi)用(操作員人人數(shù),工工作時(shí)間間,消耗耗的物資資等等)和維護(hù)費(fèi)費(fèi)用。系系統(tǒng)的經(jīng)經(jīng)濟(jì)效益益等于因因使用新新系統(tǒng)而而增加的的收入加加上使用用新系統(tǒng)統(tǒng)可以節(jié)節(jié)省的運(yùn)運(yùn)行費(fèi)用用。因?yàn)闉檫\(yùn)行費(fèi)費(fèi)用和經(jīng)經(jīng)濟(jì)效益益兩者在在軟件的的整個(gè)生生命周期期內(nèi)都存存在,總總的效益益和生命命周期的的長(zhǎng)度有有關(guān),所所以應(yīng)該該合理地地估計(jì)軟軟件的壽壽命。成本/效益分析析的方法法雖然許許多系系統(tǒng)在在開(kāi)發(fā)發(fā)時(shí)預(yù)預(yù)期生生命周周期長(zhǎng)長(zhǎng)達(dá)10年以上上,但但是時(shí)時(shí)間越越長(zhǎng)系系統(tǒng)被被廢棄棄的可可能性性也越越大,,為了了保險(xiǎn)險(xiǎn)起見(jiàn)見(jiàn),以以后在在進(jìn)行行成本本/效益分分析時(shí)時(shí)一律律假設(shè)設(shè)生命命周期期為5年。應(yīng)該比比較新新系統(tǒng)統(tǒng)的開(kāi)開(kāi)發(fā)成成本和和經(jīng)濟(jì)濟(jì)效益益,以以便從從經(jīng)濟(jì)濟(jì)角度度判斷斷這個(gè)個(gè)系統(tǒng)統(tǒng)是否否值得得投資資,但但是,,投資資是現(xiàn)現(xiàn)在進(jìn)進(jìn)行的的,效效益是是將來(lái)來(lái)獲得得的,,不能能簡(jiǎn)單單地比比較成成本和和效益益,應(yīng)應(yīng)該考考慮貨貨幣的的時(shí)間間價(jià)值值。1.貨幣的的時(shí)間間價(jià)值值通常用用利率率的形形式表表示貨貨幣的的時(shí)間間價(jià)值值。假假設(shè)年年利率率為i,如果果現(xiàn)在在存入入P元,則則n年后可可以得得到的的錢(qián)數(shù)數(shù)為::F=P(1+i)n這也就就是P元錢(qián)在在n年后的的價(jià)值值。反反之,,如果果n年后能能收入入F元錢(qián),,那么么這些些錢(qián)的的現(xiàn)在在價(jià)值值是P=F/(1+i)n例如,,修改改一個(gè)個(gè)已有有的庫(kù)庫(kù)存清清單系系統(tǒng),,使它它能在在每天天送給給采購(gòu)購(gòu)員一一份定定貨報(bào)報(bào)表。。修改改已有有的庫(kù)庫(kù)存清清單程程序并并且編編寫(xiě)產(chǎn)產(chǎn)生報(bào)報(bào)表的的程序序,估估計(jì)共共需5000元;系系統(tǒng)修修改后后能及及時(shí)定定貨將將消除除零件件短缺缺問(wèn)題題,估估計(jì)因因此每每年可可以節(jié)節(jié)省2500元,5年共可可節(jié)省省12500元。但但是,,不能能簡(jiǎn)單單地把把5000元和12500元相比比較,,因?yàn)闉榍罢哒呤乾F(xiàn)現(xiàn)在投投資的的錢(qián),,后者者是若若干年年以后后節(jié)省省的錢(qián)錢(qián)。假定年年利率率為12%,利用用上面面計(jì)算算貨幣幣現(xiàn)在在價(jià)值值的公公式可可以算算出修修改庫(kù)庫(kù)存清清單系系統(tǒng)后后每年年預(yù)計(jì)計(jì)節(jié)省省的錢(qián)錢(qián)的現(xiàn)現(xiàn)在價(jià)價(jià)值,,如表表2.3(見(jiàn)書(shū)書(shū)41頁(yè))所所示。。2.投資回回收期期通常用用投資資回收收期衡衡量一一項(xiàng)開(kāi)開(kāi)發(fā)工工程的的價(jià)值值。所所謂投投資回回收期期就是是使累累計(jì)的的經(jīng)濟(jì)濟(jì)效益益等于于最初初投資資所需需要的的時(shí)間間。顯顯然,,投資資回收收期越越短就就能越越快獲獲得利利潤(rùn),,因此此這項(xiàng)項(xiàng)工程程也就就越值值得投投資。。投資回回收期期僅僅僅是一一項(xiàng)經(jīng)經(jīng)濟(jì)指指標(biāo),,為了了衡量量一項(xiàng)項(xiàng)開(kāi)發(fā)發(fā)工程程的價(jià)價(jià)值,,還應(yīng)應(yīng)該考考慮其其他經(jīng)經(jīng)濟(jì)指指標(biāo)。。3.純收入入衡量工工程價(jià)價(jià)值的的另一一項(xiàng)經(jīng)經(jīng)濟(jì)指指標(biāo)是是工程程的純純收入入,也也就是是在整整個(gè)生生命周周期之之內(nèi)系系統(tǒng)的的累計(jì)計(jì)經(jīng)濟(jì)濟(jì)效益益(折合成成現(xiàn)在在值)與投資資之差差。這這相當(dāng)當(dāng)于比比較投投資開(kāi)開(kāi)發(fā)一一個(gè)軟軟件系系統(tǒng)和和把錢(qián)錢(qián)存在在銀行行中(或貸給給其他他企業(yè)業(yè))這兩種種方案案的優(yōu)優(yōu)劣。。如果果純收收入為為零,,則工工程的的預(yù)期期效益益和在在銀行行存款款一樣樣,但但是開(kāi)開(kāi)發(fā)一一個(gè)系系統(tǒng)要要冒風(fēng)風(fēng)險(xiǎn),,因此此從經(jīng)經(jīng)濟(jì)觀觀點(diǎn)看看這項(xiàng)項(xiàng)工程程可能能是不不值得得投資資的。。如果果純收收入小小于零零,那那么這這項(xiàng)工工程顯顯然不不值得得投資資。4.投資回回收率率把資金金存入入銀行行或貸貸給其其他企企業(yè)能能夠獲獲得利利息,,通常常用年年利率率衡量量利息息多少少。類(lèi)類(lèi)似地地也可可以計(jì)計(jì)算投投資回回收率率,用用它衡衡量投投資效效益的的大小小,并并且可可以把把它和和年利利率相相比較較,在在衡量量工程程的經(jīng)經(jīng)濟(jì)效效益時(shí)時(shí),它它是最最重要要的參參考數(shù)數(shù)據(jù)。。已知現(xiàn)現(xiàn)在的的投資資額,,并且且已經(jīng)經(jīng)估計(jì)計(jì)出將將來(lái)每每年可可以獲獲得的的經(jīng)濟(jì)濟(jì)效益益,那那么,,給定定軟件件的使使用壽壽命之之后,,怎樣樣計(jì)算算投資資回收收率呢呢?設(shè)想把把數(shù)量量等于于投資資額的的資金金存入入銀行行,每每年年年底從從銀行行取回回的錢(qián)錢(qián)等于于系統(tǒng)統(tǒng)每年年預(yù)期期可以以獲得得的效效益,,在時(shí)時(shí)間等等于系系統(tǒng)壽壽命時(shí)時(shí),正正好把把在銀銀行中中的存存款全全部取取光,,那么么,年年利率率等于于多少少呢?這個(gè)假假想的的年利利率就就等于于投資資回收收率。??尚行孕匝芯烤窟M(jìn)一一步探探討問(wèn)問(wèn)題定定義階階段所所確定定的問(wèn)問(wèn)題是是否有有可行行的解解。在在對(duì)問(wèn)問(wèn)題正正確定定義的的基礎(chǔ)礎(chǔ)上,,通過(guò)過(guò)分析析問(wèn)題題,導(dǎo)導(dǎo)出試試探性性的解解,然然后復(fù)復(fù)查并并修正正問(wèn)題題定義義,再再次分分析問(wèn)問(wèn)題,,改進(jìn)進(jìn)提出出的解解法……。經(jīng)過(guò)過(guò)定
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度智能交通系統(tǒng)建設(shè)與運(yùn)營(yíng)服務(wù)合同3篇
- 二零二五版海綿城市建設(shè)排洪系統(tǒng)施工管理合同3篇
- 二零二五年度旅游景區(qū)承包經(jīng)營(yíng)合同3篇
- 二零二五年度工業(yè)設(shè)備融資租賃合同2篇
- 二零二五年度新能源汽車(chē)銷(xiāo)售代理權(quán)授權(quán)合同4篇
- 2025年度鋼房拆除安全監(jiān)管及風(fēng)險(xiǎn)評(píng)估合同3篇
- 2025年度新能源項(xiàng)目用地承包及轉(zhuǎn)讓合同協(xié)議書(shū)4篇
- 二零二五年度養(yǎng)老產(chǎn)業(yè)投資借款及違約處理協(xié)議3篇
- 2025年快清膠囊項(xiàng)目可行性研究報(bào)告
- 2025年度常年財(cái)務(wù)顧問(wèn)聘請(qǐng)與財(cái)務(wù)報(bào)告審核協(xié)議3篇
- 住宅樓安全性檢測(cè)鑒定方案
- 廣東省潮州市潮安區(qū)2023-2024學(xué)年五年級(jí)上學(xué)期期末考試數(shù)學(xué)試題
- 市政道路及設(shè)施零星養(yǎng)護(hù)服務(wù)技術(shù)方案(技術(shù)標(biāo))
- 藝術(shù)培訓(xùn)校長(zhǎng)述職報(bào)告
- 選擇性必修一 期末綜合測(cè)試(二)(解析版)2021-2022學(xué)年人教版(2019)高二數(shù)學(xué)選修一
- 《論語(yǔ)》學(xué)而篇-第一課件
- 《寫(xiě)美食有方法》課件
- 學(xué)校制度改進(jìn)
- 各行業(yè)智能客服占比分析報(bào)告
- 年產(chǎn)30萬(wàn)噸高鈦渣生產(chǎn)線技改擴(kuò)建項(xiàng)目環(huán)評(píng)報(bào)告公示
- 心電監(jiān)護(hù)考核標(biāo)準(zhǔn)
評(píng)論
0/150
提交評(píng)論