首頁 考試吧論壇 Exam8視線 考試商城 網(wǎng)絡(luò)課程 模擬考試 考友錄 實(shí)用文檔 求職招聘 論文下載
2011中考 | 2011高考 | 2012考研 | 考研培訓(xùn) | 在職研 | 自學(xué)考試 | 成人高考 | 法律碩士 | MBA考試
MPA考試 | 中科院
四六級 | 職稱英語 | 商務(wù)英語 | 公共英語 | 托福 | 雅思 | 專四專八 | 口譯筆譯 | 博思 | GRE GMAT
新概念英語 | 成人英語三級 | 申碩英語 | 攻碩英語 | 職稱日語 | 日語學(xué)習(xí) | 法語 | 德語 | 韓語
計算機(jī)等級考試 | 軟件水平考試 | 職稱計算機(jī) | 微軟認(rèn)證 | 思科認(rèn)證 | Oracle認(rèn)證 | Linux認(rèn)證
華為認(rèn)證 | Java認(rèn)證
公務(wù)員 | 報關(guān)員 | 銀行從業(yè)資格 | 證券從業(yè)資格 | 期貨從業(yè)資格 | 司法考試 | 法律顧問 | 導(dǎo)游資格
報檢員 | 教師資格 | 社會工作者 | 外銷員 | 國際商務(wù)師 | 跟單員 | 單證員 | 物流師 | 價格鑒證師
人力資源 | 管理咨詢師考試 | 秘書資格 | 心理咨詢師考試 | 出版專業(yè)資格 | 廣告師職業(yè)水平
駕駛員 | 網(wǎng)絡(luò)編輯
衛(wèi)生資格 | 執(zhí)業(yè)醫(yī)師 | 執(zhí)業(yè)藥師 | 執(zhí)業(yè)護(hù)士
會計從業(yè)資格考試會計證) | 經(jīng)濟(jì)師 | 會計職稱 | 注冊會計師 | 審計師 | 注冊稅務(wù)師
注冊資產(chǎn)評估師 | 高級會計師 | ACCA | 統(tǒng)計師 | 精算師 | 理財規(guī)劃師 | 國際內(nèi)審師
一級建造師 | 二級建造師 | 造價工程師 | 造價員 | 咨詢工程師 | 監(jiān)理工程師 | 安全工程師
質(zhì)量工程師 | 物業(yè)管理師 | 招標(biāo)師 | 結(jié)構(gòu)工程師 | 建筑師 | 房地產(chǎn)估價師 | 土地估價師 | 巖土師
設(shè)備監(jiān)理師 | 房地產(chǎn)經(jīng)紀(jì)人 | 投資項(xiàng)目管理師 | 土地登記代理人 | 環(huán)境影響評價師 | 環(huán)保工程師
城市規(guī)劃師 | 公路監(jiān)理師 | 公路造價師 | 安全評價師 | 電氣工程師 | 注冊測繪師 | 注冊計量師
繽紛校園 | 實(shí)用文檔 | 英語學(xué)習(xí) | 作文大全 | 求職招聘 | 論文下載 | 訪談 | 游戲

軟考:數(shù)據(jù)庫設(shè)計中的方法

引言

    過去幾年中,我們將敏捷方法應(yīng)用于數(shù)據(jù)庫設(shè)計,總結(jié)出一些技巧,使得當(dāng)應(yīng)用程序發(fā)展時,數(shù)據(jù)庫也能夠進(jìn)化,這是敏捷方法的一個重要屬性。我們的方法是通過持續(xù)集成以及自動重構(gòu),通過數(shù)據(jù)庫管理人員(DBA)和應(yīng)用開發(fā)人員的緊密合作來設(shè)計數(shù)據(jù)庫。這些技巧在應(yīng)用開發(fā)的各個時期都有效。

1 敏捷方法學(xué)

    近年來,出現(xiàn)了一種新的軟件開發(fā)方法學(xué)——敏捷方法學(xué)。這給數(shù)據(jù)庫設(shè)計提出了一些新的、巨大的需求。這些需求的一個中心就是進(jìn)化設(shè)計。在一個敏捷項(xiàng)目中,需要假定我們并不能事先確定系統(tǒng)的需求,因此在項(xiàng)目的初期有一個詳細(xì)設(shè)計階段的想法是不現(xiàn)實(shí)的。系統(tǒng)的設(shè)計必須隨著軟件的變化而進(jìn)化。敏捷方法,尤其是極限編程(XP),通過一些實(shí)踐使這種進(jìn)化設(shè)計成為可能。在數(shù)據(jù)庫設(shè)計采用敏捷方法,反復(fù)迭代。

    許多人會懷疑敏捷方法能否用于有大型數(shù)據(jù)庫組件的系統(tǒng),但我們的確使用了許多敏捷和XP技巧,用于解決基于大型數(shù)據(jù)庫的項(xiàng)目中的進(jìn)化與迭代問題。

引言

    過去幾年中,我們將敏捷方法應(yīng)用于數(shù)據(jù)庫設(shè)計,總結(jié)出一些技巧,使得當(dāng)應(yīng)用程序發(fā)展時,數(shù)據(jù)庫也能夠進(jìn)化,這是敏捷方法的一個重要屬性。我們的方法是通過持續(xù)集成以及自動重構(gòu),通過數(shù)據(jù)庫管理人員(DBA)和應(yīng)用開發(fā)人員的緊密合作來設(shè)計數(shù)據(jù)庫。這些技巧在應(yīng)用開發(fā)的各個時期都有效。

1 敏捷方法學(xué)

    近年來,出現(xiàn)了一種新的軟件開發(fā)方法學(xué)——敏捷方法學(xué)。這給數(shù)據(jù)庫設(shè)計提出了一些新的、巨大的需求。這些需求的一個中心就是進(jìn)化設(shè)計。在一個敏捷項(xiàng)目中,需要假定我們并不能事先確定系統(tǒng)的需求,因此在項(xiàng)目的初期有一個詳細(xì)設(shè)計階段的想法是不現(xiàn)實(shí)的。系統(tǒng)的設(shè)計必須隨著軟件的變化而進(jìn)化。敏捷方法,尤其是極限編程(XP),通過一些實(shí)踐使這種進(jìn)化設(shè)計成為可能。在數(shù)據(jù)庫設(shè)計采用敏捷方法,反復(fù)迭代。

    許多人會懷疑敏捷方法能否用于有大型數(shù)據(jù)庫組件的系統(tǒng),但我們的確使用了許多敏捷和XP技巧,用于解決基于大型數(shù)據(jù)庫的項(xiàng)目中的進(jìn)化與迭代問題。

    本文將介紹一些在數(shù)據(jù)庫設(shè)計采用敏捷方法的實(shí)踐。當(dāng)然,這并不是說我們已經(jīng)完全解決了數(shù)據(jù)庫進(jìn)化的問題,但是我們想提供一些行之有效的方法。

2 積極應(yīng)對變化

    敏捷編程的一個顯著特點(diǎn)就是它面對變化的態(tài)度。對軟件過程的一般解釋是盡早理解需求,停止需求的變動,將這些需求作為設(shè)計的基礎(chǔ),停止設(shè)計的變動,然后開始構(gòu)筑體系,這就是瀑布方法——基于計劃的生命周期。

    這種方法通過大量的前期工作來減少變化,一旦前期工作完成,需求變化會引起很大的問題。當(dāng)需求變化時,這樣的方法就會有很大的問題,因此需求變動是這種過程的一個很大的問題。

    而敏捷編程卻以另外一種方式來面對變化、擁抱變化,甚至允許在項(xiàng)目開發(fā)的后期發(fā)生變化。盡管變化會被控制,但是這種態(tài)度會允許盡可能多的變化。變化部分來自于項(xiàng)目需求的不穩(wěn)定,部分來自于要支持變化的商業(yè)環(huán)境來面對競爭壓力。

    為了做到這樣,必須采取不同的設(shè)計態(tài)度。設(shè)計不僅僅是一個階段——在開始建筑之前就大部分完成的一個階段,設(shè)計是一個持續(xù)的過程,與編碼、測試甚至發(fā)布相關(guān),這是計劃設(shè)計與進(jìn)化設(shè)計的不同之處。敏捷方法的一個重要貢獻(xiàn)是提出了在可控制方式下的進(jìn)化設(shè)計,提供了控制進(jìn)化設(shè)計和使其可行的技巧。

    敏捷方法的一個重要特點(diǎn)就是迭代式開發(fā),即整個項(xiàng)目生命周期中運(yùn)行多個完整的軟件生命周期循環(huán)。敏捷過程在每次迭代中都會度過一個完整的生命周期,迭代可以完成最終產(chǎn)品的需求子集中編碼、測試以及集成代碼。敏捷方法迭代時間較短,通常是一周到兩個月之間,而且我們更傾向于更短的迭代周期。

    當(dāng)使用敏捷方法時,最大的問題就是數(shù)據(jù)庫如何進(jìn)行進(jìn)化設(shè)計。許多人認(rèn)為數(shù)據(jù)庫設(shè)計是前期計劃的工作,而在后期改變數(shù)據(jù)庫設(shè)計計劃會引起應(yīng)用軟件的崩潰;在配置以后改變數(shù)據(jù)庫設(shè)計計劃會導(dǎo)致數(shù)據(jù)遷移問題。

    在過去三年我們參加了一個大型的項(xiàng)目,其中用到了切實(shí)可行的進(jìn)化設(shè)計的方法。該項(xiàng)目包括100人的項(xiàng)目組,200多張表格,數(shù)據(jù)庫在一年半的最初開發(fā)中一直在進(jìn)化,甚至在為多用戶分發(fā)的過程中也在進(jìn)化。一開始我們一個月迭代一次,過了幾個月之后變?yōu)閮芍艿淮巍?

    隨著我們將這些經(jīng)驗(yàn)推廣到項(xiàng)目中越來越多的部分,從越來越多的案例中獲得經(jīng)驗(yàn)。同時,我們也從其他敏捷項(xiàng)目中吸收了一些經(jīng)驗(yàn)。

2.1 限制條件

    在講述實(shí)踐方法之前,必須指出我們并沒有解決所有的數(shù)據(jù)庫進(jìn)化設(shè)計問題,特別是:

    (1) 我們是為單獨(dú)的應(yīng)用設(shè)計一個應(yīng)用數(shù)據(jù)庫,而不是試圖集成多個數(shù)據(jù)庫;

    (2) 我們沒有做到24*7的數(shù)據(jù)庫更新。

    雖然很多人認(rèn)為我們無法解決這個問題,但其實(shí)這些問題是可以解決的。當(dāng)然這需要進(jìn)一步的工作,光說是不能解決問題的。

1 2 3 4 5 下一頁
文章搜索
軟件水平考試欄目導(dǎo)航
版權(quán)聲明:如果軟件水平考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請與我們聯(lián)系800@exam8.com,我們將會及時處理。如轉(zhuǎn)載本軟件水平考試網(wǎng)內(nèi)容,請注明出處。