(信號(hào)與信息處理專業(yè)論文)研究生學(xué)位管理信息系統(tǒng)開發(fā).pdf_第1頁
(信號(hào)與信息處理專業(yè)論文)研究生學(xué)位管理信息系統(tǒng)開發(fā).pdf_第2頁
(信號(hào)與信息處理專業(yè)論文)研究生學(xué)位管理信息系統(tǒng)開發(fā).pdf_第3頁
(信號(hào)與信息處理專業(yè)論文)研究生學(xué)位管理信息系統(tǒng)開發(fā).pdf_第4頁
(信號(hào)與信息處理專業(yè)論文)研究生學(xué)位管理信息系統(tǒng)開發(fā).pdf_第5頁
已閱讀5頁,還剩48頁未讀, 繼續(xù)免費(fèi)閱讀

(信號(hào)與信息處理專業(yè)論文)研究生學(xué)位管理信息系統(tǒng)開發(fā).pdf.pdf 免費(fèi)下載

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

研究生學(xué)位管理信息系統(tǒng)開發(fā) 摘要 本論文以關(guān)系型數(shù)據(jù)庫理論為基礎(chǔ),通過軟件工程的方法,在研究生院局 _ _ _ 一 域網(wǎng)和英特網(wǎng)的環(huán)境下完成了一個(gè)以c s 模式為主兼有b s 模式的信息管理系 統(tǒng)的分析、設(shè)計(jì)與實(shí)現(xiàn),包括數(shù)據(jù)庫的建設(shè)、管理和應(yīng)用軟件的開發(fā)。重點(diǎn)討 論了數(shù)據(jù)庫結(jié)構(gòu)的構(gòu)建方法、數(shù)據(jù)庫管理系統(tǒng)的維護(hù)以及c s 和b s 模式下的 數(shù)據(jù)庫應(yīng)用軟件的開發(fā)。系統(tǒng)中的開發(fā)環(huán)境是n ts e r v e r 4 0 操作系統(tǒng)和s q l s e r v e r7 0 數(shù)據(jù)庫,采用的高級(jí)語言是d e l p h i 5 0 和a s p 。 關(guān)鍵詞:管理信息系統(tǒng) c sb s數(shù)據(jù)庫 a b s t r a c t b a s e do r lt h et h e o r yo fd a t a b a s ea n dt h r o u g ht h es o f t w a r ee n g i n e e r i n gm e t h o d , t h ea n a l y s i s d e s i g n ,a n di m p l e m e n t a t i o no fam i si nt h em o d eo fc sa c c o m p a n i e d w i t hb su n d e rt h ec i r c u m s t a n c eo ft h el a no ft h eg r a d u a t es c h o o la n dt h ei n t e m e t i sp r e s e n t e d ,i n c l u d i n gt h es e t u p ,m a i n t e n a n c eo ft h ed a t a b a s ea n dt h ed e v e l o p m e n t o ft h e a p p l i c a t i o n s o f t w a r e t h ee m p h a s i si s p u t o nt h em e t h o do fd e s i g na n d m a i n t a i n i n ga d a t a b a s es y s t e ma n dt h ed e v e l o p m e n to f d a t a b a s ea p p l i c a t i o ns o f t w a r e i nt h em o d eo fb o t hc sa n db s t h em i si sd e v e l o p e du n d e rt h ee n v i r o n m e n to f m sn ts e r v e r 4 0a n ds q ls e r v e r 7 0 ,a n dt h el a n g u a g ea t i l i z e di s d e l p h i 5 0a n d a s r k e y w o r d :m a n a g e m e n t i n f o r m a t i o ns y s t e mc sb s d a t a b a s e 星二量墮堡 ! 第一章緒論 第一節(jié)m i s 系統(tǒng)簡介 m i s ( 管理信息系統(tǒng),m a n a g e m e n ti n f o r m a t i o ns y s t e m s ) 是一個(gè)以人為主導(dǎo), 利用計(jì)算機(jī)硬件、軟件、網(wǎng)絡(luò)通信設(shè)備以及其他辦公設(shè)備,進(jìn)行信息的收集、傳輸、 加工、儲(chǔ)存、更新和維護(hù),以企業(yè)戰(zhàn)略競(jìng)優(yōu)、提高效益和效率為目的,支持企業(yè)高 層決策、中層控制、基層運(yùn)作的集成化的人機(jī)系統(tǒng)。這個(gè)定義也說明m i s 絕不僅 僅是一個(gè)技術(shù)系統(tǒng),而是把人包括在內(nèi)的人機(jī)系統(tǒng),因而它是一個(gè)管理系統(tǒng),是 個(gè)社會(huì)系統(tǒng)。需要指出的是:對(duì)于一個(gè)企業(yè)來說沒有計(jì)算機(jī)也有m i s ,m i s 是任何 企業(yè)不能沒有的系統(tǒng)。所以,對(duì)于企業(yè)來說,m i s 只有優(yōu)劣之分,不存在有無的問 題。 m i s 正在形成為- - i 1 學(xué)科,我國己把它列為管理科學(xué)與工程一級(jí)學(xué)科下的二級(jí) 學(xué)科。它引用其他學(xué)科的概念,把它們綜合集成為一門系統(tǒng)性的學(xué)科。它面向管 理,利用系統(tǒng)的觀點(diǎn),數(shù)學(xué)的方法和計(jì)算機(jī)應(yīng)用三大要素,形成自己獨(dú)特的內(nèi)涵, 從而形成系統(tǒng)型、交叉型、邊緣型的學(xué)科。 m i s 又是一個(gè)專業(yè),在清華大學(xué)、復(fù)旦大學(xué)等4 0 多所大學(xué)有這個(gè)專業(yè)。有人說 其他許多專業(yè)如會(huì)計(jì)學(xué)、市場(chǎng)學(xué)、財(cái)務(wù)學(xué)專業(yè)在我國均是現(xiàn)代化專業(yè),而國際商 務(wù)、國際貿(mào)易等均是國際化專業(yè),我們說管理信息系統(tǒng)是個(gè)未來化專業(yè),是個(gè)革 新性專業(yè)。它所從事的工作主要在于改變世界,用科學(xué)方法和信息技術(shù)手段,在 會(huì)計(jì)領(lǐng)域、市場(chǎng)領(lǐng)域、貿(mào)易領(lǐng)域等從事變革。沒有這種變革的思想就不能算是一 個(gè)好的管理信息系統(tǒng)專業(yè)人員。只有變革才能得到美好的未來,未來到處是管理 信息系統(tǒng)的天地。 m i s 是一個(gè)一體化系統(tǒng)或集成系統(tǒng),這就是說m i s 進(jìn)行信息管理是從總體出發(fā), 全面考慮,保證各種職能部門共享數(shù)據(jù),減少數(shù)據(jù)的冗余度,保證數(shù)據(jù)的兼容性 和一致性。嚴(yán)格地說只有信息的集中統(tǒng)一,信息才能成為企業(yè)的資源。數(shù)據(jù)的一 體化并不限制個(gè)別功能子系統(tǒng)可以保存自己的專用數(shù)據(jù)。為保證一體化,首先要 有一個(gè)全局的系統(tǒng)計(jì)劃,每一個(gè)小系統(tǒng)的實(shí)現(xiàn)均要在這個(gè)總體計(jì)劃的指導(dǎo)下進(jìn)行! 其次是通過標(biāo)準(zhǔn)、大綱和手續(xù)達(dá)到系統(tǒng)一體化。這樣數(shù)據(jù)和程序就可以滿足多個(gè) 用戶的要求,系統(tǒng)的設(shè)備也應(yīng)當(dāng)互相兼容,即使在分布式系統(tǒng)和分布式數(shù)據(jù)庫的 情況下,保證數(shù)據(jù)的一致性也是十分重要的。 具有集中統(tǒng)一規(guī)劃的數(shù)據(jù)庫是m i s 成熟的重要標(biāo)志,它象征著m i s 是經(jīng)過周 密地設(shè)計(jì)而建立的,它標(biāo)志著信息已集中成為資源,為各種用戶所共享。數(shù)據(jù)庫 有自己功能完善的數(shù)據(jù)庫管理系統(tǒng),管理著數(shù)據(jù)的組織、數(shù)據(jù)的輸入和數(shù)據(jù)的存 取,使數(shù)據(jù)為多種用戶服務(wù)。 2 研究生學(xué)位管理信息系統(tǒng)開發(fā) m i s 用數(shù)學(xué)模型分析數(shù)據(jù),輔助決策。只提供原始數(shù)據(jù)或者總結(jié)綜合數(shù)據(jù)對(duì)管 理者來說往往感到不滿足,管理者希望直接給出決策的數(shù)據(jù)。為得到這種數(shù)據(jù)往 往需要利用數(shù)學(xué)模型,例如聯(lián)系于資源消耗的技資決策模型,聯(lián)系于生產(chǎn)調(diào)度的 調(diào)度模型等。模型可以用來發(fā)現(xiàn)問題,尋找可行解、非劣解和最優(yōu)解。在高級(jí)的 管理信息系統(tǒng)中,系統(tǒng)備有各種模型,供不同的子系統(tǒng)使用,這些模型的集合叫 模型庫。高級(jí)的智能模型能和管理者以對(duì)話的形式交換信息,從而組合模型,并 提供輔助決策信息。 m i s 的概念是發(fā)展的。最初許多倡議者設(shè)想管理信息系統(tǒng)是一個(gè)單個(gè)的高度一 體化的系統(tǒng),它能處理所有的組織功能。也有一些人懷疑,先進(jìn)的計(jì)算機(jī)系統(tǒng)能 否解決定義不清楚的管理判斷過程。實(shí)踐證明,這種高度一體化的單個(gè)系統(tǒng)顯得 過于復(fù)雜,并難以實(shí)現(xiàn)。管理信息系統(tǒng)的概念轉(zhuǎn)向各子系統(tǒng)的聯(lián)合,按照總體計(jì)劃、 標(biāo)準(zhǔn)和程序,根據(jù)需要,開發(fā)和實(shí)現(xiàn)一個(gè)個(gè)子系統(tǒng)。這樣,一個(gè)組織不是只有一個(gè) 包羅萬象的大系統(tǒng),而是一些相關(guān)的信息系統(tǒng)的集合。 在互聯(lián)網(wǎng)飛速發(fā)展并得到廣泛應(yīng)用的今天,m i s 的概念又有了新的發(fā)展,與互 聯(lián)網(wǎng)緊密結(jié)合在一起?;ヂ?lián)網(wǎng)給人們提供了一個(gè)方便、快捷的交換信息方式。目 前,各行各業(yè)都在向互聯(lián)網(wǎng)靠攏,有的行業(yè)如:信息、電子、通信等,已經(jīng)完全 無法離開互聯(lián)網(wǎng)。m i s 與互聯(lián)網(wǎng)的結(jié)合使它的作用范圍更m f 泛,由局域網(wǎng)走向了 廣域網(wǎng),如網(wǎng)上信息發(fā)布、錄入和共享可以使工作變得更加輕松,有效。 管理信息系統(tǒng)的結(jié)構(gòu)是指各部件的構(gòu)成框架,由于對(duì)部件的不同理解就構(gòu)成 了不同的結(jié)構(gòu)方式,其中最重要的是概念結(jié)構(gòu)、功能結(jié)構(gòu)、軟件結(jié)構(gòu)和硬件結(jié)構(gòu)。 從概念上看m i s 由四大部件組成,即信息源、信息處理器、信息用戶和信息管 理者,如圖1 1 所示。 圖1 im i s 的總體結(jié)構(gòu) 其中,信息源是信息產(chǎn)生地;信息處理器擔(dān)負(fù)信息的傳輸、加工、保存等任 務(wù);信息用戶是信息的使用者,他應(yīng)用信息進(jìn)行決策;信息管理者負(fù)責(zé)信息系統(tǒng) 的設(shè)計(jì)實(shí)現(xiàn),在實(shí)現(xiàn)以后,他負(fù)責(zé)信息系統(tǒng)的運(yùn)行和協(xié)調(diào)。 一個(gè)m i s 從使用者的角度看,它總是有一個(gè)目標(biāo),具育多種功能,各種功能 之問又有各種信息聯(lián)系,構(gòu)成一個(gè)有機(jī)結(jié)合的整體,形成一個(gè)功能結(jié)構(gòu)例如, 第一章緒論 一個(gè)企業(yè)的內(nèi)部管理系統(tǒng)可以具有如圖1 2 所示的結(jié)構(gòu)。 市 場(chǎng) 管理信息系統(tǒng) 蓁ll塞i萋i 萋 圖1 2 管理信息系統(tǒng)的功能結(jié)構(gòu) 第二節(jié)研究生學(xué)位m i s 現(xiàn)狀 研究生教育是高等教育的高等層次,是培養(yǎng)和造就高層次人才的主要途徑。 研究生學(xué)位管理是學(xué)位與研究生教育的一個(gè)重要環(huán)節(jié),也是研究生院最重要的一 項(xiàng)任務(wù),是一項(xiàng)系統(tǒng)工程,它涉及了多學(xué)科的知識(shí),是一項(xiàng)比較復(fù)雜的多部門協(xié) 調(diào)工作的管理工程:同時(shí)也是保證研究生教育質(zhì)量的一個(gè)重要手段,它保證了培 養(yǎng)的學(xué)生的質(zhì)量。管理水平的高低,直接影響著研究生院的形象。隨著研究生招 生規(guī)模的不斷擴(kuò)大,研究生管理的重要性也表現(xiàn)得更加突出。 研究生管理各個(gè)學(xué)校或單位都有自己的特點(diǎn),但是相互之間都是大同小異,大 部分功能是類似的,大致可以分為學(xué)?;騿挝粌?nèi)部的管理和教育部的管理。教育 部對(duì)招生、學(xué)籍和學(xué)位等方面都是全國統(tǒng)的,有統(tǒng)一的標(biāo)準(zhǔn)和下發(fā)的軟件,主 要完成對(duì)全國研究生信息的匯總。學(xué)?;騿挝桓鶕?jù)教育部的規(guī)定標(biāo)準(zhǔn)和形式上報(bào) 數(shù)據(jù)。學(xué)?;騿挝粌?nèi)部的管理是各學(xué)?;騿挝谎芯可芾淼闹饕獌?nèi)容。而研究生 學(xué)位管理則是整個(gè)研究生管理的一部分。學(xué)位是研究生付出努力的最終目標(biāo),是 自己奮斗的成果;國家和單位則要通過學(xué)位了解一個(gè)人的知識(shí)背景,并由此估計(jì) 人的能力??梢?,不論對(duì)同學(xué),還是對(duì)國家或單位而言,都非常重要的。這就對(duì) 研究生學(xué)位管理提出了更高的要求,也使其變得尤為重要。 我校研究生院下設(shè)有學(xué)位辦公室,專門負(fù)責(zé)研究生的學(xué)位管理工作。其主要任 務(wù)有:信息采集,數(shù)據(jù)處理,信息輸出和數(shù)據(jù)轉(zhuǎn)存。采集信息的方式有兩種,即: 從其它辦公室獲取已有信息和手工錄入學(xué)位信息。數(shù)據(jù)經(jīng)過處理后以所需的形式 輸出,有學(xué)位申請(qǐng)報(bào)表、授予學(xué)位文件、授予學(xué)位名單、學(xué)位證明和報(bào)盤數(shù)據(jù)等。 數(shù)據(jù)轉(zhuǎn)存是把數(shù)據(jù)存放在適當(dāng)?shù)奈恢?,如從?dāng)前的庫轉(zhuǎn)入近年庫或從近年庫轉(zhuǎn)入 到歷年庫等。 4 研究生學(xué)位管理信息系統(tǒng)開發(fā) 第二章系統(tǒng)開發(fā)背景與技術(shù) 第一節(jié)系統(tǒng)開發(fā)的必要性 我校研究生工作的計(jì)算機(jī)化開始較早,研究生院學(xué)位辦公室原來使用的管理 軟件是在1 9 9 6 開發(fā)的。到目前為止,這套軟件已經(jīng)在以往的工作中做出了非常大 的貢獻(xiàn)。但是,由于以下原因迫切需要新的管理系統(tǒng)來替代。 首先,由于開發(fā)較早,它所使用的開發(fā)語言是f o x p r 0 2 5 。f o x p r o 語言現(xiàn)在已 經(jīng)發(fā)展到了v f o x p r o6 0 ,原來使用的不是可視化環(huán)境下的編程語言,連可視化界 面都自己用程序?qū)崿F(xiàn)的,要對(duì)其進(jìn)行修改則需要改變大量的程序,致使對(duì)系統(tǒng)的 維護(hù)比較困難,且工作量非常大。其次,它采用的是f o x p r o 數(shù)據(jù)庫,原來選擇它 是因?yàn)槠浔容^簡單,易于掌握。但是隨著研究生招生規(guī)模的不斷擴(kuò)大,f o x p r o 的 數(shù)據(jù)庫已經(jīng)不能適應(yīng)大量數(shù)據(jù)下復(fù)雜操作的要求;f o x p r o 數(shù)據(jù)庫的訪問權(quán)限設(shè)置 不夠靈活,因而就會(huì)出現(xiàn)安全方面的問題不能滿足;f o x p r o 數(shù)據(jù)庫中沒有存儲(chǔ)過 程,導(dǎo)致所有的功能都要通過編程語言來實(shí)現(xiàn),且開發(fā)出的軟件不易維護(hù)。第三, 新的需求不能滿足。1 9 9 9 年教育部下發(fā)了學(xué)位報(bào)盤系統(tǒng),該系統(tǒng)規(guī)定的上報(bào)數(shù)據(jù) 庫中包含一部分學(xué)籍和培養(yǎng)的信息,且提供了一個(gè)由d b f 格式的表轉(zhuǎn)入數(shù)據(jù)的接 口。原系統(tǒng)中沒有生成上報(bào)數(shù)據(jù)的功能,以往幾年都是由學(xué)位辦公室的老師錄入 全部的報(bào)盤信息,包括學(xué)籍和培養(yǎng)中已經(jīng)存在的信息。這種重復(fù)錄入不僅增加了 工作量,而且也容易出錯(cuò)。第四,博士攻博期間的成果信息沒有保存記錄。這些 信息以往是由博士研究生自己打印出來貼在其學(xué)位申請(qǐng)表上,或者按指定格式用 軟盤交到學(xué)位辦,數(shù)據(jù)庫中卻沒有保存。之后需要使用這些信息時(shí)就會(huì)出現(xiàn)困難, 軟盤的使用也導(dǎo)致了病毒的傳播。 在升級(jí)系統(tǒng)的開發(fā)中,我們選用了s q ls e r v e r 數(shù)據(jù)庫,因?yàn)椋核跈?quán)限設(shè)置 上有較多層次,靈活方便:它的存儲(chǔ)過程可以使開發(fā)的程序更加簡單和規(guī)范:也 適用于大中型數(shù)據(jù)庫;各方面的性能都可以滿足需要。開發(fā)語言選擇了對(duì)s q l s e r v e r 數(shù)據(jù)庫支持較好的d e l p l l i 開發(fā)語言,網(wǎng)上信息錄入采用的開發(fā)工具是a s p 。 第二節(jié)系統(tǒng)性能指標(biāo) 功能指標(biāo): ( 1 ) 戶可通過輸入界面對(duì)學(xué)歷碩士、同等學(xué)力碩士、工程碩士和博士的學(xué)位信息 進(jìn)行錄入和修改的維護(hù)操作;自動(dòng)添加學(xué)位中用到的學(xué)籍方面的信息;可分類計(jì) 算總學(xué)分、學(xué)位學(xué)分和學(xué)位平均成績;網(wǎng)上錄入博士的成果信息。 ( 2 ) 檢查數(shù)據(jù)的合法性,尤其是表示時(shí)間的字段;生成打印學(xué)位申請(qǐng)表時(shí)使用的 第二章系統(tǒng)開發(fā)背景與技術(shù) 數(shù)據(jù):處理形成生成上報(bào)庫信息導(dǎo)入的d b a s e 3 格式的表時(shí)使用的數(shù)據(jù);生成授予 學(xué)位研究生的學(xué)位證書編號(hào),生成時(shí)按專業(yè)、導(dǎo)師排序:報(bào)盤后把授過學(xué)位的記 錄轉(zhuǎn)入近年庫;近年庫的信息轉(zhuǎn)入歷年庫。 ( 3 ) 按學(xué)位辦公室制定的規(guī)則抽取部分學(xué)歷碩士生成學(xué)位申請(qǐng)表,上校學(xué)位委員 會(huì)使用:對(duì)全部的同等學(xué)力碩士和工程碩士生成學(xué)位申請(qǐng)表;生成博士、學(xué)歷碩 士和同等學(xué)力碩士的上報(bào)庫,d b a s e 3 格式,用于把數(shù)據(jù)導(dǎo)入教育部學(xué)位報(bào)盤軟件; 打印授予學(xué)位文件,包括學(xué)歷碩士、同等學(xué)力碩士、工程碩士和博士,文件類型 有授予學(xué)位文件、授予學(xué)位人員名單和學(xué)位證明,前兩者可以生成文檔形式,拷 貝后到指定地點(diǎn)打印,三種文件都可由學(xué)位辦公室打印。 性能指標(biāo): 可以運(yùn)行在w i n 9 5 、w i n 9 8 、w i n d o w s m e 、w i n 2 0 0 0 的操作系統(tǒng)下,建議運(yùn)行 環(huán)境的c p u 為1 3 3 m 咀上,內(nèi)存不低于6 4 m 。1 0 0 0 條記錄的處理時(shí)間不能超過 5 s 。 第三節(jié)數(shù)據(jù)庫平臺(tái)選擇 在系統(tǒng)開發(fā)中選擇的數(shù)據(jù)庫平臺(tái)為s q ls e r v e r ,下面對(duì)s q ls e r v e r 的性能做 一個(gè)簡單的介紹,這些性能也是我們選擇它的原因。 s q ls e r v e r 是一個(gè)客戶機(jī)服務(wù)器模式關(guān)系型數(shù)據(jù)庫管理系統(tǒng)( r d b m s ) ,使用 t r a n s a c t - s q l ( - - 種結(jié)構(gòu)化查詢語言,s t r u c t u r e dq u e r yl a n g u a g e ) 在客戶機(jī)和s q l s e r v e r 之間發(fā)送請(qǐng)求。它將s q l 的各項(xiàng)功能和管理機(jī)制以種友好的設(shè)計(jì)平臺(tái)( 或 者說是設(shè)計(jì)模塊) 展現(xiàn)在開發(fā)者的面前,具有很好的操作性和條理感。這實(shí)際上 是將相應(yīng)的s q l 語句段封裝起來,用戶只須給出需要的參數(shù)即可。與此同時(shí),s q l s e r v e r 也提供了直接使用s q l 語言進(jìn)行數(shù)據(jù)庫操作和管理的方法。因此,較好的 掌握s q l 語言是充分地理解和操作s q ls e r v e r 系統(tǒng)的重要基礎(chǔ)。 首先讓我們來了解一下在s q ls e r v e r 中最為常用的幾個(gè)數(shù)據(jù)庫對(duì)象視 圖、索引和存儲(chǔ)過程。 視圖:它建立在基本表之上,提取了某些基本表的某些字段和某些記錄的一 個(gè)邏輯存在的虛擬表。它的好處在于: 】) 它從數(shù)據(jù)庫煩瑣的數(shù)據(jù)堆中集中了特定的信息,提供給使用者。 2 ) 與沒有建立視圖相比,它簡化了s q l 查詢語句a 3 ) 基于相同的表,可以針對(duì)不同的用戶,定義不同的視圖,成為一種安全保 密的手段。 “ 、。 但是,為保證數(shù)據(jù)完整性,在需要通過視圖修改表的數(shù)據(jù)時(shí),又必須有許多 條件限制。比如: 一一_ _ 一 研究生學(xué)位管理信息系統(tǒng)開發(fā) 1 ) 多個(gè)表上建立的視圖上不能使用刪除語句( d e l e t e ) 。 2 ) 一般不能使用插入語句( i n s e r t ) ,除非所有用在基本表的非空列都包 含在此視圖中。 3 ) 如果視圖的定義中引用了其他的視圖,那么所修改的信息要保證都在同一 個(gè)基本表上。 4 ) 用d i s t i n c t ( 聚集類) 子旬創(chuàng)建的視圖,不能被修改或插入。 5 ) 帶有虛擬列的視圖不能修改。虛擬列一般是指由表達(dá)式或函數(shù)結(jié)果所組成 的列。 另外需要說明的一點(diǎn)是,視圖在使用時(shí)才動(dòng)態(tài)的生成,一般情況下是不存在 的,因此。它的運(yùn)行要慢,這點(diǎn)在對(duì)大量的記錄進(jìn)行操作進(jìn)比較明顯。所以在 速度要求比較高而操作的數(shù)據(jù)量又很大的場(chǎng)合不適宜用視圖。 索引:顧名思義,索引就是排序方式的定義。一般有聚集索引和非聚集索引。 二者之間最顯著的差異是,聚集索引的順序就是實(shí)際的物理排序,而非聚集索引 不是。這里要闡述的是,索引雖然是用來提高查詢效率的,可索引的建立需要考 慮以下幾點(diǎn),否則不一定會(huì)提高查詢速度,甚至?xí)卤豆Π?。說明如下: 1 ) 對(duì)于小表,有無索引關(guān)系不大。而對(duì)于大表,當(dāng)要求返回少量數(shù)據(jù)時(shí)( 一 般是少于總量的2 5 ) ,索引所改善的性能才比較明顯。 2 )當(dāng)修改一個(gè)表的大部分?jǐn)?shù)據(jù)時(shí),最好不建索引,或先將索引刪除,因?yàn)?修改表時(shí),表的指針會(huì)由索引原因而走許多重復(fù)的路線。尤其是非聚集索引導(dǎo)致 的效率降低會(huì)很突出。 存儲(chǔ)過程:它是一組已被編輯在一起的完成某種功能的s q l 語句段落,它可 以定義輸入?yún)?shù)、輸出參數(shù)。它在數(shù)據(jù)庫編程時(shí)將被頻繁地使用到。它的主要特 點(diǎn)是: 1 ) 它在服務(wù)器端執(zhí)行,只接受參數(shù)和返回結(jié)果,這樣節(jié)省了網(wǎng)絡(luò)通信量, 從而提高了服務(wù)器效率。 2 ) 它作為一個(gè)可隨時(shí)調(diào)用執(zhí)行的功能模塊,將明顯簡化用戶端應(yīng)用程序的 框架。 較好地編寫和設(shè)計(jì)存儲(chǔ)過程,為應(yīng)用程序的編寫提供了很大的幫助,有的存 儲(chǔ)過程的功能可以設(shè)計(jì)為專用,有的可以設(shè)計(jì)為公用。從某種意義上講,存儲(chǔ)過 程的設(shè)計(jì)思想就是c t s 多層結(jié)構(gòu)模式中所指的中間件。 觸發(fā)器的功能與存儲(chǔ)過程非常相似,只不過它是在表執(zhí)行插入、修改或刪除 時(shí)自動(dòng)執(zhí)行的,同時(shí)保證了數(shù)據(jù)的完整性。 下面簡要介紹s q ls e w e r 的各種管理機(jī)制。 。 s q ls e r v e r 的管理可以作到服務(wù)器的集中式管理,即在多臺(tái)服務(wù)器運(yùn)行的環(huán) 境下,你可以使用一臺(tái)服務(wù)器來管理所有的服務(wù)器。這種服務(wù)器的集中管理方式 第二章系統(tǒng)開發(fā)背景與技術(shù) 對(duì)管理員來說,既便捷又提高了工作效率。 s q ls e r v e r 支持多客戶應(yīng)用程序,支持多種開發(fā)平臺(tái)、數(shù)據(jù)復(fù)制、分布式事 務(wù)處理、數(shù)據(jù)倉庫、內(nèi)建式的在線分析處理等。這里主要討論的是s q ls e r v e r 的 安全機(jī)制和數(shù)據(jù)庫的備份、恢復(fù)。 1 ) s q ls e r v e r 的安全性: s q ls e r v e r 在用戶驗(yàn)證上有兩個(gè)安全級(jí):登錄鑒別:數(shù)據(jù)庫用戶帳號(hào)和角色 的許可驗(yàn)證。 登錄鑒別:用戶可以用s q ls e r v e r 帳號(hào)和口令登錄,也可以用w i n d o w sn t 分組或帳號(hào)登錄。這需要對(duì)s q ls e r v e r 的鑒別模式事先設(shè)置,要么w i n d o w sn t 鑒別模式,要么混合鑒別模式。 數(shù)據(jù)庫用戶帳號(hào)和角色的許可驗(yàn)證:角色即s q ls e r v e r 系統(tǒng)設(shè)計(jì)和定義好了 的權(quán)限組合,不同的角色具有不同的權(quán)限。角色的分配是由d b a ( 數(shù)據(jù)庫系統(tǒng)管 理員,d a t a b a s ea d m i n i s t r a t o r ) 針對(duì)不同的用戶、密級(jí)等來決定的。如圖4 1 所示。 w i n d o w sw 驗(yàn)證n 4 - 凰b ls u ls e r v e r l s q ls e r v e r 驗(yàn)證口令 衛(wèi) i 巳 : fi 方卜一 憾角丫 圖2 1s q ls e r v e r 的登錄安全模式 2 1 數(shù)據(jù)庫的備份: 數(shù)據(jù)庫的備份是數(shù)據(jù)庫系統(tǒng)的管理中非常重要的一個(gè)部分。天有不測(cè)風(fēng)云, 當(dāng)任何可能引起數(shù)據(jù)丟失的災(zāi)難性事件發(fā)生時(shí),如服務(wù)器崩潰或數(shù)據(jù)庫損壞或硬 件損壞等,唯一可做的事就是利用數(shù)據(jù)庫備份進(jìn)行恢復(fù),否則只有從頭再來,但 是會(huì)耗費(fèi)大量的人力物力和時(shí)間。甚至有些情況下,從頭收集數(shù)據(jù)根本無法實(shí)現(xiàn)。 不管數(shù)據(jù)的損失是意外的還是人為的,d b a 都應(yīng)認(rèn)真考慮數(shù)據(jù)庫的備份策略 和方法。一般從以下幾方面考慮: a 數(shù)據(jù)庫系統(tǒng)主要用于哪些處理? o l t p ( 聯(lián)機(jī)事務(wù)處理) ,還是o l a p ( 聯(lián) 機(jī)分析處理) ,由此大致估計(jì)備份數(shù)據(jù)的頻繁性。 b 知道備份的過程是動(dòng)態(tài)的,除了個(gè)別例外情況,備份可以在數(shù)據(jù)庫正在被 研究生學(xué)位管理信息系統(tǒng)開發(fā) 使用或數(shù)據(jù)正在被修改時(shí)進(jìn)行。 c 備份內(nèi)容: 模式和文件結(jié)構(gòu)、數(shù)據(jù)、部分事務(wù)日志文件 d 在s q ls e r v e r 數(shù)據(jù)庫中,系統(tǒng)信息存儲(chǔ)在系統(tǒng)數(shù)據(jù)庫中,主要的系統(tǒng)數(shù)據(jù) 庫包括: m a s t e r - 從整體上控制用戶數(shù)據(jù)庫和s q ls e r v e r 操作,在創(chuàng)建了任何用戶定義 的對(duì)象后,都要備份它。 m o d e l - 為新數(shù)據(jù)庫提供模版和原型,若有過修改,也要備份它。 m s d b - 包含了有關(guān)作業(yè)、報(bào)警及操作員等信息,若有過修改,也要各份它。 對(duì)系統(tǒng)數(shù)據(jù)庫m a s t e r 的備份非常重要。因?yàn)閙 a s t e r 數(shù)據(jù)庫是用于跟蹤用戶帳 號(hào)、遠(yuǎn)程用戶帳號(hào)、遠(yuǎn)程服務(wù)器、環(huán)境變量、系統(tǒng)錯(cuò)誤消息、其他系統(tǒng)數(shù)據(jù)庫、 數(shù)據(jù)庫存儲(chǔ)分配、設(shè)備和活動(dòng)等的系統(tǒng)數(shù)據(jù)庫。m a s t e r 數(shù)據(jù)庫的損壞將導(dǎo)致s q l s e r v e r 無法啟動(dòng)。順便提一下,m a s t e r 數(shù)據(jù)庫中的些系統(tǒng)表可以理解成數(shù)據(jù)字典, 它是系統(tǒng)自動(dòng)擴(kuò)充的,而在以前數(shù)據(jù)字典都是在數(shù)據(jù)庫設(shè)計(jì)中所要考慮的事情。 e 備份方式: + 全庫備份,備份整個(gè)數(shù)據(jù)庫的數(shù)據(jù)、存儲(chǔ)過程、用戶帳號(hào)等參數(shù)的完整 備份。 + 差異備份,將自上一次全庫備份以來的變化進(jìn)行備份。 + 事務(wù)日志備份。 + 數(shù)據(jù)庫文件或文件組的備份,這是對(duì)特大型數(shù)據(jù)庫或由于時(shí)問原因而無法 全庫備份時(shí)的考慮。 根據(jù)以上考慮,本文制定了一個(gè)基本的數(shù)據(jù)庫備份策略。由于研究生信息管 理系統(tǒng)教務(wù)管理的季節(jié)性很強(qiáng),一段時(shí)間內(nèi)要大量地錄入數(shù)據(jù),一段時(shí)間內(nèi)要利 用數(shù)據(jù)庫的信息進(jìn)行決策??梢?,本數(shù)據(jù)庫既是個(gè)o l t p ,又是個(gè)o l a p ,而 且數(shù)據(jù)庫中幾個(gè)重要的表如學(xué)籍表、成績表、課程表都會(huì)常有變動(dòng),因此,備份 數(shù)據(jù)庫是必須的。通過以上考慮,本數(shù)據(jù)庫應(yīng)以全庫備份為基礎(chǔ),兼以差異備份。 由于數(shù)據(jù)庫不是很大,在系統(tǒng)建好后就可進(jìn)行一次全庫各份,以后進(jìn)行定期地差 異備份或數(shù)據(jù)文件組備份( 主要是指幾個(gè)重要的表) 。當(dāng)然,備份策略將會(huì)隨著整 體數(shù)據(jù)庫系統(tǒng)的發(fā)展和具體應(yīng)用的變化而有所改變。 3 ) 數(shù)據(jù)庫的恢復(fù) 啟動(dòng)e n t e r p r i s em a n a g e r , 選t o o l s - d a t a b a s eb a c k u p r e s t o r e 這是s q ls e r v e r 系 統(tǒng)管理的基本功能。 關(guān)于系統(tǒng)數(shù)據(jù)庫的恢復(fù)總結(jié)如下: 如果包含系統(tǒng)數(shù)據(jù)庫的介質(zhì)變了,那么必須重建系統(tǒng)數(shù)據(jù)庫,如果你仍然可 以啟動(dòng)s q ls e r v e r 服務(wù)貝可以通過r e s t o r e 語句從系統(tǒng)數(shù)據(jù)庫的備份中恢復(fù) 第二章系統(tǒng)開發(fā)背景與技術(shù) 數(shù)據(jù)庫。 如果m a s t e r 壞了,不能啟動(dòng)系統(tǒng),可以按照下面步驟進(jìn)行恢復(fù) s t e p l 重建系統(tǒng)數(shù)據(jù)庫運(yùn)行c :、i i l s s q l 7 b i n n r e b u i l 血e x e ,按照提示進(jìn)行即可, 過程中需要系統(tǒng)數(shù)據(jù)庫樣本的路徑,可在安裝光盤中找到; s t e p 2 重建系統(tǒng)數(shù)據(jù)庫后,啟動(dòng)s q ls e r v e r 服務(wù),用系統(tǒng)數(shù)據(jù)庫的備份恢復(fù) 數(shù)據(jù)庫就行了。 通常恢復(fù)順序?yàn)閙 a s t e r - m s d b m o d e l 在恢復(fù)m a s t e r 的備份時(shí)要注意:必須在s i n g l eu s e r 模式下進(jìn)行。 第四節(jié)開發(fā)工具選擇 一、d e l p h i d e l p h i 是b o r l a n d 公司于1 9 9 4 年底發(fā)布的用于開發(fā)數(shù)據(jù)庫應(yīng)用程序的工具, 是一個(gè)完全導(dǎo)向的可視化系統(tǒng)開發(fā)工具,具有功能強(qiáng)大、運(yùn)行速度快、易于使用 以及開發(fā)迅速等特點(diǎn),一經(jīng)推出就受到廣大用戶的喜愛。d e l p h i 被稱為是第四代 編程語言,以它基于窗口和面向?qū)ο蟮木幊谭椒ǎcw i n d o w s 操作系統(tǒng)緊密結(jié)合。 強(qiáng)大的數(shù)據(jù)庫技術(shù)支持、迅捷的編程速度,同時(shí)兼?zhèn)渖鷦?dòng)的界面和易學(xué)靈活等特 點(diǎn),一直為程序員們喜愛的編程工具。在d e l p h i 的眾多優(yōu)勢(shì)中,它在數(shù)據(jù)庫方面 的特長顯得尤為突出:適應(yīng)于多種數(shù)據(jù)庫結(jié)構(gòu);從客戶機(jī)n 務(wù)器模式到多層數(shù)據(jù) 庫結(jié)構(gòu)模式;高效率的數(shù)據(jù)庫管理系統(tǒng)和先進(jìn)的數(shù)據(jù)庫引擎;先進(jìn)的數(shù)據(jù)分析手 段和提供大量的企業(yè)組件。 目前具有兩類版本:d e l p h i 的標(biāo)準(zhǔn)版本和c s 版本。標(biāo)準(zhǔn)版本包含一個(gè) b o r l a n dd a t a b a s ee n g i n e 的局部拷貝,它允許用戶創(chuàng)建能訪問d b a s e 、p a r a d o x 和l o c a li n t e r b a s e 服務(wù)器的數(shù)據(jù)庫應(yīng)用,它還支持具有o d b c 接口的數(shù)據(jù)庫。 d e l p h i 的c s 版本包括b o r l a f i ds q ll i n k ,它能直接訪問o r a c l e 、s y b a s e 和 m i c r o s o f ts o ls e r v e r ,i n f o r m i x 以及i n t e r b a s e 數(shù)據(jù)庫服務(wù)器。 d e l p h i 可以訪問多種數(shù)據(jù)庫管理系統(tǒng)的數(shù)據(jù)庫,憑借窗體( f o r m s ) 和報(bào)表 ( r e p o r t s ) ,b d e ( b o r i a n dd a t a b a s ee n g i n e ) 可以訪問諸如p a r a d o x 、d b a s e 、本地 i n t e r b a s e 服務(wù)器的數(shù)據(jù)庫,也可以訪問遠(yuǎn)程數(shù)據(jù)庫服務(wù)器上的數(shù)據(jù)庫( 如o r a c l e 、 s y b a s e 、i n f o r m i x 等客戶服務(wù)器數(shù)據(jù)庫中的數(shù)據(jù)庫) ,或任何經(jīng)o d b c ( 開放式數(shù) 據(jù)庫聯(lián)接,o p e nd a t a b a s ec o n n e c t i v i t y ) 可訪問的數(shù)據(jù)庫管理系統(tǒng)中的數(shù)據(jù)庫。 下面介紹幾種頻繁使用的d e l p h i 控件: 1 ) 數(shù)據(jù)庫訪問部件( d a t a a c c e s s ) :d a t a s o u r c e 、t a b l e 、q u e r y 、s t o r e d p m c 等。 研究生學(xué)位管理信息系統(tǒng)開發(fā) 2 ) 數(shù)據(jù)控制部件( d a t a c o n t r 0 1 ) :d b g r i d 、d b n a v i g a t e r 、d b t e x t 、d b e d i t 、 d b l m a g e 等各種數(shù)據(jù)顯示控件。 3 ) q r e p o r t 部件:它包含了報(bào)表設(shè)計(jì)時(shí)要用到的多種控件,報(bào)表的設(shè)計(jì)和制作 在該系統(tǒng)中使用也比較多。 4 ) 還有s e r v e r s 部件,如w o r d a p p l i c a t i o n 、w o r d d o c u m e n t 等。 5 ) d a t a p u m p 工具非常有用,他可以完成任何數(shù)據(jù)庫類型的轉(zhuǎn)換,當(dāng)然,有 些數(shù)據(jù)庫類型的轉(zhuǎn)換不能一步完成,但可以通過一個(gè)中間類型的過渡,來達(dá)到最 終目的。 由于是針對(duì)數(shù)據(jù)庫編程的,所以編程的總思想就是,前臺(tái)用于接收和發(fā)送參數(shù), 瀏覽數(shù)據(jù)記錄、統(tǒng)計(jì)結(jié)果、打印等等。后臺(tái)主要完成數(shù)據(jù)庫的關(guān)聯(lián)查詢、統(tǒng)計(jì)運(yùn) 算、數(shù)據(jù)存儲(chǔ)和更新、返還結(jié)果等。 二、a s p a s p 全名為( a c t i v es e r v e r p a g e s ) ,它是微軟公司新推出i i s 3 0 的一個(gè)組件, 亦即微軟在i i s 2 0 推出i d c 之后新一代的動(dòng)態(tài)網(wǎng)頁開發(fā)方案。a s p 實(shí)際是一種在 服務(wù)器端開發(fā)腳本語言的環(huán)境。利用它可以開發(fā)出動(dòng)態(tài)、交互、高性能w e b 服務(wù) 器端的應(yīng)用,且能較容易實(shí)現(xiàn)復(fù)雜的w e b 應(yīng)用。利用a s p 開發(fā)的腳本程序全部運(yùn) 行在服務(wù)器端,極大地減少了對(duì)客戶端的要求。 瀏覽器從w e b 服務(wù)器調(diào)用a s p 文件,然后執(zhí)行每一條腳本語句,再把執(zhí)行的 結(jié)果生成h t m l 文件傳給客戶端。a s p 用擴(kuò)展名為a s p 的文件,以區(qū)別于以h t m 為擴(kuò)展名的h t m l 文件。當(dāng)支持a s p 的w e b 服務(wù)器調(diào)用以a s p 為擴(kuò)展名的文件 時(shí),自動(dòng)執(zhí)行其腳本語句。a s p 文件同樣是文本文件,它包括文本、h t m l 標(biāo)記 和a s p 文件特有的腳本語句( 用( 與) 命令界定符標(biāo)記) 。制作a s p 文件同 h t m l 文件一樣,可以用任何純文本編輯器進(jìn)行編輯,但專業(yè)開發(fā)人員最好使用 微軟推出的a s p 專用開發(fā)工具u s u a li n t e r d e v l 0 。a s p 可以使用任何腳本語言, 只需提供其相應(yīng)的腳本引擎就可,a s p 自身提供v bs c r i p t 和js c r i p t 兩種腳本引 擎,缺省為v bs c r i p t 。 a s p 包括了五個(gè)內(nèi)置對(duì)象: ( 1 ) r e q u e s t 對(duì)象,從瀏覽器獲取信息。 ( 2 ) r e s p o n s e 對(duì)象,發(fā)送信息到瀏覽器。 ( 3 ) s e r v e r 對(duì)象,控制a s p 執(zhí)行情況,對(duì)服務(wù)器端a c t i v e x 控件起作用。 ( 4 ) s e s s i o n 對(duì)象,存儲(chǔ)用戶任務(wù)的信息。 ( 5 ) a p p l m a t i o n 對(duì)象,使多用戶共享一個(gè)程序的信息。 為了同數(shù)據(jù)庫服務(wù)器進(jìn)行交互,就必須用腳本語言生成a d o ( a c t i v e xd a t a 第二章系統(tǒng)開發(fā)背景與技術(shù) o b j e c t s ) 。a d o 為a s p 內(nèi)置s e r v e r 對(duì)象數(shù)據(jù)庫訪問控件。用a d o 可以使客戶端的 程序通過o d b c 存取和操縱數(shù)據(jù)庫服務(wù)器的數(shù)據(jù)。a d o 的優(yōu)點(diǎn)是簡單易用、高速、 占用資源少等。a d o 包括七個(gè)對(duì)象: ( 1 ) c o m m a n d 對(duì)象,定義對(duì)數(shù)據(jù)源進(jìn)行操作的命令。 ( 2 ) c o n n e c t i o n 對(duì)象,表示建立一個(gè)數(shù)據(jù)源的連接。 ( 3 ) e r r o r 對(duì)象提供屬于數(shù)據(jù)訪問錯(cuò)誤的細(xì)節(jié)。 ( 4 ) f i e l d 對(duì)象表示一般數(shù)據(jù)類型的字段。 ( 5 ) p a r a m e t e r 對(duì)象,表示c o m m a n d 對(duì)象的參數(shù)。 ( 6 ) p r o p e r t y 對(duì)象,表示由數(shù)據(jù)提供源定義a d o 對(duì)象的動(dòng)態(tài)特性。 ( 7 ) r e c o r d s e t 對(duì)象,表示由數(shù)據(jù)庫或命令的結(jié)果產(chǎn)生的全部的結(jié)果集。 使用a d o 對(duì)象可以建立和管理數(shù)據(jù)庫的連接從數(shù)據(jù)庫服務(wù)器要求和獲取數(shù) 據(jù),執(zhí)行更新、刪除、添加數(shù)據(jù),獲取o d b c 的錯(cuò)誤信息等。 第五節(jié)相關(guān)技術(shù)討論 一、 軟件開發(fā)模型 3 1 1 4 軟件生存期指軟件的開發(fā)過程,它可以分為以下六個(gè)步驟:制定計(jì)劃、需求分 析和定義、軟件設(shè)計(jì)、程序編寫、軟件測(cè)試和運(yùn)行維護(hù)。軟件生存期模型是反映 軟件生存期中各個(gè)步驟的組織銜接的一個(gè)概念,指系統(tǒng)開發(fā)、運(yùn)作和維護(hù)所實(shí)施 的全部過程、活動(dòng)、和任務(wù)的結(jié)構(gòu)框架。目前已提出了多種軟件生存期模型, 如:瀑布模型、演化模型、螺旋模型、噴泉模型和智能模型等分別介紹如下。 瀑布模型規(guī)定了軟件生存期的六個(gè)步騾自上而下、相互銜接的固定次序,如圖 2 2 所示,如同瀑布流水,逐級(jí)下落。每項(xiàng)活動(dòng)從上一項(xiàng)活動(dòng)接受輸入,然后實(shí)施 圖2 , 2 軟件生存期的瀑布模型 該項(xiàng)活動(dòng),該項(xiàng)活動(dòng)的成果作為輸出再傳給下一項(xiàng)活動(dòng)。最后,對(duì)該項(xiàng)活動(dòng)的工 研究生學(xué)位管理信息系統(tǒng)開發(fā) 作進(jìn)行評(píng)審,若得到確認(rèn)則繼續(xù)下一項(xiàng)活動(dòng),否則返回前項(xiàng),甚至更前項(xiàng)的活動(dòng) 進(jìn)行返工。需要注意的是維護(hù)過程仍要經(jīng)歷上述各項(xiàng)活動(dòng),并且不斷重復(fù),構(gòu)成 了軟件生存期循環(huán)。該模型的缺點(diǎn)是缺乏靈活性,無法解決軟件需求不明確或不 準(zhǔn)確的問題,且隨著項(xiàng)目日益龐大,該缺點(diǎn)引發(fā)的問題顯得更為嚴(yán)重。 為解決規(guī)格說明不完善、需求的變更、通信中的模糊和誤解等問題,逐漸形 成了軟件系統(tǒng)的快速原形的概念。原型指軟件的一個(gè)早期可運(yùn)行的版本,它反映 了最終系統(tǒng)的部分重要特性。用戶可在試用原型系統(tǒng)的過程中得到親身感受和啟 發(fā),并做出反應(yīng)和評(píng)價(jià),開發(fā)者再根據(jù)用戶意見對(duì)原型加以改進(jìn)。然后再試用修 改,不斷循環(huán),直到得到令用戶滿意的軟件產(chǎn)品為止。除分析之外,這種方法也 面向開發(fā)過程的其它階段。 演化模型是針對(duì)需求不明確提出來的,其中就采用了快速原形。這種方法要 進(jìn)行兩次系統(tǒng)開發(fā)。先針對(duì)粗略的用戶需求快速地開發(fā)了一個(gè)系統(tǒng)原型,用于探 索可行性,借助于該原型來準(zhǔn)確的確定需求,然后在此基礎(chǔ)上繼續(xù)開發(fā),得到用 戶滿意的產(chǎn)品。該模型在克服瀑布模型缺點(diǎn)、減少需求不明確給開發(fā)工作帶來的 風(fēng)險(xiǎn)方面,有顯著的效果。 螺旋模型在演化模型的基礎(chǔ)上更進(jìn)一步,并且加入了風(fēng)險(xiǎn)分析,彌補(bǔ)了兩者的 不足。該模型開發(fā)不止一個(gè)原型,如圖2 3 所示每一次循環(huán)上升后都出現(xiàn)一個(gè)新 的原型。該模型適合于大型軟件的開發(fā),應(yīng)該說它是最為實(shí)際的方法。它駁收了 軟件工程“演化”的概念,使得開發(fā)人員和客戶對(duì)每個(gè)演化層出現(xiàn)的風(fēng)險(xiǎn)有所了 解,繼而做出應(yīng)有的反應(yīng)。針對(duì)所開發(fā)系統(tǒng)的特點(diǎn),作者在工作中采用的就是這 種開發(fā)模型。 封定讓盈【 簇囂,一 綴 修蓊奏 髀檬黠 o 竺! 蘭w 警要i , l 驗(yàn)收l 測(cè)通寶施王程 歲擎囂 盔莊迸估 圖2 3 軟件生存期螺旋模型 蘭三至墨塹莖莖矍墨量堇查 ! 瀑布模型的另一個(gè)不足在于它難于支持面向?qū)ο蟮拈_發(fā)方法,噴泉模型的提 出彌補(bǔ)了這一缺點(diǎn)?!皣娙币辉~體現(xiàn)了迭代和無間隙特性,該模型的系統(tǒng)某個(gè)部 分常常重復(fù)工作多次,相關(guān)功能在每次迭代中隨之加入演進(jìn)的系統(tǒng)。無間隙指在 開發(fā)活動(dòng),即分析、設(shè)計(jì)和編碼之間不存在明顯的邊界。 智能模型綜合了上述若干模型,并把專家系統(tǒng)結(jié)合在一起。該模型應(yīng)用基于 規(guī)則的系統(tǒng),采用歸約和推理機(jī)制,幫助軟件人員開發(fā)工作,并使維護(hù)在系統(tǒng)規(guī) 格說明一級(jí)進(jìn)行。為此建立了知識(shí)庫,將模型、軟件工程知識(shí)與特定領(lǐng)域的知識(shí) 分別存入數(shù)據(jù)庫。以軟件工程知識(shí)為基礎(chǔ)的生成規(guī)則構(gòu)成的專家系統(tǒng)與含有應(yīng)用 領(lǐng)域知識(shí)規(guī)則的其它專家系統(tǒng)相結(jié)合,構(gòu)成了這一應(yīng)用領(lǐng)域軟件的開發(fā)系統(tǒng)。這 是比較理想的開發(fā)模型,它可以使開發(fā)過程更加規(guī)范,更有利于軟件業(yè)的發(fā)展。 我國的軟件業(yè)之所以較印度、美國等國家落后,就是由于軟件開發(fā)中很不規(guī)范。 沒有一定的管理方式,全憑程序員的編程技巧,程序如何全在個(gè)人的一念之間。 二、 軟件需求分析與設(shè)計(jì)f 3 】 4 j 軟件需求分析工作把軟件功能和性能的總體概念描述為具體的軟件需求規(guī)格 說明,從而奠定軟件開發(fā)的基礎(chǔ)。該過程主要完成的是“做什么”的問題。用戶 提出對(duì)軟件功能和性能的初步要求,軟件分析人員則要認(rèn)真了解用戶的要求細(xì) 致地進(jìn)行調(diào)查分析,并澄清一些模糊概念,最后轉(zhuǎn)化成一個(gè)完全的、精細(xì)的軟件 邏輯模型并寫出軟件的需求規(guī)格說明,準(zhǔn)確地表達(dá)用戶的要求,這是軟件設(shè)計(jì)階 段的基礎(chǔ)。 軟件需求分析的任務(wù)就是借助于當(dāng)前系統(tǒng)的邏輯模型導(dǎo)出目標(biāo)系統(tǒng)的邏輯模 型。其實(shí)現(xiàn)步驟可由圖2 4 來表示。該過程中,通過對(duì)當(dāng)前系統(tǒng)即已有的計(jì)算機(jī) 上運(yùn)行的數(shù)據(jù)處理系統(tǒng)或者一個(gè)人工的數(shù)據(jù)處理過程的了解,模型化得到它的物 理模型。再對(duì)物理模型抽象化得到其邏輯模型。接下來分析目標(biāo)系統(tǒng)與當(dāng)前系統(tǒng) 邏輯上的差別,從而導(dǎo)出目標(biāo)系統(tǒng)的邏輯模型。為了對(duì)目標(biāo)系統(tǒng)做完整的描述, 還要對(duì)得到的模型做些補(bǔ)充,如用戶界面等。 竺籪蓄| | ; 吖邏輯模型卜 尋需l 竺生剖蓁 i表】 圖2 , 4 參考當(dāng)前系統(tǒng)建立目標(biāo)系統(tǒng)模型 4 研究生學(xué)位管理信息系統(tǒng)開發(fā) 需求分析包括以下四個(gè)方面的工作。 首先是問題的識(shí)別,它要完成的工作是確定目標(biāo)系統(tǒng)的綜合要求,也就是需 求。如功能( 最主要的) 、性能、環(huán)境、可靠性、安全性、用戶界面、資源使用、 開發(fā)進(jìn)度等方面的需求。 第二個(gè)方面是問題的分析和方案的綜合,該工作從信息流和信息結(jié)構(gòu)出發(fā), 逐步細(xì)化所有的軟件功能,找出系統(tǒng)各元素之間的聯(lián)系、接口特性和設(shè)計(jì)上的約 束,分析它們是否滿足功能要求、是否合理。最終綜合成系統(tǒng)的解決方案,給出 目標(biāo)系統(tǒng)的詳細(xì)邏輯模型。常用的分析方法有面向數(shù)據(jù)流的結(jié)構(gòu)化分析方法、面 向數(shù)據(jù)結(jié)構(gòu)的j a c k s o n 方法、結(jié)構(gòu)化數(shù)據(jù)系統(tǒng)開發(fā)方法、面向?qū)ο蟮姆治龇椒ǖ龋?對(duì)于要求時(shí)序的高度類軟件,還可使用狀態(tài)遷移圖,p e t r i 網(wǎng)等。 另外兩個(gè)方面的工作分別是編制需求分析階段的文檔和需求分析評(píng)審。這兩 個(gè)方面的工作容易理解,就不再多說了。但這決不是說它們不重要。 三、 軟件設(shè)計(jì) 3 】【4 】 軟件設(shè)計(jì)是一個(gè)把軟件需求變成軟件表示的過程,它要實(shí)現(xiàn)軟件的需求,解 決“怎么做”的問題。軟件設(shè)計(jì)可以分為兩步。首先是概要設(shè)計(jì),將軟件需求轉(zhuǎn) 化為數(shù)據(jù)結(jié)構(gòu)和軟件的系統(tǒng)結(jié)構(gòu)。然后是詳細(xì)設(shè)計(jì),通過對(duì)結(jié)構(gòu)表示進(jìn)行細(xì)化, 得到軟件詳細(xì)的數(shù)據(jù)結(jié)構(gòu)和算法。 程序結(jié)構(gòu)表明了程序各個(gè)部件的組織情況,是軟件的過程表示。程序結(jié)構(gòu)通 常是樹狀結(jié)構(gòu)或網(wǎng)狀結(jié)構(gòu)。網(wǎng)狀結(jié)構(gòu)由于模塊間相互關(guān)系的任意性,處理起來引 起許多麻煩,故現(xiàn)在一般都采用樹狀結(jié)構(gòu)。樹狀結(jié)構(gòu)由位于頂層的主模塊和與其 相連的若干下屬模塊組成,而每個(gè)下屬模塊又可以有若干個(gè)更下一層的下屬模塊, 如圖2 5 所示。該結(jié)構(gòu)的特點(diǎn)是整個(gè)結(jié)構(gòu)只有一個(gè)頂層模塊而任何一個(gè)下屬模塊 都只有一個(gè)上級(jí)模塊,且同一層模塊之間不發(fā)生聯(lián)系。 0 層 1 層 2 層 3 層 圖2 5 程序樹狀結(jié)構(gòu)圖 在模塊設(shè)計(jì)中應(yīng)盡量提高模塊的獨(dú)立性。模塊的獨(dú)立性是指每個(gè)模塊只涉及 壅卣 第二章系統(tǒng)開發(fā)背景與技術(shù) 軟件要求的具體子功能,而與其它模塊只存在簡單的接口。獨(dú)立性可以通過模塊 間的耦合性和模塊的內(nèi)聚性來度量。 耦合性是各個(gè)模塊間相互關(guān)聯(lián)的度量。它取決于各模塊之間接口的復(fù)雜程度、 調(diào)用模塊的方式以及哪些信息通過接口等。耦合性有七種類型,如圖2 6 所示。原 則上講,模塊化設(shè)計(jì)的最終目標(biāo)是希望建立模塊間耦合盡可能松散的系統(tǒng)。 低一耦合性+高 強(qiáng)魯一獨(dú)立性弱 圖2 6 模塊問耦臺(tái)性類型 內(nèi)聚程度高的模塊應(yīng)該只完成單一的任務(wù),而不與其它部分的過程發(fā)生聯(lián)系。 內(nèi)聚性也有七種類型,它與模塊獨(dú)立性的關(guān)系如圖2 7 所示。 低一內(nèi)聚性高 強(qiáng)i 一獨(dú)立性 功能單一 一弱 功能丹散 圖2 7 模塊的內(nèi)聚性類型 內(nèi)聚性和耦合性是相互關(guān)聯(lián)的。一般說來,模塊的內(nèi)聚程度越高,模塊間的耦 合程度就越低。軟件概要設(shè)計(jì)的目標(biāo)是力求增加模塊的內(nèi)聚性,盡量減少模塊間 的耦臺(tái)性,但增加內(nèi)聚性比減少耦合性更重要,應(yīng)當(dāng)把更多的注意力集中到提高 模塊的內(nèi)聚程度上來。 軟件設(shè)計(jì)方法可以分為三大類:面向數(shù)據(jù)流的設(shè)計(jì)、面向數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)和面 向?qū)ο蟮脑O(shè)計(jì)。前兩者都是結(jié)構(gòu)化的設(shè)計(jì)方法。 結(jié)構(gòu)化分析和設(shè)計(jì)方法按照功能分解的原則,根據(jù)軟件內(nèi)部數(shù)據(jù)傳遞、變換 的關(guān)系,自頂向下逐層分解,直到找到滿足功能要求的所有可實(shí)現(xiàn)的軟件為止。 該方法中運(yùn)用的工具有:數(shù)據(jù)流圖、數(shù)據(jù)詞典、結(jié)構(gòu)化英語、判定表與判定樹。 其中數(shù)據(jù)流圖用以表達(dá)系統(tǒng)內(nèi)數(shù)據(jù)的運(yùn)動(dòng)情況;數(shù)據(jù)詞典用以定義系統(tǒng)中的數(shù)據(jù); 結(jié)構(gòu)化英語、判定表與判定樹都用于描述數(shù)據(jù)加工。 四、數(shù)據(jù)庫表結(jié)構(gòu)設(shè)計(jì) 5 】 1 6 研究生學(xué)位管理信息系統(tǒng)開發(fā) 在數(shù)據(jù)庫系統(tǒng)工程中,必須滿足的一個(gè)性質(zhì)是數(shù)據(jù)完整性,即要求數(shù)據(jù)庫中 信息完整齊備。有了完備的信息之后,需要按一定的原則對(duì)數(shù)據(jù)的結(jié)構(gòu)進(jìn)行規(guī)范 化的重新組織,以達(dá)到在冗余陛和靈活性等方面獲得最優(yōu)的效果。 數(shù)據(jù)組織的規(guī)范化形式是關(guān)系數(shù)據(jù)庫的創(chuàng)始人之一庫德( e f c o d d ) 首 先提出的。早在1 9 7 1 年庫德就提出了規(guī)范化理論,并在隨后一系列的論文中逐步 形成一整套數(shù)據(jù)規(guī)范化模式,這些模式已經(jīng)成為建立關(guān)系數(shù)據(jù)庫的基本范式。規(guī) 范化表達(dá)中規(guī)定在每一個(gè)基本表中必須定義一個(gè)數(shù)據(jù)元素為關(guān)鍵字,它可以唯一 地標(biāo)識(shí)出該表中其它相關(guān)的數(shù)據(jù)元素。其中,數(shù)據(jù)元素就是基本表中的字段。在 規(guī)范化理論中表是二維的,它的任意一列上,數(shù)據(jù)項(xiàng)應(yīng)屬于同一個(gè)屬性,其行和 列的順序都無關(guān)緊要的,且不允許有相同的列和所有列都相同的行出現(xiàn)。 在對(duì)表的形式進(jìn)行了規(guī)范化定義后,c o d d 還對(duì)數(shù)據(jù)結(jié)構(gòu)進(jìn)行了七種規(guī)范化定 義,并定名為規(guī)范化模式,稱為范式。在這七種范式中,一般只用前三種,對(duì)于 常用系統(tǒng)就足夠了。而且這七種范式是“向上兼容的”,即滿足第七范式的數(shù)據(jù)結(jié) 構(gòu)必滿足前六種范式,滿足第四范式的數(shù)據(jù)結(jié)構(gòu)必滿足前三種范式,依此類推。 第一范式( f i r s tn o r m a lf o r m ,簡稱l s tn f ) 就是指在同一表中沒有重復(fù)項(xiàng)出 現(xiàn),如果有則應(yīng)將重復(fù)項(xiàng)去掉。這個(gè)去掉重復(fù)項(xiàng)的過程就稱之為規(guī)范化處理。一般 按規(guī)范化建立的表都滿足l s tn f 。 第二范式( s e c o n dn o r m a lf o r m ,簡稱2 n dn f ) 指表中其它數(shù)據(jù)元素都完全依 賴于主關(guān)鍵字,或稱該數(shù)據(jù)元素唯一地被主關(guān)鍵字所標(biāo)識(shí)?;癁樵摲妒降囊?guī)則是 去掉功能上不完全依賴于主關(guān)鍵字的字段,它處理的是部分依賴關(guān)系。該規(guī)則只 用于已經(jīng)是第一范式的表,主要是處理關(guān)鍵字是兩個(gè)或多個(gè)字段的表。 第三范式( t h i r dn o r m a lf o r m ,簡稱3 r dn f ) 就是指表中的所有數(shù)據(jù)元素不但 要能夠唯一被主關(guān)鍵字所標(biāo)識(shí),而且它們之間還必須相互獨(dú)立,不存在其它的函數(shù) 關(guān)系也就是說對(duì)于一個(gè)滿足了2 n dn f 的數(shù)據(jù)結(jié)構(gòu)來說,表中有可能存在某些數(shù)據(jù) 元素依賴于其它非關(guān)鍵字?jǐn)?shù)據(jù)元素的現(xiàn)象,必須加以消除。 下面給出一個(gè)進(jìn)行規(guī)范化的例子。該例子是對(duì)一個(gè)訂單的表結(jié)構(gòu)的規(guī)范化過 程,如圖2 8 所示。圖a 中列出了訂單中涉及的全部信息,沒有規(guī)范化,所有信 息作為一張表。圖b 把出

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論