穆艷旭
摘要:系統(tǒng)概要設(shè)計是建立在需求分析基礎(chǔ)上的一種系統(tǒng)邏輯模型的設(shè)計,是軟件設(shè)計過程中一個很重要的步驟。本文主要分析綜合教務(wù)管理系統(tǒng)的整體框架。給出該系統(tǒng)的總體結(jié)構(gòu)圖及各子模塊結(jié)構(gòu)圖進(jìn)行數(shù)據(jù)庫的概要設(shè)計。在數(shù)據(jù)庫設(shè)計好之后,對功能模塊進(jìn)行編碼實現(xiàn)。
關(guān)鍵詞:教務(wù)管理 數(shù)據(jù)庫 系統(tǒng)設(shè)計與實現(xiàn)
一、總體描述
系統(tǒng)概要設(shè)計的基本目標(biāo)是確定軟件系統(tǒng)的總體框架,即對軟件系統(tǒng)進(jìn)行總體設(shè)計和規(guī)劃,其設(shè)計過程主要是針對需求分析中得到的模型進(jìn)行轉(zhuǎn)換,包括模塊的劃分、層次的建立、模塊間的接口和人機(jī)交互的界面及對數(shù)據(jù)、數(shù)據(jù)庫的相關(guān)描述。設(shè)計時要盡量做到模塊內(nèi)的高內(nèi)聚和模塊間的低耦合。
該系統(tǒng)所采用的結(jié)構(gòu)是由數(shù)據(jù)訪問層、業(yè)務(wù)邏輯層和頁面表示層構(gòu)成的三層架構(gòu),也即該系統(tǒng)體系結(jié)構(gòu),即三層。數(shù)據(jù)訪問層負(fù)責(zé)對數(shù)據(jù)庫進(jìn)行訪問操作,包括對數(shù)據(jù)進(jìn)行讀取、存儲和其他一些事務(wù)處理,位于三層設(shè)計的最下層;業(yè)務(wù)邏輯層介于數(shù)據(jù)訪問層和頁面表示層中間,在數(shù)據(jù)訪問層和頁面表示層的數(shù)據(jù)交換中起到橋梁和承前啟后的作用,在三層設(shè)計中扮演著很重要的角色;頁面表示層位于三層架構(gòu)的最上層,是和用戶進(jìn)行交互的一個層面,負(fù)責(zé)接收用戶發(fā)出的請求并返回相應(yīng)的數(shù)據(jù)信息。
二、體系結(jié)構(gòu)
綜合教務(wù)管理系統(tǒng)由Web作為后臺服務(wù)管理平臺,實現(xiàn)對系統(tǒng)統(tǒng)一管理,業(yè)務(wù)邏輯層采取Web集中管理運(yùn)行,從而實現(xiàn)Web對數(shù)據(jù)的增、刪、改、查和統(tǒng)計等功能。由于客戶端分布的廣泛性,數(shù)據(jù)在后臺進(jìn)行集中處理,因此把B/S架構(gòu)作為本系統(tǒng)的首要選擇。
采用三層架構(gòu)的B/S模式。與傳統(tǒng)的C/S架構(gòu)相比,B/S模式的架構(gòu)在客戶機(jī)與服務(wù)器之間增加了一個Web服務(wù)器??蛻舳税l(fā)出的請求并不是直接與后臺數(shù)據(jù)庫服務(wù)器進(jìn)行交互,而是通過Web服務(wù)器與后臺數(shù)據(jù)庫服務(wù)器進(jìn)行交互,提升了安全性。
把系統(tǒng)的數(shù)據(jù)訪問層、業(yè)務(wù)邏輯層、頁面表示層作為系統(tǒng)三層架構(gòu)模型。
頁面表示層即展示給訪問者的頁面,負(fù)責(zé)人機(jī)對話,接收用戶數(shù)據(jù)的輸入請求,服務(wù)器端處理數(shù)據(jù)并把處理結(jié)果傳給用戶。
業(yè)務(wù)邏輯層負(fù)責(zé)接收IE送傳的請求,把信息傳遞給數(shù)據(jù)訪問層,并把處理的結(jié)果傳遞給瀏覽器。
數(shù)據(jù)訪問層通過ADO.NET技術(shù)實現(xiàn)對數(shù)據(jù)操縱,為業(yè)務(wù)邏輯層提供數(shù)據(jù)服務(wù),通過此層與數(shù)據(jù)庫進(jìn)行交互,負(fù)責(zé)處理、存儲數(shù)據(jù)。
三、總體框架結(jié)構(gòu)
綜合教務(wù)管理系統(tǒng)結(jié)構(gòu)復(fù)雜、規(guī)模龐大。主要分為教務(wù)管理子系統(tǒng)、系統(tǒng)管理子系統(tǒng)、教師子系統(tǒng)和學(xué)生子系統(tǒng)。各子系統(tǒng)下又可分為若干子模塊。
利用模塊化獨(dú)立性高和耦合性弱的原則,繼續(xù)對各個子模塊進(jìn)一步細(xì)化,按照模塊的獨(dú)立性盡量高、耦合性盡量保持弱的原則,對各個模塊進(jìn)行細(xì)化。
模塊獨(dú)立性用兩個度值來衡量即內(nèi)聚性和耦合性,它是把數(shù)據(jù)進(jìn)行模塊化,進(jìn)行高度抽象,實現(xiàn)對信息的隱蔽及實現(xiàn)數(shù)據(jù)的局部化。模塊的耦合強(qiáng)度決定各個模塊之間接口的復(fù)雜度,接口間數(shù)據(jù)耦合程度越低,進(jìn)行臨界值的選取越容易,軟件測試也就越容易,程序出錯率就能降低,后期的維護(hù)成本也越低。模塊的內(nèi)聚性是盡量保持一個模塊內(nèi)完成一件獨(dú)立的任務(wù),它是衡量模塊內(nèi)獨(dú)立性強(qiáng)弱的依據(jù)。
依據(jù)上述理論原則,對綜合教務(wù)管理系統(tǒng)各個子模塊進(jìn)行細(xì)化。
1.學(xué)生子系統(tǒng)
學(xué)生子模塊是通過對學(xué)生的登錄身份進(jìn)行驗證后,按照權(quán)限實現(xiàn)對功能的操作,按照模塊獨(dú)立性和耦合性原則,按照實現(xiàn)功能的差異,進(jìn)一步對學(xué)生子模塊進(jìn)行細(xì)化。
2.教師子系統(tǒng)
教師子模塊系統(tǒng)的使用對象是全體普通教師,按照需求分析和模塊劃分原則得到的結(jié)果,按功能進(jìn)一步對教師子模塊進(jìn)行詳細(xì)的劃分。
3.教務(wù)管理子系統(tǒng)
教務(wù)管理子系統(tǒng)是該系統(tǒng)中復(fù)雜程度最高、最難實現(xiàn)的模塊,日常教務(wù)管理和教學(xué)管理的全過程都在系統(tǒng)上實現(xiàn)。同樣,按照軟件工程思想中的模塊獨(dú)立性和耦合性的劃分原則,對教務(wù)管理子系統(tǒng)進(jìn)行模塊劃分,分為教師模塊管理、學(xué)生模塊管理、教學(xué)工作模塊管理、成績模塊管理、選課模塊管理、公共信息模塊管理六大模塊。經(jīng)過二次劃分,各個模塊并不是最優(yōu)模塊,還需要對各個子模塊進(jìn)一步細(xì)分。
4.系統(tǒng)管理子系統(tǒng)
系統(tǒng)管理子系統(tǒng)細(xì)化后的結(jié)構(gòu)如下圖所示。
四、數(shù)據(jù)庫設(shè)計
1.數(shù)據(jù)庫設(shè)計的目標(biāo)
數(shù)據(jù)庫的一大特點(diǎn)是實現(xiàn)數(shù)據(jù)的共享。要實現(xiàn)數(shù)據(jù)共享,如何很好地布局?jǐn)?shù)據(jù)庫表、數(shù)據(jù)庫索引和數(shù)據(jù)庫對象等至關(guān)重要,因此在設(shè)計數(shù)據(jù)庫時需考慮以下幾個目標(biāo)。
(1)數(shù)據(jù)庫中的數(shù)據(jù)最大程度實現(xiàn)共享。
(2)數(shù)據(jù)庫中的數(shù)據(jù)冗余度盡量低。
(3)數(shù)據(jù)庫設(shè)計要便于數(shù)據(jù)查詢。
(4)數(shù)據(jù)庫設(shè)計要保證數(shù)據(jù)的安全性和降低數(shù)據(jù)輸入有誤率,保證數(shù)據(jù)的正確性。
2.數(shù)據(jù)庫設(shè)計的原則
經(jīng)過需求分析,對數(shù)據(jù)庫進(jìn)行設(shè)計,使得數(shù)據(jù)庫設(shè)計更加合理。通常采用數(shù)據(jù)庫設(shè)計規(guī)范化理論,也即五個范式和BCD范式,對于小型信息管理應(yīng)用系統(tǒng)設(shè)計往往采用數(shù)據(jù)庫規(guī)范化的前三個范式就能夠解決問題,對于復(fù)雜的問題需要使用規(guī)范理論的后三個范式進(jìn)行數(shù)據(jù)庫設(shè)計。具體采取的原則如下。
(1)一種對象建立一個表。
(2)每個表的屬性保證是不可再分割的最小項,也就是屬性具有原子性。
(3)一個表中,屬性間不能存在完全依賴。
(4)在一個表中,屬性間不能存在傳遞依賴。
(5)表與表之間不能存在多對多的聯(lián)系,如果存在必須對關(guān)系進(jìn)行分解。
遵照上述三范式進(jìn)行數(shù)據(jù)庫設(shè)計,基本能夠滿足本系統(tǒng)的功能需求。
3.E-R圖設(shè)計
數(shù)據(jù)是信息管理系統(tǒng)的靈魂,數(shù)據(jù)如何在信息系統(tǒng)中表示,如何在數(shù)據(jù)庫中存儲,以及如何有利于數(shù)據(jù)的操作,對系統(tǒng)的總體性能和管理功能起著非常重要的作用。所以信息模型的建立決定著系統(tǒng)設(shè)計成敗,是系統(tǒng)設(shè)計的關(guān)鍵。
本系統(tǒng)后臺采用SQL Server 2008數(shù)據(jù)庫管理系統(tǒng)進(jìn)行數(shù)據(jù)庫的開發(fā),根據(jù)需求對數(shù)據(jù)進(jìn)行全面分析后,得到E-R圖,完成數(shù)據(jù)庫的概要設(shè)計。
E-R圖即為實體一關(guān)系圖,它是表示數(shù)據(jù)對象及其關(guān)系的圖形語言機(jī)制。數(shù)據(jù)對象用長方形表示,關(guān)系用菱形表示,對象具有的屬性特征用橢圓形表示。
綜合教務(wù)管理系統(tǒng)需求主要有學(xué)生選課管理、學(xué)生管理、成績管理等模塊。實體主要包括課程、學(xué)生和成績。
五、小結(jié)
本系統(tǒng)較完整地實現(xiàn)了在需求分析中所描述的各項功能,而且在設(shè)計中運(yùn)用了統(tǒng)計圖等更加友好的形式來展示給用戶,并運(yùn)用了一些新的技術(shù),這些是本設(shè)計的亮點(diǎn)。系統(tǒng)雖然實現(xiàn)了基本的功能,但還存在一些不足,如功能比較簡單,統(tǒng)計功能設(shè)計比較簡單等,有待于根據(jù)實際使用做進(jìn)一步的改善和加強(qiáng)。