7.2.2 軟件總體設(shè)計
1、 DBAS軟件包括OS、DBMS、開發(fā)環(huán)境、中間件和應(yīng)用軟件;
2、 應(yīng)用軟件分為數(shù)據(jù)庫事務(wù)和應(yīng)用程序;
3、 數(shù)據(jù)庫事務(wù)通過對數(shù)據(jù)庫的直接操作實現(xiàn)數(shù)據(jù)管理和處理功能;
4、 應(yīng)用程序一方面對數(shù)據(jù)庫進一步加工處理,或從中抽取新信息實現(xiàn)復(fù)雜的數(shù)據(jù)處理功能;另一方面還可實現(xiàn)與數(shù)據(jù)庫訪問無關(guān)的功能;
5、 應(yīng)用軟件總體設(shè)計:
(1) 從數(shù)據(jù)流圖、事務(wù)規(guī)范和業(yè)務(wù)規(guī)則需求分析結(jié)果出發(fā),將系統(tǒng)分解為一系列子系統(tǒng),分配相應(yīng)功能,定義系統(tǒng)間協(xié)調(diào)交互機制;
(2) 進一步進行子系統(tǒng)結(jié)構(gòu)設(shè)計,將各子系統(tǒng)從功能上劃分為:數(shù)據(jù)庫事務(wù)模塊和應(yīng)用程序模塊;
(3) 確定子系統(tǒng)、應(yīng)用程序模塊、數(shù)據(jù)庫事務(wù)間的全局控制和調(diào)用關(guān)系,并按體系結(jié)構(gòu)框架組織起來。
6、總體設(shè)計得到的系統(tǒng)總體結(jié)構(gòu)和分層模塊結(jié)構(gòu),可以用模塊結(jié)構(gòu)圖表示;
6、 模塊結(jié)構(gòu)圖,是結(jié)構(gòu)化程序設(shè)計中描述系統(tǒng)結(jié)構(gòu)的一種圖形化工具,它定義了模塊的名字、功能和接口,并在模塊結(jié)構(gòu)圖中反映出結(jié)構(gòu)化設(shè)計思想。它只關(guān)心模塊的外部特性,與模塊內(nèi)部流程無關(guān),它由模塊、調(diào)用、數(shù)據(jù)、控制和轉(zhuǎn)接等于種基本符號組成;
7.2.3 客戶/服務(wù)器體系結(jié)構(gòu)
1、 基于C/S體系結(jié)構(gòu)的DBAS將DBMS數(shù)據(jù)管理功能與數(shù)據(jù)庫應(yīng)用相分離,將DBMS數(shù)據(jù)庫管理功能在客戶端和服務(wù)器之間進行合理的分布和配置;
2、 數(shù)據(jù)庫報務(wù)器完成DBMS的核心功能,而客戶端負責(zé)完成用戶交互功能,接收用戶數(shù)據(jù),生成并向數(shù)據(jù)庫報務(wù)器發(fā)出數(shù)據(jù)操作請求,接收數(shù)據(jù)查詢結(jié)果并通過客戶端反饋給用戶;
3、 兩層C/S結(jié)構(gòu)的特點是:
(1) DBAS的數(shù)據(jù)管理和處理功能,被分解并分布在客戶端和服務(wù)器上;
(2) 服務(wù)器楞為多個客戶端應(yīng)用提供共享的數(shù)據(jù)管理功能;
(3) 客戶端應(yīng)用可通過網(wǎng)絡(luò)訪問多個不同數(shù)據(jù)源;
(4) 客戶端除了完成人機交互功能外,還需要完成面向應(yīng)用的數(shù)據(jù)處理功能,負荷重,屬于典型的“胖客戶端”;
4、 三層瀏覽器/服務(wù)器(B/S)結(jié)構(gòu)是一種互聯(lián)網(wǎng)環(huán)境下的新型數(shù)據(jù)庫應(yīng)用系統(tǒng)結(jié)構(gòu),它將數(shù)據(jù)處理功能分解并分布在表示層、功能層和數(shù)據(jù)層三層次上,分別由WEB瀏覽器、WEB服務(wù)器和數(shù)據(jù)庫服務(wù)器來實現(xiàn),其特點是:
(1) 表示層位于客戶端,由WEB瀏覽器實現(xiàn),其功能單一,沒有其他應(yīng)用程序,屬于典型的“瘦客戶端”;
(2) 功能層位于WEB服務(wù)器,實現(xiàn)面向具體應(yīng)用領(lǐng)域的業(yè)務(wù)規(guī)則;
(3) 數(shù)據(jù)層位于數(shù)據(jù)庫服務(wù)器,通過DBMS完成具體的數(shù)據(jù)存儲和存取等數(shù)據(jù)管理功能;
7.3 概要設(shè)計
7.3.1 數(shù)據(jù)庫事務(wù)概要設(shè)計
1、 如數(shù)據(jù)處理需求分析的結(jié)果是數(shù)據(jù)流圖,則可將待設(shè)計的事務(wù)看作是程序,采用軟件工程中面向數(shù)據(jù)流的程序設(shè)計方法,設(shè)計事務(wù)內(nèi)部的數(shù)據(jù)處理流程和結(jié)構(gòu),也就是設(shè)計事務(wù)處理邏輯,過程包括:
(1) 從數(shù)據(jù)流圖中識別出該事務(wù)對應(yīng)的子數(shù)據(jù)流圖;
(2) 確定子數(shù)據(jù)流圖中的信息流類型,劃定流界;
(3) 將子數(shù)據(jù)流圖映射為事務(wù)的結(jié)構(gòu)和處理流程,即事務(wù)邏輯;
(4) 修正和細化事務(wù)設(shè)計,識別事務(wù)所訪問的數(shù)據(jù)庫對象和數(shù)據(jù)庫用戶;
2、 如數(shù)據(jù)處理需求分析的結(jié)果表示為事務(wù)規(guī)范,由于事務(wù)規(guī)范包括了事務(wù)名稱、事務(wù)描述、訪問的數(shù)據(jù)項、用戶等信息,可直接從事務(wù)描述出發(fā),根據(jù)具體應(yīng)用領(lǐng)域的知識設(shè)計事務(wù)邏輯,得到事務(wù)概要結(jié)果;
3、 一個完整的事務(wù)概要設(shè)計包括:事務(wù)名稱、訪問的關(guān)系表及屬性、事務(wù)處理邏輯、事務(wù)用戶;
4、 檢查關(guān)系表對數(shù)據(jù)庫事務(wù)的支持性:
(1) 對每一個事務(wù),根據(jù)需求分析階段的事務(wù)分析,列出該事務(wù)所訪問的各個數(shù)據(jù)項;
(2) 列出事務(wù)訪問的數(shù)據(jù)項所在的關(guān)系表和對應(yīng)的屬性;
(3) 如事務(wù)訪問的數(shù)據(jù)項同時出現(xiàn)在多個表中,檢查關(guān)聯(lián)關(guān)系;
(4) 檢查是否存在某些事務(wù),訪問的一些數(shù)據(jù)項未出現(xiàn)在任何關(guān)系表中;
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |