軟件工程學(xué) 復(fù)習(xí)_第1頁(yè)
軟件工程學(xué) 復(fù)習(xí)_第2頁(yè)
軟件工程學(xué) 復(fù)習(xí)_第3頁(yè)
軟件工程學(xué) 復(fù)習(xí)_第4頁(yè)
軟件工程學(xué) 復(fù)習(xí)_第5頁(yè)
已閱讀5頁(yè),還剩85頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、1軟件工程軟件工程課程要點(diǎn)一覽表(面向過程部分)2軟件工程課程要點(diǎn)一覽表(面向過程部分)(續(xù))3軟件工程基本概念軟件:是計(jì)算機(jī)系統(tǒng)中與硬件相互依存的另一部分,它是包括程序、數(shù)據(jù)及其相關(guān)文檔的完整集合軟件工程:開發(fā)、運(yùn)行、維護(hù)和修復(fù)軟件的系統(tǒng)方法軟件工程方法學(xué):通常把在軟件生命周期全過程中使用的一整套技術(shù)的集合,稱為軟件工程方法學(xué)軟件開發(fā)模型:是軟件開發(fā)全部過程、活動(dòng)和任務(wù)的結(jié)構(gòu)框架。它能直觀表達(dá)軟件開發(fā)全過程,明確規(guī)定要完成的主要活動(dòng)、任務(wù)和開發(fā)策略4軟件工程基本概念系統(tǒng)流程圖:描繪物理系統(tǒng)的一種傳統(tǒng)工具,它的基本思想是用圖形符號(hào)以黑盒子形式描繪系統(tǒng)里面的每一個(gè)部件(程序、文件、數(shù)據(jù)庫(kù)、表格、

2、人工過程等)數(shù)據(jù)流圖(Data Flow Diagram,DFD):描繪系統(tǒng)的一種邏輯模型,圖中沒有任何具體的物理元素,只是描繪信息在系統(tǒng)中流動(dòng)和處理的情況數(shù)據(jù)字典(Data Dictionary, DD):對(duì)于數(shù)據(jù)流圖中所出現(xiàn)的所有被命名的圖形元素作為一個(gè)詞條加以定義,使得每一個(gè)圖形元素的名字都有一個(gè)確切的解釋5軟件工程基本概念模型:對(duì)對(duì)象系統(tǒng)的形式化的特征抽象,概括性或近似地表示結(jié)構(gòu)化分析方法(Structured Analysis, SA):70年代中期提出的一種面向數(shù)據(jù)流、自頂向下、逐步求精進(jìn)行需求分析的方法模塊(module):數(shù)據(jù)說明和可執(zhí)行語(yǔ)句等程序?qū)ο蟮募希總€(gè)模塊單獨(dú)命名并

3、且可以通過名字對(duì)模塊進(jìn)行訪問模塊化設(shè)計(jì)(modular design):把大型軟件按照規(guī)定的原則劃分為一個(gè)個(gè)較小的、相對(duì)獨(dú)立但又相關(guān)的模塊的設(shè)計(jì)方法6軟件工程基本概念深度:軟件中指模塊的最大層數(shù)扇出:軟件中指一個(gè)模塊直接調(diào)用的模塊數(shù)扇入:軟件中指調(diào)用一個(gè)給定模塊的模塊數(shù)寬度:軟件中指同一層最大模塊數(shù)7軟件工程基本概念信息隱藏:模塊內(nèi)部的數(shù)據(jù)與過程,應(yīng)該對(duì)不需要了解這些數(shù)據(jù)與過程隱藏起來內(nèi)聚:用于衡量一個(gè)模塊內(nèi)部各個(gè)元素間彼此結(jié)合的緊密程度耦合:用于衡量不同模塊彼此間相互依賴(連接)的緊密程度8軟件工程基本概念層次圖:也稱H圖,是在總體設(shè)計(jì)階段最常使用的圖形工具之一,它常用于描繪軟件的層次結(jié)構(gòu)。

4、層次圖中的每個(gè)方框代表一個(gè)模塊,方框間的連線表示模塊間的調(diào)用關(guān)系結(jié)構(gòu)化設(shè)計(jì):一種設(shè)計(jì)程序的技術(shù),它采用自頂向下逐步求精的設(shè)計(jì)方法和單入口、單出口的控制結(jié)構(gòu)編碼:就是把軟件設(shè)計(jì)的結(jié)果翻譯成計(jì)算機(jī)可以“理解”的形式用某種程序設(shè)計(jì)語(yǔ)言書寫的程序9軟件工程基本概念測(cè)試:為了發(fā)現(xiàn)程序中的錯(cuò)誤而執(zhí)行程序的過程白盒測(cè)試:也稱結(jié)構(gòu)測(cè)試開盒測(cè)試玻璃盒測(cè)試,是一種基于覆蓋的測(cè)試方法;根據(jù)被測(cè)程序的邏輯結(jié)構(gòu)設(shè)計(jì)測(cè)試用例,檢驗(yàn)產(chǎn)品內(nèi)部動(dòng)作是否按照規(guī)格說明書的規(guī)定正常進(jìn)行黑盒測(cè)試:從用戶觀點(diǎn),按規(guī)格說明書要求的輸入數(shù)據(jù)與輸出數(shù)據(jù)的對(duì)應(yīng)關(guān)系設(shè)計(jì)測(cè)試用例,是根據(jù)程序外部特征進(jìn)行測(cè)試窮盡測(cè)試:包含所有可能情況的測(cè)試10軟件工

5、程基本概念模塊測(cè)試:又稱單元測(cè)試,發(fā)現(xiàn)編碼和詳細(xì)設(shè)計(jì)錯(cuò)誤驗(yàn)收測(cè)試:由用戶參與、使用實(shí)際數(shù)據(jù)來發(fā)現(xiàn)需求說明書中的錯(cuò)誤的測(cè)試平行運(yùn)行:同時(shí)運(yùn)行新開發(fā)出來的系統(tǒng)和將被取代的舊系統(tǒng),以便比較新舊兩個(gè)系統(tǒng)的處理結(jié)果Alpha測(cè)試:用戶在開發(fā)者的場(chǎng)所進(jìn)行,并在開發(fā)者的指導(dǎo)下進(jìn)行Beta測(cè)試:在一個(gè)或多個(gè)用戶場(chǎng)所進(jìn)行,開發(fā)者不在現(xiàn)場(chǎng)11軟件工程基本概念軟件維護(hù):為了改正錯(cuò)誤或滿足新的需要而修改軟件的過程糾錯(cuò)性維護(hù):針對(duì)原有錯(cuò)誤而進(jìn)行的維護(hù)過程適應(yīng)性維護(hù):針對(duì)硬件發(fā)展而進(jìn)行的維護(hù)過程完善性維護(hù):針對(duì)功能擴(kuò)展而進(jìn)行的維護(hù)過程預(yù)防性維護(hù):針對(duì)未來發(fā)展而進(jìn)行的維護(hù)過程等價(jià)類:每類中的一個(gè)典型值在測(cè)試中的作用與這一類

6、中所有其他值的作用相同對(duì)象:具有相同狀態(tài)的一組操作的集合12軟件工程基本概念對(duì)象:對(duì)問題域中某個(gè)東西的抽象,這種抽象反映了系統(tǒng)保存有這個(gè)東西的信息或與它交互的能力。對(duì)象是對(duì)屬性值和操作的封裝類:對(duì)具有相同屬性和行為的一個(gè)或多個(gè)對(duì)象的描述實(shí)例:由某個(gè)特定的類所描述的一個(gè)具體的對(duì)象消息:要求某個(gè)對(duì)象執(zhí)行在定義它的那個(gè)類中所定義的某個(gè)操作的規(guī)格說明方法:對(duì)象所能夠執(zhí)行的操作。也就是類中所定義的服務(wù)屬性:類中所定義的數(shù)據(jù),它是對(duì)客觀實(shí)踐實(shí)體所具有的性質(zhì)的抽象13軟件工程基本概念方法:對(duì)象所能夠執(zhí)行的操作。也就是類中所定義的服務(wù)屬性:類中所定義的數(shù)據(jù),它是對(duì)客觀實(shí)踐實(shí)體所具有的性質(zhì)的抽象封裝:在面向?qū)ο?/p>

7、的程序中,把數(shù)據(jù)和實(shí)現(xiàn)操作的代碼集中起來放在對(duì)象的內(nèi)部,稱之為封裝繼承:指能夠直接獲得已有的性質(zhì)和特征,而不必重復(fù)定義它們多態(tài)性:子類對(duì)象可以象父類對(duì)象那樣使用,同樣的消息既可以發(fā)給父類對(duì)象也可以發(fā)給子類對(duì)象14軟件工程常用工具與模型(1)瀑布模型定義:將軟件生存周期的各項(xiàng)活動(dòng)規(guī)定為依照固定順序連接的若干階段工作,形如瀑布流水,最終得到軟件產(chǎn)品實(shí)例15軟件工程常用工具與模型(2)系統(tǒng)流程圖定義:系統(tǒng)流程圖是描繪物理系統(tǒng)的傳統(tǒng)工具,它的基本思想是用圖形符號(hào)以黑盒子形式描繪系統(tǒng)里面的每一個(gè)部件(程序、文件、數(shù)據(jù)庫(kù)、表格、人工過程等)實(shí)例16軟件工程常用工具與模型(3)數(shù)據(jù)流圖定義:英文(Data

8、Flow Diagram),簡(jiǎn)稱DFD。DFD是一種描述邏輯模型的圖形工具,表示數(shù)據(jù)在系統(tǒng)內(nèi)的變化。圖中沒有任何具體的物理元素,只是描繪信息在系統(tǒng)中流動(dòng)和處理的情況。DFD從數(shù)據(jù)傳遞和加工的角度,以圖形的方式刻畫數(shù)據(jù)流從輸入到輸出的移動(dòng)變換過程。它由數(shù)據(jù)流、加工、文件和數(shù)據(jù)流的源點(diǎn)和終點(diǎn)構(gòu)成。17軟件工程常用工具與模型實(shí)例18軟件工程常用工具與模型(4)數(shù)據(jù)字典定義:英文(Data Dictionary, 簡(jiǎn)稱DD)。是一種描述邏輯模型的工具。它對(duì)于數(shù)據(jù)流圖中所出現(xiàn)的所有被命名的圖形元素作為一個(gè)詞條加以定義,使得每一個(gè)圖形元素的名字都有一個(gè)確切的解釋。DD的內(nèi)容包括:圖形元素的名字、別名或編號(hào)

9、、分類、描述、定義、位置等。19軟件工程常用工具與模型實(shí)例:客房管理系統(tǒng)字典建模20軟件工程常用工具與模型(5) 實(shí)體聯(lián)系圖定義:實(shí)體聯(lián)系圖(ERA, Entity-Relationship Approach)或?qū)嶓w聯(lián)系圖(ERD, Entity-Relationship Diagram)。ERD描繪了系統(tǒng)的數(shù)據(jù)關(guān)系。分析實(shí)體聯(lián)系圖有助于對(duì)業(yè)務(wù)或系統(tǒng)數(shù)據(jù)組成的理解和交互,并暗示產(chǎn)品將有必要包含一個(gè)數(shù)據(jù)庫(kù)。ER模型三要素有:數(shù)據(jù)對(duì)象、屬性和聯(lián)系21軟件工程常用工具與模型實(shí)例:教學(xué)管理實(shí)體聯(lián)系ER圖22軟件工程常用工具與模型(6)狀態(tài)轉(zhuǎn)換圖定義:狀態(tài)轉(zhuǎn)換圖簡(jiǎn)稱狀態(tài)圖。通過描繪系統(tǒng)的狀態(tài)及引起系統(tǒng)狀

10、態(tài)轉(zhuǎn)換的事件,來表示系統(tǒng)的行為。它由1個(gè)初態(tài)初始狀態(tài)、0-N個(gè)終態(tài)最終狀態(tài)和若干個(gè)中間狀態(tài)組成實(shí)例23軟件工程常用工具與模型(7)層次方框圖定義:用屬性結(jié)構(gòu)的一系列多層次的矩形框描述數(shù)據(jù)的層級(jí)結(jié)構(gòu)實(shí)例:24軟件工程常用工具與模型(8)IPO圖定義:輸入、處理、輸出圖的簡(jiǎn)稱。是IBM公司發(fā)展完善的一種圖形工具實(shí)例25軟件工程常用工具與模型(9)層次圖定義:層次圖(也稱H圖)是在總體設(shè)計(jì)階段最常使用的圖形工具之一,它常用于描繪軟件的層次結(jié)構(gòu)。矩形代表一個(gè)模塊,連線表示調(diào)用關(guān)系,適于在自頂向下設(shè)計(jì)軟件的過程中使用;與層次方框圖類似實(shí)例26軟件工程常用工具與模型(10)HIPO圖定義:HIPO:是IB

11、M公司發(fā)明的“層次圖加輸入處理輸出圖”的縮寫;為了能使HIPO圖具有可跟蹤性,在H圖例除了最頂層的方框之外,每個(gè)方框都加了編號(hào):和H圖中的每個(gè)方框相對(duì)應(yīng),有一張IPO圖描述這個(gè)方框代表的模塊的處理過程。IPO圖能夠方便地描述數(shù)據(jù)輸入、數(shù)據(jù)處理和數(shù)據(jù)輸出之間的關(guān)系。27軟件工程常用工具與模型實(shí)例28軟件工程常用工具與模型(12)結(jié)構(gòu)圖定義:Yourdon提出的一種軟件結(jié)構(gòu)設(shè)計(jì)工具。一個(gè)方框矩形代表一個(gè)模塊,箭頭連線直線表示調(diào)用關(guān)系,帶有注釋的箭頭表示模塊調(diào)用過程中來回傳遞的信息實(shí)例29軟件工程常用工具與模型(13)程序流程圖定義:也稱為程序框圖;箭頭代表控制流而不是數(shù)據(jù)流;20世紀(jì)70年代的主要

12、工具;趨勢(shì)是越來越多的人不再使用。它的主要缺點(diǎn)包括:不是逐步求精的好工具;用箭頭代表控制流,可以隨意轉(zhuǎn)移控制;不宜表示數(shù)據(jù)結(jié)構(gòu)實(shí)例30軟件工程常用工具與模型(14)盒圖(N-S圖)定義:由Nassi和Shneiderman提出的一種程序設(shè)計(jì)方法;其主要特點(diǎn)包括:1功能域明確;2不可以隨意轉(zhuǎn)移;3容易確定局部和全局?jǐn)?shù)據(jù)的作用域;4容易表達(dá)嵌套關(guān)系。實(shí)例31軟件工程常用工具與模型(15)PAD圖定義:PAD圖是一種問題分析圖(Problem Analysis Diagram),1973年由日本日立公司提出。其主要特點(diǎn)包括:必須是結(jié)構(gòu)化程序程序結(jié)構(gòu)清晰易讀、易懂、易記支持自頂向下,逐步求精的方法既可

13、以表示程序邏輯,也可以表示數(shù)據(jù)結(jié)構(gòu)32軟件工程常用工具與模型實(shí)例33軟件工程常用工具與模型(16)判定表定義:判定表再某些數(shù)據(jù)處理中,某數(shù)據(jù)流圖的加工需要依賴于多個(gè)邏輯條件的取值,就是說完成這一加工的一組動(dòng)作是由于某一組條件取值的組合而引發(fā)的。這時(shí)使用判定表來描述比較合適。判定表通常由四部分組成,即:條件樁、操作樁、條件條目和操作條目。34軟件工程常用工具與模型實(shí)例:發(fā)貨判定表舉例35軟件工程常用工具與模型(17)判定樹定義:判定樹是判定表的變種,它也能清晰地表達(dá)復(fù)雜的條件組合與所對(duì)應(yīng)的操作之間的關(guān)系。判定樹的優(yōu)點(diǎn)在于它無需任何說明,一眼就能看出其含義,易于理解和使用實(shí)例:發(fā)貨判定樹36軟件工

14、程常用工具與模型(18)過程設(shè)計(jì)語(yǔ)言(PDL)定義:也稱“偽代碼”,用正文形式表示數(shù)據(jù)和處理的過程的工具。其具有如下特點(diǎn):具有關(guān)鍵字固定語(yǔ)法自然語(yǔ)言表述數(shù)據(jù)說明提供接口模式37軟件工程常用工具與模型(19)用例圖定義:用例圖是被稱為參與者的外部用戶所能觀察到的系統(tǒng)功能概念的模型圖;用例是系統(tǒng)中的一個(gè)功能單元,可以描述為參與者與系統(tǒng)之間的一次交互作用;用例圖的用途是列出系統(tǒng)中的用例和參與者,并顯示哪個(gè)參與者參與了哪個(gè)用例的執(zhí)行38軟件工程常用工具與模型用例圖實(shí)例39軟件工程常用工具與模型(20)活動(dòng)圖定義:活動(dòng)圖描述了活動(dòng)發(fā)生的順序。其圖形表示規(guī)則如下:圓角矩形表示方框中的活動(dòng);矩形表示工作流影

15、響的對(duì)象;實(shí)心圓表示工作流開始的開始狀態(tài);雙層圓表示工作流結(jié)束的結(jié)束狀態(tài);菱形表示決策點(diǎn);垂直甬道表示工作流中的不同參與者及相關(guān)活動(dòng)40軟件工程常用工具與模型活動(dòng) 圖實(shí)例41軟件工程常用工具與模型(21)順序圖順序圖表示對(duì)象之間傳遞消息的時(shí)間順序圖形表示法:垂直線,即生命線,表示再這個(gè)交互過程中一個(gè)對(duì)象的生命周期生命線之間的箭頭連線表示消息箭頭連線上的文字表示相關(guān)的事件42軟件工程常用工具與模型順序圖實(shí)例43軟件工程常用工具與模型(22)協(xié)作圖協(xié)作圖對(duì)在一次交互中有意義的對(duì)象和對(duì)象間的鏈建模圖形表示法:直線表示對(duì)象之間直接通信關(guān)系附在直線上箭頭表示消息傳送方向箭頭旁文字表示消息及消息編號(hào)44軟

16、件工程常用工具與模型協(xié)作圖實(shí)例45軟件工程常用工具與模型(23)類圖以類為中心組織起來的圖形,用以表示軟件系統(tǒng)中各類之間的相互關(guān)系圖形表示法矩形框表示類圖中的類連線表示類之間的關(guān)系類之間的關(guān)系有關(guān)聯(lián)、聚集、泛化和依賴46軟件工程常用工具與模型類圖實(shí)例47軟件工程常用工具與模型(24)狀態(tài)圖狀態(tài)圖是一個(gè)類對(duì)象所經(jīng)歷的所有歷程的模型圖。狀態(tài)圖有對(duì)象的各個(gè)狀態(tài)和連接這些狀態(tài)的變遷組成圖形表示法:圓角矩形表示狀態(tài)帶箭頭的直線表示對(duì)象從一種狀態(tài)變遷到另一種狀態(tài)的過程附在直線上的信息表示觸發(fā)對(duì)象狀態(tài)變遷的條件48軟件工程常用工具與模型狀態(tài)圖實(shí)例49軟件工程常用工具與模型(25)組件圖組件圖表示了系統(tǒng)中的各

17、種組件組件可以是源代碼、二進(jìn)制文件或可執(zhí)行文件邏輯視圖與組件視圖之間存在著映射關(guān)系組件可以與公開的任何接口一起顯示50軟件工程常用工具與模型組件圖實(shí)例51軟件工程常用工具與模型(26)部署圖用來描述位于節(jié)點(diǎn)實(shí)例上的運(yùn)行組件的安排,描述系統(tǒng)的實(shí)際物理結(jié)構(gòu)圖形表示法:立方體表示節(jié)點(diǎn),節(jié)點(diǎn)可以是一組運(yùn)行的資源,如計(jì)算機(jī)、設(shè)備或存取器等直線表示節(jié)點(diǎn)之間連接方式52軟件工程常用工具與模型部署圖實(shí)例53軟件工程原理技術(shù)方法1. 軟件工程的本質(zhì)特性軟件工程關(guān)注于大型程序的構(gòu)造;軟件工程的中心課題是控制復(fù)雜性;軟件經(jīng)常變化;開發(fā)軟件的效率非常重要;和諧地合作是開發(fā)軟件的關(guān)鍵;軟件必須有效地支持它的用戶;在軟件

18、工程領(lǐng)域中是由一種文化背景的人替具有另一種文化背景的人創(chuàng)造產(chǎn)品。54軟件工程原理技術(shù)方法2. 軟件工程的七條基本原理用分階段的生命周期計(jì)劃嚴(yán)格管理;堅(jiān)持進(jìn)行階段評(píng)審;實(shí)行嚴(yán)格的產(chǎn)品控制;采用現(xiàn)代程序設(shè)計(jì)技術(shù);結(jié)果應(yīng)能夠清楚地審查;開發(fā)小組的人員應(yīng)少而精;承認(rèn)不斷改進(jìn)軟件工程實(shí)踐的必要性。55軟件工程原理技術(shù)方法3. 軟件生存期的階段劃分可行性研究與計(jì)劃需求分析總體設(shè)計(jì)詳細(xì)設(shè)計(jì)實(shí)現(xiàn)(編碼)集成測(cè)試確認(rèn)測(cè)試使用和維護(hù)56軟件工程原理技術(shù)方法4. 傳統(tǒng)方法學(xué)傳統(tǒng)方法學(xué)也稱概念生命周期方法學(xué)或結(jié)構(gòu)化范型;采用結(jié)構(gòu)化技術(shù)(分析設(shè)計(jì)實(shí)現(xiàn)),來完成軟件開發(fā)各項(xiàng)任務(wù);把軟件生命周期的全過程依次劃分為若干階段。

19、本質(zhì)是面向過程的開發(fā);每個(gè)階段獨(dú)立完成,各階段有嚴(yán)格的開始和結(jié)束標(biāo)準(zhǔn)。前一階段結(jié)束,才能開始下一個(gè)階段;在相當(dāng)長(zhǎng)的一段時(shí)間內(nèi)仍有生命力。57軟件工程原理技術(shù)方法5. 面向?qū)ο蟮姆椒▽W(xué)面向?qū)ο蠓椒ㄒ詳?shù)據(jù)為主線,把數(shù)據(jù)和對(duì)數(shù)據(jù)的操作緊密地結(jié)合起來的方法把對(duì)象作為融合數(shù)據(jù)及在數(shù)據(jù)上的操作行為的統(tǒng)一的軟件構(gòu)建把所有對(duì)象劃分成類按照父類與子類的關(guān)系,把若干個(gè)相關(guān)類組成一個(gè)層次結(jié)構(gòu)的系統(tǒng)對(duì)象彼此間僅能通過發(fā)送消息相互聯(lián)系58軟件工程原理技術(shù)方法6. 可行性研究的主要內(nèi)容一般來說,至少要從以下三個(gè)方面開展研究:技術(shù)可行性:使用現(xiàn)有技術(shù)能實(shí)現(xiàn)這個(gè)系統(tǒng)嗎?經(jīng)濟(jì)可行性:這個(gè)系統(tǒng)的經(jīng)濟(jì)效益能超過它的開發(fā)成本嗎?操作

20、可行性:系統(tǒng)的操作方式在這個(gè)用戶組織內(nèi)行得通嗎?此外,還應(yīng)從法律、社會(huì)效益等更廣泛的方面研究每種解法的可行性。59軟件工程原理技術(shù)方法7. 可行性研究過程復(fù)查系統(tǒng)規(guī)模和目標(biāo);研究目前正在使用的系統(tǒng);導(dǎo)出新系統(tǒng)的高層邏輯模型;進(jìn)一步定義問題;導(dǎo)出和評(píng)價(jià)供選擇的解法;推薦行動(dòng)方針;草擬開發(fā)計(jì)劃;書寫文檔提交審查;60軟件工程原理技術(shù)方法8. 成本效益分析內(nèi)容(1)成本估計(jì)行代碼技術(shù)任務(wù)分解技術(shù)自動(dòng)估計(jì)成本技術(shù)(2)成本效益分析的方法貨幣的時(shí)間價(jià)值投資回收期純收入投資回收率61軟件工程原理技術(shù)方法9. 各種需求分析方法所應(yīng)遵循的準(zhǔn)則必須理解并描述問題的信息域,建立數(shù)據(jù)模型;必須定義軟件應(yīng)完成的功能,

21、建立功能模型;必須描述作為外部事件結(jié)果的軟件行為,建立行為模型;必須對(duì)描述信息、功能和行為的模型進(jìn)行分解,用層次的方式展開細(xì)節(jié)。62軟件工程原理技術(shù)方法10. 需求分析的具體任務(wù)確定軟件系統(tǒng)的綜合需求;分析系統(tǒng)的數(shù)據(jù)需求:數(shù)據(jù)模型信息模型E-R層次方框圖;導(dǎo)出軟件系統(tǒng)的邏輯模型數(shù)據(jù)流圖E-R圖狀態(tài)轉(zhuǎn)換圖數(shù)據(jù)字典算法;修正系統(tǒng)開發(fā)計(jì)劃;驗(yàn)證軟件需求分析的正確性;編寫軟件需求規(guī)格說明書。63軟件工程原理技術(shù)方法11. 系統(tǒng)的綜合要求需求功能需求:系統(tǒng)必須提供的服務(wù)性能需求;系統(tǒng)必須滿足的定時(shí)約束或容量約束等可靠性和可用性需求出錯(cuò)處理需求:系統(tǒng)對(duì)環(huán)境錯(cuò)誤應(yīng)該怎樣響應(yīng)接口需求:系統(tǒng)與它的環(huán)境通信格式要

22、求約束:設(shè)計(jì)約束或?qū)崿F(xiàn)約束描述在設(shè)計(jì)或?qū)崿F(xiàn)應(yīng)用系統(tǒng)時(shí)應(yīng)遵守的限制條件:精度工具語(yǔ)言設(shè)計(jì)標(biāo)準(zhǔn)平臺(tái)64軟件工程原理技術(shù)方法12. 需求獲取的常用方法訪談面向數(shù)據(jù)流自頂向下求精簡(jiǎn)易的應(yīng)用規(guī)格說明技術(shù)快速建立軟件原型65軟件工程原理技術(shù)方法13. 總體設(shè)計(jì)過程設(shè)想供選擇的方案選取合理的方案推薦最佳方案功能分解設(shè)計(jì)軟件結(jié)構(gòu)設(shè)計(jì)數(shù)據(jù)庫(kù)制定測(cè)試計(jì)劃書寫文檔審查和復(fù)審66軟件工程原理技術(shù)方法14. 軟件設(shè)計(jì)中常用啟發(fā)規(guī)則改進(jìn)軟件結(jié)構(gòu)提高模塊獨(dú)立性;模塊規(guī)模應(yīng)該適中;深度、寬度、扇出、扇入都應(yīng)適當(dāng);模塊的作用域應(yīng)該在控制域之內(nèi);力爭(zhēng)降低模塊接口的復(fù)雜程度;設(shè)計(jì)單入口單出口的模塊;模塊功能應(yīng)該可以預(yù)測(cè)。67軟件工

23、程原理技術(shù)方法15. 耦合設(shè)計(jì)原則盡量使用數(shù)據(jù)耦合少用控制耦合限制公共環(huán)境耦合范圍完全不用內(nèi)容耦合16. 內(nèi)聚設(shè)計(jì)原則力求高內(nèi)聚中等內(nèi)聚也可以采用低內(nèi)聚不要用68軟件工程原理技術(shù)方法17. 面向數(shù)據(jù)流的設(shè)計(jì)方法(1)系統(tǒng)結(jié)構(gòu)特征可歸納為兩種經(jīng)典形式變化型結(jié)構(gòu)事務(wù)型結(jié)構(gòu)(2)數(shù)據(jù)流圖可分為兩種類型變換型數(shù)據(jù)流事務(wù)型數(shù)據(jù)流69軟件工程原理技術(shù)方法 系統(tǒng)結(jié)構(gòu)基本模型 特征70軟件工程原理技術(shù)方法 數(shù)據(jù)流圖基本類型71軟件工程原理技術(shù)方法(3)面向數(shù)據(jù)流設(shè)計(jì)方法的設(shè)計(jì)步驟精化DFD確定DFD類型把DFD映射到系統(tǒng)模塊結(jié)構(gòu),設(shè)計(jì)出模塊結(jié)構(gòu)的上層基于DFD,逐步分解高層模塊,設(shè)計(jì)出下層模塊根據(jù)模塊獨(dú)立性原

24、理,精化模塊結(jié)構(gòu)模塊接口描述72軟件工程原理技術(shù)方法73軟件工程原理技術(shù)方法事務(wù)分析的映射方法74軟件工程原理技術(shù)方法18. 人機(jī)界面設(shè)計(jì)中經(jīng)常遇到的4各設(shè)計(jì)問題系統(tǒng)響應(yīng)時(shí)間用戶幫助設(shè)施出錯(cuò)信息處理命令交互19. 人機(jī)見面設(shè)計(jì)一般交互指南保持一致性提供有意義的反饋在執(zhí)行有較大破壞性的動(dòng)作之前,要求用戶確認(rèn)75軟件工程原理技術(shù)方法允許取消絕大多數(shù)操作減少在兩次操作之間必須記憶的信息量提高對(duì)話、移動(dòng)和思考的效率允許犯錯(cuò)誤按功能對(duì)動(dòng)作分類,并據(jù)此設(shè)計(jì)屏幕布局提供對(duì)用戶工作內(nèi)容敏感的幫助設(shè)施用簡(jiǎn)單動(dòng)詞或動(dòng)詞短語(yǔ)作為命令名76軟件工程原理技術(shù)方法20. 人機(jī)界面設(shè)計(jì)信息顯示指南只顯示與當(dāng)前工作內(nèi)容有關(guān)的

25、信息不要用數(shù)據(jù)淹沒用戶使用一致的標(biāo)記、標(biāo)準(zhǔn)的縮寫和可預(yù)知的顏色允許用戶保持可視化的語(yǔ)境產(chǎn)生有意義的出錯(cuò)信息使用大小寫、縮進(jìn)和文本分組以幫助理解使用窗口分隔不同類型的信息使用模擬顯示方式顯示信息高效率地使用顯示屏77軟件工程原理技術(shù)方法21. 數(shù)據(jù)輸入指南盡量減少用戶的輸入動(dòng)作保持信息顯示和數(shù)據(jù)輸入之間的一致性允許用戶自定義輸入交互應(yīng)該是靈活的使在當(dāng)前語(yǔ)境中不適用的命令不起作用讓用戶控制交互流對(duì)所有輸入動(dòng)作都提供幫助消除冗余的輸入78軟件工程原理技術(shù)方法22. 選擇一種語(yǔ)言的標(biāo)準(zhǔn)是什么?系統(tǒng)用戶的要求:用戶知識(shí)和用戶環(huán)境要求;可以使用的編譯程序:軟件平臺(tái)要求;可以得到的軟件工具:軟件條件要求;工

26、程規(guī)模:實(shí)踐要求;程序員的知識(shí):方便性要求;軟件可移植性要求:造價(jià)要求;軟件的應(yīng)用領(lǐng)域:對(duì)象特點(diǎn)要求。79軟件工程原理技術(shù)方法23. 編碼風(fēng)格應(yīng)該遵循的規(guī)則程序內(nèi)部的文檔化:指編碼時(shí)適當(dāng)選擇標(biāo)識(shí)符的名字適當(dāng)安排注釋注重程序的整個(gè)組織形式數(shù)據(jù)說明語(yǔ)句構(gòu)造輸入輸出80軟件工程原理技術(shù)方法24. 軟件測(cè)試準(zhǔn)則所有測(cè)試都應(yīng)該能追溯到用戶需求;應(yīng)該遠(yuǎn)在測(cè)試開始之前就制定出測(cè)試計(jì)劃;把Pareto原理應(yīng)用到軟件測(cè)試中Pareto原理:測(cè)試發(fā)現(xiàn)的錯(cuò)誤中80%很可能是由程序中20%的模塊造成的應(yīng)該從“小規(guī)?!睖y(cè)試開始,并逐步進(jìn)行“大規(guī)模”測(cè)試;窮舉測(cè)試是不可能的;應(yīng)該由第三方從事測(cè)試工作。81軟件工程原理技術(shù)

27、方法2.5 劃分等價(jià)類的原理每類中的一個(gè)典型值在測(cè)試中的作用與這一類中所有其他值的作用相同劃分等價(jià)類的標(biāo)準(zhǔn):覆蓋不相交代表性82軟件工程原理技術(shù)方法26. 劃分等價(jià)類的幾條啟發(fā)式規(guī)則:如果規(guī)定了輸入值的范圍則可劃分出一個(gè)有效的等價(jià)類(輸入值在此范圍內(nèi)),兩個(gè)無效的等價(jià)類(輸入值小于最小值或大于最大值);如果規(guī)定了輸入數(shù)據(jù)的個(gè)數(shù),則類似地也可以劃分出一個(gè)有效的等價(jià)類和兩個(gè)無效的等價(jià)類;如果規(guī)定了輸入數(shù)據(jù)的一組值,而且程序?qū)Σ煌斎胫底霾煌幚?,則每個(gè)允許的輸入值是一個(gè)有效的等價(jià)類,此外還有一個(gè)無效的等價(jià)類(任一個(gè)不允許的輸入值);83軟件工程原理技術(shù)方法如果規(guī)定了輸入數(shù)據(jù)必須遵循的規(guī)則,則可以劃分出一個(gè)有效的等價(jià)類(符合規(guī)則)和若干個(gè)無效的等價(jià)類(從各種不同角度違反規(guī)則);如果規(guī)定了輸

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論