《《軟件工程》第二講 可行性研究》由會(huì)員分享,可在線閱讀,更多相關(guān)《《軟件工程》第二講 可行性研究(44頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、Click to edit Master title style,Click to edit Master text styles,Second level,Third level,Fourth level,Fifth level,*,*,單擊此處編輯母版標(biāo)題樣式,單擊此處編輯母版文本樣式,第二級(jí),第三級(jí),第四級(jí),第五級(jí),*,軟件工程導(dǎo)論,第2章 可行性研究,2.1,可行性研究的任務(wù),2.2 可行性研究過(guò)程,2.4 數(shù)據(jù)流圖,2.5 數(shù)據(jù)字典,2.6 成本/效益分析,目標(biāo),理解可行性研究過(guò)程,設(shè)計(jì)軟件系統(tǒng)的數(shù)據(jù)流圖,定義數(shù)據(jù)字典,2.1 可行性研究的任務(wù),2.1 可行性研究的任務(wù),對(duì)以后的行動(dòng)
2、方針,提出建議。,需要的時(shí)間長(zhǎng)短取決于工程的規(guī)模。,技術(shù)可行性,經(jīng)濟(jì)可行性,操作可行性,法律可行性,2.2 可行性研究過(guò)程(I),2.2 可行性研究過(guò)程(II),2.3 系統(tǒng)流程圖,概括地描繪物理系統(tǒng)的傳統(tǒng)工具。,用圖形符號(hào)以黑盒子形式,描繪組成系統(tǒng)的每個(gè)部件(程序,文檔,數(shù)據(jù)庫(kù),人工過(guò)程等)。,表達(dá)的是數(shù)據(jù)在系統(tǒng)各部件之間流動(dòng)的情況,而不是對(duì)數(shù)據(jù)進(jìn)行加工處理的控制過(guò)程,,是物理數(shù)據(jù)流圖而不是程序流程圖。,2.3.1 符號(hào),2.3.2 例子,某裝配廠有一座存放零件的倉(cāng)庫(kù),零件庫(kù)存量的每一次變化稱為一個(gè)事務(wù),庫(kù)存清單程序?qū)κ聞?wù)進(jìn)行處理,更新存儲(chǔ)在磁盤上的庫(kù)存清單主文件,并且把必要的定貨信息寫在磁
3、帶上。最后,每天由報(bào)告生成程序讀一次磁帶,并且打印出定貨報(bào)告。,圖中每個(gè)符號(hào)用黑盒子形式定義了組成系統(tǒng)的一個(gè)部件,然而并沒(méi)有指明每個(gè)部件的具體工作過(guò)程;圖中的箭頭確定了信息通過(guò)系統(tǒng)的邏輯路徑。,2.4 數(shù)據(jù)流圖,(Data Flow Diagram),一種圖形化技術(shù),,描繪信息流和數(shù)據(jù),從輸入移動(dòng)到輸出的過(guò)程中,所經(jīng)受的變換。,數(shù)據(jù)流圖和數(shù)據(jù)字典,(Data Dictionary)共同構(gòu)成了系統(tǒng)的邏輯模型。,描繪“做什么”而不考慮“怎樣做”。,基本元素,數(shù)據(jù)流(data flow):由一組固定成分的數(shù)據(jù)組成,代表數(shù)據(jù)的流動(dòng)方向,處理/加工(process):描述了輸入數(shù)據(jù)流到輸出數(shù)據(jù)流的變換,
4、即將輸入數(shù)據(jù)流加工成輸出數(shù)據(jù)流,數(shù)據(jù)存數(shù)/文件(file):使用文件、數(shù)據(jù)庫(kù)等保存某些數(shù)據(jù)結(jié)果供以后使用,源或宿(source or sink):由一組固定成分的數(shù)據(jù)組成,代表數(shù)據(jù)的流動(dòng)方向,2.4.3 數(shù)據(jù)流與數(shù)據(jù)加工之間的關(guān)系,示例:圖書訂購(gòu)系統(tǒng)DFD,圖書庫(kù)存,入庫(kù)單,圖書代理商,書庫(kù),管理,收費(fèi),制作,財(cái)務(wù)報(bào)表,財(cái)務(wù)報(bào)表,經(jīng)理,帳務(wù)數(shù)據(jù)庫(kù),制作,發(fā)書單,圖書,訂購(gòu),核準(zhǔn)的訂購(gòu)單,發(fā)書單,訂購(gòu)單,顧客,顧客,收費(fèi)數(shù)據(jù),帳單,數(shù)據(jù)流圖的層次結(jié)構(gòu)(I),為了表達(dá)數(shù)據(jù)處理過(guò)程的數(shù)據(jù)加工情況,需要采用,層次結(jié)構(gòu),的數(shù)據(jù)流圖。,按照系統(tǒng)的層次結(jié)構(gòu)進(jìn)行,逐步分解,,并以分層的數(shù)據(jù)流圖反映這種結(jié)構(gòu)關(guān)系
5、,能清楚地表達(dá)和容易理解整個(gè)系統(tǒng),數(shù)據(jù)流圖的層次結(jié)構(gòu)(II),在多層數(shù)據(jù)流圖中,,頂層流圖,僅包含一個(gè)加工,它代表被開發(fā)系統(tǒng)。它的輸入/輸出流是該系統(tǒng)的輸入/輸出數(shù)據(jù),底層流圖,是指其加工不需再做分解,它處在最底層,中間層流圖,則表示對(duì)其上層父圖的細(xì)化。它的每一加工可能繼續(xù)細(xì)化,形成子圖。,數(shù)據(jù)流圖的層次結(jié)構(gòu)(III),考務(wù),處理系統(tǒng),考試中心,考生,不合格報(bào)名單,閱卷站,錯(cuò)誤成績(jī)清單,成績(jī)清單,考生名單,合格標(biāo)準(zhǔn),報(bào)名單,準(zhǔn)考證,考生通知單,統(tǒng)計(jì)分析表,畫數(shù)據(jù)流圖的步驟,1畫系統(tǒng)的輸入和輸出,2畫系統(tǒng)內(nèi)部,3畫加工內(nèi)部,4重復(fù)第3步,直至每個(gè)尚未分解的加工都足夠簡(jiǎn)單(即不必再分解),2.4.
6、2 例子,假設(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)該再次定貨。,如何畫出數(shù)據(jù)流圖,確定數(shù)據(jù)的源點(diǎn)和終點(diǎn),,,確定處理/加工,確定數(shù)據(jù)流,確定數(shù)據(jù)存儲(chǔ),從問(wèn)題描述中,提取數(shù)據(jù)流圖的4種成分:,如何畫出數(shù)據(jù)流圖,數(shù)據(jù)的源點(diǎn)和終點(diǎn),“采購(gòu)部每天需要一張定貨報(bào)表”,“通過(guò)放在倉(cāng)庫(kù)中的CRT終端把事務(wù)報(bào)告給定貨系統(tǒng)”,
7、所以采購(gòu)員是數(shù)據(jù)終點(diǎn),而倉(cāng)庫(kù)管理員是數(shù)據(jù)源點(diǎn)。,處理/加工,,“采購(gòu)部需要報(bào)表”,顯然他們還沒(méi)有這種報(bào)表,因此必須有一個(gè)用于產(chǎn)生報(bào)表的處理。事務(wù)的后果是改變零件庫(kù)存量,然而任何改變數(shù)據(jù)的操作都是處理,因此對(duì)事務(wù)進(jìn)行的加工是另一個(gè)處理。,數(shù)據(jù)流和數(shù)據(jù)存儲(chǔ),系統(tǒng)把定貨報(bào)表送給采購(gòu)部,因此定貨報(bào)表是一個(gè)數(shù)據(jù)流;事務(wù)需要從倉(cāng)庫(kù)送到系統(tǒng)中,顯然事務(wù)是另一個(gè)數(shù)據(jù)流。頂層DFD不需要畫出數(shù)據(jù)存儲(chǔ),系統(tǒng)必須完成的兩個(gè)主要功能是“產(chǎn)生報(bào)表”和“處理事務(wù)”,它們將代替頂層圖的“定貨系統(tǒng)”,并加了編號(hào)。,系統(tǒng)必須增加了兩個(gè)數(shù)據(jù)存儲(chǔ):處理事務(wù)需要“庫(kù)存清單”數(shù)據(jù);產(chǎn)生報(bào)表和處理事務(wù)在不同時(shí)間,因此需要存儲(chǔ)“定貨信息”
8、。,系統(tǒng)功能的進(jìn)一步細(xì)化:,當(dāng)發(fā)生一個(gè)事務(wù)時(shí)必須首先接收它;,隨后按照事務(wù)的內(nèi)容修改庫(kù)存清單;,最后如果更新后的庫(kù)存量少于庫(kù)存量臨界值時(shí),則應(yīng)該再次定貨,也就是需要處理定貨信息。,因此,把“處理事務(wù)”分解為下述3個(gè)處理:“接收事務(wù)”、“更新庫(kù)存清單”和“處理定貨”,2.4.4 用途,利用它作為,交流信息的工具,。,僅僅使用4種基本符號(hào),而且不包含任何有關(guān)物理實(shí)現(xiàn)的細(xì)節(jié),因此,絕大多數(shù)用戶都可以理解和評(píng)價(jià)它。,另一個(gè)主要用途是作為,分析和設(shè)計(jì)的工具,。,這種描繪方法形象具體,比較容易驗(yàn)證它的正確性,用數(shù)據(jù)流圖,輔助物理系統(tǒng)的設(shè)計(jì),用數(shù)據(jù)流圖輔助物理系統(tǒng)的設(shè)計(jì),,以圖中不同處理的定時(shí)要求為指南,能
9、夠在數(shù)據(jù)流圖上畫出許多組自動(dòng)化邊界,每組自動(dòng)化邊界可能意味著一個(gè)不同的物理系統(tǒng),因此可以根據(jù)系統(tǒng)的邏輯模型考慮系統(tǒng)的物理實(shí)現(xiàn),另一種劃分自動(dòng)化邊界的方法建議,檢查和修改數(shù)據(jù)流圖的原則(I),圖形符號(hào)只限于前述,四種基本圖形元素,主圖,必須包括前述四種基本元素,,缺一不可,主圖,上的數(shù)據(jù)流必須封閉在外部實(shí)體之間,每個(gè)加工至少有,一個(gè)輸入數(shù)據(jù)流,和,一個(gè)輸出數(shù)據(jù)流,在數(shù)據(jù)流圖中,需,按層給加工框編號(hào),。編號(hào)表明該加工所處層次及上下層的,親子關(guān)系,規(guī)定任何一個(gè)數(shù)據(jù)流子圖,必須與它上一層的一個(gè)加工對(duì)應(yīng),兩者的輸入數(shù)據(jù)流和輸出數(shù)據(jù)流必須一致。此即,父圖與子圖的平衡,父圖與子圖的平衡,分層DFD中應(yīng)該不存
10、在矛盾和沖突,不存在遺漏的數(shù)據(jù)流、加工等元素,例:,1,2,3,A,B,C,M,N,T,2.1,2.2,2.3,N,P,S,T,Q,一致性的實(shí)例:父圖與子圖平衡,關(guān)鍵:數(shù)據(jù)流中的數(shù)據(jù)項(xiàng)全體平衡。,若 b=b1+b2,下面父圖與子圖平衡,e,2.5,2.4,2.3,2.2,2.1,b2,b1,a,c,d,b,2,1,a,c,d,e,(a)父圖,(b)子圖,2.5 數(shù)據(jù)字典,字典的用途,是供人查閱對(duì)不了解的條目的解釋,,數(shù)據(jù)字典的作用,是在軟件分析和設(shè)計(jì)的過(guò)程中,給人提供關(guān)于數(shù)據(jù)的描述信息。,數(shù)據(jù)字典是關(guān)于數(shù)據(jù)的信息的集合,也就是對(duì)數(shù)據(jù)流圖中包含的所有元素的定義的集合。,數(shù)據(jù)流圖和數(shù)據(jù)字典共同構(gòu)成
11、系統(tǒng)的邏輯模型。沒(méi)有數(shù)據(jù)字典數(shù)據(jù)流圖就不嚴(yán)格,然而沒(méi)有數(shù)據(jù)流圖數(shù)據(jù)字典也難于發(fā)揮作用。只有DFD與DD在一起,才能共同構(gòu)成系統(tǒng)的規(guī)格說(shuō)明。,2.5.1 數(shù)據(jù)字典的內(nèi)容,4類元素的定義組成:,(1)數(shù)據(jù)流,(2)數(shù)據(jù)流分量(數(shù)據(jù)項(xiàng)),(3)數(shù)據(jù)存儲(chǔ),(4)處理,定義的內(nèi)容有,:,名字,,,別名或編號(hào),,,分類,,,描述,,,定義,,,位置,,,其它,,等,用其他工具(如IPO圖或PDL)對(duì)數(shù)據(jù)處理描述更方便,,2.5.1 數(shù)據(jù)流描述,數(shù)據(jù)流名:,說(shuō)明:簡(jiǎn)要介紹作用即它產(chǎn)生的原因和結(jié)果,數(shù)據(jù)流來(lái)源:來(lái)自何方,數(shù)據(jù)流去向:去向何處,數(shù)據(jù)流組成:數(shù)據(jù)結(jié)構(gòu),數(shù)據(jù)量流通量:數(shù)據(jù)量,流通量,2.5.2 數(shù)據(jù)
12、元素詞條描述,數(shù)據(jù)元素名:,類型:數(shù)字(離散值,連續(xù)值),文字(編碼類型),長(zhǎng)度:,取值范圍:,相關(guān)的數(shù)據(jù)元素及數(shù)據(jù)結(jié)構(gòu):,2.5.3 數(shù)據(jù)文件詞條描述,數(shù)據(jù)文件名:,簡(jiǎn)述:存放的是什么數(shù)據(jù),輸入數(shù)據(jù):,輸出數(shù)據(jù):,數(shù)據(jù)文件組成:數(shù)據(jù)結(jié)構(gòu),存儲(chǔ)方式:順序,直接,關(guān)鍵碼,存取頻率:,2.5.4 加工邏輯詞條描述,加工名:,加工編號(hào):反映該加工的層次,簡(jiǎn)要描述:加工邏輯及功能簡(jiǎn)述,輸入數(shù)據(jù)流:,輸出數(shù)據(jù)流:,加工邏輯:簡(jiǎn)述加工程序,加工順序,2.5.5 源點(diǎn)及匯(終)點(diǎn)詞條描述,名稱:外部實(shí)體名,簡(jiǎn)要描述:什么外部實(shí)體,有關(guān)數(shù)據(jù)流:,數(shù)目:,課堂作業(yè),Page54 習(xí)題2.5,電話號(hào)碼=校內(nèi)電話|
13、校外電話,校內(nèi)電話=非零數(shù)字+3數(shù)字3,校外電話=本市號(hào)碼|外地號(hào)碼,本市號(hào)碼=數(shù)字零+8位號(hào)碼,外地號(hào)碼=數(shù)字零+區(qū)號(hào)+8位號(hào)碼,數(shù)字零=0,區(qū)號(hào)=3數(shù)字3,8位號(hào)碼=非零數(shù)字+7數(shù)字7,數(shù)字=數(shù)字零|非零數(shù)字,非零數(shù)字=1.9,2.6 成本/效益分析,開發(fā)一個(gè)軟件系統(tǒng)是一種投資,期望將來(lái)獲得更大的經(jīng)濟(jì)效益。經(jīng)濟(jì)效益通常表現(xiàn)為減少運(yùn)行費(fèi)用或(和)增加收入。為了對(duì)比成本和效益,首先需要估計(jì)它們的數(shù)量。,2.6.1 成本估計(jì),代碼行技術(shù),任務(wù)分解技術(shù),自動(dòng)估計(jì)成本技術(shù),2.6.2 成本/效益分析的方法(I),成本=開發(fā)成本+運(yùn)行費(fèi)用,效益=新系統(tǒng)節(jié)約的運(yùn)行成本+增加的收入,2.6.2 成本/效益
14、分析的方法(II),1.貨幣的時(shí)間價(jià)值,如果n年后能收入F元錢,那么這些錢的現(xiàn)在價(jià)值是P=F/(1+i),n,2.投資回收期,使累計(jì)的經(jīng)濟(jì)效益,等于最初投資所需要的時(shí)間。,3.純收入,在整個(gè)生命周期之內(nèi),系統(tǒng)的累計(jì)經(jīng)濟(jì)效益(折合成現(xiàn)在值)與投資之差。,4.投資回收率,把資金存入銀行或貸給其他企業(yè)能夠獲得利息,演講完畢,謝謝觀看!,內(nèi)容總結(jié),軟件工程導(dǎo)論。需要的時(shí)間長(zhǎng)短取決于工程的規(guī)模。圖中每個(gè)符號(hào)用黑盒子形式定義了組成系統(tǒng)的一個(gè)部件,然而并沒(méi)有指明每個(gè)部件的具體工作過(guò)程。圖中的箭頭確定了信息通過(guò)系統(tǒng)的邏輯路徑。描繪“做什么”而不考慮“怎樣做”。數(shù)據(jù)存數(shù)/文件(file):使用文件、數(shù)據(jù)庫(kù)等保存某些數(shù)據(jù)結(jié)果供以后使用。為了表達(dá)數(shù)據(jù)處理過(guò)程的數(shù)據(jù)加工情況,需要采用層次結(jié)構(gòu)的數(shù)據(jù)流圖。在多層數(shù)據(jù)流圖中,頂層流圖僅包含一個(gè)加工,它代表被開發(fā)系統(tǒng)。4重復(fù)第3步,直至每個(gè)尚未分解的加工都足夠簡(jiǎn)單(即不必再分解)。零件入庫(kù)或出庫(kù)稱為事務(wù),通過(guò)放在倉(cāng)庫(kù)中的CRT終端把事務(wù)報(bào)告給定貨系統(tǒng)。事務(wù)需要從倉(cāng)庫(kù)送到系統(tǒng)中,顯然事務(wù)是另一個(gè)數(shù)據(jù)流。系統(tǒng)必須增加了兩個(gè)數(shù)據(jù)存儲(chǔ):處理事務(wù)需要“庫(kù)存清單”數(shù)據(jù)。2.5.1 數(shù)據(jù)字典的內(nèi)容。(2)數(shù)據(jù)流分量(數(shù)據(jù)項(xiàng))。加工編號(hào):反映該加工的層次。加工邏輯:簡(jiǎn)述加工程序,加工順序。電話號(hào)碼=校內(nèi)電話|校外電話。演講完畢,謝謝觀看,