国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于UML和.NET的高職院校新生報(bào)到系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)

2009-08-27 09:27李躍田
軟件工程 2009年8期
關(guān)鍵詞:高職

李躍田

摘要:基于UML和.NET的高職院校新生報(bào)到系統(tǒng),運(yùn)用先進(jìn)的OOD和OOA軟件編程思想和方法,使用先進(jìn)的UML和.NET開(kāi)發(fā)工具,解決了高職院校存在的新生報(bào)到中的問(wèn)題,簡(jiǎn)化了工作程序,提高了工作效率。

關(guān)鍵詞:UML;.NET;高職;報(bào)到

1 引言

隨著全國(guó)高校網(wǎng)上錄取系統(tǒng)的使用,各高校開(kāi)始使用信息管理系統(tǒng)來(lái)管理學(xué)生的報(bào)到。但高職院校有著自己的特點(diǎn),一是招生的層次比較多,有普通高職、對(duì)口高職、三二轉(zhuǎn)段、五年一貫制、普通中專(zhuān)、職業(yè)中專(zhuān)等;二是錄取數(shù)據(jù)來(lái)源不統(tǒng)一,有通過(guò)全國(guó)普通高校網(wǎng)上錄取系統(tǒng)錄取的,也有通過(guò)省招生辦辦理的,還有通過(guò)市招生錄取和自主錄取的;三是退檔、補(bǔ)錄和轉(zhuǎn)專(zhuān)業(yè)等特殊要求,由于高職院校的報(bào)到率普遍不高,所以要組織所有未報(bào)到的學(xué)生退檔,然后補(bǔ)錄新的學(xué)生,學(xué)生還可以在報(bào)到時(shí)臨時(shí)再調(diào)整專(zhuān)業(yè),這些數(shù)據(jù)都非常重要不能有一點(diǎn)錯(cuò)誤。數(shù)據(jù)及過(guò)程復(fù)雜性增加了工作的難度,嚴(yán)重影響了工作效率,而錯(cuò)誤還是很難避免。

面向?qū)ο蟮脑O(shè)計(jì)方法(OOD)具有封裝性、繼承性和多態(tài)性等特點(diǎn),在各個(gè)領(lǐng)域的應(yīng)用系統(tǒng)軟件開(kāi)發(fā)過(guò)程中都取得了良好的應(yīng)用效果,因此也逐漸成為軟件開(kāi)發(fā)的主流方法。統(tǒng)一建模語(yǔ)言(UML)為面向?qū)ο蟮能浖_(kāi)發(fā)提供了一個(gè)豐富的、統(tǒng)一的平臺(tái),并且已經(jīng)成為當(dāng)今建模語(yǔ)言的主流標(biāo)準(zhǔn)。

由于要求的復(fù)雜性,現(xiàn)在市場(chǎng)上各種管理軟件不能滿(mǎn)足我們實(shí)際的需要,為了解決實(shí)際工作中存在的問(wèn)題,我院組織計(jì)算機(jī)專(zhuān)業(yè)力量,運(yùn)用面向?qū)ο蟮脑O(shè)計(jì)思想,基于UML和.NET平臺(tái)的C#設(shè)計(jì)實(shí)現(xiàn)了B/S結(jié)構(gòu)的新生報(bào)到系統(tǒng)。

2 需求分析

新生報(bào)到過(guò)程中,主要涉及招生就業(yè)處和財(cái)務(wù)處兩個(gè)部門(mén)參與數(shù)據(jù)的修改,教務(wù)處及各系部主要是數(shù)據(jù)的查詢(xún)。報(bào)到數(shù)據(jù)來(lái)源是這樣的:普通高職和對(duì)口高職來(lái)源于全國(guó)普通高校網(wǎng)上錄取系統(tǒng),五年一貫制專(zhuān)科、三二轉(zhuǎn)段、普通中專(zhuān)和職業(yè)中專(zhuān)數(shù)據(jù)來(lái)源于各級(jí)招生主管部門(mén)。我們事先把這些數(shù)據(jù)導(dǎo)入到系統(tǒng)中。系統(tǒng)要完成的功能包括:用戶(hù)管理、組織新生報(bào)到管理、交費(fèi)管理、各種統(tǒng)計(jì)等主要模塊。其流程圖如圖1所示。

3 UML建模

面向?qū)ο蟮慕y(tǒng)一建模語(yǔ)言UML提供了從不同的角度去觀(guān)察和展示系統(tǒng)各種特征的標(biāo)準(zhǔn)方法,在UML中,從任何一個(gè)角度對(duì)系統(tǒng)所做的抽象都可以用用例圖、類(lèi)圖、對(duì)象圖、狀態(tài)圖、時(shí)序圖等模型圖來(lái)描述,而這些來(lái)自不同角度的模型圖最終組成了系統(tǒng)的完整模型。

3.1用例分析

用例是系統(tǒng)參與者與系統(tǒng)在交互過(guò)程中所需要完成的事物,識(shí)別用例最好的方法就是從系統(tǒng)的參與者開(kāi)始,考慮每個(gè)參與者是如何使用系統(tǒng)的。參與者通過(guò)向系統(tǒng)輸入或請(qǐng)求系統(tǒng)輸出某些事件來(lái)觸發(fā)系統(tǒng)的執(zhí)行。參與者由參與用例時(shí)所擔(dān)當(dāng)?shù)慕巧珌?lái)表示。每個(gè)參與者可以參與一個(gè)或多個(gè)實(shí)例。它通過(guò)交換信息與用例發(fā)生交互。參與者有三大類(lèi):系統(tǒng)用戶(hù)、與所建造的系統(tǒng)交互的其他系統(tǒng)、一些可以運(yùn)行的進(jìn)程。這里我們只考慮系統(tǒng)用戶(hù)。

經(jīng)過(guò)分析、與招生工作人員和財(cái)務(wù)工作人員交談、填寫(xiě)各種調(diào)查表并把這些原始材料加以抽象,抽象出四種系統(tǒng)用戶(hù):系統(tǒng)管理員、招生工作人員、財(cái)務(wù)工作人員、學(xué)院(系)用戶(hù)和普通人員(瀏覽者)。以招生用戶(hù)為例,用例圖如圖2所示。

3.2靜態(tài)結(jié)構(gòu)分析

在分析了系統(tǒng)的用例后,需要對(duì)系統(tǒng)進(jìn)一步地分析,以便發(fā)現(xiàn)其中的類(lèi)或?qū)ο?并初步確定類(lèi)的屬性和操作,以及類(lèi)之間的關(guān)系。即分析系統(tǒng)的靜態(tài)結(jié)構(gòu)。

根據(jù)以前的需求分析,有不同的用戶(hù)對(duì)軟件系統(tǒng)進(jìn)行操作,所以用戶(hù)及操作的內(nèi)容都稱(chēng)為對(duì)象,根據(jù)分析發(fā)現(xiàn)共有17個(gè)對(duì)象:用戶(hù)、學(xué)生報(bào)名表、報(bào)到通知單、報(bào)到名單、未報(bào)到名單、錄取名單、未錄取名單、招生計(jì)劃表、錄取統(tǒng)計(jì)表、未錄取統(tǒng)計(jì)表、報(bào)到統(tǒng)計(jì)表、未報(bào)到統(tǒng)計(jì)表、收費(fèi)標(biāo)準(zhǔn)表、收據(jù)、欠費(fèi)學(xué)生名單、欠費(fèi)統(tǒng)計(jì)表。

根據(jù)抽象出的對(duì)象,建立類(lèi)圖,用戶(hù)類(lèi)圖與消息類(lèi)圖,以招生用戶(hù)為例,如圖3所示。

3.3對(duì)象之間的交互分析

在描述對(duì)象之間的交互時(shí),可以使用時(shí)序圖或協(xié)作圖,這里我們重點(diǎn)分析對(duì)象間消息傳遞的時(shí)間順序,即使用時(shí)序圖。每個(gè)用例都可以建立一個(gè)時(shí)序圖,將用例執(zhí)行中各個(gè)參與的對(duì)象之間的消息傳遞過(guò)程表現(xiàn)出來(lái)。由于本系統(tǒng)中用例很多,時(shí)序圖也很多,以招生工作人員接受統(tǒng)招學(xué)生報(bào)到時(shí)序圖為例,如圖4所示。

4 概要設(shè)計(jì)

在軟件需求分析階段,已經(jīng)分析出該系統(tǒng)“做什么”的問(wèn)題,并把這些需求通過(guò)通過(guò)各種視圖以及規(guī)格說(shuō)明書(shū)描述了出來(lái),這也是目標(biāo)系統(tǒng)的邏輯模型。進(jìn)入設(shè)計(jì)階段,就要把軟件“做什么”的邏輯模型變換為“怎么做”的物理模型,即著手實(shí)現(xiàn)軟件的需求,并將設(shè)計(jì)的結(jié)果反映在“設(shè)計(jì)規(guī)格說(shuō)明書(shū)”文檔中,所以軟件設(shè)計(jì)是一個(gè)把軟件需求轉(zhuǎn)換為軟件表示的過(guò)程,最初這種表示只是描述了軟件總的體系結(jié)構(gòu),稱(chēng)為軟件概要設(shè)計(jì)或結(jié)構(gòu)設(shè)計(jì)。

4.1概要設(shè)計(jì)的原則

(1)單一職責(zé)原則。即:類(lèi)的職責(zé)簡(jiǎn)單而且集中,避免相同的職責(zé)分散到不同的類(lèi)之中,避免一個(gè)類(lèi)承擔(dān)過(guò)多的職責(zé);減少類(lèi)之間的耦合;當(dāng)需求變化時(shí),只修改一個(gè)地方。

(2)開(kāi)放封閉原則。軟件實(shí)體(類(lèi),模塊,函數(shù))應(yīng)該是可以擴(kuò)展的,但是不可修改的,模塊可以操作一個(gè)抽象體。由于模塊依賴(lài)于一個(gè)固定的抽象體,因此它可以是不允許修改的;同時(shí),通過(guò)從這個(gè)抽象體派生,也可擴(kuò)展此模塊的行為功能。

(3)合成/聚合復(fù)用原則(CARP)。盡量使用合成/聚合、盡量不使用繼承。即在一個(gè)新的對(duì)象里面使用一些已有的對(duì)象,使之成為新對(duì)象的一部分,新的對(duì)象通過(guò)向這些對(duì)象委派達(dá)到復(fù)用已有功能的目的。這樣做的好處是:新對(duì)象存取成分對(duì)象的惟一方法是通過(guò)成分對(duì)象的接口;復(fù)用是黑箱復(fù)用,支持包裝,所需的依賴(lài)較少,每一個(gè)新的類(lèi)可以將焦點(diǎn)集中在一個(gè)任務(wù)上,可以在運(yùn)行時(shí)間內(nèi)動(dòng)態(tài)進(jìn)行,新對(duì)象可以動(dòng)態(tài)地引用與成分對(duì)象類(lèi)型相同的對(duì)象。只是通過(guò)使用這種復(fù)用建造的系統(tǒng)會(huì)有較多的對(duì)象需要管理。

4.2數(shù)據(jù)庫(kù)設(shè)計(jì)

根據(jù)C#語(yǔ)言特點(diǎn),我們對(duì)需求分析中的類(lèi)進(jìn)行了必要的調(diào)整。調(diào)整后的類(lèi)圖如圖5所示。

5 詳細(xì)設(shè)計(jì)

詳細(xì)設(shè)計(jì)階段以概要設(shè)計(jì)文檔為依據(jù),確定怎樣具體地實(shí)現(xiàn)所要求的系統(tǒng),得出對(duì)目標(biāo)系統(tǒng)的精確描述,包括每個(gè)模塊的數(shù)據(jù)結(jié)構(gòu)和算法,確定模塊的細(xì)節(jié):外部接口、內(nèi)部接口、輸入輸出和局部數(shù)據(jù)。為模塊內(nèi)的數(shù)據(jù)結(jié)構(gòu)進(jìn)行設(shè)計(jì)。對(duì)于需求分析、概要設(shè)計(jì)確定的概念性的數(shù)據(jù)類(lèi)型進(jìn)行確切的定義,對(duì)數(shù)據(jù)結(jié)構(gòu)進(jìn)行物理設(shè)計(jì),即確定數(shù)據(jù)庫(kù)的物理結(jié)構(gòu)。為了提高數(shù)據(jù)的輸入、分類(lèi)、存儲(chǔ)、檢索等操作,節(jié)約內(nèi)存空間,對(duì)數(shù)據(jù)庫(kù)中的某些數(shù)據(jù)項(xiàng)的值要進(jìn)行代碼設(shè)計(jì)。網(wǎng)站總體設(shè)計(jì)如圖6所示,并針對(duì)每個(gè)面頁(yè)書(shū)寫(xiě)其中包含的頁(yè)面元素(表單,表格、圖像),詳細(xì)代碼部分在此不再贅述。

6 結(jié)束語(yǔ)

由于本軟件的構(gòu)建應(yīng)用了OO思想,軟件為三層結(jié)構(gòu),層與層之間功能劃分清楚,層內(nèi)類(lèi)與類(lèi)的依賴(lài)程度很低,修改很容易,在使用過(guò)程中很好的滿(mǎn)足了用戶(hù)的要求,得到用戶(hù)的好評(píng)。

參考文獻(xiàn)

[1] CRAIG L.UML和模式應(yīng)用(第三版)[M].李洋,鄭龔,譯.北京:機(jī)械工業(yè)出版社,2006.

[2] 邵維忠,楊芙清.面向?qū)ο蟮南到y(tǒng)設(shè)計(jì)[M].北京:清華大學(xué)出版社,2004.

[3] 王凱明.創(chuàng)建基于.NET的通用數(shù)據(jù)庫(kù)訪(fǎng)問(wèn)層[J].電腦編程技巧與維護(hù),2003,10:60-64.

[4] 劉懷亮,相洪貴.軟件質(zhì)量保證與測(cè)試[M].北京:冶金工業(yè)出版社,2007.

猜你喜歡
高職
高職應(yīng)用文寫(xiě)作教學(xué)改革與創(chuàng)新
高職大學(xué)生孝文化教育淺探
高職人才培養(yǎng)模式創(chuàng)新探討
誰(shuí)
關(guān)于提高高職人才培養(yǎng)質(zhì)量的思考
關(guān)于中職與高職銜接