第2章可行性研究_第1頁(yè)
第2章可行性研究_第2頁(yè)
第2章可行性研究_第3頁(yè)
第2章可行性研究_第4頁(yè)
第2章可行性研究_第5頁(yè)
已閱讀5頁(yè),還剩79頁(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)介

軟件工程導(dǎo)論(第6版)第2章可行性研究21世紀(jì)軟件工程專業(yè)規(guī)劃教材一、了解程序員1.誠(chéng)實(shí)2.簡(jiǎn)單——實(shí)用主義3.愛憎分明4.工作單調(diào)但不乏味二、了解程序經(jīng)理

——一支程序員隊(duì)伍的領(lǐng)導(dǎo)者,是程序員隊(duì)伍中最聰明的家伙1.技術(shù)水平是程序員隊(duì)伍中的最高級(jí)別2.能做最多且最難的工作3.有人格魅力三、程序員升為經(jīng)理后還應(yīng)編程么?!四、經(jīng)理與技術(shù)隊(duì)伍建設(shè)

1.技術(shù)水平分為四級(jí):第一級(jí)考核編程基本功,要求質(zhì)量合格第二級(jí)編程質(zhì)量要高,做過(guò)幾個(gè)軟件項(xiàng)目第三級(jí)考核系統(tǒng)分析與系統(tǒng)設(shè)計(jì)能力第四級(jí)成功的軟件產(chǎn)品設(shè)計(jì)師

2.管理水平分為四級(jí):第一級(jí)普通員工第二級(jí)開發(fā)小組組長(zhǎng)第三級(jí)項(xiàng)目經(jīng)理第四級(jí)決定產(chǎn)品是否開發(fā)五、向錯(cuò)誤與失敗學(xué)習(xí)迷信是傻子(內(nèi)因)遇到騙子的結(jié)果被騙:外因六、提高綜合素質(zhì)第2章可行性研究并非任何問(wèn)題都有簡(jiǎn)單明顯的解決辦法,事實(shí)上,許多問(wèn)題不可能在預(yù)定的系統(tǒng)規(guī)?;驎r(shí)間期限之內(nèi)解決。如果問(wèn)題沒(méi)有可行的解,那么花費(fèi)在這項(xiàng)工程上的任何時(shí)間、人力、軟硬件資源和經(jīng)費(fèi),都是無(wú)謂的浪費(fèi)。可行性研究的目的,就是用最小的代價(jià)在盡可能短的時(shí)間內(nèi)確定問(wèn)題是否能夠解決。主要內(nèi)容2.1可行性研究的任務(wù)2.2可行性研究過(guò)程2.3系統(tǒng)流程圖2.4數(shù)據(jù)流圖2.5數(shù)據(jù)字典2.6成本/效益分析主要內(nèi)容2.1可行性研究的任務(wù)2.2可行性研究過(guò)程2.3系統(tǒng)流程圖2.4數(shù)據(jù)流圖2.5數(shù)據(jù)字典2.6成本/效益分析2.1可行性研究的任務(wù)可行性研究的目的不是解決問(wèn)題,而是確定問(wèn)題是否值得去解決。首先,進(jìn)一步分析和澄清問(wèn)題定義然后,分析員應(yīng)該導(dǎo)出系統(tǒng)的邏輯模型最后,探索若干種可供選擇的主要解法可行性研究分析過(guò)程:實(shí)質(zhì):

在較高層次上以抽象方式進(jìn)行需求分析和設(shè)計(jì)的過(guò)程

技術(shù)可行性

——度量一個(gè)特定技術(shù)信息系統(tǒng)解決方案的實(shí)用性及技術(shù)資源的可用性。(做的了嗎?做的好嗎?做的快嗎?)

經(jīng)濟(jì)可行性

——度量系統(tǒng)解決方案的性能價(jià)格比。成本——效益分析、短期——長(zhǎng)遠(yuǎn)利益分析

操作可行性用戶使用可能性時(shí)間進(jìn)度可行性社會(huì)可行性(市場(chǎng)與政策)

——開發(fā)項(xiàng)目是否會(huì)在社會(huì)上或政治上引起侵權(quán)、破壞或其他責(zé)任問(wèn)題。2.1

可行性研究的任務(wù)主要內(nèi)容2.1可行性研究的任務(wù)2.2可行性研究過(guò)程2.3系統(tǒng)流程圖2.4數(shù)據(jù)流圖2.5數(shù)據(jù)字典2.6成本/效益分析2.2可行性研究過(guò)程怎樣進(jìn)行可行性研究呢?典型的可行性研究過(guò)程有下述8個(gè)步驟。復(fù)查系統(tǒng)規(guī)模和目標(biāo)研究目前正在使用的系統(tǒng)導(dǎo)出新系統(tǒng)的高層邏輯模型進(jìn)一步定義問(wèn)題導(dǎo)出和評(píng)價(jià)供選擇的解法推薦行動(dòng)方針草擬開發(fā)計(jì)劃書寫文檔提交審查2.2

可行性研究過(guò)程復(fù)查系統(tǒng)規(guī)模和目標(biāo)分析員訪問(wèn)關(guān)鍵人員,仔細(xì)閱讀和分析有關(guān)的材料,以便對(duì)問(wèn)題定義階段書寫的關(guān)于規(guī)模和目標(biāo)的報(bào)告書進(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)源。顯然,如果目前有一個(gè)系統(tǒng)正被人使用,那么這個(gè)系統(tǒng)必定能完成某些有用的工作,因此,新的目標(biāo)系統(tǒng)必須也能完成它的基本功能;另一方面,如果現(xiàn)有的系統(tǒng)是完美無(wú)缺的,用戶自然不會(huì)提出開發(fā)新系統(tǒng)的要求,因此,現(xiàn)有的系統(tǒng)必然有某些缺點(diǎn),新系統(tǒng)必須能解決舊系統(tǒng)中存在的問(wèn)題。應(yīng)該仔細(xì)閱讀分析現(xiàn)有系統(tǒng)的文檔資料和使用手冊(cè),也要實(shí)地考察現(xiàn)有的系統(tǒng)。常見的錯(cuò)誤做法是花費(fèi)過(guò)多時(shí)間去分析現(xiàn)有的系統(tǒng)。沒(méi)有一個(gè)系統(tǒng)是在“真空”中運(yùn)行的,絕大多數(shù)系統(tǒng)都和其他系統(tǒng)有聯(lián)系。2.2

可行性研究過(guò)程3.導(dǎo)出新系統(tǒng)的高層邏輯模型優(yōu)秀的設(shè)計(jì)過(guò)程通常是從現(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)。4.進(jìn)一步定義問(wèn)題可行性研究的前4個(gè)步驟實(shí)質(zhì)上構(gòu)成一個(gè)循環(huán)。分析員定義問(wèn)題,分析這個(gè)問(wèn)題,導(dǎo)出一個(gè)試探性的解;在此基礎(chǔ)上再次定義問(wèn)題,再一次分析這個(gè)問(wèn)題,修改這個(gè)解;繼續(xù)這個(gè)循環(huán)過(guò)程,直到提出的邏輯模型完全符合系統(tǒng)目標(biāo)。2.2可行性研究過(guò)程5.導(dǎo)出和評(píng)價(jià)供選擇的解法分析員應(yīng)該從他建議的系統(tǒng)邏輯模型出發(fā),導(dǎo)出若干個(gè)較高層次的物理解法供比較和選擇。其次可以考慮操作方面的可行性。分析員應(yīng)該根據(jù)使用部門處理事務(wù)的原則和習(xí)慣檢查技術(shù)上可行的那些方案,去掉其中從操作方式或操作過(guò)程的角度看用戶不能接受的方案。接下來(lái)應(yīng)該考慮經(jīng)濟(jì)方面的可行性。分析員應(yīng)該估計(jì)余下的每個(gè)可能的系統(tǒng)的開發(fā)成本和運(yùn)行費(fèi)用,并且估計(jì)相對(duì)于現(xiàn)有的系統(tǒng)而言這個(gè)系統(tǒng)可以節(jié)省的開支或可以增加的收入。最后為每個(gè)在技術(shù)、操作和經(jīng)濟(jì)等方面都可行的系統(tǒng)制定實(shí)現(xiàn)進(jìn)度表,這個(gè)進(jìn)度表不需要制定得很詳細(xì),通常只需要估計(jì)生命周期每個(gè)階段的工作量。2.2可行性研究過(guò)程6.導(dǎo)出和評(píng)價(jià)供選擇的解法根據(jù)可行性研究結(jié)果應(yīng)該決定的一個(gè)關(guān)鍵性問(wèn)題是:是否繼續(xù)進(jìn)行這項(xiàng)開發(fā)工程?分析員必須清楚地表明他對(duì)這個(gè)關(guān)鍵性決定的建議。如果分析員認(rèn)為值得繼續(xù)進(jìn)行這項(xiàng)開發(fā)工程,那么他應(yīng)該選擇一種最好的解法,并且說(shuō)明選擇這個(gè)解決方案的理由。通??蛻糁饕鶕?jù)經(jīng)濟(jì)上是否劃算決定是否投資于一項(xiàng)開發(fā)工程,因此分析員對(duì)于所推薦的系統(tǒng)必須進(jìn)行比較仔細(xì)的成本/效益分析。2.2

可行性研究過(guò)程7.草擬開發(fā)計(jì)劃分析員應(yīng)該為所推薦的方案草擬一份開發(fā)計(jì)劃,除了制定工程進(jìn)度表之外還應(yīng)該估計(jì)對(duì)各類開發(fā)人員和各種資源的需要情況,應(yīng)該指明什么時(shí)候使用以及使用多長(zhǎng)時(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)工程及是否接受分析員推薦的方案。第2章可行性研究2.1可行性研究的任務(wù)2.2可行性研究過(guò)程2.3系統(tǒng)流程圖2.4數(shù)據(jù)流圖2.5數(shù)據(jù)字典2.6成本/效益分析概念系統(tǒng)流程圖是描繪物理系統(tǒng)的傳統(tǒng)工具,它用圖形符號(hào)描述組成系統(tǒng)的各個(gè)元素以及信息在這些元素之間的流動(dòng)情況。系統(tǒng)流程圖的基本思想用圖形符號(hào)以黑盒子形式描繪系統(tǒng)里面的每一部件(程序、文件、數(shù)據(jù)庫(kù)、表格、人工過(guò)程等),描述了系統(tǒng)中從數(shù)據(jù)輸入到輸出為止各個(gè)處理工序的邏輯模型。2.3

系統(tǒng)流程圖系統(tǒng)流程圖是概括地描繪物理系統(tǒng)的傳統(tǒng)工具。2.3系統(tǒng)流程圖2.3.1符號(hào)利用符號(hào)可以把一個(gè)廣義的輸入輸出操作具體化為讀寫存儲(chǔ)在特殊設(shè)備上的文件(或數(shù)據(jù)庫(kù)),把抽象處理具體化為特定的程序或手工操作等。2.3系統(tǒng)流程圖以概括的方式抽象地描繪一個(gè)實(shí)際系統(tǒng)時(shí),僅僅使用下圖中列出的基本符號(hào)就足夠了需要更具體地描繪一個(gè)物理系統(tǒng)時(shí)還需要使用右圖中列出的系統(tǒng)符號(hào)2.3

系統(tǒng)流程圖以一個(gè)簡(jiǎn)單的例子進(jìn)行講解。某裝配廠有一座存放零件的倉(cāng)庫(kù),倉(cāng)庫(kù)中現(xiàn)有的各種零件的數(shù)量以及每種零件的庫(kù)存量臨界值等數(shù)據(jù)記錄在庫(kù)存清單主文件中。當(dāng)倉(cāng)庫(kù)中零件數(shù)量有變化時(shí),應(yīng)該及時(shí)修改庫(kù)存清單主文件,如果哪種零件的庫(kù)存量少于它的庫(kù)存量臨界值,則應(yīng)該報(bào)告給采購(gòu)部門以便訂貨,規(guī)定每天向采購(gòu)部門送一次訂貨報(bào)告。2.3.2例子分析:

倉(cāng)庫(kù)可使用一臺(tái)計(jì)算機(jī)處理更新庫(kù)存清單文件和產(chǎn)生訂貨報(bào)告的任務(wù)。零件的發(fā)放和接收,也就是對(duì)零件庫(kù)存量的每一次修改,稱為一個(gè)事務(wù),通過(guò)倉(cāng)庫(kù)中的CRT終端輸入到計(jì)算機(jī)中。系統(tǒng)中的庫(kù)存清單模塊對(duì)事務(wù)進(jìn)行處理,更新存儲(chǔ)在磁盤上的庫(kù)存清單文件,并把訂貨信息記錄到磁帶上。每天由報(bào)告生成模塊讀一次訂貨信息,并打印出訂貨報(bào)告。2.3系統(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ú)的一頁(yè)紙上。這種分層次的描繪方法便于閱讀者按從抽象到具體的過(guò)程逐步深入地了解一個(gè)復(fù)雜的系統(tǒng)。2.3.3分層系統(tǒng)流程圖作用1、制作系統(tǒng)流程圖的過(guò)程是系統(tǒng)分析員全面了解系統(tǒng)業(yè)務(wù)處理概況的過(guò)程,它是系統(tǒng)分析員做進(jìn)一步分析的依據(jù)。2、系統(tǒng)流程圖是系統(tǒng)分析員、管理員、業(yè)務(wù)操作員相互交流的工具。3、系統(tǒng)分析員可直接在系統(tǒng)流程圖上畫出可以有計(jì)算機(jī)處理的部分。4、可利用系統(tǒng)流程圖來(lái)分析業(yè)務(wù)流程的合理性。主要內(nèi)容2.1可行性研究的任務(wù)2.2可行性研究過(guò)程2.3系統(tǒng)流程圖2.4數(shù)據(jù)流圖2.5數(shù)據(jù)字典2.6成本/效益分析2.4

數(shù)據(jù)流圖概念數(shù)據(jù)流圖(DFD)是一種圖形化技術(shù),它描繪信息流和數(shù)據(jù)從輸入移動(dòng)到輸出的過(guò)程中所經(jīng)受的變換。2.4

數(shù)據(jù)流圖2.4.1

符號(hào)數(shù)據(jù)流四中基本符號(hào)附加符號(hào)基本符號(hào)數(shù)據(jù)存儲(chǔ)數(shù)據(jù)源點(diǎn)或終點(diǎn)加工加工名數(shù)據(jù)流數(shù)據(jù)流名文件名實(shí)體名箭頭圓或橢圓橫線矩形框數(shù)據(jù)流的箭頭指明了數(shù)據(jù)的流動(dòng)方向?qū)ο到y(tǒng)中數(shù)據(jù)流進(jìn)行某些操作或變換。每個(gè)加工要有名字,通常為動(dòng)詞+名詞加工還應(yīng)有編號(hào),編號(hào)說(shuō)明這個(gè)加工在層次分解中的位置用于保存數(shù)據(jù)的數(shù)據(jù)文件,它可以是數(shù)據(jù)庫(kù)文件或任何形式的數(shù)據(jù)組織注意數(shù)據(jù)流到數(shù)據(jù)存儲(chǔ)的流向:流向表明是寫文件或?qū)ξ募M(jìn)行查詢流出表明是讀文件或得到查詢結(jié)果用于反映數(shù)據(jù)流圖與外部實(shí)體之間的聯(lián)系,表示圖中的輸入數(shù)據(jù)來(lái)自哪里或處理結(jié)果送向何處?;緢D形符號(hào)2.4

數(shù)據(jù)流圖以簡(jiǎn)單例子說(shuō)明怎樣畫數(shù)據(jù)流圖假設(shè)一家工廠的采購(gòu)部每天需要一張訂貨報(bào)表,報(bào)表按零件編號(hào)排序,表中列出所有需要再次訂貨的零件。對(duì)于每個(gè)需要再次訂貨的零件應(yīng)該列出下述數(shù)據(jù):零件編號(hào),零件名稱,訂貨數(shù)量,目前價(jià)格,主要供應(yīng)者,次要供應(yīng)者。零件入庫(kù)或出庫(kù)稱為事務(wù),通過(guò)放在倉(cāng)庫(kù)中的CRT終端把事務(wù)報(bào)告給訂貨系統(tǒng)。當(dāng)某種零件的庫(kù)存數(shù)量少于庫(kù)存量臨界值時(shí)就應(yīng)該再次訂貨。2.4.2

例子2.4

數(shù)據(jù)流圖首先考慮數(shù)據(jù)的源點(diǎn)和終點(diǎn),從上面對(duì)系統(tǒng)的描述可以知道“采購(gòu)部每天需要一張訂貨報(bào)表”,“通過(guò)放在倉(cāng)庫(kù)中的CRT終端把事務(wù)報(bào)告給訂貨系統(tǒng)”,所以采購(gòu)員是數(shù)據(jù)終點(diǎn),而倉(cāng)庫(kù)管理員是數(shù)據(jù)源點(diǎn)。第一步可以從問(wèn)題描述中提取數(shù)據(jù)流圖的4種成分:2.4

數(shù)據(jù)流圖因此必須有一個(gè)用于產(chǎn)生報(bào)表的處理。事務(wù)的后果是改變零件庫(kù)存量,然而任何改變數(shù)據(jù)的操作都是處理,因此對(duì)事務(wù)進(jìn)行的加工是另一個(gè)處理。注意,在問(wèn)題描述中并沒(méi)有明顯地提到需要對(duì)事務(wù)進(jìn)行處理,但是通過(guò)分析可以看出這種需要。第二步:再一次閱讀問(wèn)題描述,“采購(gòu)部需要報(bào)表”2.4

數(shù)據(jù)流圖系統(tǒng)把訂貨報(bào)表送給采購(gòu)部,因此訂貨報(bào)表是一個(gè)數(shù)據(jù)流;事務(wù)需要從倉(cāng)庫(kù)送到系統(tǒng)中,顯然事務(wù)是另一個(gè)數(shù)據(jù)流。產(chǎn)生報(bào)表和處理事務(wù)這兩個(gè)處理在時(shí)間上明顯不匹配——每當(dāng)有一個(gè)事務(wù)發(fā)生時(shí)立即處理它,然而每天只產(chǎn)生一次訂貨報(bào)表。因此,用來(lái)產(chǎn)生訂貨報(bào)表的數(shù)據(jù)必須存放一段時(shí)間,也就是應(yīng)該有一個(gè)數(shù)據(jù)存儲(chǔ)。第三步:考慮數(shù)據(jù)流和數(shù)據(jù)存儲(chǔ)步驟一:從問(wèn)題描述中提取數(shù)據(jù)流圖的四種成分:

(1)數(shù)據(jù)的源點(diǎn)/終點(diǎn)采購(gòu)員是數(shù)據(jù)終點(diǎn),倉(cāng)庫(kù)管理員是數(shù)據(jù)源點(diǎn)。

(2)處理①采購(gòu)部需要報(bào)表→說(shuō)明沒(méi)有報(bào)表→要有一個(gè)“產(chǎn)生報(bào)表”的處②零件庫(kù)或出庫(kù)(事務(wù))→改變零件庫(kù)存量→要有“事務(wù)加工”處理。

(3)數(shù)據(jù)流①要求系統(tǒng)把定貨報(bào)表送給采購(gòu)部→“定貨報(bào)表”是一個(gè)數(shù)據(jù)流。②事務(wù)要從倉(cāng)庫(kù)送到系統(tǒng)中→“事務(wù)”是另一個(gè)數(shù)據(jù)流。

(4)數(shù)據(jù)存儲(chǔ)①當(dāng)有五個(gè)事務(wù)發(fā)生時(shí)立即要處理,但每天只產(chǎn)生一次定貨報(bào)表→說(shuō)明“事務(wù)加工”與“產(chǎn)生報(bào)表”這兩個(gè)處理在時(shí)間上的不匹配→因此,“產(chǎn)生定貨報(bào)表的數(shù)據(jù)”是一個(gè)數(shù)據(jù)存儲(chǔ)。②零件庫(kù)存量與庫(kù)存量臨界值均需保存→“庫(kù)存清單數(shù)據(jù)”是一個(gè)數(shù)據(jù)存儲(chǔ)。組成數(shù)據(jù)流圖的元素表

把數(shù)據(jù)流圖的4種成分都分離出來(lái)以后(上圖所示),就可以著手畫數(shù)據(jù)流圖了步驟二:步驟三:把基本系統(tǒng)模型細(xì)化,描繪系統(tǒng)的主要功能步驟四:對(duì)功能級(jí)數(shù)據(jù)流圖中描繪的系統(tǒng)主要功能進(jìn)一步細(xì)化X1321.11.21.41.32.12.21.1.11.1.22.1.32.1.22.1.12.2.22.2.32.2.1頂層中間層底層先全局后局部,先整體后細(xì)節(jié),先抽象后具體。0圖1圖2圖1.1圖2.1圖2.2圖分層DFD圖畫數(shù)據(jù)流圖的步驟

畫頂層的數(shù)據(jù)流圖列出系統(tǒng)的全部數(shù)據(jù)源點(diǎn)和終點(diǎn),將系統(tǒng)加工處理過(guò)程作為一個(gè)整體,即可得到頂層數(shù)據(jù)流圖。頂層圖描述了系統(tǒng)的輸入與輸出。畫各層的數(shù)據(jù)流圖對(duì)系統(tǒng)處理過(guò)程進(jìn)行逐步分解和細(xì)化,針對(duì)每層畫出數(shù)據(jù)流圖畫系統(tǒng)的內(nèi)部將系統(tǒng)的輸入和輸出數(shù)據(jù)流用一連串加工連接起來(lái)畫出總的數(shù)據(jù)流圖將最終數(shù)據(jù)流圖畫出,注意不要太復(fù)雜,要根據(jù)實(shí)際情況進(jìn)行布局。2.4

數(shù)據(jù)流圖

數(shù)據(jù)流圖中每個(gè)成分的命名是否恰當(dāng),直接影響數(shù)據(jù)流圖的可理解性。因此,給這些成分起名字時(shí)應(yīng)該仔細(xì)推敲。2.4.3

命名2.4數(shù)據(jù)流圖數(shù)據(jù)流命名時(shí)應(yīng)注意的問(wèn)題名字應(yīng)代表整個(gè)數(shù)據(jù)流的內(nèi)容,而不是僅僅反映它的某些成分不要使用空洞的、缺乏具體含義的名字在為某個(gè)數(shù)據(jù)流(或數(shù)據(jù)存儲(chǔ))起名字時(shí)遇到了困難,則很可能是因?yàn)閷?duì)數(shù)據(jù)流圖分解不恰當(dāng)造成的,應(yīng)該試試重新分解2.4

數(shù)據(jù)流圖為處理命名時(shí)應(yīng)注意的問(wèn)題通常先為數(shù)據(jù)流命名,然后再為與之相關(guān)聯(lián)的處理命名。名字應(yīng)該反映整個(gè)處理的功能,而不是它的一部分功能。名字最好由一個(gè)具體的及物動(dòng)詞加上一個(gè)具體的賓語(yǔ)組成。通常名字中僅包括一個(gè)動(dòng)詞,如果必須用兩個(gè)動(dòng)詞才能描述整個(gè)處理的功能,則把這個(gè)處理再分解成兩個(gè)處理可能更恰當(dāng)些。如果在為某個(gè)處理命名時(shí)遇到困難,則很可能是發(fā)現(xiàn)了分解不當(dāng)?shù)嫩E象,應(yīng)考慮重新分解。參考的原則:數(shù)據(jù)守恒

即每個(gè)加工至少應(yīng)有一個(gè)輸入數(shù)據(jù)流和一個(gè)輸出數(shù)據(jù)流數(shù)據(jù)流圖中各構(gòu)成元素的名稱必須具有明確的含義且能夠代表對(duì)應(yīng)元素的內(nèi)容或功能

父圖與子圖的“平衡”

應(yīng)按照層次給每個(gè)加工編號(hào),用于表明該加工所處的層次及上、下層的父圖與子圖的關(guān)系。在父圖中不要出現(xiàn)子圖中涉及的局部數(shù)據(jù)存儲(chǔ)文件

加工分解時(shí),盡量將問(wèn)題分解為大小均勻的幾個(gè)部分實(shí)例應(yīng)用指出下列數(shù)據(jù)流圖中存在的問(wèn)題。父圖子圖2.4數(shù)據(jù)流圖1、畫數(shù)據(jù)流圖的基本目的是利用它作為交流信息的工具。2、數(shù)據(jù)流圖的另一個(gè)主要用途是作為分析和設(shè)計(jì)的工具。3、數(shù)據(jù)流圖輔助物理系統(tǒng)的設(shè)計(jì)時(shí),以圖中不同處理的定時(shí)要求為指南,能夠在數(shù)據(jù)流圖上畫出許多組自動(dòng)化邊界,每組自動(dòng)化邊界可能意味著一個(gè)不同的物理系統(tǒng)2.4.4

用途主要內(nèi)容2.1可行性研究的任務(wù)2.2可行性研究過(guò)程2.3系統(tǒng)流程圖2.4數(shù)據(jù)流圖2.5數(shù)據(jù)字典2.6成本/效益分析

數(shù)據(jù)字典(DD):是用來(lái)定義數(shù)據(jù)流圖中的各個(gè)成分的具體含義的。它以一種準(zhǔn)確的、無(wú)二義性的說(shuō)明方式為系統(tǒng)的分析、設(shè)計(jì)及維護(hù)提供了有關(guān)元素的一致的定義和詳細(xì)的描述。

作用:它和數(shù)據(jù)流圖共同構(gòu)成了系統(tǒng)的邏輯模型,是需求規(guī)格說(shuō)明書的主要組成部分。數(shù)據(jù)字典是為分析人員查找數(shù)據(jù)流圖中有關(guān)名字的詳細(xì)定義而服務(wù)的,因此也像普通字典一樣,要把所有條目按一定的次序排列起來(lái),以便查閱。2.5

數(shù)據(jù)字典2.5數(shù)據(jù)字典2.5.1內(nèi)容

一般說(shuō)來(lái),數(shù)據(jù)字典應(yīng)該由對(duì)下列4類元素的定義組成。

A.

數(shù)據(jù)流條目

給出某個(gè)數(shù)據(jù)流的定義,通常是列出該數(shù)據(jù)流的各組成數(shù)據(jù)項(xiàng)。

例如:報(bào)名單=姓名+單位名+年齡+性別+課程名常用符號(hào):=、+、[|]、{}、()、C.數(shù)據(jù)項(xiàng)條目

數(shù)據(jù)項(xiàng)條目給出某個(gè)數(shù)據(jù)單項(xiàng)的定義,通常是數(shù)據(jù)項(xiàng)的值類型,允許的取值范圍。

B.文件條目

給出某個(gè)文件的定義,文件的定義通常是列出文件記錄的組成數(shù)據(jù)流。例如:

訂單文件=訂單編號(hào)+顧客名稱+產(chǎn)品名稱+訂貨數(shù)量+交貨日期D.加工條目加工類條目就是“加工小說(shuō)明”。一般應(yīng)該單獨(dú)列出。數(shù)據(jù)元素的別名就是該元素的其他等價(jià)的名字,出現(xiàn)別名主要有下述3個(gè)原因:2.5

數(shù)據(jù)字典2.5

數(shù)據(jù)字典由數(shù)據(jù)元素組成數(shù)據(jù)的方式只有下述3種基本類型:2.5.2定義數(shù)據(jù)的方法2.5

數(shù)據(jù)字典4種關(guān)系算符=意思是等價(jià)于(或定義為);+意思是和(即連接兩個(gè)分量);[]意思是或(即從方括弧內(nèi)列出的若干個(gè)分量中選擇一個(gè)),通常用“|”號(hào)隔開供選擇的分量;{}意思是重復(fù)(即重復(fù)花括弧內(nèi)的分量);()意思是可選(即圓括弧里的分量可有可無(wú))。

訂貨報(bào)表、事務(wù)和庫(kù)存清單的數(shù)據(jù)字典卡片:名稱:訂貨報(bào)表別名:訂貨信息描述:給采購(gòu)員的訂貨零件表定義:訂貨報(bào)表=零件編號(hào)+零件名稱+訂貨數(shù)量+目前價(jià)格+主要供應(yīng)者+次要供應(yīng)者位置:輸出到打印機(jī)名稱:事務(wù)別名:描述:對(duì)零件庫(kù)存量的每一次修改定義:事務(wù)=零件編號(hào)+零件名稱+[入庫(kù)|

出庫(kù)]+零件數(shù)量位置:從CRT終端輸入名稱:庫(kù)存清單別名:庫(kù)存文檔描述:記錄零件庫(kù)存量的文檔定義:庫(kù)存清單=零件編號(hào)+零件名稱+庫(kù)存量+庫(kù)存量臨界值位置:存儲(chǔ)在磁盤上數(shù)據(jù)字典例:餐館的電話服務(wù)如下:可以撥分機(jī)號(hào)和外線號(hào)。分機(jī)號(hào)是從7201~7299。外線號(hào)先撥9,然后是市話號(hào)碼或長(zhǎng)話號(hào)碼。長(zhǎng)話號(hào)碼是以區(qū)號(hào)和市話號(hào)碼組成。區(qū)號(hào)是從100~300中任意的數(shù)字串。市話號(hào)碼是以局號(hào)和分局號(hào)組成。局號(hào)可以是455、466、888、552中任意一個(gè)號(hào)碼。要求:寫出在數(shù)據(jù)字典中,電話號(hào)碼的數(shù)據(jù)條目的定義(即組成)。數(shù)據(jù)字典例

用數(shù)據(jù)字典的形式給出下面描述的“查詢”條目數(shù)據(jù)流。某個(gè)查詢系統(tǒng)中,有個(gè)名為“查詢”的數(shù)據(jù)流,目前“查詢”有三種類型,即“顧客狀況查詢”、“存貨查詢”和“發(fā)票存根查詢”。預(yù)計(jì)到年底還將增加3至4種其它類型查詢。系統(tǒng)每天約需處理2000次查詢,每天上午9:00——10:00是查詢的高峰,此時(shí)約有1000次查詢。

數(shù)據(jù)流名:查詢簡(jiǎn)述:系統(tǒng)處理的一個(gè)命令別名:無(wú)組成:[顧客狀況查詢存貨查詢發(fā)票存根查詢]數(shù)據(jù)量:2000次/天峰值:每天上午9:00——10:00有1000次注釋:到年底還將增加3至4種其它類型查詢2.5

數(shù)據(jù)字典2.5.3數(shù)據(jù)字典的用途2.5數(shù)據(jù)字典目前,數(shù)據(jù)字典幾乎總是作為CASE“結(jié)構(gòu)化分析與設(shè)計(jì)工具”的一部分實(shí)現(xiàn)的。在開發(fā)大型軟件系統(tǒng)的過(guò)程中,數(shù)據(jù)字典的規(guī)模和復(fù)雜程度迅速增加,人工維護(hù)數(shù)據(jù)字典幾乎是不可能的。2.5.4數(shù)據(jù)字典的實(shí)現(xiàn)2.5

數(shù)據(jù)字典在開發(fā)小型軟件系統(tǒng)時(shí)暫時(shí)沒(méi)有數(shù)據(jù)字典處理程序,建議采用卡片形式書寫數(shù)據(jù)字典,每張卡片上保存描述一個(gè)數(shù)據(jù)的信息。下面給出第2.4節(jié)的例子中幾個(gè)數(shù)據(jù)元素的數(shù)據(jù)字典卡片,以具體說(shuō)明數(shù)據(jù)字典卡片中上述幾項(xiàng)內(nèi)容的含義。2.5.4數(shù)據(jù)字典的實(shí)現(xiàn)2.5

數(shù)據(jù)字典主要內(nèi)容2.1可行性研究的任務(wù)2.2可行性研究過(guò)程2.3系統(tǒng)流程圖2.4數(shù)據(jù)流圖2.5數(shù)據(jù)字典2.6成本/效益分析2.6成本/效益分析軟件開發(fā)成本主要表現(xiàn)為人力消耗(乘以平均工資則得到開發(fā)費(fèi)用)。成本估計(jì)不是精確的科學(xué),因此應(yīng)該使用幾種不同的估計(jì)技術(shù)以便相互校驗(yàn)。下面簡(jiǎn)單介紹3種估算技術(shù)。2.6.1

成本估計(jì)代碼行技術(shù)任務(wù)分解技術(shù)自動(dòng)估計(jì)成本技術(shù)一.代碼行估算技術(shù)1.代碼行技術(shù)當(dāng)有以往開發(fā)的類似工程的歷史數(shù)據(jù)可供參考的話,此法很有效。它把開發(fā)每個(gè)軟件功能的成本和實(shí)現(xiàn)這個(gè)功能需要用的源代碼行數(shù)聯(lián)系起來(lái)。2.步驟

①確定功能將項(xiàng)目功能反復(fù)分解到足夠細(xì),直到可以對(duì)為實(shí)現(xiàn)該功能所需要的源代碼行數(shù)做出可靠的估算為止。

②算出各子功能的代碼行數(shù)的平均值首先,根據(jù)經(jīng)驗(yàn)和歷史數(shù)據(jù)對(duì)每個(gè)子功能估計(jì)其程序規(guī)模大小,即最小規(guī)模a,最大規(guī)模b和最可能的規(guī)模m。然后,利用公式計(jì)算源代碼行數(shù)的平均值Le:

Le=(a+4m+b)/6

③確定各子功能的代碼行成本和生產(chǎn)率(一般都告知)代碼行成本是指生產(chǎn)一條有效代碼需要的花費(fèi)(用元/行表示)生產(chǎn)率指每個(gè)人一個(gè)月所能生產(chǎn)的有效源代碼行數(shù)(用行/人月表示)

④計(jì)算各子功能的成本和人力(工作量)每個(gè)子功能的成本等于其代碼行平均值乘以其代碼行成本每個(gè)子功能的人力等于其代碼行平均值除以其生產(chǎn)率

⑤計(jì)算該項(xiàng)目的總代碼行數(shù)、總成本和總工作量

下圖給出了一個(gè)軟件項(xiàng)目的(開發(fā)圖形包)的基本數(shù)據(jù),采用代碼行估算技術(shù)來(lái)計(jì)算總代碼行數(shù)、總成本和總工作量二.任務(wù)估算技術(shù)步驟:首先,把軟件開發(fā)工程分解為若干個(gè)相對(duì)獨(dú)立的任務(wù),再分別估計(jì)每個(gè)單獨(dú)開發(fā)任務(wù)的成本,最后累加起來(lái)得出軟件開發(fā)工程的總成本。在估計(jì)每個(gè)任務(wù)的成本時(shí),通常先估計(jì)完成該項(xiàng)任務(wù)需要用的人力(以人月為單位),再乘以每人每月的平均工資而得出每個(gè)任務(wù)的成本任務(wù)估算技術(shù)例子2.6成本/效益分析成本/效益分析方法主要從四個(gè)方面考慮2.6.2

成本/效益分析的方法貨幣的時(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)n2.6成本/效益分析

例如,修改一個(gè)已有的庫(kù)存清單系統(tǒng),使它能在每天送給采購(gòu)員一份訂貨報(bào)表。修改已有的庫(kù)存清單程序并且編寫產(chǎn)生報(bào)表的程序,估計(jì)共需5000元;系統(tǒng)修改后能及時(shí)訂貨,這將消除零件短缺問(wèn)題,估計(jì)因此每年可以節(jié)省2500元,5年共可節(jié)省12500元。但是,不能簡(jiǎn)單地把5000元和12500元相比較,因?yàn)榍罢呤乾F(xiàn)在投資的錢,后者是若干年以后節(jié)省的錢。

假定年利率為12%,利用上面計(jì)算貨幣現(xiàn)在價(jià)值的公式可以算出修改庫(kù)存清單系統(tǒng)后每年預(yù)計(jì)節(jié)省的錢的現(xiàn)在價(jià)值,如下表所示。2.6成本/效益分析成本/效益分析實(shí)例(2)投資回收期所謂投資回收期是指使累計(jì)的經(jīng)濟(jì)效益等于最新投資所需要的時(shí)間。顯然,投資回收期超短,則工程值得投資。從上表中可見,兩年后累計(jì)節(jié)省4225.12元,比最新投資的5000元還少774.88元。到第三年再節(jié)省1779.45元,則=0.44

溫馨提示

  • 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)論