第2章可行性分析_第1頁
第2章可行性分析_第2頁
第2章可行性分析_第3頁
第2章可行性分析_第4頁
第2章可行性分析_第5頁
已閱讀5頁,還剩59頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第2章:可行性研究

可行性研究就是要回答“所定義的問題有可行的解決辦法嗎?”??尚行匝芯康哪康氖牵河米钚〉拇鷥r在盡可能短的時間內確定問題是否有解,以及是否值得去解。2.1可行性研究的任務可行性研究所需的時間取決于工程的規(guī)模,所需要的成本要占工程總成本的5%~10%??尚行匝芯康膬热荩?)技術可行性技術可行性要分析各種技術因素,例如:使用現有的技術能否實現這個系統(tǒng)?是否有勝任開發(fā)該項目的熟練技術人員?能否按期得到開發(fā)該項目所需的軟件、硬件資源?2)經濟可行性對經濟合理性進行評價,所要考慮的問題是:

這個系統(tǒng)的經濟效益能否超過它的開發(fā)成本?這就需要對項目進行價格/利益分析,即“投入/產出”分析。由于利益分析取決于軟件系統(tǒng)的特點,因此在軟件開發(fā)之前,很難對新系統(tǒng)產生的效益作出精確的定量描述,所以往往采用一些估算方法。3)操作可行性操作可行性評價系統(tǒng)運行后會引起的各方面變化,如:對組織機構管理模式、用戶工作環(huán)境等產生的影響。4)社會可行性社會可行性主要討論法律方面和使用方面的可行性。例如,被開發(fā)軟件的權利歸屬問題、軟件所使用的技術是否會造成侵權等問題。2.2可行性研究的步驟

1)復查系統(tǒng)規(guī)模和目標;2)研究目前正在使用的系統(tǒng);3)導出新系統(tǒng)的高層邏輯模型(數據流圖、數據字典);4)重新定義問題;

5)導出和評價供選擇的解法(物理解決方案);6)推薦行動方案;7)草擬開發(fā)計劃;8)書寫文檔提交審查。

2.2可行性研究的步驟

2.3系統(tǒng)流程圖(描繪物理系統(tǒng)的工具)2.3.1符號

符號名稱說明處理如:程序,處理機,人工加工輸入/輸出連接換頁連接數據流表示輸入或輸出同一頁上圖的連接不同頁上圖的連接指明數據流動方向圖2.1基本符號符號名稱說明穿孔卡片文檔磁帶聯機存儲磁盤磁鼓顯示人工輸入人工操作輔助操作通信鏈路穿孔卡片輸入/輸出,或穿孔卡片文件打印輸出,或打印終端輸入數據磁帶輸入/輸出,或表示磁帶文件任何種類磁盤存儲,如磁盤、磁鼓等磁盤輸入/輸出,或磁盤上文件、數據庫磁鼓輸入/輸出,或磁鼓上文件、數據庫顯示器部件人工輸入數據,如填寫表格人工完成的處理使用輔助設備進行的脫機操作通過遠程通信線路傳送數據圖2.2系統(tǒng)符號2.3.2例子

事務庫存清單程序報告生成程序定貨信息定貨報告庫存清單主文件圖2.3庫存清單系統(tǒng)的系統(tǒng)流程圖2.4數據流圖(描繪數據在系統(tǒng)中流動的邏輯過程)2.4.1符號

或或或數據源點或終點變換數據的處理數據存儲數據流圖2.4基本符號的含義TABC*TABC*附加符號TABC+TABC+注意:“處理”可表示:單個程序、一系列程序、程序的一個模塊、人工處理過程等等;“數據存儲”可表示:一個文件、文件的一部分、數據庫記錄等等;數據流圖忽略出錯處理、打開文件、關閉文件。

假設一家工廠的采購部每天需要一張定貨報表,報表按零件編號排序,表中列出所有需要再次定貨的零件。對于每個需要再次定貨的零件應該列出下述數據:零件編號,零件名稱,定貨數量,目前價格,主要供應者,次要供應者。零件入庫或出庫稱為事務,通過放在倉庫中的CRT終端把事務報告給定貨系統(tǒng)。當某種零件的庫存數量少于庫存量臨界值時就應該再次定貨。2.4.2例子2.4.2繪制數據流圖的例子

事務庫存清單程序報告生成程序定貨信息定貨報告庫存清單主文件圖2.3庫存清單系統(tǒng)的系統(tǒng)流程圖

分析:數據的源點和終點:“采購部每天需要一張定貨報表”,“通過放在倉庫中的CRT終端把事務報告給定貨系統(tǒng)”處理:“采購部需要報表”數據流:定貨報表、事務數據存儲:產生報表和處理事務這兩個處理在時間上明顯不匹配——每當有一個事務發(fā)生時立即處理它,然而每天只產生一次定貨報表。2.4.2例子組成該例子的數據流圖的元素源點/終點處理采購員倉庫管理員產生報表處理事務數據流數據存儲訂貨報表零件編號零件名稱訂貨數量目前價格主要供應商次要供應商事務零件編號事務類型數量訂貨信息(見訂貨報表)庫存清單零件編號庫存量庫存量臨界值2.4.2繪制數據流圖的例子

倉庫管理員采購員定貨系統(tǒng)事務定貨報表圖2.5定貨系統(tǒng)的基本系統(tǒng)模型2.4.2繪制數據流圖的例子庫存清單倉庫管理員采購員事務定貨報表圖2.6定貨系統(tǒng)的功能級數據流圖處理事務1產生報表2D1庫存清單D2定貨信息定貨信息定貨信息上述數據流圖所描述的功能夠詳細了嗎?2.4.2繪制數據流圖的例子倉庫管理員采購員事務定貨報表圖2.7定貨系統(tǒng)進一步分解后的數據流圖更新庫存清單1.2產生報表2D1庫存清單D2定貨信息接收事務1.1處理定貨1.3庫存清單定貨信息定貨信息1)為數據流(或數據存儲)命名A.名字應該代表整個數據流(或數據存儲)的內容;B.不要使用空洞的、缺乏具體含義的名字(如“數據”、“輸入”);

2.4.3命名C.如果為某個數據流(或數據存儲)起名字時遇到困難,則很可能是因為對數據流圖的分解不恰當造成的,應該試試重新分解數據流圖;

2)為處理命名A.通常先為數據流命名,然后再為與之相關聯的處理命名;B.名字應該反映整個處理的功能;C.應該盡量避免空洞籠統(tǒng)的動詞做名字,如“處理”、“加工”;

D.通常用一個動詞命名,如果必須用兩個動詞才能描述整個處理的功能,則可能要把這個處理分解成兩個處理更恰當;E.如果在為某個處理命名時遇到困難,則很可能是發(fā)現了分解不當的情況,應考慮重新分解。通常,為“數據源點/終點”命名時,采用它們在問題域中習慣使用的名字(如“倉庫管理員”、“采購員”)。1)利用它作為交流信息的工具;2)作為軟件分析和設計的工具。2.4.4數據流圖的用途

2.4.4數據流圖的用途倉庫管理員采購員事務定貨報表圖2.8這種自動化邊界建議以聯機方式更新庫存清單更新庫存清單1.2產生報表2D1庫存清單D2定貨信息接收事務1.1處理定貨1.3庫存清單定貨信息定貨信息圖2.8對應的物理實現硬件方案2.4.4數據流圖的用途

倉庫管理員采購員事務定貨報表圖2.9這種自動化邊界暗示以批量方式更新庫存清單更新庫存清單1.2產生報表2D1庫存清單D2定貨信息接收事務1.1處理定貨1.3庫存清單定貨信息定貨信息D3事務圖2.9對應的物理實現硬件方案

數據字典:對數據流圖中包含的所有元素的定義的集合;可行性研究階段,數據流圖與數據字典共同構成系統(tǒng)的邏輯模型。2.5數據字典

2.5.1數據字典的內容數據字典應該對下列元素進行定義:1)數據流;2)數據元素(數據流分量);3)數據存儲;4)處理。

1)數據元素字典定義其定義的基本內容有:A.數據元素編號、名稱及其含義;B.數據類型和長度;C.合理取值;D.其他內容,如它與其它數據的邏輯關系等。2.5.2定義數據的方法數據元素字典定義實例:數據元素編號:DC001數據元素名稱:考試成績別名:成績、分數簡述:學生考試成績,分五個等級類型/長度:兩個字節(jié),字符類型取值/含義:優(yōu)[90-100]良[80-89]中[70-79]及格[60-69]不及格[0-59]有關數據項或結構:學生成績檔案有關處理邏輯:計算成績

圖2.10數據元素字典定義數據元素的別名就是該元素的其他等價的名字,出現別名主要有下述3個原因:(1)對于同樣的數據,不同的用戶使用了不同的名字;(2)一個分析員在不同時期對同一個數據使用了不同的名字;(3)兩個分析員分別分析同一個數據流時,使用了不同的名字。雖然應該盡量減少出現別名,但是不可能完全消除別名。2)數據流字典定義其定義的基本內容有:A.數據流編號及名稱;B.數據流來源;C.數據流去處;D.數據流的組成;E.流通量;F.峰值。數據流字典定義實例:數據流編號:DF001數據流名稱:訂票單簡述:訂票時填寫的訂票單數據流來源:外部實體“乘客”數據流去處:處理邏輯“預訂機票”數據流組成:訂單編號日期乘客號航班號狀態(tài)訂單失效日期流通量:每天300份高峰值流通量:每天早上9:00,約160份圖2.11數據流字典定義3)數據存儲字典定義其定義的基本內容有:A.數據存儲編號及名稱;B.數據存儲的組成;C.其它要求。4)數據處理字典定義其定義的基本內容有:A.數據處理編號及名稱;B.簡單描述;C.輸入/輸出;D.功能描述;E.有關數據存儲。數據處理字典定義實例:數據處理編號:DP001數據處理名稱:編輯訂票簡述:接收從終端錄入的訂票單,檢驗是否正確輸入:乘客訂單,來源:外部實體“乘客”輸出:1.合格訂單,去處:處理邏輯“確定訂票”2.不及格訂單,去處:外部實體“乘客”功能描述:……(略)圖2.12數據處理字典定義5)組成數據項的表示方法

=表示“等價于”或“定義為”

+表示“與”

[]與|表示“或”

{}表示重復

()表示可選項通訊錄={通訊地址}通訊地址=姓名+郵編+[省|直轄市|自治區(qū)]+[市|縣]+街道+門牌號+(電話)

1.作為分析階段的重要工具;2.數據元素的控制信息非常有用;3.數據字典是開發(fā)數據庫的第一步,而且是很有價值的一步。2.5.3數據字典的用途實現數據字典:1)程序處理;2)卡片式人工書寫;2.5.4數據字典的實現2.6成本/效益分析

1)代碼行技術軟件成本=每行代碼的平均成本×估計的源代碼總行數

2.6.1成本估計2)任務分解技術

軟件開發(fā)項目分解為若干個相對獨立的任務,分別估計每個單獨任務的成本:

單獨任務成本=任務所需人力估計值×每人每月平均工資;

軟件開發(fā)項目總成本估計=各個單獨任務成本估計值之和。常用的辦法是按開發(fā)階段劃分任務,典型環(huán)境下各個開發(fā)階段需要使用的人力百分比大致如下:任務人力(%)可行性研究需求分析設計編碼與單元測試綜合測試總計5102520401003)自動估計成本技術采用自動估計成本的軟件工具估計。

1)Putnam模型1978年Putnam提出的,一種動態(tài)多變量模型:軟件開發(fā)成本估算的經驗模型:Ck為技術狀態(tài)常數,它反映“妨礙開發(fā)進展的限制”,取值因開發(fā)環(huán)境而異,見下表:Ck的典型值開發(fā)環(huán)境開發(fā)環(huán)境舉例2000差沒有系統(tǒng)的開發(fā)方法,缺乏文檔和復審8000好有合適的系統(tǒng)的開發(fā)方法,有充分的文檔和復審11000優(yōu)有自動的開發(fā)工具和技術2)COCOMO模型(constructivecostmodel)

這是由TRW公司開發(fā),Boehm提出的結構化成本估算模型,是一種精確的、易于使用的成本估算方法。基本COCOMO模型估算工作量和進度的公式如下:

工作量:

MM=r×(KDSI)c

(人月)

開發(fā)時間:

TDKV=a×(MM)b

(月)DSI:源指令條數,不包括注釋,1KDSI=1000DSIMM:開發(fā)工作量(以人月計),1MM=19人日=152人時=1/12人年

經驗常數r,c,a,b取決于項目的總體類型COCOMO模型中,考慮開發(fā)環(huán)境,軟件開發(fā)項目的類型可以分為3種:1)組織型(organic)

相對較小、較簡單的軟件項目。開發(fā)人員對開發(fā)目標理解比較充分,與軟件系統(tǒng)相關的工作經驗豐富,對軟件的使用環(huán)境很熟悉,受硬件的約束較小,程序的規(guī)模不是很大(<50000行)2)嵌入型(embedded)

要求在緊密聯系的硬件、軟件和操作的限制條件下運行,通常與某種復雜的硬件設備緊密結合在一起。對接口,數據結構,算法的要求高。軟件規(guī)模任意。如大而復雜的事務處理系統(tǒng),大型/超大型操作系統(tǒng),航天用控制系統(tǒng),大型指揮系統(tǒng)等。3)半獨立型(semidetached)

介于上述兩種軟件之間。規(guī)模和復雜度都屬于中等或更高。最大可達30萬行。COCOMO模型按其詳細程度可以分為三級:1)基本COCOMO模型是一個靜態(tài)單變量模型,它用一個以已估算出來的原代碼行數(LOC)為自變量的經驗函數計算軟件開發(fā)工作量?;綜OCOMO模型通過統(tǒng)計63個歷史項目的歷史數據,得到如下計算公式:總體類型工作量所需開發(fā)時間組織型MM=2.4×(KDSI)1.05TDKV=2.5×(MM)0.38半獨立型MM=3.0×(KDSI)1.12TDKV=2.5×(MM)0.35嵌入型MM=3.0×(KDSI)1.20TDKV=2.5×(MM)0.322)中級COCOMO模型在基本COCOMO模型的基礎上,再用涉及產品、硬件、人員、項目等方面的影響因素調整工作量的估算。3)詳細COCOMO模型包括中級COCOMO模型的所有特性,但更進一步考慮了軟件工程中每一步驟(如分析、設計)的影響。1)貨幣的時間價值

假設年利率為i,如果現在存入P元錢,則n年以后可以得到的錢數為:

反之,如果n年后能收入F元錢,那么這些錢現在的價

溫馨提示

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

評論

0/150

提交評論