資源描述:
《軟件需求分析與建模復(fù)習(xí)過程.ppt》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、軟件需求分析與建模軟件設(shè)計(jì)三類活動(dòng)總體設(shè)計(jì),也稱為概要設(shè)計(jì),軟件結(jié)構(gòu)設(shè)計(jì),或高層設(shè)計(jì)。分析需求規(guī)格說明模塊劃分,形成具有預(yù)定功能的模塊組成結(jié)構(gòu)表示出模塊間的控制關(guān)系給出模塊之間的接口軟件詳細(xì)設(shè)計(jì),也稱為(模塊)過程設(shè)計(jì),或低層設(shè)計(jì)。設(shè)計(jì)模塊細(xì)節(jié)確定模塊所需的算法和數(shù)據(jù)結(jié)構(gòu)等測(cè)試和復(fù)審軟件結(jié)構(gòu)設(shè)計(jì)步驟P53設(shè)計(jì)供選擇的方案選取合理的方案推薦最佳方案功能分解和設(shè)計(jì)軟件結(jié)構(gòu)數(shù)據(jù)庫設(shè)計(jì)制定軟件設(shè)計(jì)測(cè)試計(jì)劃編制設(shè)計(jì)文檔審查和復(fù)審概要設(shè)計(jì)說明書1范圍1.1系統(tǒng)目標(biāo)1.2主要軟件需求1.3軟件設(shè)計(jì)約束、限制2數(shù)據(jù)設(shè)計(jì)2.1數(shù)據(jù)對(duì)象和形成的數(shù)據(jù)結(jié)構(gòu)2.2文件和數(shù)據(jù)庫結(jié)構(gòu)外部文件結(jié)構(gòu)①
2、邏輯結(jié)構(gòu)②邏輯記錄描述③訪問方法全局?jǐn)?shù)據(jù)文件和數(shù)據(jù)交叉索引3體系結(jié)構(gòu)設(shè)計(jì)3.1數(shù)據(jù)和控制流復(fù)審3.2得出的程序結(jié)構(gòu)4接口設(shè)計(jì)4.1人機(jī)界面規(guī)約4.2人機(jī)界面設(shè)計(jì)規(guī)約4.3外部接口設(shè)計(jì)外部數(shù)據(jù)接口外部系統(tǒng)或設(shè)備接口4.4內(nèi)部接口設(shè)計(jì)規(guī)約5(每個(gè)模塊)過程設(shè)計(jì)5.1處理說明5.2接口描述5.3設(shè)計(jì)語言描述5.4使用的模塊5.5內(nèi)部設(shè)計(jì)結(jié)構(gòu)5.6注釋/約束/限制6需求交叉索引7測(cè)試部分7.1測(cè)試方針7.2集成策略7.3特殊考慮8附錄(包括特殊注解)詳細(xì)設(shè)計(jì)說明書1引言1.1編寫目的:闡明編寫詳細(xì)設(shè)計(jì)說明書的目的,指明讀者對(duì)象。1.2項(xiàng)目背景:應(yīng)包括項(xiàng)目的來源和主管部門等。1
3、.3定義:列出本文檔中所用到的專門術(shù)語的定義和縮寫詞?!窳谐鲇嘘P(guān)資料的作者、標(biāo)題、編號(hào)、發(fā)表日期、出版單位或資料來源●文檔所引用的資料、軟件開發(fā)的標(biāo)準(zhǔn)或規(guī)范。1.4參考資料:項(xiàng)目經(jīng)核準(zhǔn)的計(jì)劃任務(wù)書、合同或上級(jí)機(jī)關(guān)的批文;項(xiàng)目開發(fā)計(jì)劃;需求規(guī)格說明書;概要設(shè)計(jì)說明書;測(cè)試計(jì)劃(初稿);用戶操作手冊(cè)。2總體設(shè)計(jì)2.1需求概述2.2軟件結(jié)構(gòu):如給出軟件系統(tǒng)的結(jié)構(gòu)圖。3程序描述3.1逐個(gè)模塊給出以下說明:●性能●輸出項(xiàng)目●功能●輸入項(xiàng)目3.2算法:模塊所選用的算法。3.3程序邏輯:詳細(xì)描述模塊實(shí)現(xiàn)的算法,可采用:標(biāo)準(zhǔn)流程圖;PDL語言;N-S圖;判定表等描述算法的圖表。3.4
4、接口●限制條件●存儲(chǔ)分配3.5測(cè)試要點(diǎn):給出測(cè)試模塊的主要測(cè)試要求。6.2軟件模塊化設(shè)計(jì)模塊是一個(gè)獨(dú)立命名的,擁有明確定義的輸入、輸出和特性的程序?qū)嶓w。把一個(gè)大型軟件系統(tǒng)的全部功能,按照一定的原則合理地劃分為若干個(gè)模塊,每個(gè)模塊完成一個(gè)特定子功能,所有的這些模塊以某種結(jié)構(gòu)形式組成一個(gè)整體,這就是軟件的模塊化設(shè)計(jì)(ModularDesign)。軟件模塊化設(shè)計(jì)可以簡(jiǎn)化軟件的設(shè)計(jì)和實(shí)現(xiàn),提高軟件的可理解性和可測(cè)試性,并使軟件更容易得到維護(hù)。分解、抽象、逐步求精、信息隱蔽和模塊獨(dú)立性,是軟件模塊化設(shè)計(jì)的指導(dǎo)思想。分解采用有效的分解,即“分而治之”,是能夠使問題得以很好解決的必
5、不可少的措施。一個(gè)軟件系統(tǒng)的各個(gè)模塊之間是相互關(guān)聯(lián)的,模塊劃分的數(shù)量越多,模塊間的聯(lián)系也越多。模塊本身的復(fù)雜性和工作量雖然隨著模塊變小而減少,模塊的接口工作量卻隨著模塊數(shù)增加而增大。軟件模塊化開發(fā)存在一個(gè)最小成本區(qū),把模塊數(shù)控制在一定的范圍內(nèi),可以得到最小的總開發(fā)工作量。模塊數(shù)與開發(fā)工作量開發(fā)工作量模塊數(shù)最小成本區(qū)模塊成本接口成本總成本抽象分解必然需要抽象的支持。抽象是抓住主要問題,隱藏細(xì)節(jié),這樣才能容易分解。抽象具有不同的級(jí)別。人類解決復(fù)雜問題的基本方法之一。只有抓住事物的本質(zhì),才能準(zhǔn)確分析和處理問題,找到合理的解決方案。分析“借書”功能的抽象過程?信息隱敝信息隱蔽
6、原則建議模塊應(yīng)該具有的特征是:每個(gè)模塊對(duì)其他所有模塊都隱蔽自己的設(shè)計(jì)決策。信息隱蔽意味著通過一系列獨(dú)立的模塊可以得到有效的模塊化。獨(dú)立的構(gòu)件或模塊之間的“接口”簡(jiǎn)單而清晰。逐步求精逐步求精,或稱逐步細(xì)化,是一種自頂向下的設(shè)計(jì)策略。連續(xù)精化軟件的層次結(jié)構(gòu),逐步細(xì)化來實(shí)現(xiàn)軟件開發(fā),逐步功能分解的過程抽象,直至形成程序設(shè)計(jì)語句。逐步求精是一個(gè)細(xì)化的過程。我們從在高抽象級(jí)上定義的功能陳述或數(shù)據(jù)描述開始,然后在這些原始陳述上持續(xù)細(xì)化越來越多的細(xì)節(jié)。抽象與精化是互補(bǔ)的概念模塊的獨(dú)立性模塊的獨(dú)立性(ModuleIndependence)是模塊化、抽象、信息隱蔽等概念的直接結(jié)果,也是
7、判斷模塊化結(jié)構(gòu)是否合理的標(biāo)準(zhǔn)。模塊獨(dú)立性是指開發(fā)具有獨(dú)立功能而和其他模塊沒有過多關(guān)聯(lián)的模塊。模塊獨(dú)立性兩大優(yōu)點(diǎn):獨(dú)立的模塊由于分解了功能,簡(jiǎn)化了接口,使得軟件比較容易開發(fā);獨(dú)立的模塊比較容易測(cè)試和維護(hù)。5.3模塊獨(dú)立性度量模塊獨(dú)立性由兩個(gè)定性標(biāo)準(zhǔn)度量:模塊自身的內(nèi)聚(Cohesion)),也稱為塊內(nèi)聯(lián)系或模塊強(qiáng)度,模塊之間的耦合(Coupling),也稱為塊間聯(lián)系。模塊獨(dú)立性愈高,則塊內(nèi)聯(lián)系越強(qiáng),塊間聯(lián)系越弱。模塊內(nèi)聚性P58內(nèi)聚性是從功能的角度對(duì)模塊內(nèi)部聚合能力的量度。高內(nèi)聚是模塊獨(dú)立性追求的目標(biāo)。分類:偶然性內(nèi)聚:模塊內(nèi)的各個(gè)任務(wù)在功能上沒有實(shí)質(zhì)