




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、,軟件工程,北京工業(yè)大學(xué)軟件學(xué)院 石振蓮 67396121 ,Unit 3 軟件開發(fā)技術(shù),Unit Objectives,了解并掌握工程軟件開發(fā)的幾種技術(shù)方法 結(jié)構(gòu)化軟件開發(fā)技術(shù) 面向?qū)ο筌浖_發(fā)技術(shù) 專家系統(tǒng)軟件開發(fā)技術(shù),各種方法特點(diǎn)比較,從概念方面看 結(jié)構(gòu)化軟件是功能的集合,通過模塊以及模塊和模塊之間的分層調(diào)用關(guān)系實(shí)現(xiàn); 面向?qū)ο筌浖鞘挛锏募希ㄟ^對(duì)象以及對(duì)象和對(duì)象之間的通訊聯(lián)系實(shí)現(xiàn); 專家系統(tǒng)軟件是知識(shí)的集合,通過知識(shí)以及知識(shí)和知識(shí)之間的邏輯推理關(guān)系實(shí)現(xiàn)。,各種方法特點(diǎn)比較(Cont.),從構(gòu)成方面看 結(jié)構(gòu)化軟件過程數(shù)據(jù),以過程為中心; 面向?qū)ο筌浖〝?shù)據(jù)相應(yīng)操作)的封裝,以數(shù)據(jù)為中
2、心; 專家系統(tǒng)軟件知識(shí)推理,以知識(shí)為中心。,各種方法特點(diǎn)比較(Cont.),從運(yùn)行控制方面看 結(jié)構(gòu)化軟件采用順序處理方式,由過程驅(qū)動(dòng)控制; 面向?qū)ο筌浖捎媒换ナ健⒉⑿刑幚矸绞?,由消息?qū)動(dòng)控制; 專家系統(tǒng)軟件采用交互式、并行處理方式,由數(shù)據(jù)驅(qū)動(dòng)控制。,各種方法特點(diǎn)比較(Cont.),從開發(fā)方面看 結(jié)構(gòu)化方法的工作重點(diǎn)是設(shè)計(jì); 面向?qū)ο蠓椒ǖ墓ぷ髦攸c(diǎn)是分析; 專家系統(tǒng)方法的工作重點(diǎn)是知識(shí)的獲取與表達(dá)。,各種方法特點(diǎn)比較(Cont.),從應(yīng)用方面看 結(jié)構(gòu)化方法更加適合數(shù)據(jù)類型比較簡(jiǎn)單的數(shù)值計(jì)算和數(shù)據(jù)統(tǒng)計(jì)管理軟件的開發(fā); 面向?qū)ο蠓椒ǜ舆m合大型復(fù)雜的人機(jī)交互式軟件和數(shù)據(jù)統(tǒng)計(jì)管理軟件的開發(fā); 專家系
3、統(tǒng)方法更加適合邏輯推理型軟件的開發(fā)。,各種方法特點(diǎn)比較(Cont.),從發(fā)展方面看,面向?qū)ο蠓椒ㄊ擒浖_發(fā)方法的發(fā)展方向。,結(jié)構(gòu)化軟件開發(fā)技術(shù),結(jié)構(gòu)化分析技術(shù) 結(jié)構(gòu)化設(shè)計(jì)技術(shù) 結(jié)構(gòu)化實(shí)現(xiàn)技術(shù),分析:?jiǎn)栴}是什么 設(shè)計(jì):怎樣解決 實(shí)現(xiàn):解決分析 確定數(shù)據(jù)流圖(DFD) 建立結(jié)構(gòu)圖(SC) 過程設(shè)計(jì) 分析確定實(shí)體聯(lián)系圖(ERD) 建立關(guān)系數(shù)據(jù)模式(RM) 編碼調(diào)試 運(yùn)行維護(hù),Where are we ?,結(jié)構(gòu)化分析技術(shù) 結(jié)構(gòu)化設(shè)計(jì)技術(shù) 結(jié)構(gòu)化實(shí)現(xiàn)技術(shù),結(jié)構(gòu)化分析技術(shù)內(nèi)容和任務(wù),采用結(jié)構(gòu)化分析(Structured Analysis ,SA)技術(shù)對(duì)問題進(jìn)行分析建模,將問題表述為: + 數(shù)據(jù)流圖問題空間
4、中數(shù)據(jù)變換處理之間的邏輯關(guān)系 實(shí)體聯(lián)系圖問題空間中數(shù)據(jù)存貯之間的邏輯關(guān)系,數(shù)據(jù)流圖,實(shí)體聯(lián)系圖,結(jié)構(gòu)化分析技術(shù)內(nèi)容和任務(wù),結(jié)構(gòu)化分析工作內(nèi)容及步驟,例:大學(xué)教務(wù)管理問題,問題描述: 接受學(xué)生提交的學(xué)生證和申請(qǐng)單 根據(jù)學(xué)生檔案情況檢驗(yàn)學(xué)生證的有效性和申請(qǐng)單是否填寫的正確 如果有誤則謝絕,如果無誤則根據(jù)學(xué)生的注冊(cè)記錄情況審查接收學(xué)生的申請(qǐng)要求 如果是申請(qǐng)注冊(cè),則進(jìn)行注冊(cè)登記 如果是申請(qǐng)選課,則先查詢課程檔案是否有滿足申請(qǐng)要求的課程,如果有則進(jìn)行選課登 記,如果沒有則通知學(xué)生無此課,結(jié)構(gòu)化分析技術(shù)數(shù)據(jù)流圖(DFD),大學(xué)教務(wù)管理問題數(shù)據(jù)流圖,數(shù)據(jù)流圖(DFD)基本數(shù)據(jù)流圖,畫數(shù)據(jù)流圖時(shí),需注意:,是
5、畫數(shù)據(jù)流圖而不是畫程序框圖 對(duì)于很多人來說,通過學(xué)習(xí)計(jì)算機(jī)語(yǔ)言已經(jīng)比較熟悉程序框圖了,在畫數(shù)據(jù)流圖時(shí)很容易將它們搞混。 程序框圖是從對(duì)數(shù)據(jù)進(jìn)行加工的角度描述系統(tǒng)的,其箭頭是控制流,表示的是對(duì)數(shù)據(jù)進(jìn)行加工的次序,它用于描述怎樣解決問題; 數(shù)據(jù)流圖則是從數(shù)據(jù)的角度來描述系統(tǒng)的,其箭頭是數(shù)據(jù)流,表示的是數(shù)據(jù)的流動(dòng)方向,它用于描述是什么問題。,畫數(shù)據(jù)流圖時(shí),需注意:(Cont.),數(shù)據(jù)流及加工的命名 通常是先為數(shù)據(jù)流命名,然后再為加工命名。 在給數(shù)據(jù)流命名時(shí),應(yīng)避免使用象“數(shù)據(jù)”、“輸入”之類的缺乏具體含義的名字; 在給加工命名時(shí),理想的做法是取由一個(gè)具體的及物動(dòng)詞加一個(gè)具體的賓語(yǔ)構(gòu)成的名字,如果必須
6、用兩個(gè)動(dòng)詞,則可以考慮將這個(gè)加工再分解成兩個(gè)加工。 在命名時(shí),所取的名字應(yīng)適合整個(gè)數(shù)據(jù)流或加工,而不是僅僅反映它的某些成分。 如果發(fā)現(xiàn)某個(gè)數(shù)據(jù)流或加工難以命名,那么很可能是數(shù)據(jù)流圖分解不當(dāng)造成的,此時(shí)應(yīng)該考慮重新分解數(shù)據(jù)流圖。,數(shù)據(jù)流圖(DFD)分層數(shù)據(jù)流圖,對(duì)于比較復(fù)雜的實(shí)際問題,在數(shù)據(jù)流圖上常常出現(xiàn)十幾個(gè)乃至幾十個(gè)、上百個(gè)加工,這樣的數(shù)據(jù)流圖看起來很不清楚。采用層次結(jié)構(gòu)的數(shù)據(jù)流圖則能很好地解決這個(gè)問題。,系統(tǒng)加工 S,數(shù)據(jù)輸入,數(shù)據(jù)輸出,I1,In,O1,Om,分層數(shù)據(jù)流圖,在畫分層數(shù)據(jù)流圖應(yīng)考慮的問題:,編號(hào) 為便于管理和閱讀,要對(duì)每個(gè)層次上的圖及其加工進(jìn)行編號(hào)。層次編號(hào)自上而下分別為頂
7、層圖(系統(tǒng)圖)、0層圖、1層圖、等等。各層圖的關(guān)系為父子關(guān)系,下層圖為子圖,上層圖為父圖。子圖的編號(hào)就是其父圖中相應(yīng)加工的編號(hào);子圖中加工的編號(hào)由子圖號(hào)、小數(shù)點(diǎn)和局部號(hào)組成。在這種編號(hào)中,圖號(hào)中的小數(shù)點(diǎn)的個(gè)數(shù)就是該圖所在的層次號(hào),最后一個(gè)小數(shù)點(diǎn)前的號(hào)碼就是其父圖的編號(hào)。 例如,編號(hào)為3.2.1的圖,是2層圖中的一個(gè)子圖,其父圖 編號(hào)為3.2。,在畫分層數(shù)據(jù)流圖應(yīng)考慮的問題:,父圖和子圖的數(shù)據(jù)平衡 子圖是父圖的細(xì)化,因此,子圖的輸入、輸出數(shù)據(jù)流應(yīng)和父圖中相應(yīng)加工的輸入、輸出數(shù)據(jù)流一致。,在畫分層數(shù)據(jù)流圖應(yīng)考慮的問題:,分解的程度 對(duì)一個(gè)加工進(jìn)行細(xì)化分解,一次分解成兩個(gè)或三個(gè)加工,可能需要的層次過
8、多;但分解得過多又難于讓人理解。,分解的程度(Cont.),在進(jìn)行重新分解時(shí),可按下述步驟進(jìn)行: 把需要重新分解的數(shù)據(jù)流圖的所有子圖拼接成一張圖; 把新拼接成的圖分成幾個(gè)部分,使各部分之間的聯(lián)系最少; 重新建立父圖,把圖中的每一部分畫成一個(gè)圓圈,各部分之間的聯(lián)系就是加工間的界面了; 重新建立各張子圖,這只需要把所得的各個(gè)部分分開即可; 為所有的加工重新命名和編號(hào)。,在畫分層數(shù)據(jù)流圖應(yīng)考慮的問題:,圖表格式 對(duì)于一個(gè)較大的系統(tǒng)來說,其數(shù)據(jù)流圖可能多達(dá)十幾張、幾十張,一般都將它們裝訂成冊(cè)。為了方便收集、整理和閱讀,可以設(shè)計(jì)一個(gè)類似圖表進(jìn)行格式化。 假設(shè)大學(xué)教務(wù)管理系統(tǒng)是大學(xué)教學(xué)管理系統(tǒng)0層數(shù)據(jù)流圖
9、中的第2個(gè)子加工,是1層數(shù)據(jù)流圖中的一 個(gè)子圖。,圖表格式,數(shù)據(jù)流圖圖表格式,數(shù)據(jù)流圖數(shù)據(jù)流圖的改進(jìn)(1),檢查數(shù)據(jù)流圖的正確性 數(shù)據(jù)是否守恒 數(shù)據(jù)存貯的使用是否恰當(dāng) 父圖和子圖的是否平衡 提高數(shù)據(jù)流圖的易理解性 簡(jiǎn)化加工間的聯(lián)系 保持分解的均勻性 適當(dāng)命名,數(shù)據(jù)流圖數(shù)據(jù)流圖的說明,數(shù)據(jù)詞典(Data Dictionary,簡(jiǎn)稱DD) 數(shù)據(jù)流 數(shù)據(jù)存貯 加工,數(shù)據(jù)流圖說明數(shù)據(jù)詞典,大學(xué)教務(wù)管理問題: (D01) 學(xué)生證 = 學(xué)號(hào)+密碼 (D02) 申請(qǐng)單 = 學(xué)號(hào)+(課程號(hào)+選課學(xué)期) (D03) 謝絕 = “非法證件”|”不合格單“|”證單不符“ (D04) 注冊(cè) = 學(xué)號(hào) (D05) 選課
10、 = 學(xué)號(hào) + 課程號(hào)+選課學(xué)期 (D06)無此課 = 學(xué)號(hào)+課程號(hào) + “無此課” (D07) 注冊(cè)記錄無效=學(xué)號(hào)+”注冊(cè)無效“ (d01.1) 學(xué)號(hào) = “00000001”.”99999999” (d01.2) 密碼 = “000001” .”999999” (d02.2) 課程號(hào) =1英文字母4+”0001”.”9999” (d02.3) 選課學(xué)期 = “0001”.”9999”+“春季”|”秋季”,數(shù)據(jù)流圖說明數(shù)據(jù)詞典,數(shù)據(jù)存貯表示 文件形式 文件組成數(shù)據(jù)項(xiàng) (F1)借書記錄 = 證號(hào)+姓名+書號(hào)+書名+借書日期 (F2)庫(kù)存書目 = 書號(hào)+書名+”庫(kù)存總數(shù)“+”現(xiàn)庫(kù)存數(shù) (F1.5
11、)借書日期 = 日期 文件組織方式 借書記錄=按借書日期先后排列 庫(kù)存書目=按書名先后排列 數(shù)據(jù)庫(kù)形式,數(shù)據(jù)流圖說明數(shù)據(jù)詞典,加工表示 結(jié)構(gòu)化語(yǔ)言 判定表 判定樹,結(jié)構(gòu)化語(yǔ)言 加工編號(hào):2.1 加工名: 檢驗(yàn) 加工邏輯:讀入“學(xué)生證”及“申請(qǐng)單”,檢驗(yàn)“學(xué)生證”的有效性和“申請(qǐng)單”的合格性,如果檢驗(yàn)均通過則讓“申請(qǐng)單”通過,否則輸出“謝絕”,判定表 描述一些結(jié)構(gòu)化語(yǔ)言不易表達(dá)清楚的加工邏輯 旅游時(shí)間 79月,12月 16月,10月,11月 訂票量 50 50 折扣量 5% 15% 20% 30%,判定樹,訂票量50: 15% 79,12月 訂票量50: 30% 16,10,11月 訂票量=50
12、: 20%,結(jié)構(gòu)化分析技術(shù)實(shí)體聯(lián)系圖(Entity-Relationship DiagramER),數(shù)據(jù)流圖描述了系統(tǒng)的邏輯結(jié)構(gòu),數(shù)據(jù)流圖中的有關(guān)加工及數(shù)據(jù)流和文件的含義可用數(shù)據(jù)詞典具體定義說明,但是對(duì)于比較復(fù)雜的數(shù)據(jù)及其之間的關(guān)系,用它們是難以描述的,在這種情況下一般采用實(shí)體聯(lián)系圖進(jìn)行描述。 實(shí)體聯(lián)系圖 (Entity-Relationship Diagram,簡(jiǎn)稱ER圖),可用于描述數(shù)據(jù)流圖中數(shù)據(jù)存貯及其之間的關(guān)系,它是數(shù)據(jù)庫(kù)概念設(shè)計(jì)的最常用的工具。,實(shí)體聯(lián)系圖基本實(shí)體聯(lián)系圖,大學(xué)教務(wù)處教務(wù)管理問題實(shí)體聯(lián)系圖,實(shí)體聯(lián)系圖的基本成分,實(shí)體 獨(dú)立實(shí)體 從屬實(shí)體,聯(lián)系 實(shí)體之間的各種關(guān)系。 例如
13、,“學(xué)生”與“課程”之間有“選課”的關(guān)系。這種實(shí)體和實(shí)體之間的關(guān)系被抽象為聯(lián)系。 在實(shí)體聯(lián)系圖中,聯(lián)系用菱形框表示,聯(lián)系可以是一對(duì)一(1:1),一對(duì)多(1:N)或多對(duì)多(M:N)的,這一點(diǎn)在實(shí)體聯(lián)系圖中 也應(yīng)說明。 例如在大學(xué)教務(wù)管理問題中,“學(xué)生”與“課程”是多對(duì)多的“選課”聯(lián)系聯(lián)系。,屬性 實(shí)體一般具有若干特征,這些特征就稱為實(shí)體的屬性。 主鍵 外鍵 屬性域 屬性值,實(shí)體屬性圖,實(shí)體聯(lián)系圖擴(kuò)充實(shí)體聯(lián)系圖,以實(shí)體、聯(lián)系和屬性等基本概念為基礎(chǔ)的實(shí)體聯(lián)系圖是基本實(shí)體聯(lián)系圖。為了滿足新的應(yīng)用需求和表達(dá)更多的語(yǔ)義,實(shí)體聯(lián)系圖歷經(jīng)了不少擴(kuò)充。,擴(kuò)充的實(shí)體聯(lián)系圖(Extended ERD),分類,擴(kuò)充了
14、分類概念的擴(kuò)充實(shí)體聯(lián)系圖 有U符號(hào)的線表示特殊化 ;圓圈中的d表示不相交特殊化,o表示重迭特殊化;在必要的時(shí)候,可雙線表示全特殊化,單線表示部分特殊化。其中,在職進(jìn)修生既是教職工,又是學(xué)生,因此它有教職工和學(xué)生兩個(gè)超實(shí)體,繼承了它們的屬性。,擴(kuò)充的實(shí)體聯(lián)系圖(Extended ERD),聚集 在基本實(shí)體聯(lián)系圖中,只有實(shí)體參與聯(lián)系,聯(lián)系不能參與聯(lián)系。在擴(kuò)充實(shí)體聯(lián)系圖中,可以把聯(lián)系與參與聯(lián)系的實(shí)體組合成一個(gè)新的實(shí)體,這個(gè)新的實(shí)體稱為參與聯(lián)系的實(shí)體的聚集,它的屬性就是參與聯(lián)系的實(shí)體的屬性和聯(lián)系的屬性的合并。有了聚集這個(gè)抽象概念,聯(lián)系也就可以參與聯(lián)系了。,擴(kuò)充的實(shí)體聯(lián)系圖(Extended ERD),
15、聚集的應(yīng)用,實(shí)體聯(lián)系圖視圖及其集成,大學(xué)教務(wù)處教務(wù)管理問題實(shí)體聯(lián)系圖,實(shí)體聯(lián)系圖視圖及其集成,研究生院教務(wù)管理視圖,實(shí)體聯(lián)系圖視圖及其集成,大學(xué)教務(wù)管理系統(tǒng)中的學(xué)生檔案實(shí)體,實(shí)體聯(lián)系圖視圖及其集成,大學(xué)教務(wù)管理系統(tǒng)中的課程檔案實(shí)體,實(shí)體聯(lián)系圖視圖及其集成,修改后的大學(xué)教務(wù)管理系統(tǒng)實(shí)體聯(lián)系圖,實(shí)體聯(lián)系圖實(shí)體聯(lián)系圖屬性說明,實(shí)體聯(lián)系圖中的屬性可以利用前面介紹的數(shù)據(jù)詞典方法加以說明。在進(jìn)行說明時(shí),如果屬性與數(shù)據(jù)流中的相關(guān)數(shù)據(jù)相同,則應(yīng)引用數(shù)據(jù)流中的相應(yīng)定義,而不應(yīng)重新定義,這樣可以避免因同一數(shù)據(jù)定義二次而出現(xiàn)多義性的現(xiàn)象。,實(shí)體聯(lián)系圖實(shí)體聯(lián)系圖屬性說明,例如,對(duì)于大學(xué)教務(wù)管理問題中的實(shí)體聯(lián)系圖,其屬
16、性定義 說明如下 E1: 學(xué)生檔案 (E1.01) 學(xué)號(hào)d01.1 (E1.02) 姓名1漢字20 (E1.03) 性別男|女 (E1.04) 出生日期日期 (E1.05) 入學(xué)日期日期 (E1.06) 系別1漢字24 (E1.04.1) 日期0000.9999/01.12/01.31,E1.1: 研究生 (e1.1.01) 導(dǎo)師姓名 (e1.1.02) 碩博士生碩士生|博士生 E1.2: 本科生 (e1.2.01) 班級(jí)1漢字400000.99999,E2:注冊(cè)記錄 (E2.01) 學(xué)號(hào)E1.01 (E2.02) 注冊(cè)日期日期,E3: 課程檔案 (E3.01) 課程號(hào)d02.2 (E3.02
17、) 課程名1漢字24 (E3.03) 學(xué)分1.19 (E3.04) 開課學(xué)期秋季|春季 (E3.05) 任課教師 姓名,E3.1: 研究生課 (e3.1.01) 是否學(xué)位課是|否 E3.2: 本科生課 (e3.2.01) 是否必修課是|否,E4:選課單 (E4.1) 學(xué)號(hào)E1.01 (E4.2) 課程號(hào)E3.01 (E4.3) 選課學(xué)期d02.3,結(jié)構(gòu)化設(shè)計(jì)技術(shù),分析:?jiǎn)栴}是什么 設(shè)計(jì):怎樣解決 實(shí)現(xiàn):解決分析 確定數(shù)據(jù)流圖(DFD) 建立結(jié)構(gòu)圖(SC) 過程設(shè)計(jì) 分析確定實(shí)體聯(lián)系圖(ERD) 建立關(guān)系數(shù)據(jù)模式(RM) 編碼調(diào)試 運(yùn)行維護(hù),Where are we ?,結(jié)構(gòu)化分析技術(shù) 結(jié)構(gòu)化設(shè)
18、計(jì)技術(shù) 結(jié)構(gòu)化實(shí)現(xiàn)技術(shù),結(jié)構(gòu)化設(shè)計(jì)技術(shù),內(nèi)容與任務(wù) 程序結(jié)構(gòu) 數(shù)據(jù)庫(kù)結(jié)構(gòu),結(jié)構(gòu)化設(shè)計(jì)技術(shù)內(nèi)容與任務(wù),結(jié)構(gòu)化軟件開發(fā)方法采用結(jié)構(gòu)化設(shè)計(jì)技術(shù)進(jìn)行問題解決方 案的設(shè)計(jì)工作,將問題的解決方案表述為 結(jié)構(gòu)圖關(guān)系數(shù)據(jù)模式 結(jié)構(gòu)圖描述軟件系統(tǒng)的程序結(jié)構(gòu) 關(guān)系數(shù)據(jù)模式描述軟件系統(tǒng)的數(shù)據(jù)庫(kù)結(jié)構(gòu) 結(jié)構(gòu)化設(shè)計(jì)工作主要包括程序結(jié)構(gòu)設(shè)計(jì)和數(shù)據(jù)庫(kù)結(jié)構(gòu)設(shè)計(jì),結(jié)構(gòu)化設(shè)計(jì)技術(shù)內(nèi)容與任務(wù),結(jié)構(gòu)化設(shè)計(jì)工作內(nèi)容和步驟,結(jié)構(gòu)化設(shè)計(jì)技術(shù)程序結(jié)構(gòu),程序結(jié)構(gòu)或程序物理結(jié)構(gòu)是對(duì)要解決的問題或要設(shè)計(jì)的系統(tǒng)的一種分層的表示方法,它指出了組成程序(系統(tǒng))的各個(gè)元素(即各個(gè)模塊)以及它們之間的關(guān)系。程序結(jié)構(gòu)是從需求分析階段定義的分析模型導(dǎo)出的。 程序
19、結(jié)構(gòu)隱含著控制層次的關(guān)系,但不表示程序的具體算法或過程關(guān)系,即不表示諸如處理的順序,選擇的出現(xiàn)和次序、操作的重復(fù)循環(huán)等。程序結(jié)構(gòu)通常用結(jié)構(gòu)圖的形式表示。,結(jié)構(gòu)圖,結(jié)構(gòu)圖中的主要成分有: (1),模塊:以矩形框表示,框中標(biāo)有模塊的名字。對(duì)于已定義(或者已開發(fā))的模塊,則可以用雙縱邊矩形框表示,咨詢成績(jī),打印出錯(cuò)信息,結(jié)構(gòu)圖中的主要成分有: (2),模塊間的調(diào)用關(guān)系:兩個(gè)模塊,一上一下,以箭頭相聯(lián),上面的模塊是調(diào)用模塊,箭頭指向的模塊是被調(diào)用模塊,結(jié)構(gòu)圖中的主要成分有:(3),模塊間的通訊:以表示調(diào)用關(guān)系的長(zhǎng)箭頭旁邊的短箭頭表示,短箭頭的方向和名字分別表示調(diào)用模塊和被調(diào)用模塊之間信息的傳遞方向和內(nèi)
20、容。,結(jié)構(gòu)圖中的主要成分有:(4),輔助控制符號(hào):當(dāng)模塊A有條件的調(diào)用模塊B時(shí),在箭頭的起點(diǎn)標(biāo)以菱形。模塊A反復(fù)地調(diào)用模塊D時(shí),另加一環(huán)狀箭頭,變換型問題,變換型問題,基本變換型問題數(shù)據(jù)流圖及其結(jié)構(gòu)圖,變換型問題結(jié)構(gòu)圖,事務(wù)型問題,事務(wù)型問題結(jié)構(gòu)圖,混合型問題,混合型問題數(shù)據(jù)流圖及其結(jié)構(gòu)圖,分析評(píng)價(jià)和改進(jìn),分析評(píng)價(jià)程序結(jié)構(gòu)的聚合性和耦合性,提高程序模塊的獨(dú)立性 分析評(píng)價(jià)結(jié)構(gòu)圖的深度、寬度、扇出和扇入,改善程序結(jié)構(gòu)的形態(tài)特性 分析模塊的作用域和控制域,使作用域在控制域之內(nèi) 擬定模塊的接口,降低接口的復(fù)雜性和冗于度,改善一致性 分析模塊的功能,保證模塊的可驗(yàn)證性 恰當(dāng)?shù)卣莆談澐帜K的大小,模塊說明
21、,功能說明 描述模塊的主要任務(wù)、條件決策和輸入輸出,并且著重說明處理中重要的算法或過程,它應(yīng)是無歧義的和有限度的。 接口說明 列出通過參數(shù)表傳遞的數(shù)據(jù)、外界的輸入輸出、從全程數(shù)據(jù)區(qū)取得的數(shù)據(jù)項(xiàng)、上級(jí)模塊名和下級(jí)模塊名。 局部的和全局的數(shù)據(jù)結(jié)構(gòu)說明 包括采用數(shù)據(jù)結(jié)構(gòu)的數(shù)據(jù)名、數(shù)據(jù)結(jié)構(gòu)的類型、是局部的還是全局的,等等。 所有設(shè)計(jì)約束和限制說明 包括數(shù)據(jù)類型或數(shù)據(jù)格式的限制、內(nèi)存容量或時(shí)間的限制、數(shù)據(jù)結(jié)構(gòu)的值、沒有考慮的特定情況以及某個(gè)模塊的專門特性,等等。,最終所得到的程序模塊應(yīng)具有以下基本屬性: (1) 名字。 (2) 明確的功能。 (3) 內(nèi)部使用的數(shù)據(jù)或局部數(shù)據(jù)。 (4) 與其它模塊相聯(lián)系的
22、輸入或輸出數(shù)據(jù)。 (5) 實(shí)現(xiàn)其特定功能的算法。 (6) 可被其上級(jí)模塊調(diào)用,也可在其工作過程中調(diào)用下屬模塊。,大學(xué)教務(wù)管理系統(tǒng)中的“檢索課程”模塊的說明如下: 模塊名:檢索課程 功能:根據(jù)上層模塊傳送過來的課程號(hào)和選課學(xué)期在數(shù)據(jù)庫(kù)中檢索滿足條件的課程,如果檢索到了 則返回課程號(hào),否則給出“無此課”信息并返回“空值(NULL)”。 函數(shù)接口:SearchingCourse(CourseID, Semester) 數(shù)據(jù)接口:課程檔案 局部數(shù)據(jù):CourseID課程號(hào),輸入 Semester: 選課學(xué)期,輸入/輸出 上級(jí)模塊:選課登記 從屬模塊:無,結(jié)構(gòu)化設(shè)計(jì)技術(shù)數(shù)據(jù)庫(kù)結(jié)構(gòu),數(shù)據(jù)存貯可以采用兩種方
23、式實(shí)現(xiàn),一種是文件形式,另一種是數(shù)據(jù)庫(kù)形式。如果采用數(shù)據(jù)庫(kù)形式,那么在設(shè)計(jì)階段,還必須進(jìn)行數(shù)據(jù)庫(kù)設(shè)計(jì)。 在分析階段確定的實(shí)體聯(lián)系圖實(shí)際上是對(duì)數(shù)據(jù)庫(kù)的概念結(jié)構(gòu)進(jìn)行了設(shè)計(jì),設(shè)計(jì)階段的主要任務(wù)則是進(jìn)行數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)設(shè)計(jì)。數(shù)據(jù)庫(kù)的邏輯結(jié)構(gòu)設(shè)計(jì)是在概念結(jié)構(gòu)設(shè)計(jì)的基礎(chǔ)上,將與數(shù)據(jù)庫(kù)管理系統(tǒng)無關(guān)的實(shí)體聯(lián)系圖轉(zhuǎn)換成以數(shù)據(jù)庫(kù)管理系統(tǒng)的邏輯數(shù)據(jù)模型表示的邏輯模式。目前最常用的邏輯數(shù)據(jù)模型是關(guān)系數(shù)據(jù)模型,因此本節(jié)主要討論實(shí)體聯(lián)系圖向關(guān)系數(shù)據(jù)模型的轉(zhuǎn)換。,結(jié)構(gòu)化設(shè)計(jì)技術(shù)數(shù)據(jù)庫(kù)結(jié)構(gòu),關(guān)系數(shù)據(jù)模型 關(guān)系數(shù)據(jù)模式 外模式,數(shù)據(jù)庫(kù)結(jié)構(gòu)關(guān)系數(shù)據(jù)模型,現(xiàn)實(shí)世界中的事物或?qū)ο罂梢越栌萌舾蓚€(gè)特征來表示,這些特征稱為屬性;每個(gè)屬性對(duì)
24、應(yīng)著一個(gè)取值的范圍和集合,稱為該屬性的域 。 關(guān)系就是定義在事物或?qū)ο蟮乃袑傩杂蛏系亩嘣P(guān)系。關(guān)系R的一般形式為 R(A1, A2, ., An) 其中,R為關(guān)系的名,A1、A2、. 、An 為關(guān)系的屬性, 也就是它所描述的事物的屬性。n是 R的屬性個(gè)數(shù),稱為關(guān)系的目。R的值用r或r(R)表示,稱為關(guān)系的元組。 關(guān)系R的屬性Ai可 以表示為R.Ai。,病人名冊(cè) 床號(hào) 姓名 性別 出生日期入院時(shí)間住院原因 530406 李大力 男 1945.2.18 1996.4.5 右小腿骨折 640603 張小英 女 1965.8.6 1996.5.21肺炎 .,如果用關(guān)系數(shù)據(jù)模型來表示這張表格,則表名和
25、表頭表示為 病人名冊(cè)(床號(hào),姓名,性別,年齡,入院時(shí)間,住院原因 ) 這就是所謂的關(guān)系,其中病人名冊(cè)是關(guān)系的名,床號(hào)、姓 名、性別、年齡等等是關(guān)系的屬性。 表中的記錄表示為 ,數(shù)據(jù)庫(kù)結(jié)構(gòu)關(guān)系數(shù)據(jù)模式,用關(guān)系數(shù)據(jù)模型表示的事物或?qū)ο蠓Q為該事 物或?qū)ο蟮年P(guān)系數(shù)據(jù)模式。 從實(shí)體聯(lián)系圖設(shè)計(jì)建立關(guān)系數(shù)據(jù)模式 實(shí)體和聯(lián)系可以轉(zhuǎn)換成關(guān)系 實(shí)體和聯(lián)系的屬性可以轉(zhuǎn)換成關(guān)系的屬性,關(guān)系和屬性的命名 屬性域和非原子屬性的處理 聯(lián)系的轉(zhuǎn)換 分類的轉(zhuǎn)換 聚集的轉(zhuǎn)換,聯(lián)系的轉(zhuǎn)換,一對(duì)一聯(lián)系,E1是全參與,而E2是全參與或部分參與,則可以將其轉(zhuǎn)換為 R1(k, a, h, s);R2(h, b),E2是全參與,而 E1是全
26、參與或部分參與,則可以轉(zhuǎn)換為 R1(k, a);R2(h, b, k, s),Employee(EmployeeNo, EmployeeName) Department(DepartmentNo, DepartmentName, EmployeeNo, PeriodInChief),聯(lián)系的轉(zhuǎn)換,一對(duì)多聯(lián)系,E2是全參與,則可以轉(zhuǎn)換成 R1(k, a);R2(h, b, k, s),E2是部分參與,則必須可轉(zhuǎn)換成如下三個(gè)關(guān)系 R1(k, a);R2(h, b);R3(h, k, s),Couple(CoupleNo, HusbandName, WifeName) Younger(YoungerN
27、o, Name, Sex, CoupleNo),聯(lián)系的轉(zhuǎn)換,多對(duì)多聯(lián)系,R1(k, a);R2(h, b);R3(h, k, s),聯(lián)系的轉(zhuǎn)換,多元聯(lián)系,R1(k, a) R2(h, b) R3(j, c) R4(h, k, j, s),關(guān)系和屬性的命名 屬性域和非原子屬性的處理 聯(lián)系的轉(zhuǎn)換 分類的轉(zhuǎn)換 聚集的轉(zhuǎn)換,分類的轉(zhuǎn)換,R(k, a) R1(k, a1, b1) R2(k, a2, b2),關(guān)系和屬性的命名 屬性域和非原子屬性的處理 聯(lián)系的轉(zhuǎn)換 分類的轉(zhuǎn)換 聚集的轉(zhuǎn)換,聚集的轉(zhuǎn)換,R1(k, a) R2(h, b) R3(j , c) R4(k, h, s1) R5(k, h, j, s2),數(shù)據(jù)庫(kù)結(jié)構(gòu)外模式,所謂外模式,就是用戶應(yīng)用程序使用的數(shù)據(jù)模式,它可以是邏輯模式的子集,也可以是結(jié)構(gòu)和形式上不同于邏輯模式的數(shù)據(jù)
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030自動(dòng)化臨床化學(xué)分析儀行業(yè)市場(chǎng)現(xiàn)狀供需分析及重點(diǎn)企業(yè)投資評(píng)估規(guī)劃分析研究報(bào)告
- 2025至2030冰箱行業(yè)市場(chǎng)深度研究與戰(zhàn)略咨詢分析報(bào)告
- 木材砍伐活動(dòng)方案
- 暑期下棋活動(dòng)方案
- 林場(chǎng)新年活動(dòng)方案
- 景區(qū)創(chuàng)意周末活動(dòng)方案
- 服務(wù)創(chuàng)意大賽活動(dòng)方案
- 柑子根活動(dòng)方案
- 服裝店會(huì)員活動(dòng)方案
- 晉寧區(qū)公司活動(dòng)策劃方案
- 車間洗手消毒管理制度
- 腹膜透析飲食知識(shí)
- 感染性疾病分子診斷試劑行業(yè)深度調(diào)研及發(fā)展戰(zhàn)略咨詢報(bào)告
- ISO45001 2024職業(yè)健康安全管理體系要求及使用指南
- 音樂劇排練流程
- 高壓電纜故障搶修施工方案
- 2025-2030中國(guó)三元乙丙橡膠行業(yè)發(fā)展趨勢(shì)及發(fā)展前景研究報(bào)告
- 2025住院患者身體約束護(hù)理
- 基于BOPPPS框架與線上線下混合教學(xué)模式的探索
- DB32-T 186-2015建筑消防設(shè)施檢測(cè)技術(shù)規(guī)程
- 2025年上半年廣東省廣州白云區(qū)太和鎮(zhèn)政府雇員招聘16人易考易錯(cuò)模擬試題(共500題)試卷后附參考答案
評(píng)論
0/150
提交評(píng)論