版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1.緒論2.軟件生存周期與軟件過程3.結(jié)構(gòu)化分析與設(shè)計4.面向?qū)ο笈cUML5.需求工程與需求分析6.面向?qū)ο蠓治?.面向?qū)ο笤O(shè)計8.編碼與測試9.軟件維護10.軟件復用11.軟件工程管理主要內(nèi)容結(jié)構(gòu)化分析與設(shè)計提出20世紀70年代中期,Stevens、Myers與Constantine等人在結(jié)構(gòu)化程序設(shè)計的基礎(chǔ)上,倡導結(jié)構(gòu)化設(shè)計(StructuredDesign,SD)技術(shù)。70年代后期,Yourdon等人倡導了與SD配套的結(jié)構(gòu)化分析(StructuredAnalysis,SA)技術(shù),合稱為結(jié)構(gòu)化分析與設(shè)計方法。結(jié)構(gòu)分析與設(shè)計方法是瀑布模型的首次實踐。結(jié)構(gòu)化分析與設(shè)計結(jié)構(gòu)化分析任務(wù)建立分析模型。SA模型是描述軟件需求的一組模型,主要包括功能模型、數(shù)據(jù)模型和行為模型。編寫需求規(guī)格說明書。SRS是分析階段編寫的以文字為主的文檔,主要內(nèi)容包括:引言、信息描述、功能描述、行為描述、質(zhì)量保證、接口描述以及其他需求等。結(jié)構(gòu)化分析的指導思想。抽象與分解時結(jié)構(gòu)化分析的主要指導思想。結(jié)構(gòu)化分析與設(shè)計結(jié)構(gòu)化設(shè)計任務(wù)軟件設(shè)計=總體設(shè)計+詳細設(shè)計??傮w設(shè)計的任務(wù)是把分析模型中的數(shù)據(jù)流圖(DFD圖)轉(zhuǎn)換為軟件結(jié)構(gòu)圖(SC圖),詳細設(shè)計階段的任務(wù)是對SC中的各個模塊進行算法和數(shù)據(jù)結(jié)構(gòu)設(shè)計。軟件設(shè)計指導思想:分解和細化是軟件設(shè)計階段的指導思想。結(jié)構(gòu)化分析與設(shè)計
數(shù)據(jù)詞典
數(shù)
據(jù)
流
圖
實
體關(guān)
系
圖
狀態(tài)轉(zhuǎn)換圖
加
工
控
制
規(guī)
規(guī)
格
格
說
說
明明
數(shù)
據(jù)對
象
描
述功能模型行為模型信息模型
結(jié)構(gòu)化分析模型組成結(jié)構(gòu)化分析與設(shè)計結(jié)構(gòu)化分析模型數(shù)據(jù)流圖(DataFlowDiagram,DFD):主要作用是指明系統(tǒng)中的數(shù)據(jù)是如何流動和變換的,以及描述使數(shù)據(jù)流進行變換的功能。在DFD中出現(xiàn)的每個功能,可在加工規(guī)格說明中描述,它們一起構(gòu)成了軟件的功能模型。實體聯(lián)系圖(EntityRelationDiagram,
E-R圖):用于描述數(shù)據(jù)對象間的關(guān)系,它代表了軟件的信息模型,在實體聯(lián)系圖中出現(xiàn)的每個數(shù)據(jù)對象的屬性,可用數(shù)據(jù)對象說明描述。狀態(tài)轉(zhuǎn)換圖(State
Transformation
Diagram,STD):用于指明系統(tǒng)在外部事件的作用下將如何行動,表明系統(tǒng)的各種狀態(tài)以及狀態(tài)間的變換,從而構(gòu)成行為模型。實例:教材購銷系統(tǒng)從用戶調(diào)查中了解到,某高校向?qū)W生銷售教材的手續(xù)是:先由院辦公室的張秘書開一購書證明;學生憑證明找教材科的王會計開購書發(fā)票;向李出納交付書款;然后到書庫找趙保管領(lǐng)書。將上述手工操作流程改為計算機處理流程,開發(fā)一個“教材銷售系統(tǒng)”。結(jié)構(gòu)化分析與設(shè)計結(jié)構(gòu)化分析與設(shè)計步驟1:通過對現(xiàn)實環(huán)境的調(diào)查研究,獲取當前系統(tǒng)的具體模型。學生張秘書王會計李出納趙保管學生購書申請購書證明購書發(fā)票領(lǐng)書單書學生購買教材的具體模型步驟2:分析需求,建立系統(tǒng)分析模型,包括當前系統(tǒng)模型和目標系統(tǒng)模型。去掉具體模型中的非本質(zhì)因素,提煉出當前系統(tǒng)的邏輯模型。學生審查有效性開發(fā)票開領(lǐng)書單發(fā)書學生購書單有效購書單發(fā)票領(lǐng)書單書學生購買教材的邏輯模型結(jié)構(gòu)化分析與設(shè)計分析當前系統(tǒng)與目標系統(tǒng)的差別,建立目標系統(tǒng)的邏輯模型。學生審查并開發(fā)票開領(lǐng)書單發(fā)書學生購書單發(fā)票領(lǐng)書單書計算機售書系統(tǒng)的邏輯模型目標系統(tǒng)是一個使用計算機的系統(tǒng)。一般來說,它的功能比當前現(xiàn)行業(yè)務(wù)系統(tǒng)更強,不必也不應(yīng)該完全模擬現(xiàn)行系統(tǒng)!結(jié)構(gòu)化分析與設(shè)計步驟3:整理綜合需求,編寫軟件需求說明。步驟4:驗證需求,完善和補充目標系統(tǒng)的描述。通過目標系統(tǒng)的人-機界面,與用戶一起確認目標系統(tǒng)功能,并且確定哪些功能交給計算機去做,哪些功能由人工完成。復審需求說明,補充迄今尚未考慮過的細節(jié),例如系統(tǒng)的響應(yīng)時間、增加出錯處理等。學生審查并開發(fā)票開領(lǐng)書單學生購書單發(fā)票領(lǐng)書單改進的計算機售書系統(tǒng)的邏輯模型無效購書單結(jié)構(gòu)化分析與設(shè)計數(shù)據(jù)流圖(DFD)數(shù)據(jù)流圖:數(shù)據(jù)流圖是用來刻畫數(shù)據(jù)流和加工的信息系統(tǒng)建模技術(shù)。加工/過程數(shù)據(jù)流實體(數(shù)據(jù)源點或數(shù)據(jù)終點)數(shù)據(jù)存儲(數(shù)據(jù)文件或數(shù)據(jù)庫)DFD圖的基本符號結(jié)構(gòu)化分析與設(shè)計DFD圖的擴展符號結(jié)構(gòu)化分析與設(shè)計數(shù)據(jù)流(DataFlow):表示數(shù)據(jù)元素的運動方向。數(shù)據(jù)流是一組成分固定的數(shù)據(jù)組成的。每一個數(shù)據(jù)流必須有一個合適的名字。為數(shù)據(jù)流命名時,可以從其組成成分或含義角度來考慮。數(shù)據(jù)流可以從過程流向過程,從過程流向數(shù)據(jù)存儲或從數(shù)據(jù)存儲流向過程,也可以數(shù)據(jù)源點流向過程或從過程流向數(shù)據(jù)終點,兩個過程之間可以有幾股數(shù)據(jù)流。檢查取款單合理性取款單合理取款單不合理取款單賬目生產(chǎn)統(tǒng)計生產(chǎn)日報生產(chǎn)月報生產(chǎn)統(tǒng)計報表+結(jié)構(gòu)化分析與設(shè)計過程/加工(Process):表示系統(tǒng)要執(zhí)行的一個功能。過程是對數(shù)據(jù)進行的操作,如果把數(shù)據(jù)流比喻為工廠的傳送帶,則過程就好像工廠里的加工工序。每個過程都要有一個確定的名稱來命名,名稱的選取要能夠反映過程的主要功能。每個過程一般有一個編號,編號說明該處理在層次分解中的位置。結(jié)構(gòu)化分析與設(shè)計過程通常以下列方式處理數(shù)據(jù):只改變數(shù)據(jù)流的狀態(tài),但不改變數(shù)據(jù)流的結(jié)構(gòu)。將一種數(shù)據(jù)流轉(zhuǎn)換為另一種數(shù)據(jù)流,即數(shù)據(jù)流的結(jié)構(gòu)發(fā)生了變化。檢查取款單合理性取款單合理取款單不合理取款單賬目生產(chǎn)統(tǒng)計生產(chǎn)日報生產(chǎn)月報生產(chǎn)統(tǒng)計報表+結(jié)構(gòu)化分析與設(shè)計實體(Entity):也稱為外部項,它既可以作為數(shù)據(jù)流的源,也可以作為數(shù)據(jù)流終點。學生審查并開發(fā)票開領(lǐng)書單學生購書單發(fā)票領(lǐng)書單無效購書單數(shù)據(jù)流源點數(shù)據(jù)流終點結(jié)構(gòu)化分析與設(shè)計數(shù)據(jù)存儲(DataStore):表示數(shù)據(jù)的存儲位置。數(shù)據(jù)存儲和過程之間存在三種數(shù)據(jù)流:如果過程要讀數(shù)據(jù),則數(shù)據(jù)是從數(shù)據(jù)存儲流出;如果過程要寫或修改數(shù)據(jù),則數(shù)據(jù)流是流向數(shù)據(jù)存儲;如果過程既要讀數(shù)據(jù),又要寫數(shù)據(jù),則數(shù)據(jù)流是雙向的。結(jié)構(gòu)化分析與設(shè)計數(shù)據(jù)流之間的關(guān)系:與關(guān)系(用“*”表示)、或關(guān)系(用”+”表示)、互斥關(guān)系(用“”表示)。生產(chǎn)統(tǒng)計生產(chǎn)日報生產(chǎn)月報生產(chǎn)統(tǒng)計報表+或關(guān)系檢查取款單合理性取款單合理取款單不合理取款單賬目*互斥關(guān)系與關(guān)系結(jié)構(gòu)化分析與設(shè)計結(jié)構(gòu)化分析與設(shè)計分層次DFD對于一個大型的系統(tǒng),如果用一張數(shù)據(jù)流圖畫出所有的數(shù)據(jù)流和過程,則圖紙將極其龐大復雜,因而難于理解。為了達到簡單性要求,通常采用層次或自頂向下分解的方法,將系統(tǒng)DFD中的每一個過程視為一個子系統(tǒng),然后繼續(xù)向下分解,直到每一個過程容易理解為止,這就是結(jié)構(gòu)化分析方法“自頂向下、逐步分解”的基本原則。分層DFD由:頂層、底層和中間層組成。(1)頂層DFD說明系統(tǒng)邊界,即系統(tǒng)的輸入和輸出數(shù)據(jù)流,頂層DFD只有一張。(2)底層DFD由一些不可再分解的過程組成,這些過程稱為基本加工。(3)在頂層和底層之間的是中間層,中間層的DFD描述了某個過程的分解,而它的組成部分又要進一步分解。結(jié)構(gòu)化分析與設(shè)計教材購銷系統(tǒng)學生書庫保管員購書單領(lǐng)書單缺書單進書通知頂層DFD1銷售學生書庫保管員購書單領(lǐng)書單缺書單進書通知2采購F1教材存量表F2缺書登記進書通知第2層DFD(0)教材購銷系統(tǒng)的層次DFD結(jié)構(gòu)化分析與設(shè)計1.1審查購書單有效性學生購書單無效購書單領(lǐng)書單發(fā)票F1教材存量表F2缺書登記進書通知第3層DFD-銷售子系統(tǒng)(1)1.2開發(fā)票1.3打印發(fā)票1.4登記售書和打印領(lǐng)書單1.5登記缺書1.6產(chǎn)生補售書單采購有效購書單F3學生用書表F4售書登記表發(fā)票學生暫缺書單補售書單結(jié)構(gòu)化分析與設(shè)計銷售F1教材存量表F2缺書登記進書通知2.3修改教材庫存和待購量2.2按出版社統(tǒng)計缺書2.1按書號匯總?cè)睍鳩5待購教材表F6教材一覽表書庫保管員缺書單進書通知第3層DFD-采購子系統(tǒng)(2)結(jié)構(gòu)化分析與設(shè)計繪制分層DFD時應(yīng)該注意以下幾個方面問題:編號父圖與子圖的平衡局部數(shù)據(jù)存儲和局部外部數(shù)據(jù)存儲分解程度結(jié)構(gòu)化分析與設(shè)計編號:為了便于管理,需要按照以下規(guī)則為數(shù)據(jù)流圖和其中的加工編號:頂層DFD無圖號,頂層加工不編號;第二層DFD的圖號為0,第二層DFD中的加工編號為1,2,…,n;第三層每個DFD的編號就是父圖中加工的編號,第三層每個DFD中加工的編號由DFD圖號、小數(shù)點和局部號構(gòu)成,以下各層以此類推。120ABABV圖編號1.11.21.3AVMN1處理編號結(jié)構(gòu)化分析與設(shè)計父圖與子圖的平衡:父圖中某個加工的輸入輸出數(shù)據(jù)流應(yīng)該與相應(yīng)子圖的輸入輸出數(shù)據(jù)流相同,層次DFD的這種特點稱為“平衡”。平衡是指子圖的所有輸入數(shù)據(jù)流必須是父圖中相應(yīng)過程的輸入數(shù)據(jù)流,子圖的所有輸出數(shù)據(jù)流必須是父圖中相應(yīng)過程的輸出數(shù)據(jù)流。結(jié)構(gòu)化分析與設(shè)計局部數(shù)據(jù)存儲和局部外部數(shù)據(jù)存儲隨著DFD圖的分解,在下層DFD中允許出現(xiàn)父圖中沒有的數(shù)據(jù)存儲和外部實體。除了底層DFD需要畫出全部數(shù)據(jù)存儲外,各中間層的DFD僅顯示處于過程之間的接口數(shù)據(jù)存儲,其余數(shù)據(jù)存儲不必畫出來,以保持圖面的簡潔。結(jié)構(gòu)化分析與設(shè)計F5和F6是采購子系統(tǒng)局部數(shù)據(jù)存儲,與父圖中的其它加工無關(guān),所以在父圖中不必畫出。F1和F2是采購子系統(tǒng)與銷售子系統(tǒng)之間的接口,所以在父圖中必須畫出。結(jié)構(gòu)化分析與設(shè)計分解程度分解應(yīng)該自然,概念上合理、清晰;只要不影響DFD的易理解性,可以適當?shù)囟喾纸?,這樣可以減少DFD的層數(shù);一般來說,在上層分解的快一些,而在下層則分解得慢些,這是因為約接近下層功能越具體,分解速度快會增加用戶理解的困難;每一加工分解的子加工一般不超過7個。結(jié)構(gòu)化分析與設(shè)計加工規(guī)格說明(ProcessSPECification,PSPEC)加工規(guī)格說明:是對DFD中每個加工所作出的說明。加工規(guī)格說明是由輸入數(shù)據(jù)、過程邏輯和輸出數(shù)據(jù)等部分組成,過程邏輯闡明把輸入數(shù)據(jù)轉(zhuǎn)換為輸出數(shù)據(jù)的策略,是加工規(guī)格說明的主體。加工規(guī)格說明的主要描述方法:結(jié)構(gòu)化語言:自然語言加上結(jié)構(gòu)化的形式,就形成了結(jié)構(gòu)化語言。判定表:判定表采用表格化的形式,適合于表達含有復雜判斷的加工邏輯。判定樹:判定樹是判定表的圖形表示,其適用場合與判定表相同。結(jié)構(gòu)化分析與設(shè)計結(jié)構(gòu)化分析與設(shè)計實體關(guān)系圖(E-R圖)歷史1976,P.P.S.Chen提出E-R模型,用E-R圖來描述概念模型。1977年,Smith擴展了特殊化、概括和聚集的概念。觀點:世界是由一組稱作實體的基本對象和這些對象之間的聯(lián)系構(gòu)成的。E-R模型中的基本概念實體:客觀存在并可相互區(qū)分的事務(wù)叫做實體。例如,學生張三、學生李四、軟件工程課程、操作系統(tǒng)課程等。屬性:實體所具有的某一特性。一個實體可以由若干個屬性來刻畫。例如,學生可以由學號、姓名、年齡、性別、系別等屬性來刻畫。域:屬性的取值范圍。例如,性別的域為{男,女}。實體型:實體名與其屬性名集合共同構(gòu)成實體型。實體是實體型的一個特例。例如,學生(學號,姓名,年齡,性別,系別,年級)是一個實體型,而學生(980701,張三,22,男,計算機科學與技術(shù)學院,3)是一個實體。結(jié)構(gòu)化分析與設(shè)計結(jié)構(gòu)化分析與設(shè)計實體集:同型實體的集合稱為實體集。碼:能唯一標識實體的屬性或?qū)傩越M稱為超碼。超碼任意超集也是超碼。其任意真子集都不能成為超碼的最小超碼稱為候選碼。從所有候選碼中選擇一個用來區(qū)別同一實體集中的不同實體,稱為主碼。聯(lián)系:實體之間的相互關(guān)聯(lián)。例如,學生與課程之間的選課聯(lián)系。聯(lián)系可以具有屬性。例如,每個選課聯(lián)系都有一個成績作為其屬性。同類聯(lián)系的集合稱為聯(lián)系集。元或度:參與聯(lián)系的實體集的個數(shù)稱為聯(lián)系的元。例如,學生選課是二元聯(lián)系,供應(yīng)商向工程供應(yīng)零件則是三元聯(lián)系。結(jié)構(gòu)化分析與設(shè)計參與:實體之間的關(guān)聯(lián)稱為參與,即實體參與聯(lián)系。例如,張三選修軟件工程,表示實體“張三”與“軟件工程”參與聯(lián)系“選修”。全參與:如果實體集E中的每個實體都參與到聯(lián)系集R中的至少一個聯(lián)系,則稱E全部參與R。部分參與:如果實體集E中只有部分實體參與到聯(lián)系集R的聯(lián)系中,則稱E部分參與R。例如,“職工”與“部門”之間的“管理”聯(lián)系,“職工”實體集部分參與,而“部門”實體集完全參與。結(jié)構(gòu)化分析與設(shè)計學號姓名年齡學生課程選課mn性別系別年級課程號學分課程名結(jié)構(gòu)化分析與設(shè)計角色:實體在聯(lián)系中的作用稱為實體的角色。當同一實體集不止一次參與一個聯(lián)系集時,為區(qū)分各實體的參與聯(lián)系方式,需要顯式指明其角色。例如,學生與學生之間的班長關(guān)系,職工與職工之間的經(jīng)理關(guān)系等。職工經(jīng)理工作部門職工號管理姓名職務(wù)部門號部門名1m管理1m雙線表示完全參與表示實體的角色結(jié)構(gòu)化分析與設(shè)計簡單屬性:不可再分的屬性。例如,學號、年齡等。復合屬性:可以劃分為更小的屬性。例如,電話號碼=區(qū)號+本地號碼。單值屬性:每個特定實體在該屬性上的取值唯一。例如,學生的學號、年齡、性別、系別等。多值屬性:某個特定實體在該屬性上有多于一個取值。例如,學生的所選課程。NULL屬性:表示“無意義”或者“未知值”。派生屬性:派生屬性可以從其他相關(guān)屬性或?qū)嶓w派生出屬性值。結(jié)構(gòu)化分析與設(shè)計聯(lián)系的種類:實體之間的聯(lián)系的數(shù)量,即一個實體通過一個聯(lián)系能與另一個實體集相關(guān)聯(lián)的實體的數(shù)目。聯(lián)系可以分為三類:一對一(1:1)、一對多(1:n)和多對多(m:n)。二元聯(lián)系集:設(shè)有兩個實體集E1和E2。一對一:E1中的一實體與E2中的一個實體相聯(lián)系,并且E2中的一個實體與E1中至多一個實體相聯(lián)系。一對多:E1中的一實體與E2中n(n0)個實體相聯(lián)系,并且E2中的一個實體與E1中至多一個實體相聯(lián)系。多對多:
E1中的一實體與E2中n(n0)個實體相聯(lián)系,并且E2中的一個實體與E1中m(m0)個實體相聯(lián)系。結(jié)構(gòu)化分析與設(shè)計教師班級班主任11教師學生班主任1n學生課程選課mn結(jié)構(gòu)化分析與設(shè)計多元聯(lián)系集:設(shè)有n個實體集E1,E2,…,En,若對E1,…,Ei-1,
Ei+1,…,En,分別給定實體e1,…,ei-1,ei+1,…,en時,至多有一個實體ei與之聯(lián)系,則稱有一個從Ei到E1,…,Ei-1,Ei+1,…,En的一對多聯(lián)系。學生課程選課mn成績1結(jié)構(gòu)化分析與設(shè)計存在依賴:如果實體X的存在依賴于實體Y的存在,則稱X存在依賴于Y,其中,Y稱為支配實體,X稱為從屬實體,如果Y被刪除,X也要配刪除。例如,考慮訂單和訂單項實體,對于一個訂單實體,有若干個訂單項實體與之關(guān)聯(lián),訂單項實體依賴于訂單實體。弱實體集:如果一個實體集的所有屬性都不足以形成主碼,則稱這樣的實體集為弱實體集。弱實體集與其擁有者之間的聯(lián)系稱為標識性聯(lián)系。弱實體集與存在依賴:弱實體集必然存在依賴于強實體集。存在依賴并不會總導致一個弱實體集,從屬實體集可以有自己的主碼。例如,實體集信用卡(信用卡號,客戶賬號,金額),它存在依賴于客戶賬號實體集,但信用卡有自己的主碼信用卡號。結(jié)構(gòu)化分析與設(shè)計部分碼:弱實體集中用于區(qū)別依賴于某個特定強實體集的屬性集合稱為部分碼。例如,訂單項中的訂單項號。弱實體集的主碼由該弱實體集所存在依賴的強實體集的主碼和該弱實體集的部分碼組成。例如,訂單項的主碼=訂單號+訂單項號。包含訂單項訂單訂單號金額訂單項號價格產(chǎn)品數(shù)量產(chǎn)品編號產(chǎn)品名稱價格產(chǎn)品編號隸屬金額結(jié)構(gòu)化分析與設(shè)計E-R模型中的擴展概念特殊化:實體集中的某些子集具有區(qū)別于該實體集內(nèi)其它實體的特性,可以根據(jù)這些差異特性對實體集進行分組,這一分組的過程稱作特殊化。細化:父類子類特例更小的實體集更多的屬性。例如,銀行帳號可以有存款賬號、貸款賬號,學生可以有本科生、研究生等。特殊化聯(lián)系(ISA聯(lián)系):表示高層實體和底層實體之間的“父類-子類”聯(lián)系。結(jié)構(gòu)化分析與設(shè)計概括:各個實體集根據(jù)共有性質(zhì),合成一個較高層的實體的過程稱為概括。概括是一個高層實體集與若干個底層實體集之間的包含關(guān)系。泛化:子類父類。概括與特殊化:概括與特殊化是個互逆的過程,在ER圖中的表示方法相同;特殊化強調(diào)同一實體集內(nèi)不同實體之間的差異,概括強調(diào)不同實體集之間的相似性;屬性繼承:高層實體集的屬性被底層實體集自動繼承。底層實體集特有的性質(zhì)僅適用于某個特定的底層實體集。結(jié)構(gòu)化分析與設(shè)計學生學號姓名ISA本科生研究生ISA軍訓碩士博士發(fā)表論文ISA職工工號姓名結(jié)構(gòu)化分析與設(shè)計成員資格:確定哪些高層實體如何成為給定底層實體集的成員。條件定義:一個高層實體成員資格的確定該實體是否滿足一個顯式的條件或謂詞。例如,“學生”實體集具有屬性“學生類型”,則所有的學生實體根據(jù)“學生類型”進行成員資格認定,如一個學生的學生類型=“本科生”,則他就可以歸入底層“本科生”實體集中。由用戶定義:由用戶來指定一個實體歸入哪個底層實體集。例如,一個學生被老師分配到某個項目組。結(jié)構(gòu)化分析與設(shè)計成員身份:確定一個高層實體是否可以屬于多個底層不同實體集。不相交的:一個實體至多屬于一個底層實體集。例如,一個學生只能參加一個項目組。相重疊的:同一個實體可以同時屬于同一概括的多個底層實體集。例如,一個老師可以參加多個項目組。全部性約束:確定高層實體集中的一個實體是否必須屬于某個概括的至少一個底層實體集。全部的:每個高層實體必須屬于一個底層實體集。例如,學生必須屬于“本科生”或“研究生”的一種。部分的:允許一些高層實體不屬于任何底層實體集。例如,學生可以不屬于任何項目組。結(jié)構(gòu)化分析與設(shè)計聚集:聚集是一種抽象,通過它聯(lián)系被作為高層實體集。例如,職工參加項目,并在此過程中可能使用機器,那么如何表達聯(lián)系之間的聯(lián)系。職工職工號參加并使用姓名職務(wù)項目類型名稱機器機器名型號工時結(jié)構(gòu)化分析與設(shè)計職工職工號參加并使用姓名職務(wù)項目類型名稱機器機器名型號工時使用結(jié)構(gòu)化分析與設(shè)計實體集弱實體集聯(lián)系集多值屬性標識聯(lián)系集主碼屬性導出屬性弱實體集導出屬性實體集聯(lián)系集實體集聯(lián)系集角色名完全參與ER圖的符號表示(1)結(jié)構(gòu)化分析與設(shè)計聯(lián)系集多對多聯(lián)系多對一聯(lián)系聯(lián)系集聯(lián)系集一對一聯(lián)系實體集聯(lián)系集1:h基數(shù)限制ISA全部概括ISA特殊化/概括ER圖的符號表示(2)軟件需求分析IDEF1X圖IDEF是在實體聯(lián)系圖的原則基礎(chǔ)上,增加一些規(guī)則,使語義更豐富的一種方法。IDEF1X中的概念實體:獨立標識實體、依賴標識實體關(guān)系:標識聯(lián)接關(guān)系、非標識聯(lián)接關(guān)系、分類關(guān)系、非確定關(guān)系屬性/關(guān)鍵字:主關(guān)鍵字、次關(guān)鍵字、外來關(guān)鍵字軟件需求分析實體:表示具有相同屬性或特征的一個現(xiàn)實或抽象事物的集合。實體的實例是實體抽象概念的一個具體的值。實體分為獨立標識實體:不依賴于其它實體存在的實體。依賴標識實體:必須依賴于其它實體才能存在的實體,也稱為從屬實體。實體名/實體號實體名/實體號獨立實體表示符號依賴實體表示符號學生/1學生成績/2軟件需求分析屬性:屬性表示實體的特征或性質(zhì)。
候選關(guān)鍵字:候選關(guān)鍵字是由一個實體中的一個或多個屬性組成,它唯一確定實體的每一個實例。主/次關(guān)鍵字:每個實體至少有一個候選關(guān)鍵字。如果一個實體中有多個候選關(guān)鍵字,則制定其中的一個為主關(guān)鍵字,其它關(guān)鍵字為次關(guān)鍵字。實體名/實體號屬性名[屬性名]…[屬性名](AK1)[屬性名](AK2)[屬性名](AK2)…主關(guān)鍵字屬性次關(guān)鍵字雇員/1雇員號身份證號碼(AK1)雇員名(AK2)生日(AK2)…軟件需求分析發(fā)票/2發(fā)票編號學號姓名書費合計發(fā)票行/3發(fā)票編號發(fā)票行號書號單價數(shù)量總價獨立標識實體依賴標識實體(不能脫離發(fā)票而獨立存在)軟件需求分析確定聯(lián)接關(guān)系:是實體間的一種關(guān)系,在這種關(guān)系中被稱為父實體的每一個實例與子實體的0、1或多個實例聯(lián)接,子實體中的每個實例同父實體中的0或1個實例聯(lián)接。標識聯(lián)接關(guān)系:在標識連接關(guān)系中,父實體的主關(guān)鍵字屬于子實體的主關(guān)鍵字。非標識連接關(guān)系:在非標識連接關(guān)系中,父實體的主關(guān)鍵字不屬于子實體的主關(guān)鍵字。實體A/1關(guān)鍵字A實體B/2關(guān)鍵字A(FK)關(guān)鍵字B父實體關(guān)系名子實體標識聯(lián)接關(guān)系軟件需求分析零個、1個或多個P1個或多個Z0個或1個n只有n個nm有n到m個(n)參考注釋中的說明實體A/1關(guān)鍵字A實體B/2關(guān)鍵字B父實體關(guān)系名子實體關(guān)鍵字A(FK)非標識聯(lián)接關(guān)系軟件需求分析發(fā)票/2發(fā)票編號學號姓名書費合計發(fā)票行/3發(fā)票編號發(fā)票行號書號單價數(shù)量總價包含軟件需求分析分類關(guān)系:一般實體分類實體分類實體集鑒別器分類屬性軟件需求分析分類關(guān)系分為:完全分類關(guān)系:完全分類關(guān)系是聯(lián)接兩個或多個實體之間的關(guān)系,在這些實體中,存在一個一般實體,它的每個實例恰好與一個且僅與一個分類實體的一個實例相聯(lián)系。一般實體的每個實例和與之相關(guān)聯(lián)的一個分類實體實例描述的是現(xiàn)實世界的同一事物。非完全分類關(guān)系:它允許一般實體的一個實例不與任何分類實體的實例相聯(lián)系,即對一般實體的分類是不完全的。軟件需求分析一般實體一般實體鑒別器分類實體分類實體鑒別器完全分類關(guān)系非完全分類關(guān)系軟件需求分析結(jié)構(gòu)化分析方法結(jié)構(gòu)化分析:就是使用DFD、E-R圖、結(jié)構(gòu)化語言、判定表和判定樹等工具建立結(jié)構(gòu)化規(guī)格說明的目標文檔。結(jié)構(gòu)化分析方法步驟畫出層次的數(shù)據(jù)流圖確定數(shù)據(jù)定義與加工策略需求分析的復審結(jié)構(gòu)化分析與設(shè)計案例:教材購銷系統(tǒng)畫出分層次數(shù)據(jù)流圖結(jié)構(gòu)化分析與設(shè)計結(jié)構(gòu)化分析與設(shè)計確定數(shù)據(jù)定義與加工策略數(shù)據(jù)流:領(lǐng)書單、發(fā)票、缺書單、購書單、補售書單、進書通知。數(shù)據(jù)存儲:教材存量表、缺書登記、學生用書表、售書登記數(shù)據(jù)流:缺書單、進書通知。數(shù)據(jù)存儲:教材存量表、缺書登記、待購教材表、教材一覽表結(jié)構(gòu)化分析與設(shè)計編號名稱屬性集教材一覽表書號,書名,出版社,版次,作者,單價學生用書表專業(yè),學期,書號,書名購書單購書單號,學號,姓名,購書單項(書號,書名,數(shù)量)發(fā)票發(fā)票號,學號,姓名,日期,書費合計,發(fā)票項(書號,書名,單價,數(shù)量,總價)售書登記學號,姓名,書號,數(shù)量缺書登記學號,姓名,書號,數(shù)量教材存量表書號,單價,數(shù)量數(shù)據(jù)字典結(jié)構(gòu)化分析與設(shè)計發(fā)票發(fā)票號學號教材購銷系統(tǒng)實體關(guān)系圖(1)姓名書費合計包含發(fā)票項單價數(shù)量總價書號每個發(fā)票可以生成多個售書登記,每個售書登記可以由多個發(fā)票生成。發(fā)票購書單號售書登記姓名書號數(shù)量學號售書登記生成結(jié)構(gòu)化分析與設(shè)計發(fā)票發(fā)票號學號姓名書費合計包含發(fā)票項單價數(shù)量總價書號發(fā)票購書單號購書單購書單號姓名學號數(shù)量包含購書單項書號生成0..1購書單1.每個購書單生成一個發(fā)票,發(fā)票中的學號和姓名字來自于購書單。2.每個購書單項生成一個發(fā)票項,發(fā)票項中的書號和數(shù)量來自于購書單項。教材購銷系統(tǒng)實體關(guān)系圖(2)結(jié)構(gòu)化分析與設(shè)計發(fā)票發(fā)票號學號姓名書費合計包含發(fā)票項單價數(shù)量總價書號發(fā)票購書單號教材存量表書號單價數(shù)量教材存量表銷售定價1.發(fā)票項中每個書號的價格需要根據(jù)教材存量表中相應(yīng)書號的價格來確定。2.發(fā)票項中數(shù)量如果大于教材存量表中數(shù)量,則需要生成缺書登記;3.每次生成發(fā)票項,教材存量表中的數(shù)量都減少發(fā)票項中的數(shù)量。教材購銷系統(tǒng)實體關(guān)系圖(3)結(jié)構(gòu)化分析與設(shè)計發(fā)票發(fā)票號學號姓名書費合計包含發(fā)票項單價數(shù)量總價書號發(fā)票購書單號缺書登記姓名書號數(shù)量學號生成每個發(fā)票可以生成多個缺書書登記,每個缺書登記可以由多個發(fā)票生成。缺書登記教材購銷系統(tǒng)實體關(guān)系圖(4)結(jié)構(gòu)化分析與設(shè)計缺書登記姓名書號數(shù)量學號補售書單補售書單號姓名學號數(shù)量包含補售書單項書號生成每個缺書登記可以生成多個補售書單。每個補售書單可以由多個缺書登記生成。補售書單缺書登記教材購銷系統(tǒng)實體關(guān)系圖(5)結(jié)構(gòu)化分析與設(shè)計待購教材表書號數(shù)量待購教材表教材一覽表書號書名教材一覽表教材購銷系統(tǒng)實體關(guān)系圖(6)結(jié)構(gòu)化分析與設(shè)計實體編號實體名稱實體描述1學院/系2專業(yè)3教材表4學生用書表5教材存量表6學生7售書登記8購書單9購書項10發(fā)票11發(fā)票行12缺書登記13補售書單14補售書項15待購教材表實體集合結(jié)構(gòu)化分析與設(shè)計學生/6學號姓名專業(yè)編號[FK]年級教材存量表/5書號書名單價數(shù)量教材表/3書號書名出版社版次作者單價學院/1學院編號學院名稱專業(yè)/2專業(yè)編號專業(yè)名稱學院編號[FK]專業(yè)編號[FK1]年級書號[FK2]書名學生用書表/4售書登記表/7學號書號數(shù)量結(jié)構(gòu)化分析與設(shè)計發(fā)票/10發(fā)票號學號姓名書費合計發(fā)票行/11發(fā)票號書號書名單價數(shù)量總價購書單號學號姓名購書單/8購書項/9購書單號書號書名數(shù)量缺書登記表/12學號書號書名數(shù)量補售書單/13補售書單號學號姓名補售書項/14補售單號書號書名數(shù)量待購教材表/15書號書名數(shù)量結(jié)構(gòu)化分析與設(shè)計教材信息維護教材表學生用書信息維護學生用書表專業(yè)專業(yè)信息維護學院學生信息維護學生表基礎(chǔ)數(shù)據(jù)管理結(jié)構(gòu)化分析與設(shè)計1.1審查購書單有效性學生購書單領(lǐng)書單發(fā)票教材存量表缺書登記進書通知1.2開發(fā)票1.3打印發(fā)票1.4登記售書1.5登記缺書1.6產(chǎn)生補售書單采購有效購書單學生用書表售書登記表發(fā)票學生暫缺書單補售書單1.7開領(lǐng)書單銷售管理無效購書單結(jié)構(gòu)化分析與設(shè)計銷售教材存量表缺書登記進書通知2.2按出版社統(tǒng)計缺書2.1按書號匯總?cè)睍徑滩谋斫滩谋頃鴰毂9軉T缺書單進書登記表2.3進書登記2.4修改教材庫存2.5修改待購量進書通知進書通知統(tǒng)計缺書登記進書采購管理例.
“開發(fā)票”的加工規(guī)格說明(采用結(jié)構(gòu)化語言)結(jié)構(gòu)化分析與設(shè)計軟件需求分析軟件需求說明軟件需求說明(SRS):是軟件開發(fā)人員在需求分析階段需要完成的文檔。例如,IEEE830-1998、GB856D-88。軟件需求說明主要內(nèi)容引言:敘述在問題定義階段確定的關(guān)于軟件的目標與范圍,簡要地介紹系統(tǒng)背景、概貌、軟件項目約束和參考資料等;主體部分:信息描述、功能描述、行為描述信息描述:給出軟件所包含信息的詳細描述,包括信息的內(nèi)容、關(guān)系、數(shù)據(jù)流向、控制流向和結(jié)構(gòu)等。軟件需求分析功能描述:對軟件功能要求說明,包括系統(tǒng)功能劃分、每個個功能的處理說明、限制和控制描述等。行為描述:對系統(tǒng)狀態(tài)變化以及事件和動作的敘述,據(jù)此可以檢查外部事件和軟件內(nèi)部控制特征。質(zhì)量保證接口描述其它描述結(jié)構(gòu)化分析與設(shè)計從結(jié)構(gòu)化模型導出結(jié)構(gòu)化設(shè)計模型
數(shù)據(jù)詞典
數(shù)
據(jù)
流
圖
實
體關(guān)
系
圖
狀態(tài)轉(zhuǎn)換圖
加
工
控
制
規(guī)
規(guī)
格
格
說
說
明明
數(shù)
據(jù)對
象
描
述過程設(shè)計
接口設(shè)計
體系結(jié)構(gòu)設(shè)計
數(shù)據(jù)設(shè)計
結(jié)構(gòu)化設(shè)計體系結(jié)構(gòu)設(shè)計:定義軟件主要組成部件之間的關(guān)系;接口設(shè)計:描述軟件內(nèi)部、軟件和接口、系統(tǒng)之間以及軟件與人之間是如何通信的;過程設(shè)計:將軟件體系結(jié)構(gòu)的組成部分轉(zhuǎn)變成對軟件組件的過程性描述。數(shù)據(jù)設(shè)計:將分析階段創(chuàng)建的信息模型轉(zhuǎn)變成軟件實現(xiàn)所需的數(shù)據(jù)結(jié)構(gòu);結(jié)構(gòu)化分析與設(shè)計結(jié)構(gòu)圖(StructureChart,SC)結(jié)構(gòu)圖:軟件結(jié)構(gòu)概要設(shè)計階段的工具,反映系統(tǒng)的功能實現(xiàn)以及模塊與模塊之間的聯(lián)系與通信,即反映了系統(tǒng)的總體結(jié)構(gòu)。結(jié)構(gòu)圖的表示方法:用矩形表示模塊,用帶箭頭的連線表示模塊間的調(diào)用關(guān)系。在調(diào)用關(guān)系的兩旁,標出傳入和傳出模塊的數(shù)據(jù)流。模塊模塊間調(diào)用關(guān)系SC圖的符號傳入/傳出數(shù)據(jù)流結(jié)構(gòu)化分析與設(shè)計結(jié)構(gòu)圖的6種模塊:傳入、傳出、變換、源、漏和控制。(a)傳入XY(b)傳出YXXY(c)變換X(d)源X(e)漏(f)控制…結(jié)構(gòu)化分析與設(shè)計SC圖中的模塊調(diào)用簡單調(diào)用:調(diào)用線的箭頭指向被調(diào)用模塊。例如,在圖(a)中,允許模塊A調(diào)用模塊B和C,反之則不可以。調(diào)用B時,A向它傳送數(shù)據(jù)流X和Y,B向A返回數(shù)據(jù)流Z。調(diào)用C時,A向C傳送數(shù)據(jù)流Z。BACX,YZZBAC12入出X,YZZ-12(a)簡單調(diào)用兩種表示方法結(jié)構(gòu)化分析與設(shè)計ABCDX,YZZY(b)選擇調(diào)用表示方法選擇調(diào)用:用菱形符號表示選擇。例如,圖(b)的左側(cè)的菱形表示:模塊A根據(jù)它內(nèi)部的判斷,來決定要不要調(diào)用模塊B;右側(cè)的菱形表示:模塊A按照另一判斷結(jié)果,選擇調(diào)用模塊C或模塊D。ABC12(c)循環(huán)調(diào)用表示方法循環(huán)調(diào)用:用疊加在調(diào)用線始端的環(huán)形箭頭表示循環(huán)。例如,下圖含義是:模塊A將根據(jù)其內(nèi)在的循環(huán)重復調(diào)用B,C等模塊,直到在A模塊內(nèi)部出現(xiàn)滿足循環(huán)終止的條件為止。結(jié)構(gòu)化分析與設(shè)計數(shù)據(jù)流圖的類型變換型結(jié)構(gòu):這類結(jié)構(gòu)由3部分組成:傳入路徑(AfferentPath)、變換中心(TransformCenter)和傳出路徑(EfferentPath)。流經(jīng)這3部分的數(shù)據(jù)流分別稱為傳入流、變換流和傳出流。變換中心傳入路徑傳出路徑基本模型傳入流傳出流
變換流時間數(shù)據(jù)流信息結(jié)構(gòu)化分析與設(shè)計事務(wù)型結(jié)構(gòu):這類結(jié)構(gòu)由至少一條接受路徑(ReceptionPath)、一個事務(wù)中心(TransactionCenter)與若干條動作路徑(ActionPath)組成。變換中心接受路徑動作路徑事務(wù)型結(jié)構(gòu)的系統(tǒng)基本模型...……T變換傳入傳出事務(wù)中心同時存在兩種結(jié)構(gòu)的系統(tǒng)結(jié)構(gòu)化分析與設(shè)計體系結(jié)構(gòu)設(shè)計方法的步驟復審DFD圖,必要時可再次進行修改或細化;鑒別DFD圖所表示的軟件系統(tǒng)的結(jié)構(gòu)特征,確定它所代表的軟件結(jié)構(gòu)是屬于變換型還是事務(wù)型;按照SD方法規(guī)定一組規(guī)則,把DFD圖轉(zhuǎn)換為初始的SC圖;按照優(yōu)化設(shè)計的指導原則改進初始的SC圖,獲得最終SC圖。結(jié)構(gòu)化分析與設(shè)計變換型DFD圖初始SC圖事務(wù)型DFD圖初始SC圖DFD向初始SC映射方法變換映射(TransformMapping)事務(wù)映射(TransactionMapping)結(jié)構(gòu)化分析與設(shè)計變換映射步驟1:區(qū)分傳入、傳出和變換中心3個部分,劃分DFD圖邊界。例如,對下面DFD圖進行劃分,區(qū)分傳入、傳出和變換中心3部分。結(jié)構(gòu)化分析與設(shè)計ABCPRWUVDEQabcderpwuv變換中心傳入部分傳出部分步驟2:完成“第一級分解”,建立初始SC圖的框架。初始SC圖的框架通常包括最上面的兩層模塊:頂層和第一層。任何系統(tǒng)的頂層只含有一個用于控制的主模塊。它的下一層一般包括傳入、傳出和中心變換3個模塊,分別代表系統(tǒng)的3個相應(yīng)分支。主模塊傳入模塊變換中心模塊傳出模塊結(jié)構(gòu)化分析與設(shè)計MCMAMTMEc,ec,ew,uw,u第一級分解后的SC圖結(jié)構(gòu)化分析與設(shè)計ABCPRWUVDEQabcderpwuv變換中心傳入部分傳出部分步驟3:完成“第二級分解”,細化SC圖的各個分支。對上步的結(jié)果繼續(xù)進行由頂向下的分解,直至畫出每個分支所需要的全部模塊,稱為“第二級分解”或“分支分解”。這一步得到的結(jié)果便是系統(tǒng)的初始SC圖。ABCDEMAabcdec,e傳入分支的分解結(jié)構(gòu)化分析與設(shè)計WVUMEwvuw,u傳出分支的分解MTQw,uPRepc,prr中心加工分支的分解結(jié)構(gòu)化分析與設(shè)計MCc,ec,ew,uw,uABCDEMAabcdeMTQw,uPRepc,prrWVUMEwvu頂層第一層第二層初始SC圖事務(wù)映射步驟1:在DFD圖上確定事務(wù)中心、接受部分(包括接受路徑)和發(fā)送部分(包括全部動作路徑)。例如,對下面DFD圖進行劃分,區(qū)分接受部分、事務(wù)中心和傳出部分。ATBCDEFHIJ事務(wù)中心接受部分發(fā)送部分⊕⊕結(jié)構(gòu)化分析與設(shè)計abehcdfij步驟2:畫出SC圖初始框架,把DFD圖的3個部分分別映射為事務(wù)中心控制模塊、接受模塊和動作模塊。SC圖的初始框架是分為兩個層次,如圖(a)所示。如果第一層模塊比較簡單,也可以并入頂層,形成如圖(b)所示的單層結(jié)構(gòu)。事務(wù)控制模塊接受模塊發(fā)送模塊頂層第一層事務(wù)控制事務(wù)分析發(fā)送(b)單層結(jié)構(gòu)結(jié)構(gòu)化分析與設(shè)計(a)典型的兩層結(jié)構(gòu)結(jié)構(gòu)化分析與設(shè)計APTATBCDEFHIJ事務(wù)中心接受部分發(fā)送部分⊕⊕abehcdfijab,e,hbeh初始SC框架結(jié)構(gòu)化分析與設(shè)計步驟3:分解和細化接受分支和發(fā)送分支,按成初始SC圖。典型的動作分支結(jié)構(gòu)分為四層:處理層P、事務(wù)層T、操作層A和細節(jié)層D。PT1T2TiA1A2A3AjD1D2Dk處理層事務(wù)層操作層細節(jié)層處理層相當于發(fā)送模塊每一個動作路徑映射為一個事務(wù)模塊操作層和細節(jié)層的模塊被上層模塊所共享,可以被多個上層模塊調(diào)用結(jié)構(gòu)化分析與設(shè)計APTT1T2T3ab,e,hbehBCDEFHIJbccddeffhi,jij頂層處理層事務(wù)層操作層初始SC圖AbBC2DC3C1EGFJKLb1c1b2b3c2defgc3hjklam⊕⊕思考題:將下列DFD圖轉(zhuǎn)換為初始SC圖。結(jié)構(gòu)化分析與設(shè)計判斷DFD圖的結(jié)構(gòu)類型。AbBC2DC3C1EGFJKLb1c1b2b3c2defgc3hjklam⊕⊕傳入部分變換中心傳出部分接收部分事務(wù)中心發(fā)送部分結(jié)構(gòu)化分析與設(shè)計MCMAMTMEddkkAbBC2DC3C1EGFJKLb1c1b2b3c2defgc3hjklam⊕⊕傳入部分變換中心傳出部分第一級分解后的SC圖結(jié)構(gòu)化分析與設(shè)計優(yōu)化初始SC圖的指導原則對模塊劃分的原則以提高模塊的獨立性為首要標準提高內(nèi)聚,降低耦合,簡化模塊接口少用全局性數(shù)據(jù)和控制信息模塊大小適中(10到100行)結(jié)構(gòu)化分析與設(shè)計高扇入/低扇出的原則扇入:調(diào)用一個給定模塊的次數(shù)。扇入高則上級模塊多,能夠增加模塊的利用率。扇出:一個模塊直接調(diào)用其它模塊數(shù)目。扇出低則表示下級模塊少,可以減少模塊調(diào)用和控制的復雜度。通常扇出數(shù)以3-4個為宜,最好不超過5-7個。M…M…M的扇入M的扇出結(jié)構(gòu)化分析與設(shè)計通過增加中間層減少扇出MM煎餅形結(jié)構(gòu)塔形結(jié)構(gòu)結(jié)構(gòu)化分析與設(shè)計M甕形結(jié)構(gòu)設(shè)計良好的軟件通常具有甕形結(jié)構(gòu),兩頭小,中間大。結(jié)構(gòu)化分析與設(shè)計1.1審查購書單有效性學生購書單領(lǐng)書單發(fā)票F1教材存量表F2缺書登記進書通知1.2開發(fā)票1.3打印發(fā)票1.4登記售書1.5登記缺書1.6產(chǎn)生補售書單采購有效購書單F3學生用書表F4售書登記表發(fā)票學生暫缺書單補售書單1.7開領(lǐng)書單教材購銷系統(tǒng)的結(jié)構(gòu)設(shè)計示例修改后銷售子系統(tǒng)DFD圖無效購書單結(jié)構(gòu)化分析與設(shè)計初售補售銷售F1教材存量表F2缺書登記進書通知2.2按出版社統(tǒng)計缺書2.1按書號匯總?cè)睍鳩5待購教材表F6教材一覽表書庫保管員缺書單F7進書登記表修改后采購子系統(tǒng)DFD圖結(jié)構(gòu)化分析與設(shè)計2.3進書登記2.4修改教材庫存2.5修改待購量進書通知進書通知統(tǒng)計缺書登記進書初始SC圖教材購銷系統(tǒng)讀出用戶選擇銷售采購用戶命令銷售命令采購命令教材購銷系統(tǒng)上層框架初售補售初售命令補售命令統(tǒng)計缺書登記進書統(tǒng)計命令登記命令結(jié)構(gòu)化分析與設(shè)計采購統(tǒng)計缺書登記進書按書號匯總?cè)睍闯霭嫔缃y(tǒng)計缺書打印缺書單修改教材待購量修改教材庫存量統(tǒng)計命令缺書登記表待購教材表待購教材表缺書單缺書單進書通知進書通知登記命令采購子系統(tǒng)初始SC圖結(jié)構(gòu)化分析與設(shè)計銷售初售補售獲取購書單有效性開發(fā)票開領(lǐng)書單打印發(fā)票獲取補售書單登記缺書審查購書單有效性讀購書單讀進書通知初售命令補售命令有效購書單有效購書單購書單有效購書單發(fā)票暫缺書單發(fā)票補售書單領(lǐng)書單領(lǐng)書單補售書單進書通知銷售子系統(tǒng)初始SC圖登記售書發(fā)票結(jié)構(gòu)化分析與設(shè)計結(jié)構(gòu)化分析與設(shè)計教材購銷系統(tǒng)銷售管理采購管理基礎(chǔ)數(shù)據(jù)管理模塊設(shè)計(過程/接口/數(shù)據(jù)設(shè)計)目的:為軟件結(jié)構(gòu)圖SC中的每一個模塊確定采用的算法和塊內(nèi)數(shù)據(jù)結(jié)構(gòu),用某種選定的表達工具給出更清晰的描述。任務(wù):為每一模塊編寫過程設(shè)計說明書,并設(shè)計出一組測試用例,以便在編碼階段對模塊代碼進行預(yù)定的單元測試。為每個模塊確定采用的算法。選擇某種適當?shù)墓ぞ弑磉_算法的過程,寫出模塊的詳細過程描述;確定每一模塊使用的數(shù)據(jù)結(jié)構(gòu);確定模塊接口的細節(jié),包括對系統(tǒng)外部的接口和用戶界面,對系統(tǒng)內(nèi)部其它模塊的接口,以及關(guān)于模塊輸入數(shù)據(jù)、輸出數(shù)據(jù)及局部數(shù)據(jù)的全部細節(jié)。結(jié)構(gòu)化分析與設(shè)計模塊設(shè)計的原則與方法清晰第一的設(shè)計風格結(jié)構(gòu)化的控制結(jié)構(gòu)逐步細化的實現(xiàn)方法1選擇順序1TFFT循環(huán)(do-While)FT循環(huán)(do-unti)結(jié)構(gòu)化分析與設(shè)計Case1Case2Casen…多分支結(jié)構(gòu)(Case)…GOTOn...n……GOTOn……n……允許的轉(zhuǎn)移不允許的轉(zhuǎn)移Goto語句允許和不允許用法結(jié)構(gòu)化分析與設(shè)計常用的表達工具流程圖和N-S圖
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年八年級統(tǒng)編版語文寒假預(yù)習 第05講 《莊子》二則
- 【全程復習方略】2020年數(shù)學文(廣西用)課時作業(yè):第六章-第四節(jié)含絕對值的不等式
- 【2021屆備考】2020全國名校物理試題分類解析匯編(11月第二期)D5-萬有引力與天體運動
- 【創(chuàng)新設(shè)計】2021高考英語(四川專用)二輪復習-第4部分-閱讀理解解答技巧-專題1-
- 《精準醫(yī)療》課件
- 2021杭州市高考英語閱讀理解、完形填空小練(2)答案(四月)
- 【2021屆備考】2020全國名?;瘜W試題分類解析匯編(11月第二期):N-單元物質(zhì)結(jié)構(gòu)與性質(zhì)
- 五年級數(shù)學(小數(shù)四則混合運算)計算題專項練習及答案
- 【2021屆備考】2020全國名校物理試題分類解析匯編(11月第二期)L2-法拉第電磁感應(yīng)定律
- M2工藝部周工作總結(jié)Week
- 中醫(yī)診療器具清洗消毒(醫(yī)院感染防控專家課堂培訓課件)
- 立法學完整版教學課件全套ppt教程
- 簡約中國風水墨山水工作總結(jié)通用PPT模板
- 礦山測量課程設(shè)計
- 藥廠生產(chǎn)車間現(xiàn)場管理-PPT課件
- 軸與孔標準公差表
- 防火門施工方案
- 人教PEP版2022-2023六年級英語上冊期末試卷及答案(含聽力材料)
- 高速公路瀝青路面設(shè)計計算書(Word)
- 加油機拆卸安裝方案
- 《輪滑》專項體育課教學大綱、教學計劃
評論
0/150
提交評論