第二章 數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)生命周期
2.1數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)生命周期
2.1.1 軟件工程與軟件開發(fā)方法
1、 軟件工程:指導(dǎo)計(jì)算機(jī)軟件開發(fā)和維護(hù)的工程科學(xué),它采用工程化的概念、原理、技術(shù)和方法,以及正確的項(xiàng)目管理技術(shù),來(lái)開發(fā)和維護(hù)軟件;它將系統(tǒng)化、規(guī)范化、定量化方法應(yīng)用于軟件的開發(fā)、操作和維護(hù),也就是將工程化應(yīng)用于軟件生產(chǎn);
2、 軟件工程的目標(biāo):在給定成本、進(jìn)度的前提下,開發(fā)出滿足用戶需求并具有下述特征的軟件產(chǎn)品:可修改性、有效性、可靠性、可理解性、可維護(hù)性、可重用性、可適應(yīng)性、可移植性、可追蹤性和可互操作性。
3、 軟件生命周期:指軟件產(chǎn)品從考慮其概念開始,到該產(chǎn)品交付使用的整個(gè)時(shí)期,包括概念階段、需求階段、設(shè)計(jì)階段、實(shí)現(xiàn)階段、測(cè)試階段、安裝部署及交付階段;
4、 軟件項(xiàng)目管理:為了能使軟件開發(fā)按預(yù)定的質(zhì)量、進(jìn)度和成本進(jìn)行,而對(duì)成本、質(zhì)量、進(jìn)度、人員、風(fēng)險(xiǎn)等進(jìn)行分析和有效管理的一系列活動(dòng)。
5、 軟件工程以關(guān)注軟件質(zhì)量為特征,由方法、工具和過程三部分組成;
6、 軟件過程模型(軟件開發(fā)模型):是對(duì)軟件過程的一種抽象表示,表示了軟件過程的整體框架和軟件開發(fā)活動(dòng)各階段間的關(guān)系,常見的有:瀑布模型、快速原形模型、增量模型和螺旋模型。
2.1.2 DBAS軟件組成
1、 數(shù)據(jù)庫(kù)應(yīng)用軟件在內(nèi)部可看作由一系列軟件模塊/子系統(tǒng)組成,這些模塊/子系統(tǒng)可分成兩類:
(1) 與數(shù)據(jù)訪問有關(guān)的數(shù)據(jù)庫(kù)事務(wù)模塊:利用DBMS提供的數(shù)據(jù)庫(kù)管理功能,以數(shù)據(jù)庫(kù)事務(wù)方式直接對(duì)數(shù)據(jù)庫(kù)中的各類應(yīng)用數(shù)據(jù)進(jìn)行操作,模塊粒度較小;
(2) 與數(shù)據(jù)訪問無(wú)直接關(guān)聯(lián)的應(yīng)用模塊:在許多與數(shù)據(jù)處理有關(guān)的應(yīng)用系統(tǒng)中,對(duì)數(shù)據(jù)庫(kù)的訪問只是整體中的一部分,其他功能則與數(shù)據(jù)庫(kù)訪問無(wú)直接關(guān)系,這部分模塊粒度可以比較大。
2、 DBAS設(shè)計(jì)開發(fā)的硬件方面:主要涉及根據(jù)系統(tǒng)的功能、性能、存儲(chǔ)等需求選擇和配置合適的計(jì)算機(jī)硬件平臺(tái),并與開發(fā)好的DBAS軟件系統(tǒng)進(jìn)行集成,組成完整的數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng);
2.1.3 DBAS生命周期模型
1、 數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的生命周期模型:
(1) 參照軟件開發(fā)瀑布模型的原理,DBAS的生命周期由項(xiàng)目規(guī)劃、需求分析、系統(tǒng)設(shè)計(jì)、實(shí)現(xiàn)和部署、運(yùn)行管理與維護(hù)等5個(gè)基本活動(dòng)組成;
(2) 將快速原形模型和增量模型的開發(fā)思路引入DBAS生命周期模型,允許漸進(jìn)、迭代地開發(fā)DBAS;
(3) 根據(jù)DBAS的軟件組成和各自功能,細(xì)化DBAS需求分析和設(shè)計(jì)階段,引入了數(shù)據(jù)組織與存儲(chǔ)設(shè)計(jì)、數(shù)據(jù)訪問與處理設(shè)計(jì)、應(yīng)用設(shè)計(jì)三條設(shè)計(jì)主線,分別用于設(shè)計(jì)DBAS中的數(shù)據(jù)庫(kù)、數(shù)據(jù)庫(kù)事務(wù)和應(yīng)用程序;
(4) 將DBAS設(shè)計(jì)階段細(xì)分為概念設(shè)計(jì)、邏輯設(shè)計(jì)、物理設(shè)計(jì)三個(gè)步驟,每一步的設(shè)計(jì)內(nèi)容又涵蓋了三條設(shè)計(jì)主線。
2.2 規(guī)劃與分析
2.2.1 系統(tǒng)規(guī)劃與定義
1、 定義:系統(tǒng)規(guī)劃與分析是面向?qū)⒁_發(fā)的DBAS,通過了解用戶實(shí)際需求,明確該系統(tǒng)需要實(shí)現(xiàn)的目標(biāo)和任務(wù),并從數(shù)據(jù)管理和數(shù)據(jù)處理的角度,確定系統(tǒng)中數(shù)據(jù)庫(kù)軟件的功能、性能范圍;
2、 系統(tǒng)規(guī)劃與定義包括:
(1) 任務(wù)陳述:描述所要開發(fā)的DBAS的總體目標(biāo);
(2) 確定任務(wù)目標(biāo);
(3) 確定系統(tǒng)范圍和邊界;
(4) 確定用戶視圖;
2.2.2 可行性分析
1、 可行性分析包括以下四方面:
(1) 經(jīng)濟(jì)可行性:對(duì)項(xiàng)目進(jìn)行成本效益分析;DBAS的成本主要包括:A、軟硬件購(gòu)置費(fèi)用;B、系統(tǒng)開發(fā)費(fèi)用;C、系統(tǒng)安裝、運(yùn)行、維護(hù)費(fèi)用。
(2) 技術(shù)可行性:是根據(jù)用戶提出的系統(tǒng)功能、性能及實(shí)現(xiàn)系統(tǒng)的各項(xiàng)約束條件,對(duì)系統(tǒng)軟件、硬件、技術(shù)方案作出評(píng)估和選擇建議;
A、 硬件可行性研究是分析DBAS的硬件平臺(tái)環(huán)境和設(shè)置;
B、 軟件可行性研究包括:對(duì)可用的DBMS和操作系統(tǒng)的選型評(píng)估,對(duì)中間件和開發(fā)環(huán)境的選型建議,對(duì)DBAS開發(fā)模式和編程語(yǔ)言的建議;
C、 技術(shù)方案的選擇是根據(jù)系統(tǒng)技術(shù)需求,提出DBAS可能采用的合理技術(shù)方案和關(guān)鍵技術(shù);
(3) 操作可行性:是論證是否具備DBAS開發(fā)所需的各類人員資源、軟件資源、硬件資源和工作環(huán)境等,以及為支持DBAS開發(fā)如何去改進(jìn)加強(qiáng)這幾方面資源。
(4) 開發(fā)方案選擇:目的是提出并評(píng)價(jià)實(shí)現(xiàn)系統(tǒng)的各種開發(fā)方案,從中選出一種適用于DBAS軟件的開發(fā)方案;
2.2.3 項(xiàng)目規(guī)劃
1、 項(xiàng)目規(guī)劃是項(xiàng)目管理者對(duì)資源、成本和進(jìn)度做出合理估算,并在此基礎(chǔ)上制定切實(shí)可行的DBAS項(xiàng)目開發(fā)計(jì)劃。
2、 項(xiàng)目規(guī)劃包括以下內(nèi)容:
(1) 確定項(xiàng)目的目標(biāo)和范圍;
(2) 根據(jù)DBAS軟件開發(fā)模型,分解和定義整個(gè)項(xiàng)目包括的工作活動(dòng)和任務(wù);
(3) 估算完成該項(xiàng)目的規(guī)模和所需各種資源;
(4) 制定合理的DBAS項(xiàng)目計(jì)劃
3、項(xiàng)目規(guī)劃的結(jié)果應(yīng)形成數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)項(xiàng)目計(jì)劃文檔,即項(xiàng)目計(jì)劃書。
2.3 需求分析
1、 數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)需求是指用戶對(duì)DBAS在功能、性能、行為、設(shè)計(jì)約束等方面的期望和要求;
2、 DBAS需求分析是在已經(jīng)明確的DBAS系統(tǒng)范圍基礎(chǔ)上,通過對(duì)應(yīng)用問題的理解和分析,采用合適的工具和符號(hào),系統(tǒng)地描述DBAS的功能特征、性能特征和約束,并形成需求規(guī)范說(shuō)明文檔;
3、 需求分析過程由需求獲取、需求分析、需求描述和規(guī)范說(shuō)明、需求驗(yàn)證等組成;
4、 DBAS的需求分析包括:
(1) 數(shù)據(jù)需求分析;
(2) 數(shù)據(jù)處理需求分析;
(3) 業(yè)務(wù)需求分析;
(4) 分析數(shù)據(jù)庫(kù)系統(tǒng)在性能、存儲(chǔ)、安全、備份與恢復(fù)等方面的要求;
2.3.1 數(shù)據(jù)與數(shù)據(jù)處理需求分析
1、 數(shù)據(jù)需求分析:是從對(duì)數(shù)據(jù)組織與存儲(chǔ)的設(shè)計(jì)角度,辨識(shí)應(yīng)用領(lǐng)域所管理的各類數(shù)據(jù)項(xiàng)和數(shù)據(jù)結(jié)構(gòu),與數(shù)據(jù)處理需求分析結(jié)果一起,組成數(shù)據(jù)字典;
2、 數(shù)據(jù)處理需求分析:是從數(shù)據(jù)訪問和處理的角度,明確對(duì)各類數(shù)據(jù)項(xiàng)所需進(jìn)行的數(shù)據(jù)訪問操作,分析結(jié)果可表示為數(shù)據(jù)流圖或事務(wù)規(guī)范;
3、 事務(wù)規(guī)范包括:
(1)事務(wù)名稱;(2)事務(wù)描述;(3)事務(wù)所訪問的數(shù)據(jù)項(xiàng);(4)事務(wù)用戶;
2.3.2 業(yè)務(wù)規(guī)則需求分析
1、業(yè)務(wù)規(guī)則需求分析:是從DBAS高層目標(biāo)和整體功能出發(fā),分析系統(tǒng)或系統(tǒng)中一些大粒度子系統(tǒng)應(yīng)具有的業(yè)務(wù)類型和功能,明確用戶或外部系統(tǒng)與DBAS的交互模式;
2.3.3 性能需求分析
1、 DBAS的性能指標(biāo):
(1) 數(shù)據(jù)操作響應(yīng)時(shí)間(或數(shù)據(jù)訪問響應(yīng)時(shí)間):從提交請(qǐng)求到返回結(jié)果的時(shí)間;
(2) 系統(tǒng)吞吐量:指系統(tǒng)在單位時(shí)間內(nèi)所完成的事務(wù)或查詢的數(shù)量,單位為TPS;
(3) 允許并發(fā)訪問的最大用戶數(shù):在保證響應(yīng)時(shí)間的前提下,系統(tǒng)最多允許多少用戶同時(shí)訪問數(shù)據(jù)庫(kù);
(4) 每TPS代價(jià)值,用于衡量系統(tǒng)性價(jià)比的指標(biāo)
2、 影響DBAS性能的因素:
(1) 系統(tǒng)硬件資源;
(2) 網(wǎng)絡(luò)通信設(shè)備性能;
(3) 操作系統(tǒng)環(huán)境;
(4) 數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)和物理設(shè)計(jì)質(zhì)量,數(shù)據(jù)庫(kù)配置參數(shù);
(5) DBAS的配置和性能;
(6) 數(shù)據(jù)庫(kù)應(yīng)用程序自身。
2.3.4 其它需求分析
1、 存儲(chǔ)需求分析:是指估計(jì)DBAS系統(tǒng)需要的數(shù)據(jù)存儲(chǔ)量,包括:(1)初始數(shù)據(jù)庫(kù)大小;(2)數(shù)據(jù)庫(kù)增長(zhǎng)速度;存儲(chǔ)總量估算可采用:根據(jù)數(shù)據(jù)字典中每個(gè)數(shù)據(jù)項(xiàng)的結(jié)構(gòu)描述信息,估計(jì)每個(gè)數(shù)據(jù)項(xiàng)的容量,將所有數(shù)據(jù)項(xiàng)的容量累加;
2、 安全性需求分析:
(1) DBAS系統(tǒng)應(yīng)達(dá)到的安全控制級(jí)別;
(2) 各類用戶的數(shù)據(jù)視圖和視圖訪問權(quán)限;
(3) DBAS應(yīng)有的口令保護(hù)機(jī)制或其它安全認(rèn)證機(jī)制,用以控制用戶登錄數(shù)據(jù)庫(kù)系統(tǒng)。
3、 備份和恢復(fù)需求分析:
(1) DBAS運(yùn)行過程中備份數(shù)據(jù)庫(kù)的時(shí)間和備份周期;
(2) 所需備份的數(shù)據(jù)是全部數(shù)據(jù)庫(kù)數(shù)據(jù),還是一部分;
(3) 備份方式是采用完全備份還是采用差異備份。
2.4 系統(tǒng)設(shè)計(jì)
2.4.1 概念設(shè)計(jì)
1、 數(shù)據(jù)庫(kù)概念模型設(shè)計(jì):是根據(jù)數(shù)據(jù)需求分析階段得到的需求結(jié)果,分析辨識(shí)需要組織存儲(chǔ)在數(shù)據(jù)庫(kù)中的各類應(yīng)用領(lǐng)域數(shù)據(jù)對(duì)象的特征及其相互之間關(guān)聯(lián)關(guān)系,并采用概念數(shù)據(jù)模型表示出來(lái),得到獨(dú)立于具體DBMS的數(shù)據(jù)庫(kù)概念模型;
2、 ER方法:(1)選擇局部應(yīng)用;(2)分別設(shè)計(jì)各個(gè)局部ER圖;(3)局部ER圖合并;
3、 系統(tǒng)總體設(shè)計(jì):
(1) 確定DBAS體系結(jié)構(gòu);
(2) 系統(tǒng)硬件平臺(tái)和操作系統(tǒng)、數(shù)據(jù)庫(kù)管理系統(tǒng)等系統(tǒng)軟件的選型和配置;
(3) 應(yīng)用軟件結(jié)構(gòu)設(shè)計(jì)
(4) 對(duì)需求分析階段識(shí)別出的業(yè)務(wù)規(guī)則進(jìn)行初步設(shè)計(jì),細(xì)化業(yè)務(wù)規(guī)則流程,明確采用的關(guān)鍵技術(shù)和算法;
(5) 對(duì)系統(tǒng)采用的關(guān)鍵技術(shù)進(jìn)行方案選型和初步設(shè)計(jì)。
2.4.2 邏輯設(shè)計(jì)
1、 數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)設(shè)計(jì):指從數(shù)據(jù)庫(kù)的概念模型出發(fā),設(shè)計(jì)表示為邏輯模式的數(shù)據(jù)庫(kù)邏輯結(jié)構(gòu)。
(1) ER圖轉(zhuǎn)換為初始關(guān)系模式;
(2) 對(duì)初始關(guān)系模式進(jìn)行優(yōu)化;
(3) 檢查關(guān)系表對(duì)數(shù)據(jù)庫(kù)事務(wù)的支持性;
(4) 確定關(guān)系模式的完整性約束;
(5) 從數(shù)據(jù)安全性和獨(dú)立性出發(fā),設(shè)計(jì)用戶視圖。
2、 應(yīng)用程序概要設(shè)計(jì)(II);
3、 數(shù)據(jù)庫(kù)事務(wù)概要設(shè)計(jì);
2.4.3 物理設(shè)計(jì)
1、 數(shù)據(jù)庫(kù)物理結(jié)構(gòu)設(shè)計(jì):主要指數(shù)據(jù)文件在外存上的存儲(chǔ)結(jié)構(gòu)和存取方法,它依賴于系統(tǒng)具體的硬件環(huán)境、操作系統(tǒng)和DBMS;
(1) 數(shù)據(jù)庫(kù)邏輯模式調(diào)整;
(2) 選擇或配置基本關(guān)系表的文件組織形式;
(3) 數(shù)據(jù)分布設(shè)計(jì);
(4) 安全模式設(shè)計(jì);
(5) 確定系統(tǒng)配置;
(6) 物理模式評(píng)估;
2、 數(shù)據(jù)庫(kù)事務(wù)詳細(xì)設(shè)計(jì):根據(jù)事務(wù)流程,利用SQL語(yǔ)句、數(shù)據(jù)庫(kù)訪問接口,采用高級(jí)程序設(shè)計(jì)語(yǔ)言或DBMS提供的事務(wù)實(shí)現(xiàn)機(jī)制,設(shè)計(jì)數(shù)據(jù)庫(kù)事務(wù)。
3、 應(yīng)用程序詳細(xì)設(shè)計(jì):
2.5 實(shí)現(xiàn)與部署
1、 建立數(shù)據(jù)庫(kù)結(jié)構(gòu);
2、 數(shù)據(jù)加載;
3、 事務(wù)和應(yīng)用程序的編碼及測(cè)試;
4、 系統(tǒng)集成、測(cè)試與試運(yùn)行;
5、 系統(tǒng)部署;
2.6 運(yùn)行管理與維護(hù)
2.6.1 日常維護(hù)
(1) 數(shù)據(jù)庫(kù)的備份與恢復(fù)
(2) 完整性維護(hù)
(3) 安全性維護(hù)
(4) 存儲(chǔ)空間管理
(5) 并發(fā)控制及死鎖處理
2.6.2 系統(tǒng)性能監(jiān)控和分析
1、 統(tǒng)計(jì)數(shù)據(jù)可以通過兩種途徑收集:
(1) 由DBMS本身自動(dòng)收集和存儲(chǔ)統(tǒng)計(jì)數(shù)據(jù)
(2) 通過監(jiān)控系統(tǒng)得到
2.6.3 系統(tǒng)性能優(yōu)化調(diào)整
1、 糸統(tǒng)性能優(yōu)化的手段有:數(shù)據(jù)查詢調(diào)整與優(yōu)化、索引調(diào)整、數(shù)據(jù)庫(kù)摸式調(diào)整、DBMS和操作系統(tǒng)參數(shù)調(diào)整等。
2、 模式調(diào)整主要涉及邏輯模式調(diào)整,可以從下考慮:
(1) 已達(dá)到第三范式的基本表,不要進(jìn)一步規(guī)范化為BCNF;
(2) 在分布式數(shù)據(jù)庫(kù)中,對(duì)一個(gè)基本表中某些頻繁被訪問的數(shù)據(jù),可以按水平分區(qū)或垂直分區(qū)方式拆分基本表。
2.6.4 系統(tǒng)升級(jí)
1、 改進(jìn)應(yīng)用桯序;
2、 數(shù)據(jù)庫(kù)重組;
DBMS和OS版本升級(jí)
相關(guān)推薦:
2012年下半年計(jì)算機(jī)等級(jí)考試報(bào)名時(shí)間及入口匯總
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |