




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
SoftwareEngineering
CCUTSE2013秋軟件工程導論第2章可行性研究FEASIBILITYSTUDY可行性研究的時機可行性研究FEASIBILITYSTUDY可行性研究的目標可行性研究的任務
概念可行性研究的過程
過程系統流程圖
工具數據流圖
工具數據字典
工具成本/效益分析
方法主要內容在最短的時間內花最小的代價確定問題:是否有解?(能不能)是否可解?(行不行)是否值得解?(值不值)避免資源無謂的浪費
可行性研究的目標不是解決問題,是確定問題是否值得解是壓縮簡化的系統分析和系統設計過程在高層次上以抽象方式進行成本占預期總成本的5%~10%高層次:忽略細節
抽象:抓住本質2.1可行性研究的任務可行性研究:壓縮的分析與設計過程1.澄清問題定義規模和目標:肯定or改正約束與限制:清楚列舉2.導出系統邏輯模型可選的系統實現方案每個方案可行性研究(經濟、技術、操作、法律、社會)每個方案的進度計劃3.項目建議(不可行:停止,可行:推薦方案+計劃)2.1可行性研究的任務可行性研究的任務:(1)技術可行性(有無?掌握?應用?)(2)經濟可行性(有錢?找到錢?賺錢?賺多少)(3)操作可行性(行得通?)(4)法律可行性(違背相關法律?)(5)社會可行性(效益?接受?)2.1可行性研究的任務(1)經濟可行性:這個系統的經濟效益能超過他的開發成本嗎?
經濟可行性研究主要進行成本效益分析,包括估計項目的開發成本,估算開發成本是否高于項目預期的全部利潤。分析系統開發對其他產品或利潤所帶來的影響。2.1可行性研究的任務(2)技術可行性:使用現有的技術能實現這個系統嗎?根據系統功能、性能及實現系統的各項約束條件,從技術的角度研究系統實現的可行性。是難度最大的、最重要的工作。系統目標、功能和性能的不確定性會給技術可行性論證帶來許多困難。包括:(1)風險分析:在給出的限制范圍內,能否設計出系統,并實現必要的功能和性能。(2)資源分析:研究開發系統的人員是否存在問題?可用于建立系統的其他資源,如硬件、軟件等是否具備?(3)技術分析:相關技術的發展是否支持這個系統。2.1可行性研究的任務(3)操作可行性系統的操作方式在這個用戶阻止內行得通嗎?操作可行性能為新系統規定的運行方式是否可行?如果新系統是建立在原來已擔負其他任務的計算機系統上的,就不能要求它在實時在線狀態下運行,以免與原有的任務相矛盾。2.1可行性研究的任務(4)法律可行性法律可行性是指研究在系統開發過程中可能涉及的各種合同、侵權、責任以及各種與法律相抵觸的問題。2.1可行性研究的任務(5)社會可行性
是否會給社會帶來效益社會是否接受?2.1可行性研究的任務可行性研究最根本的任務是對以后的行動路線提出建議:如果問題沒有可行的解,應該建議停止這項軟件項目的開發;如果問題值得解,應該推薦一個較好的解決方案,并且為項目制定一個初步的計劃。可行性研究的根本任務2.1可行性研究的任務(1).復查系統規模和目標(2).研究目前正在使用的系統(3).提出新系統的高層邏輯模型(4).重新定義問題(5).導出和評價供選擇的方案(6).推薦行動方針(7).草擬開發計劃(8).書寫文檔提交審查2.2可行性研究的過程(1).復查系統規模和目標
訪問關鍵人物 閱讀分析有關資料 確認項目報告 改正模糊敘述 清晰限制和約束描述使分析員正在要解決的問題是用戶所提出的問題。2.2可行性研究的過程(2).研究目前正在使用的系統現有的系統是構造新系統的基礎、是信息的重要來源。現有系統的文檔資料的閱讀、分析和研究,實地考察。總結出現有系統的優點和不足,進而得出新系統的雛形。與其他系統的聯系。畫出系統的高層系統流程圖。了解現有系統能做什么而不是怎么做!qhliu1003@126.Com
2.2可行性研究的過程(3).提出新系統的高層邏輯模型導出現有系統的高層邏輯模型:數據流圖。設想目標系統邏輯模型:數據流圖。形成目標系統的數據字典。邏輯模型=數據流圖+數據字典2.2可行性研究的過程(4).進一步定義問題分析員和用戶以新系統的邏輯模型為基礎復查問題定義、工程規模、目標和約束條件修改已發現的錯誤形成對新系統一致的意見2.2可行性研究的過程前四個步驟是一個循環定義問題導出試探解分析問題完全符合系統目標2.2可行性研究的過程(5).提出和評價供選擇的方案提出若干高層次、抽象的供比較和選擇的解決方案從技術、經濟、操作等方面進行分析比較,研究可行性估算開發成本、運行費用和純收入對每個可能的系統進行成本/效益分析。2.2可行性研究的過程(6)推薦行動方針關鍵性決定:是否繼續開發?(1)本項目的開發價值(2)推薦這個方案的理由(3)詳細的成本效益/分析2.2可行性研究的過程時間進度人員組織物資需求成本分析(7)草擬開發計劃2.2可行性研究的過程書寫文檔開會論證得出結論是否繼續(8)書寫文檔提交審查2.2可行性研究的過程可行性研究報告的內容1.引言:說明編寫本文檔的目的,項目的名稱、背景,本文檔用到的專門術語和參考資料。2.可行性研究前提:說明開發項目的功能、性能和基本要求,達到的目標,各種限制條件,可行性研究方法和決定可行性的主要因素。3.對現有系統的分析:說明現有系統的處理流程和數據流程,工作負荷,各項費用支出,所需各類專業技術人員和數量,所需各種設備,現有系統存在什么問題。4.所建議系統的技術可行性分析:對所建議系統的簡要說明,處理流程和數據流程,與現有系統比較的優越性,采用所建議系統對用戶的影響,對各種設備、現有軟件、開發環境和運行環境的影響,對經費支出的影響,對技術可行性的評價。2.2可行性研究的過程可行性研究報告的內容5.所建議系統的經濟可行性分析:說明所建議系統的各種支出,各種效益,收益/投資比,投資回收周期。6.社會因素可行性分析:說明法律因素對合同責任、侵犯專利權和侵犯版權等問題的分析,說明用戶使用可行性是否滿足用戶行政管理、工作制度和人員素質的要求。7.其他可供選擇方案:逐一說明其他可供選擇的方案,并說明未被推薦的理由。8.結論意見:說明項目是否能開發,還需什么條件才能開發,對項目目標有何變動等。2.2可行性研究的過程2.3系統流程圖
1.系統流程圖的作用系統流程圖是描述物理系統的工具。所謂物理系統,就是一個具體實現的系統,也就是描述一個單位、組織的信息處理的具體實現的系統。在可行性研究中,可以通過畫出系統流程圖來了解要開發的項目的大概處理流程、范圍和功能等。系統流程圖不僅能用于可行性研究,還能用于需求分析階段。系統流程圖可用圖形符號來表示系統中的各個元素,例如,人工處理、數據處理、數據庫、文件和設備等。它表達了系統中各個元素之間的信息流動的情況。系統流程圖作用
系統流程圖是描述物理系統的工具。物理系統:就是一個具體實現的系統,也就是描述一個單位、組織的信息處理的具體實現的系統。系統流程圖可用圖形符號(黑盒子)來表示系統中的各個部件,例如,人工處理、數據處理、數據庫、文件和設備等。系統流程圖表達了系統中各個元素之間的信息流動的情況。2.3系統流程圖系統流程圖符號2.3系統流程圖系統流程圖符號2.3系統流程圖系統流程圖案例1圖書館借書系統流程圖讀者驗證圖書查詢檢書卡圖書數據庫索書單借書借書單取書2.3系統流程圖
訂貨信息訂貨報告庫存清單程序庫存清單主文件事務報告生成程序系統流程圖案例22.3系統流程圖數據流圖(DataFlowDiagram),是描述數據處理過程的工具。以圖形的方式描繪數據在系統中流動和處理的過程,它只反映系統必須完成的邏輯功能,是一種功能模型。數據流圖強調的是數據流和處理過程,只關心系統做什么,而不關心系統怎么做;一般不考慮時序問題,即不表示過程的序列;只有數據流,沒有控制流;既不反映判斷和控制條件,也不反映循環過程。2.4數據流圖(DFD)數據流圖的基本圖形元素有4種,有時為了使數據流圖便于在計算機上輸入和輸出,免去畫曲線、斜線和圓的困難,常使用對應的另一套符號,這兩套符號完全等價。數據流圖(DFD)符號2.4數據流圖1.數據流數據流是數據在系統內傳播的路徑,由一組成分固定的數據項組成。如訂票單由旅客姓名、年齡、單位、身份證號、日期及目的地等數據項組成。由于數據流是流動中的數據,所以必須有流向.即在加工之間、加工與源點終點之間、加工與數據存儲之間流動。除了與數據存儲之間的數據流不用命名外,數據流應該用名詞或名詞短語命名。同一數據流圖上不能有同名的數據流。多個數據流可以指向同一個加工,也可以從一個加工發出許多數據流。2.4數據流圖2.加工加工也稱為數據處理,是以數據結構或數據內容作為加工對象,它對數據流進行某些操作或變換。每個加工也要有名字,通常是動詞短語,簡明地描述完成什么加工。在分層的數據流圖中,加工還應編號。3.數據存儲數據存儲指暫時保存的數據,它可以是數據庫文件或任何形式的數據組織。流向數據存儲的數據流可理解為寫入文件,或查詢文件,從數據存儲流出的數據可理解為從文件讀數據或得到查詢結果。2.4數據流圖4.數據源點和終點數據源點和終點是軟件系統外部環境中的實體(包括人員、組織或其他軟件系統),統稱外部實體。它們是為了幫助理解系統界面而引入的,一般只出現在數據流圖的頂層圖中,表示了系統中數據的來源和去處。有時為了增加數據流圖的清晰性,防止數據流的箭頭線太長,在一張圖上可重復畫同名的源/終點(如某個外部實體既是源點也是終點的情況),在方框的右下角加斜線則表示是一個實體。有時數據存儲也需重復標識。2.4數據流圖5.數據流圖的幾種附加符號在數據流圖中,如果有兩個以上數據流指向一個加工,或從一個加工中引出兩個以上的數據流,這些數據流之間存在一定的關系。在圖2-3中給出描述這些關系所用符號及其含義。其中:* 表示相鄰兩個數據流之間是“與”的關系(同時出現);+ 表示相鄰兩個數據流之間是“或”的關系;+ 表示相鄰兩個數據流只能選取其中一個(互斥關系)。2.4數據流圖*和+或和+或圖2-3數據流圖附加符號使用示例2.4數據流圖注釋(a)數據A和數據B同時輸入時才能轉換成數據C(b)數據A轉換成數據B和數據C(c)數據A或數據B,也可以是數據A和數據B兩者轉換成數據C(d)數據A轉換成數據B或數據C,也可是數據B
和數據C兩者(e)只有數據A或只有數據B轉換成數據C(f)數據A轉換成數據B或數據C兩者之一2.4數據流圖數據流圖(DFD)案例
病員監視系統基本模型病員監視系統病員護士護士病員病歷病情信號報告警告信號病歷數據請求提出報告2.4數據流圖數據流圖(DFD)案例
病員監視系統細化模型本地監視中央監視報告產生更新病歷護士護士病員病員病歷病員的病情界限警告信號病員數據請求報告經過整理后的病員數據病情信號2.4數據流圖數據流圖(DFD)案例
病員監視系統細化模型分解病情信號整理病員數據檢查是否超出界限產生警告信號時鐘整理后的病員數據日期時間病員病情界限體溫血壓脈搏病員數據警告信號2.4數據流圖(1)抽象性:在數據流圖中,具體的組織機構、工作場所、物質流等都去掉,僅剩下信息和數據存儲、流動、使用以及加工的情況。這有助于抽象地總結出信息處理的內部規律。(2)概括性:數據流圖把系統對各種業務的處理過程聯系起來考慮,形成一個總體,具有概括性。數據流圖描述的主體是抽象出來的數據。(3)層次性:數據流圖具有層次性,一個系統將用多層次的數據流圖描述。數據流圖的特性2.4數據流圖設計數據流圖的步驟畫數據流圖的目的是讓用戶明確系統中數據流動和處理的情況,即系統的基本邏輯功能。對于一個大型系統來說,數據流圖的表示方法不是唯一的。較好的方法是分層次地描述系統。頂層數據流圖描述系統總體概貌,表明系統關鍵功能,然后分別把每個關鍵功能適當地詳細描述。這樣分層次描述,便于用戶逐步深入地了解一個復雜的系統。畫數據流圖的步驟如下:2.4數據流圖1.確定系統的輸入和輸出第一步應先確定系統的輸入和輸出,即先畫系統頂層數據流圖。只有確定了系統的輸入和輸出然后才能對系統的內部情況進行考慮。可以列出系統的全部數據源和數據終點,將系統加工處理過程作為一個整體,就可得頂層數據流圖。頂層流圖只包含一個加工,用以表示被開發的系統,然后考慮系統有哪些輸入數據,這些輸入數據從哪里來;有哪些輸出數據,輸出到哪里去。這樣就定義了系統的輸入、輸出數據流。頂層圖作用在于表明被開發系統的范圍及它和周圍環境的數據交換關系。頂層圖只有一張。圖2-4為圖書管理系統的頂層圖。2.4數據流圖圖2-4圖書管理系統頂層圖2.4數據流圖2.畫系統內部即畫下層數據流圖。對于一個大型的系統,用一張數據流圖畫出所有的數據流和處理邏輯,圖紙將極其龐大和復雜,因而難以繪制,也難以理解。為了控制復雜性,便于理解,需要采用自頂向下、由外向內逐層分解的方法進行,即用分層的方法將一個數據流圖分解成幾個數據流圖來分別表示。一套分層數據流圖由頂層、底層和中間層的數據流圖組成。一般將層號從0開始編號,畫0層數據流圖時,一般根據當前系統工作分組情況,并按新系統應有的外部功能,分解頂層流圖的系統為若干子系統,決定每個子系統間的數據接口和活動關系。如圖書管理系統按功能可分成借書、還書和管理員查詢統計三部分,這三部分通過借書文件、庫存文件的數據存儲聯系起來,0層數據流圖如圖2-5所示。2.4數據流圖圖2-5圖書管理系統0層圖2.4數據流圖畫更下層數據流圖時,則分解上層圖中的加工,一般沿著輸入流的方向,凡數據流的組成或值發生變化的地方則設置一個加工,一直進行到輸出數據流(也可從輸出流到輸入流方向畫)。如加工的內部還有數據流,則對此加工的下層圖中繼續分解,直到每個加工足夠簡單,不能分解為止,不再分解的加工稱基本加工。假如對圖2-5“審核借書”這一加工的功能描述為:輸入讀者借書證,系統首先檢查借書證是還有效,若有效,對于每一次借書的讀者,在借書文件中建立檔案;否則,查閱借書文件,檢查該讀者所借圖書是否超過超過10本,若已達10本,拒絕借書;未達10本,辦理借書(檢查庫存是否有這本書、修改庫存文件并將借書情況記入借書文件)。從功能描述可知,“審核借書”還可以繼續分解,得到圖2-6所示圖書管理系統1層圖。2.4數據流圖圖2-6圖書管理系統1層圖(借書審核子圖)2.4數據流圖數據流圖的用途畫數據流圖目的是利用它作為交流信息的工具,數據流圖的作用主要有以下幾條:1.系統分析員用這種工具可以自頂向下分析系統信息流程。2.可在圖上畫出需要計算機處理的部分。3.根據數據存貯,進一步作數據分析,向數據庫設計過渡。4.根據數據流向,定出存取方式。5.對應一個處理過程,用相應的語言、判定表等工具表達處理方法。利用數據流圖把對現有系統的認識或目標系統的設想描繪出來,供有關人員審查確認。由于在數據流圖中通常僅使用四種基本符號,而且不包含任何有關物理實現的細節,因此,絕大多數用戶都可以理解和評價它。2.4數據流圖需要注意的問題
畫數據流圖需要注意的問題有以下幾點:1.命名:不論數據流、數據存儲還是加工,合適的命名使人們易于理解其含義。(1)數據流的命名:為每一個數據流命名。數據流的命名與數據流圖的可理解性密切相關。命名時應避免使用空洞的名字,例如“數據”、“信息”、“輸出”等等,因為這些名字并沒有反映出任何實質性的內容。如果發現難以命名,不妨考慮重新分解數據流或處理過程,很可能原來的組成不合適。名字要反映整個數據流的含義,而不是其中某一部分。2.4數據流圖(2)加工的命名:為加工命名時,先命名數據流,再命名加工,這樣的次序反映了自上而下方法的特性。例如圖2-7(a)中,當數據流已經命名后,加工的命名可以自然地給予“檢查成績單的合格性”;而圖2-7(b)中處理過程已命名,但無法為幾個數據流命名。為加工命名時,名字要反映整個處理過程,而不是它的一部分;名字應當是一種“動詞+賓語”的形式;遇到不能適當命名的加工時,要考慮重新分解。名字中只需用一個動詞,如果必須用兩個以上的動詞,則應該將它分解成幾個加工。圖2-7處理過程的命名2.4數據流圖2.畫數據流不是控制流;數據流圖反映系統“做什么”,不反映“如何做”,因此箭頭上的數據流名稱只能是名詞或名詞短語,整個圖中不反映加工的執行順序。3.一般不畫物質流:數據流反映的是能用計算機處理的數據,并不是實物,因此系統的數據流圖上一般不要畫物質流,如圖書館借書系統中,圖書也在流動,但不需要畫書,因為取書是“人工”行為。4.每個加工至少有一個輸入數據流和一個輸出數據流,反映出此加工數據的來源與加工的結果。2.4數據流圖5.編號:適當地給出編號,有利于系統的理解。對加工的編號,隨著逐層展開,也應反映出它的層次關系。如果一張數據流圖中的某個加工分解成另一張數據流圖,則上層圖為父圖,直接下層圖為子圖。子圖應編號,子圖上的所有加工也應編號,子圖的編號是父圖中相應加工的編號,加工的編號由子圖號、小數點及局部號組成。如圖2-8所示:圖2-8父圖和子圖的編號2.4數據流圖6.父圖與子圖的平衡:父圖中某個加工的輸入輸出數據流應該與相應子圖的輸入輸出數據流相同,層次數據流圖的這種特點稱為“平衡”。平衡是指子圖的所有輸入數據流必須是父圖中相應處理的輸入,子圖的所有輸出數據流必須是父圖中相應處理的輸出。圖2-8中子圖與父圖中加工2.1的輸入、輸出數據流的數目、名稱完成相同,即一個輸入流a,兩個輸出流b和c。父圖與子圖的平衡,是分層數據流圖中的重要性質,保證了數據流圖的一致性,便于分析人員的閱讀與理解。圖2-9的父圖和子圖是不平衡的,因為子圖中沒有輸入數據流與父圖中加工2的輸入流m相對應。另外,子圖的輸出數據流s在父圖中也沒有出現。2.4數據流圖圖2-9父圖和子圖的不平衡2.4數據流圖7.局部數據存儲:當某層數據流圖中的數據存儲不是父圖中相應加工的外部接口,而只是本圖中某些加工之間的數據接口,稱這些數據存儲為局部數據存儲。畫出一個局部數據存儲可參考如下原則:當數據存儲被用做數據流圖中某個加工之間的界面時,該數據存儲就必須畫出來,一旦數據存儲作為數據流圖中的一個獨立成分畫出來時,它與其他成分之間的聯系也應同時表達出來,即應畫出每個加工是讀還是寫該數據存儲。在圖2-10中,當加工3被分解成3.1、3.2和3.3三個子加工時,“成績表”是加工3.1和3.3的界面,應該畫出來。2.4數據流圖圖2-10局部數據存儲2.4數據流圖8.提高數據流圖的易理解性:經驗表明,人們能有效地同時處理7個或7個以下的問題。一般是一次“最多不要超過7個”。當然,并不能機械地套用這個經驗,而應該根據實際情況來定,關鍵是要使DFD易于理解。一般應做到分解自然,概念合理、清晰,在不影響易理解性的基礎上適當地多分解,以減少層次數據流圖的層數。一般來說,因為上層是一些綜合性描述,分解要快些,而在下層易理解性相對重要則分解慢些。分解時要注意子加工的獨立性,還應注意均勻性,特別是畫上層數據流時,要注意將一個問題劃分成幾個大小接近的組成部分,這樣便于理解。不要在一張數據流圖中出現某些加工已是基本加工,某些加工還要分解好幾層。2.4數據流圖9.隨時準備重畫:人的思考過程是一種迭代的過程,不可能一次成功,需要不斷完善,直到滿意為止。對于復雜的系統,很難保證一次就能將數據流圖繪制成功。因此應隨時準備改進數據流圖而用更好的版本來代替。在分析階段重畫幾張圖是很小的代價,只要能表現出正確的需求,便可以在以后的設計、編程等階段節省大量的時間,這樣做是完全值得和必要的。通常畫數據流圖需要多次的反復。數據流圖只描述了系統的分解,沒有表達出每個數據流、數據存儲和加工的具體含義。這些信息需要在數據字典表達出來。2.4數據流圖數據字典(DataDictionary,簡稱DD)就是用來定義數據流圖中的各個成分的具體含義的,它以一種準確的、無二義性的說明方式為系統的分析、設計及維護提供了有關元素的一致的定義和詳細的描述。它和數據流圖共同構成了系統的邏輯模型,沒有數據字典數據流圖就不嚴格,然而沒有數據流圖數據字典也難以發揮作用。只有把數據流圖及對數據流圖中每個元素精確定義的數據字典放在一起,才能共同構成系統的規格說明,它們也是“需求規格說明書”的主要組成部分。2.5數據字典數據字典的內容及格式數據字典是為分析人員查找數據流圖中有關名字的詳細定義而服務的,因此也像普通字典一樣,要把所有條目按一定的次序排列起來,以便查閱。數據字典有以下4類條目:數據流、數據項、數據存儲及基本加工。數據項是組成數據流和數據存儲的最小元素。源點、終點不在系統之內,一般不在字典中說明。1.數據流條目數據流條目給出了數據流圖中數據流的定義,通常列出該數據流的各組成數據項。由數據項組成數據流或數據存儲的方式由3種類型構成:2.5數據字典(1)順序:按確定次序連接兩個或多個分量。(2)選擇:從兩個或多個分量中選擇一個。(3)重復:將指定的分量重復0次或多次。在定義數據流或數據存儲組成時,使用表2-2給出的符號。2.5數據字典表2-2數據字典定義中使用的符號2.5數據字典例如,使用表2-2中給出的符號,定義圖2-6審核借書數據流圖中借書數據流(后面數據字典舉例也以圖2-6為準)。借書=借書證編號+借閱日期十書名+借閱方式+密碼+借閱人+操作員編號密碼={字母}86
操作員編號=“GLY001”··“GLY100”
借閱方式=[教師|學生]2.5數據字典數據流條目主要內容及舉例如下:數據流名稱:借書別名:借書單簡述:讀者借書時填寫的單據來源:讀者去向:加工1“審核借書”數據流量:500份/天組成:借書證編號+借閱日期十書名+借閱方式+密碼+借閱人+操作員編號其中數據流量指單位時間內(每小時或每天或每周或每月)的傳輸次數。2.5數據字典2.數據存儲條目數據存儲條目是對數據存儲的定義,主要內容及舉例如下:數據存儲名稱:借書文件別名:無簡述:存放讀者借書信息組成:借書證編號+借閱日期+書名+借閱方式+密碼+借閱人+操作員編號組織方式:數據文件,以借書證編號為關鍵字進行索引查詢要求:要求能立即查詢并修改2.5數據字典3.數據項條目數據項條目是不可再分解的數據單位,其定義格式及舉例如下:數據項名稱:借書證編號別名:無簡述:本系統中所有讀者的借書證編號類型:字符串長度:10取值范圍及含義:第1位:教師/學生第2~3位:部門或系別第4~7位:科室或班級第8~10位:順序編號2.5數據字典4.加工條目加工條目是用來說明DFD中基本加工的處理邏輯的,由于上層的加工是由下層的基本加工分解而來,只要有了基本加工的說明,就可理解其他加工。加工條目的主要內容及舉例如下2.5數據字典數據字典中的加工邏輯主要描述該加工“做什么”,即實現加工的策略,而不是實現加工的細節,它描述如何把輸入數據流變換為輸出數據流的加工規則。為了使加工邏輯直觀易讀,易被用戶理解,有幾種常用的描述方法,它們是結構化語言、判定表及判定樹。2.5.2數據字典的用途數據流圖只描述了系統的“分解”,系統由哪幾部分組成,各部分之間的聯系,并沒有對各個數據流、加工及數據存儲進行詳細說明。如數據流、數據存儲的名字并不能反映其中的數據成分、數據項目內容和數據特性,在加工中不能反映處理過程等。分析人員僅靠“圖”來完整地理解一個系統的邏輯功能是不可能的。2.5數據字典數據字典是分析階段重要的工具。在數據字典中建立的定義有助于改進分析員和用戶之間的通信,對數據的嚴密的定義有助于改進在不同的開發人員或不同的開發小組之間的通信。如果要求所有開發人員都根據公共的數據字典描述數據和設計模塊,則能避免許多麻煩的接口問題。2.5.3數據字典的實現實現數據字典有兩種途徑;全人工過程和全自動化過程(利用數據字典處理程序)。不論使用哪種途徑實現的數據字典都應該具有下述特點:2.5數據字典①通過名字能方便地查閱數據的定義;②沒有冗余;③盡量不重復在規格說明的其他組成部分中已經出現的信息;④容易更新和修改;⑤能單獨處理描述每個數據元素的信息;⑥定義的書寫方法簡單方便而且嚴格。隨著軟件規模的不斷增加,數據字典的規模和復雜程序也在迅速增加,全人工過程維護數據字典幾乎是不可能的。目前,數據字典基本是上作用CASE分析與設計工具的一部分實現的。2.5數據字典如果暫時還沒有自動的數據字典處理程序并且開發的是小型軟件,建議采用卡片形式書寫數據字典,每張卡片上保存描述一個數據元素的信息。每張卡片上主要應該包含下述信息:名字、別名、描述、定義、位置。手工建立數據字典的內容用卡片形式存放,其步驟如下:(1)按4類條目規范的格式印制卡片。(2)在卡片上分別填寫各類條目的內容。(3)先按圖號順序排列,同一圖號的所有條目按數據流、數據項、數據存儲和加工的順序排列。2.5數據字典(4)同一圖號中的同一類條目(如數據流卡片)可按名字的字典順序存放;加工一般按編號順序存放。(5)同一成分在父圖和子圖都出現時,則只在父圖上定義。(6)建立索引目錄。這種做法較好地實現數據字典的管理要求,特別是更新和修改起來很方便,能夠單獨處理每個數據元素的信息。當開發過程進展到能夠知道數據元素的控制信息和使用特點時,把這些信息記錄在卡片的背面。2.5數據字典實例分析【例2-1】某高校內部用的電話號碼有以下幾類:校內電話號碼由4位數字組成,第1位數字不是0;校外電話又分為市內電話和長途電話,撥校外電話需先撥0,如果是市內電話再接著撥8位電話號碼(第1位不是0),如果是長途電話則先撥3位區碼,再撥8位電話號碼(第1位不是0)。請用數據字典中介紹的符號,定義上述電話號碼。2.5數據字典解析:電話號碼=[校內電話號碼|校個電話號碼]校內電話號碼=非零數字+3位數字校外電話號碼=[市內號碼|長途號碼]市內號碼=數字零+8位數字長途號碼=數字零+3位數字+8位數字數字零=0非零數字=[1|2|3|4|5|6|7|8|9]3位數字=3{數字}38位數字=非零數字+7位數字7位數字=7{數字}7數字=[0|1|2|3|4|5|6|7|8|9]2.5數據字典實例分析實例分析【例2-2】醫院住院病人主要由護士護理,這樣不僅需要大量護士,而且由于不能隨時觀察危重病人的病情變化,可能會延誤搶救時機。某醫院準備開發一個以計算機為中心的患者監護系統,該患者監護系統的基本功能
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司環保活動方案
- 公司節能推廣活動方案
- 2025年行業倫理道德與法律法規考核試題及答案
- 2025年文化產業管理考試試卷及答案
- 2025年文藝策劃師職業發展評估考試試題及答案
- 2025年網絡營銷與電子商務考試試題及答案
- 2025年設施管理工程師職業資格考試試題及答案
- 2025年農業經濟與發展考試試卷及答案
- 2025年歷史文化遺產保護與傳承考試卷及答案
- 2025年計算機網絡基本知識考試試題及答案
- 大數據平臺部署與運維高職全套教學課件
- 源彩數碼印花技改項目環境影響報告表
- 2023年甘肅白銀市會寧縣選聘行政村專職化村黨組織書記6人高頻考點歷年難、易點深度預測(共500題含答案解析)模擬試卷
- 2021年中信公司組織架構和部門職能
- 大班幼兒幼小銜接“四準備”能力測評表
- 抗生素用藥原則
- 全自動橡膠注射硫化成型機操作規程
- 申報正高工程師職稱技術總結范文
- 幼兒園中班紅色經典故事《抗日英雄王二小》紅色革命教育繪本故事PPT課件【幼兒教案】
- 貝雷法簡介及貝雷三參數在瀝青混合料配合級配設計中應用
- 信用管理師(三級)理論考試題庫(300題)
評論
0/150
提交評論