自考軟件工程筆記總結_第1頁
自考軟件工程筆記總結_第2頁
自考軟件工程筆記總結_第3頁
自考軟件工程筆記總結_第4頁
自考軟件工程筆記總結_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、第一章 緒論1.1 軟件工程的產生1.1.1 軟件的特點軟件的定義:計算機程序及其說明程序的各種文檔軟件的特性:(1) 軟件是一種邏輯產品,它與物質產品有很大的區(qū)別(2) 軟件產品的生產主要是研制,軟件產品的成本主要體現(xiàn)在軟件的開發(fā)和研制上,軟件開發(fā)研制完成后,通過復制就產生了大量軟件產品(3) 軟件產品不會用壞,不存在磨損、消耗問題(4) 軟件產品的生產主要是腦力勞動,還未完全擺脫手工開發(fā)方式,大部分產品是“定做”的(5) 軟件費用不斷增加,軟件成本相當昂貴1.1.2 軟件生產的發(fā)展1) 程序設計時代(1946年1956年)這個階段的生產方式是個體手工勞動,使用的工具是機器語言、匯編語言。開

2、發(fā)方法是追求編程技巧,追求程序運行效率程序難讀、難懂、難修改硬件特征是價格貴、存儲容量小、運行可靠性差軟件特征是只有程序、程序設計概念,不重視程序設計方法2) 程序系統(tǒng)時代(1956年1968年)這個階段的生產方式是作坊式的小集團合作生產,生產工具是高級語言開發(fā)方式仍舊靠個人技巧,但開始提出結構化方法硬件特征是速度、容量、工作可靠性有明顯提高,價格降低,銷售有爆炸性增長軟件特征是程序員數(shù)量猛增,大量其他行業(yè)人員進入這個行業(yè),因為缺乏訓練,因而開發(fā)人員素質差這時已意識到軟件開發(fā)的重要性,但開發(fā)技術沒有新的突破,大量軟件開發(fā)的需求已提出,但開發(fā)人員的素質和落后的開發(fā)技術不適應規(guī)模大、結構復雜的軟件

3、開發(fā),產生了尖銳的矛盾,導致了軟件危機的產生3) 軟件工程時代(1968年至現(xiàn)在)這階段的生產方式是工程化的生產,使用數(shù)據(jù)庫、開發(fā)工具、開發(fā)環(huán)境、網(wǎng)絡、分布式、面向對象技術來開發(fā)軟件硬件特征是向超高速、大容量、微型化以及網(wǎng)絡化方向發(fā)展軟件特征是開發(fā)技術有很大進步,但是未能獲得突破性進展,軟件價格不斷上升,沒有完全擺脫軟件危機1.1.3 軟件危機1. 軟件危機的產生軟件發(fā)展到第二階段末期,軟件開發(fā)技術的進步跟不上硬件發(fā)展的速度2. 軟件危機的表現(xiàn)(1) 經(jīng)費預算經(jīng)常突破,完成時間一再拖延(2) 開發(fā)的軟件不能滿足用戶要求(3) 開發(fā)的軟件可維護性差(4) 開發(fā)的軟件可靠性差3. 軟件危機的原因(

4、1) 軟件的規(guī)模越來越大,結構越來越復雜(2) 軟件開發(fā)管理困難而復雜(3) 軟件開發(fā)費用不斷增加(4) 軟件開發(fā)技術落后(5) 生產方式落后(6) 開發(fā)工具落后1.1.4 軟件工程1968年北大西洋公約組織的工作會議上首先提出“軟件工程”的概念,要用工程化的思想來開發(fā)軟件1. 軟件工程定義用科學知識和技術原理來定義、開發(fā)、維護軟件的一門科學2. 軟件工程的性質軟件工程是一門綜合性的交叉學科,涉及計算機科學、工程科學、管理科學、數(shù)學等領域計算機科學中的研究成果均可用于軟件工程,但計算機科學著重于原理和理論,而軟件工程著重于如何建造一個軟件系統(tǒng)軟件工程要用工程科學中的觀點來進行費用估算、制定進度

5、、制定計劃和方案軟件工程要用管理科學的方法和原理進行軟件的生產和管理軟禁工程要用數(shù)學的方法建立軟件開發(fā)中各個種模型和各種算法3. 軟件工程目標目的是成功的建造一個大型軟件系統(tǒng)所謂成功,是要達到付出較低的開發(fā)成本達到要求的軟件功能取得較好的軟件性能開發(fā)的軟件易于移植需要較低的維護費用能按時完成開發(fā)任務,及時交付使用開發(fā)的軟件可靠性高4. 軟件工程內容主要是軟件開發(fā)技術和軟件管理兩個方面軟件開發(fā)技術中主要研究軟件開發(fā)方法、軟件開發(fā)過程、軟件開發(fā)工具和環(huán)境軟件開發(fā)管理中主要研究軟件管理學、軟件經(jīng)濟學、軟件心理學5. 軟件工程面臨的問題a) 軟件費用b) 軟件可靠性c) 軟件維護d) 軟件生產率e)

6、軟件重用1.2軟件工程過程和軟件生存周期1.2.1 軟件工程過程目的是為各種人員提供一個公共的框架,以便用相同的語言進行交流(1) 獲取過程(2) 供應過程(3) 開發(fā)過程(4) 操作過程(5) 維護過程(6) 管理過程(7) 支持過程1.2.2 軟件生存周期指一個軟件從提出開發(fā)要求開始直到該軟件報廢為止的整個過程(1) 可行性分析和項目開發(fā)計劃必須要回答的問題是“要解決的問題是什么”,有可行的解決辦法嗎,如果有需要多少費用多少資源時間明確項目性質明確項目目標明確項目規(guī)模確定該問題有沒有可行的解決辦法指定項目開發(fā)計劃(2) 需求分析確定軟件系統(tǒng)必須做什么確定軟件系統(tǒng)必須具備哪些功能(3) 概要

7、設計把確定的各項功能需求轉換成需要的體系結構設計軟件的結構,明確該結構的模塊組成(4) 詳細設計為每個模塊完成的功能進行具體描述,把功能描述轉變?yōu)榫_地、結構化的過程描述(5) 編碼把每個模塊的控制結構轉換成計算機可接受的程序代碼,即寫成以某種特定程序設計語言表示的“原程序清單”(6) 測試保證軟件質量的重要手段(7) 維護1.3 軟件生存周期模型、方法和工具1.3.1 軟件生存周期模型描述軟件開發(fā)過程中各種活動如何執(zhí)行的模型1. 瀑布模型將軟件生存周期各個活動規(guī)定為依線性順序連接的若干階段的模型包括所有的軟件生存周期環(huán)節(jié),規(guī)定了由前至后、相互銜接的固定次序缺點:理想的線性開發(fā)模式,缺乏靈活性

8、開發(fā)過程中用戶看不到軟件是什么樣子,造成開發(fā)方向錯誤2. 增量模型一種非整體開發(fā)的模型,軟件在該模型中是“逐漸”開發(fā)出來的,開發(fā)一部分展示一部分,可以及早發(fā)現(xiàn)問題?;蛘唛_發(fā)一個“原型”軟件,完成部分主要功能再逐步完善具有較大的靈活性,適合于軟件需求不明確、設計方案有一定風險的軟件項目缺點:對于復雜的大型軟件,開發(fā)一個原型往往達不到要求3. 螺旋模型將瀑布模型與增量模型結合起來,加入了兩種模型均忽略了的風險分析開發(fā)過程分為幾個螺旋周期,每個螺旋周期大致和瀑布模型相符合每個周期內分四個工作不:制定計劃、風險分析、開發(fā)實施、用戶評估適合于大型軟件的開發(fā)缺點:需要有相當豐富的風險評估經(jīng)驗和專門知識,使

9、得應用受到一定限制4. 噴泉模型一種以用戶需求為動力,以對象作為驅動的模型,適合于面向對象的開發(fā)方法克服了瀑布模型不支持軟件重用和多想開發(fā)活動集成的局限性是開發(fā)過程具有迭代性和無間隙性5. 基于知識的模型又稱只能模型,它把瀑布模型和專家系統(tǒng)結合在一起還處于研究實驗階段,還未達到實用階段6. 變換模型適合于形式化開發(fā)的模型1.3.2 軟件開發(fā)方法使用早已定義好的技術集和符號表示習慣來組織軟件生產的過程1. 結構化方法由結構化分析,結構化設計、結構化程序設計構成,是一種面向數(shù)據(jù)流的開發(fā)方法。簡單實用,應用較廣,技術成熟2. Jackson方法面向數(shù)據(jù)結構的開發(fā)方法3. 維也納開發(fā)方法(VDM)一種

10、形式化的開發(fā)方法,軟件需求用嚴格的形式語言描述,然后把描述模型逐步變換成目標系統(tǒng)4. 面向對象的開發(fā)方法90年代主流基本出發(fā)點是盡可能按照人類認識世界的方法和思維方式來分析和解決問題包括面向對象分析、面向對象設計、面向對象實現(xiàn)1997年推出統(tǒng)一建模語言UML,是面向對象的標準建模語言1.3.3 軟件開發(fā)工具1 軟件工具的重要性為了支持軟件人員開發(fā)和維護活動而使用的軟件項目估算工具、需求分析工具、編碼工具、測試工具、維護工具等2 工具箱將各種軟件工具簡單組合起來就構成工具箱工具箱的工具界面不同意,工具內部無聯(lián)系,工具切換由人工操作3 軟件開發(fā)環(huán)境工具系統(tǒng)的整體化及集成化,使之形成完整的軟件開發(fā)環(huán)

11、境使軟件工具支持整個生存周期4 計算機輔助軟件工程新的軟件工具目的是實現(xiàn)軟件生存周期各個環(huán)節(jié)的自動化,主要用于軟件的分析和設計,使用這些工具開發(fā)人員可以以對話的方式建立各種軟件系統(tǒng)計算機輔助軟件工程可以簡單的定義為軟件開發(fā)的自動化,CASE結構化方法可以用于瀑布模型、增量模型、螺旋模型進行開發(fā)Jackson方法可以用于瀑布模型、增量模型維也納方法只能用于變換模型進行開發(fā)第二章 軟件可行性研究與項目開發(fā)計劃2.1可行性研究目的是用最小的代價在盡可能短的時間內去確定該項目是否能夠開發(fā),是否值得開發(fā)在較高層次上以較抽象的方式進行需求分析和設計過程2.1.1 可行性研究的任務進行概要的分析研究,初步確

12、定項目的規(guī)模和目標,確定項目的約束和限制,列舉出來。然后進行簡要的需求分析,抽象出項目的邏輯結構,建立邏輯模型,從邏輯模型出發(fā)經(jīng)過壓縮的設計,探索出若干種可供選擇的解決辦法,對每種解決方法都要研究它的可行性可以從以下三個方面分析研究每種解決方法的可行性1. 技術可行性、技術可行性一般要考慮的情況包括(1) 開發(fā)的風險(2) 資源的有效性(3) 技術(4) 開發(fā)人員在評估技術可行性時,一旦估計錯誤,將會出現(xiàn)災難性后果2. 經(jīng)濟可行性進行開發(fā)成本的估算以及了解取得效益的評估,確定要開發(fā)的項目是否值得投資開發(fā)3. 社會可行性要開發(fā)的項目時候存在任何侵犯、妨礙等責任問題,要開發(fā)項目的運行方式在用戶組織

13、內是否行得通,現(xiàn)有管理制度、人員素質、操作方式是否可行2.1.2 可行性研究的具體步驟1.確定項目規(guī)模和目標2.研究正在運行的系統(tǒng)3.建立新系統(tǒng)的高層邏輯模型使用建立邏輯模型的工具數(shù)據(jù)流圖和數(shù)據(jù)字典描述數(shù)據(jù)在系統(tǒng)中的流動和處理情況。不是需求分析階段,不是完整詳細的描述,只是概括的描述高層的數(shù)據(jù)處理和流動4.導出和評價各種方案5.推薦可行的方案6.編寫可行性研究報告2.1.3 可行性研究報告的主要內容1引言2可行性研究前提3對象有系統(tǒng)的分析4所建議系統(tǒng)的技術可行性分析5所建議系統(tǒng)的經(jīng)濟可行性分析6社會因素可行性分析7其他可供選擇方案8結論意見2.2系統(tǒng)流程圖1系統(tǒng)流程圖的作用用圖形符號來表示系統(tǒng)

14、中的各個元素。表達了系統(tǒng)中各個元素之間的心理流動的情況2系統(tǒng)流程圖的符號3系統(tǒng)流程圖的例子2.3成本效益分析目的是從經(jīng)濟角度評價開發(fā)一個新的軟件項目是否可行估算將要開發(fā)的系統(tǒng)的開發(fā)成本,與可能取得的效益進行比較和權衡效益分有形效益和無形效益有形效益的分析1 貨幣的時間價值2 投資回收期3 純收入2.4項目開發(fā)計劃1項目概述2實施計劃3人員組織及分工4交付期限第三章 軟件需求分析3.1 需求分析的任務 3.1.1 需求分析的概念開發(fā)人員要準確的理解用戶的要求,進行細致的調查分析,將用戶非形式的需求陳述轉化為完整的需求定義,再由需求定義裝換到相應的形式功能規(guī)約(需求規(guī)格說明)的過程需求分析的難點:

15、(1) 問題的復雜性(2) 交流障礙(3) 不完備性和不一致性(4) 需求易變性軟件需求分析與說明的方法適用的基本原則:(1) 必須能夠表達和理解問題的數(shù)據(jù)域和功能域(2) 可以把一個復雜問題按功能進行分解并可逐層細化(3) 建模結構化分析方法和面向對象分析方法都遵循以上原則 3.1.2 需求分析的基本任務要準確的定義新系統(tǒng)的目標,為了滿足用戶的需要,回答系統(tǒng)必須“做什么”的問題??尚行匝芯亢蛙浖媱濍A段對這個問題的回答是概括的、粗略的本階段主要進行以下幾個方面的工作:1. 問題識別雙方確定對問題的綜合需求,這些需求包括:(1) 功能需求:所開發(fā)的系統(tǒng)必須具備什么樣的功能,這是最重要的(2)

16、性能需求:待開發(fā)的軟件的技術性能指標。存儲容量,運行時間(3) 環(huán)境需求:軟件運行時所需要的軟、硬件的要求(4) 用戶界面需求:人機交互方式、輸入輸出數(shù)據(jù)格式等等另外還有可靠性、安全性、保密性、可移植性、可維護性等方面的需求2. 分析與綜合,導出軟件的邏輯模型對獲取的需求,進行分析檢查,逐步細化軟件的功能,劃分成各個子功能,以確定系統(tǒng)的構成及主要成分,建立新系統(tǒng)的邏輯模型3. 編寫文檔(1) 編寫“需求規(guī)格說明書”(2) 編寫初步用戶使用手冊(3) 編寫確認測試計劃(4) 修改完善軟件開發(fā)計劃3.1.3 需求規(guī)格說明書主要內容3.2結構化分析方法簡稱SA,是面向數(shù)據(jù)流進行需求分析的方法 3.2

17、.1自頂向下逐層分解的分析策略對一個復雜問題分析人員不可能一開始就考慮到問題的所有方面及全部細節(jié),對此采取的策略是分解,把一個復雜問題劃分成若干小問題,然后分別解決,將問題的復雜性降低到人可以掌握的程度分解可分層進行,先考慮問題最本質的方面,忽略細節(jié)形成問題的高層概念,然后逐層添加細節(jié)。頂層抽象的概括整個系統(tǒng),底層具體畫出系統(tǒng)的每個細節(jié),中間層是逐步過渡這種層次分解使分析人員分析問題時不至于一下子陷入細節(jié),而是逐步的去了解更多細節(jié)依照這個策略,對于任何復雜的系統(tǒng),分析工作都可以有計劃、有步驟、有條不紊的進行 3.2.2描述工具SA方法的描述工具是:(1) 數(shù)據(jù)流圖(2) 數(shù)據(jù)字典(3) 描述加

18、工邏輯的結構化語言、判定表、判定樹數(shù)據(jù)流圖描述系統(tǒng)的分解,及系統(tǒng)由哪幾部分組成,各部分之間的聯(lián)系等等數(shù)據(jù)字典定義了數(shù)據(jù)流圖中每一個圖形元素結構化語言、判定便或判定樹詳細描述數(shù)據(jù)流圖中不能被再分解的每一個加工 3.2.3SA分析步驟(1) 了解當前系統(tǒng)的工作流程,獲得當前系統(tǒng)的物理模型(2) 抽象出當前系統(tǒng)的邏輯模型(3) 建立目標系統(tǒng)的邏輯模型(4) 做進一步補充和優(yōu)化3.3數(shù)據(jù)流圖(DFD)簡稱DFD,是SA方法中表示系統(tǒng)邏輯模型的一種工具,只反應系統(tǒng)必須完成的邏輯功能,所以是一種功能模型 3.3.1基本圖形符號數(shù)據(jù)流圖有四種基本圖形符號:(1) 數(shù)據(jù)流。是數(shù)據(jù)在系統(tǒng)內傳播的路徑,由一組成分

19、固定的數(shù)據(jù)項組成,必須有流向,除了與數(shù)據(jù)存儲之間的數(shù)據(jù)流不用命名,其他用名詞或名詞短語命名(2) 加工(又稱為數(shù)據(jù)處理)。對數(shù)據(jù)流進行某些操作或變換。加工用動詞短語命名(3) 數(shù)據(jù)存儲(又稱為文件)。指暫時保存的數(shù)據(jù),它可以是數(shù)據(jù)庫文件或任何形式的數(shù)據(jù)組織。流向數(shù)據(jù)存儲的數(shù)據(jù)流可以理解為寫入文件或查詢文件,流出的數(shù)據(jù)可以理解為從文件讀取數(shù)據(jù)或得到查詢結果(4) 數(shù)據(jù)源點或終點:軟件系統(tǒng)外部環(huán)境中的實體(包括人員、組織或其他軟件系統(tǒng)),統(tǒng)稱為外部實體在一張圖上可重復畫同名的源/終點,在方框的右下角加斜線則表示是一個實體。有時數(shù)據(jù)存儲也需重復標識 3.3.2畫數(shù)據(jù)流圖的步驟按問題的層次結構進行逐步

20、分解,并以一套分層的數(shù)據(jù)流圖反應這種結構關系(1) 首先畫系統(tǒng)的輸入輸出,即先畫頂層數(shù)據(jù)流圖。頂層流圖只包含一個加工,用以表示被開發(fā)的系統(tǒng),然后考慮系統(tǒng)的輸入輸出數(shù)據(jù)。頂層圖的作用在于表明被開發(fā)的系統(tǒng)范圍以及它與周圍化境的數(shù)據(jù)交換關系(2) 畫系統(tǒng)內部,即畫下層數(shù)據(jù)流圖。一般將層號從0開始編號,采用自頂向下,由外向內的原則。一般沿著輸入流的方向,凡數(shù)據(jù)流的組成或值發(fā)生變化的地方則設置一個加工,這樣一直進行到輸出數(shù)據(jù)流。知道每一個加工足夠簡單,不能再分解為止,不能再分解的加工稱為基本加工(3) 注意事項a) 命名b) 畫數(shù)據(jù)流而不是控制流圖中不反應加工的執(zhí)行順序c) 一般不畫物質流d) 每個加工

21、至少有一個輸入數(shù)據(jù)流和一個輸出數(shù)據(jù)流,反映出此加工數(shù)據(jù)的來源與加工的結果e) 編號子圖的編號就是父圖中相應加工的編號,加工的編號由子圖號,小數(shù)點和局部號組成f) 父圖與子圖的平衡子圖的輸入輸出數(shù)據(jù)流同父圖相應加工的輸入輸出數(shù)據(jù)流必須一致保證了數(shù)據(jù)流圖的一致性g) 局部數(shù)據(jù)存儲h) 提高數(shù)據(jù)流圖的易理解性注意合理分解為了使數(shù)據(jù)流圖便于在計算機上輸入與輸出,以下給出了描述數(shù)據(jù)流圖的另一套基本符號 3.3.3實例售票管理系統(tǒng)3.4數(shù)據(jù)字典(DD)簡稱DD,用來定義數(shù)據(jù)流圖中各個成分的具體含義,它以一種準確的、無二義性的說明方式為系統(tǒng)的分析、設計及維護提供了有關元素的一致的定義和詳細的描述它和數(shù)據(jù)流圖

22、共同構成了系統(tǒng)的邏輯模型,是需求規(guī)格說明書的主要組成部分 3.4.1數(shù)據(jù)字典的內容及格式數(shù)據(jù)字典是為分析人員查找數(shù)據(jù)流圖中有關名字的詳細定義而服務的,因此也像普通字典一樣,要把所有條目按一定的次序排列起來,以便查閱數(shù)據(jù)字典有以下四類條目:數(shù)據(jù)流數(shù)據(jù)項數(shù)據(jù)存數(shù)基本加工數(shù)據(jù)項是組成數(shù)據(jù)流和數(shù)據(jù)存儲的最小元素。源點終點一般不在字典中說明1. 數(shù)據(jù)流條目數(shù)據(jù)流條目給出了DFD中數(shù)據(jù)流的定義,通常列出數(shù)據(jù)流的各組成數(shù)據(jù)項在定義數(shù)據(jù)流或數(shù)據(jù)存儲組成時,使用下表給出的符號:2. 數(shù)據(jù)存儲條目數(shù)據(jù)存儲條目是對數(shù)據(jù)存儲的定義,主要內容舉例如下:3. 數(shù)據(jù)項條目數(shù)據(jù)項條目是不可再分解的數(shù)據(jù)單位,其定義格式及舉例如

23、下:4. 加工條目加工條目是用來說明DFD中基本加工的處理邏輯的,由于上層的加工是由下層的基本加工分解而來,只要有了基本加工的說明,就可理解其他加工加工條目的內容及舉例如下:數(shù)據(jù)字典中的加工邏輯主要描述該加工“做什么”,即實現(xiàn)加工的策略,而不是實現(xiàn)加工的細節(jié),它描述如何把輸入數(shù)據(jù)流變換為輸出數(shù)據(jù)流的加工規(guī)則。加工邏輯有幾種常用的描述方法,結構化語言、判定表、判定樹 3.4.2數(shù)據(jù)字典的實現(xiàn)建立數(shù)據(jù)字典一般有兩種形式:1. 手工建立:數(shù)據(jù)字典的內容用卡片形式存放(1) 按四類條目規(guī)范的格式印制卡片(2) 在卡片上分別填寫各類條目的內容(3) 先按圖號順序排列,同一圖號的所有條目按數(shù)據(jù)流、數(shù)據(jù)項、

24、數(shù)據(jù)存儲和數(shù)據(jù)加工的順序排列(4) 同一圖號中的同一類條目(如數(shù)據(jù)流卡片)可按名字的字典順序存放,加工一般按編號順序存放(5) 統(tǒng)一成分在父圖和子圖都出現(xiàn)時,則只在父圖上定義(6) 建立索引目錄2. 利用計算機輔助建立并維護(1) 編制一個“字典生成與管理程序”,可以按規(guī)定的格式輸入各類條目,能對字典條目增、刪、改,能打印查詢報告和清單,能進行完整性一致性檢查。美國密執(zhí)安大學研究的PSL/PSA就是這樣一個系統(tǒng)(2) 利用已有的數(shù)據(jù)庫開發(fā)工具,針對數(shù)據(jù)字典建立一個數(shù)據(jù)庫文件,可將數(shù)據(jù)流、數(shù)據(jù)項、數(shù)據(jù)存儲和加工分別以矩陣表的形式來描述各個表項的內容,如數(shù)據(jù)流的矩陣表為:有的DBMS本身包含一個數(shù)

25、據(jù)字典子系統(tǒng),建庫時能自動生成數(shù)據(jù)字典計算機輔助開發(fā)數(shù)據(jù)字典比手工建立數(shù)據(jù)字典有更多的優(yōu)點,能保證數(shù)據(jù)的一致性和完整性,使用也方便,但增加了技術難度與積極開銷3.5加工邏輯的描述加工邏輯也稱為“小說明”,描述加工邏輯一般用一下三種工具:結構化語言判定表判定樹 3.5.1結構化語言介于自然語言和形式語言之間的一種半形式語言結構可分為外層和內層兩層:1. 外層:用來描述控制結構,采用順序、選擇、重復三種基本結構(1) 順序結構:是一組祈使語句、選擇語句、重復語句的順序排列(2) 選擇結構:一般用IFTHENELSEENDIF、CASEOFENDCASE等關鍵詞(3) 重復結構:一般用DOWHILE

26、ENDDO、REPEATUNTIL等關鍵字2. 內層:一般是采用祈使語句的自然語言短語,使用數(shù)據(jù)字典中的名詞和有限的自定義詞,其動詞含義要具體,盡量不用形容詞和副詞來修飾。還可使用一些簡單的算術運算和邏輯運算符號 3.5.2判定表在有些情況下,數(shù)據(jù)流圖中的某個加工的一組動作依賴于多個邏輯條件的取值。這時用判定表就能夠清楚地表示復雜的條件組合與應作的動作之間的對應關系判定表由四部分組成,用雙線分隔開四個區(qū)域:構造一張判定表,可采取以下步驟:1. 提取問題中的條件2. 標出條件的取值3. 計算所有條件的組合數(shù)N4. 提取可能采取的動作或措施5. 制作判定表6. 完善判定表初始的判定表可能不完善,表

27、現(xiàn)在以下幾個方面:(1) 缺少判定列中應采取的動作(2) 有冗余的判定列:兩個或多個規(guī)則中,具有相同的動作,而與它所對應的各個條件組合中有取值無關的條件判定表能夠把在什么條件下系統(tǒng)應做什么動作準確無誤的表示出來,但不能描述循環(huán)的處理特性,循環(huán)處理還需結構化語言例子: 3.5.3判定樹判定樹是判定表的變形,一般情況下它比判定表更直觀,更易于理解和使用這三種描述加工邏輯的工具各有優(yōu)缺點對于順序執(zhí)行和循環(huán)執(zhí)行的動作,用結構化語言描述對于存在多個條件復雜組合的判斷問題,用判定表和判定樹判定樹較判定表直觀易讀,判定表進行邏輯驗證較嚴格,能把所有的可能性全部都考慮到,可將兩種工具結合起來,先用判定表做底稿,在此基礎上產生判定樹經(jīng)過需求分析,開發(fā)人員已經(jīng)基本上理解了用戶的要求,確定了目標系統(tǒng)的功能,定義了系統(tǒng)的數(shù)據(jù),描述了處理這些數(shù)據(jù)的基本策略。將這些共同的理解進行整理,最后形成文檔需求說明書3.6IDEF方法IDEF方法是美國空軍在1981年針對集成化計算機輔助制造工程項目中用于進行復雜系統(tǒng)分析和設計的方法。IDEF方法分為三部分:IDEF0:用來描述系統(tǒng)的功能活動及其聯(lián)系,建立系統(tǒng)的功能模型IDEF1:用來描述系統(tǒng)的信息及其聯(lián)系,建立系統(tǒng)的信息模型IDEF2:用來進行系統(tǒng)模擬,建立系統(tǒng)的動態(tài)模型 3.6.

溫馨提示

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

評論

0/150

提交評論