王美榮 吳煒煒
(安徽新華學(xué)院 安徽 合肥 230000)
學(xué)生公寓管理是各大學(xué)的主要日常管理工作之一,涉及到學(xué)校、院系、教師以及學(xué)生的諸多方面,隨著學(xué)生人數(shù)的不斷增加,學(xué)生的日常住宿管理工作及保存管理工作日趨繁重、復(fù)雜。迫切需要研制開發(fā)一款功能強(qiáng)大,操作簡(jiǎn)單,具有人性化的學(xué)生公寓管理系統(tǒng)[1]。UML(Unified Modeling Language)是一種通用的可視化建模語(yǔ)言,它用標(biāo)準(zhǔn)的圖形元素將模型中的信息直觀地顯示出來(lái)。實(shí)現(xiàn)用戶、軟件開發(fā)人員、系統(tǒng)分析人員、代碼測(cè)試人員、管理人員及所有涉及到該項(xiàng)目的人員之間的通信,有助于人們對(duì)系統(tǒng)的理解、設(shè)計(jì)及維護(hù)。本文結(jié)合“學(xué)生公寓管理信息系統(tǒng)”的開發(fā)需求,將UML技術(shù)引入到應(yīng)用程序開發(fā)過程中。
UML (Unified Modeling Language,統(tǒng)一建模語(yǔ)言)是一種面向?qū)ο蟮慕UZ(yǔ)言,是在軟件工程領(lǐng)域內(nèi)近年來(lái)所取得的成果之一,它對(duì)軟件工程的發(fā)展具有重大意義,具有非常重要作用。它基于面向?qū)ο蟮姆治雠c設(shè)計(jì)方法,提供了概念和圖形表示法用以描述軟件的系統(tǒng)模型,同時(shí)由于它采用的是面向?qū)ο蟮募夹g(shù)和方法,因此能夠?qū)⒚嫦驅(qū)ο蟮母拍顪?zhǔn)確方便地進(jìn)行表達(dá),能夠?qū)⒚嫦驅(qū)ο蟮姆治雠c設(shè)計(jì)風(fēng)格體現(xiàn)出來(lái)。UML將一系列最佳的工程實(shí)踐展示給用戶,在針對(duì)大規(guī)模的,復(fù)雜的系統(tǒng)進(jìn)行建模方面,尤其是在軟件架構(gòu)層次的設(shè)計(jì)上,這些最佳實(shí)踐已經(jīng)被證明其有效性。UML被OMG組織(Object Management Group,對(duì)象管理組織)認(rèn)為最適用于對(duì)象建模,業(yè)務(wù)建模,數(shù)據(jù)建模以及組件建模等領(lǐng)域,被采納作為業(yè)界的標(biāo)準(zhǔn)。
UML由圖和元模型組成,元模型是語(yǔ)義,而圖則是語(yǔ)法。UML主要包括三個(gè)基本構(gòu)造模塊:事物(Things)、關(guān)系(Relationships)和圖(Diagrams)。
在用UML語(yǔ)言建造系統(tǒng)模型時(shí),并不只是建造一個(gè)模型。而是在系統(tǒng)開發(fā)的每一個(gè)階段都需要建造不同的模型,而且建造這些模型的具體目的也是不同的。在需求分析階段所建造的模型是用來(lái)捕獲系統(tǒng)的需求,描繪和真實(shí)世界相對(duì)應(yīng)的基本類以及協(xié)作關(guān)系。在設(shè)計(jì)階段所建造的模型則是分析模型的擴(kuò)充,是為了實(shí)現(xiàn)結(jié)點(diǎn)并做技術(shù)上具有指導(dǎo)性的解決方案。在實(shí)現(xiàn)階段所建造的模型則就是真正的源代碼,源代碼經(jīng)編譯后就生成了程序。在最后階段建造的是部署模型,它則是在物理架構(gòu)上進(jìn)行解釋說明系統(tǒng)是如何部署的[2]。
學(xué)生公寓管理系統(tǒng)是針對(duì)學(xué)校宿管人員大量業(yè)務(wù)處理工作而開發(fā)的管理軟件,它能夠?yàn)楣芾碚咛峁┏渥愕男畔⒑涂旖莸牟樵兪侄?。通過該系統(tǒng),管理員可以對(duì)所有住校學(xué)生進(jìn)行總體的規(guī)劃和科學(xué)的統(tǒng)籌規(guī)劃,另外人事處的管理用戶還可以對(duì)這些基本信息進(jìn)行更新和刪除,學(xué)生公寓管理系統(tǒng)力求給用戶方便快捷的途徑去管理這些繁瑣的數(shù)據(jù)。
公寓信息管理系統(tǒng)主要是對(duì)全校的學(xué)生公寓信息進(jìn)行維護(hù)和管理。通過分析可知該系統(tǒng)中包括學(xué)生基本信息管理,來(lái)訪人員管理,宿舍報(bào)修管理,學(xué)生入住、夜歸、離校管理,公寓樓信息管理,公寓管理員信息管理,公寓衛(wèi)生評(píng)比信息管理等并能夠?qū)⑺栊畔?dǎo)出Excel表格并直接打印。
圖1 系統(tǒng)用例圖
圖2 系統(tǒng)管理員用例圖
通過對(duì)學(xué)生公寓管理系統(tǒng)的使用情況進(jìn)行分析,可以總結(jié)出該系統(tǒng)的主要用戶有系統(tǒng)管理員、宿管中心、公寓管理員、輔導(dǎo)員以及學(xué)生等。系統(tǒng)管理員對(duì)系統(tǒng)的用戶和權(quán)限進(jìn)行負(fù)責(zé),包括系統(tǒng)用戶的添加、刪除以及對(duì)用戶權(quán)限的分配;對(duì)后臺(tái)的數(shù)據(jù)庫(kù)進(jìn)行管理,包括對(duì)數(shù)據(jù)庫(kù)的備份和恢復(fù)。宿管中心主要是對(duì)所有的公寓樓、公寓樓中的學(xué)生以及公寓輔導(dǎo)員進(jìn)行整體的管理,包括對(duì)公寓樓中資產(chǎn)的管理、學(xué)生信息的管理以及公寓輔導(dǎo)員的管理。公寓輔導(dǎo)員主要是對(duì)其管理的那棟公寓樓以及公寓樓里的學(xué)生進(jìn)行全面的管理,包括學(xué)生信息的管理、樓內(nèi)資產(chǎn)的管理、各宿舍衛(wèi)生的管理、學(xué)生違紀(jì)情況的管理、來(lái)訪人員的管理等。而輔導(dǎo)員則是針對(duì)自己所帶的學(xué)生進(jìn)行各方面的管理,包括學(xué)生違紀(jì)情況的管理以及所帶學(xué)生宿舍衛(wèi)生情況的管理等。作為學(xué)生用戶主要是參與了例如衛(wèi)生評(píng)比、物品報(bào)修、大件物品出入登記等。其用例圖如圖1,圖2所示。
圖3 新生入住活動(dòng)圖
類圖用來(lái)描述系統(tǒng)中類以及類與類之間的關(guān)系,它是對(duì)系統(tǒng)靜態(tài)結(jié)構(gòu)的描述。類用來(lái)表示系統(tǒng)中需要處理的事物。系統(tǒng)的用例圖建好后,需要對(duì)系統(tǒng)的用途及任務(wù)作進(jìn)一步的分析和分解,正確認(rèn)識(shí)其中的事物以及它們之間的關(guān)系,分析出系統(tǒng)中所涉及的類及其對(duì)象,抽象出它們所具有的屬性、主要操作以及它們之間的關(guān)系。針對(duì)上述對(duì)系統(tǒng)的分析,可以總結(jié)出系統(tǒng)具有系統(tǒng)管理員、宿管中心、公寓輔導(dǎo)員、輔導(dǎo)員和學(xué)生等用戶類,除學(xué)生類以外均為管理員,與管理員類之間存在著繼承的關(guān)系。另外還需要有公寓類用來(lái)描述公寓的基本信息,公寓學(xué)生類用于描述宿舍內(nèi)學(xué)生入住的基本情況,物品維修類用于描述公寓物品維修的基本情況,公寓衛(wèi)生類描述寢室的衛(wèi)生情況,學(xué)生違紀(jì)類描述學(xué)生的違紀(jì)情況,大件物品出入類描述學(xué)生攜帶大件物品進(jìn)出的情況,來(lái)訪人員類對(duì)來(lái)訪的人員進(jìn)行記錄等。
在完成上述靜態(tài)模型以后,本系統(tǒng)的各個(gè)功能模塊已基本確定。根據(jù)在實(shí)際使用中的需要,我們對(duì)得到的用例進(jìn)一步細(xì)化,來(lái)確定其中的實(shí)現(xiàn)細(xì)節(jié)。活動(dòng)圖是UML對(duì)于系統(tǒng)的動(dòng)態(tài)活動(dòng)進(jìn)行建模的一種工具,它主要描述系統(tǒng)為完成某項(xiàng)功能而執(zhí)行的操作序列,這些操作序列可以并發(fā)和同步。活動(dòng)圖本質(zhì)上是一種流程圖,它著重表現(xiàn)了從一個(gè)活動(dòng)到另一個(gè)活動(dòng)的控制流,是內(nèi)部處理驅(qū)動(dòng)的流程。它們都是對(duì)系統(tǒng)動(dòng)態(tài)的描述。下面,我們將使用活動(dòng)圖對(duì)典型用例進(jìn)一步細(xì)化。
例如:當(dāng)有新生報(bào)到時(shí),需要辦理入住手續(xù)。首先錄入新生的基本信息,然后讓學(xué)生選擇希望入住的房間類型,例如是四人間或是六人間或是八人間,然后根據(jù)學(xué)生選擇的房間類型以及學(xué)生的性別查詢相應(yīng)的房間中是否還有可以入住的床位,如果沒有,則要求學(xué)生換一種房間類型進(jìn)行選擇,然后再次進(jìn)行查詢,直到找到有相應(yīng)空閑的床位為止。在找到空閑的床位以后,對(duì)學(xué)生進(jìn)行床位的分配并進(jìn)行登記,然后查詢?cè)摯参坏氖召M(fèi)標(biāo)準(zhǔn)。在告知學(xué)生收費(fèi)標(biāo)準(zhǔn)以后判斷該學(xué)生是否繳費(fèi),若繳費(fèi)則辦理繳費(fèi)手續(xù)并進(jìn)行記錄,如因某些特殊原因暫時(shí)不能交費(fèi)也要進(jìn)行相應(yīng)的欠費(fèi)記錄以備查詢。在以上的信息都登記好以后,就可以將該學(xué)生的信息加入數(shù)據(jù)庫(kù)了。為了保險(xiǎn),會(huì)判斷數(shù)據(jù)添加是否成功。不論是否成功,都應(yīng)給出相應(yīng)的提示信息,操作人員根據(jù)提示信息進(jìn)行下一步的工作。圖3所示即為該活動(dòng)的示意圖。
該系統(tǒng)基于windows 2003 Server操作系統(tǒng),用SQL Server 2005實(shí)現(xiàn)后臺(tái)數(shù)據(jù)庫(kù)的開發(fā)和管理,以可視化程序設(shè)計(jì)語(yǔ)言ASP.NET做為軟件開發(fā)工具,采用C/S和B/S相結(jié)合的混合構(gòu)架,運(yùn)用UML作為需求分析的工具進(jìn)行設(shè)計(jì)和開發(fā),界面友好,功能完善,達(dá)到了最初設(shè)計(jì)的要求。
本文以學(xué)生公寓信息管理系統(tǒng)為背景,利用UML的建模工具對(duì)其進(jìn)行了面向?qū)ο蟮慕TO(shè)計(jì),建立了系統(tǒng)的用例模型,靜態(tài)模型以及動(dòng)態(tài)模型等。對(duì)UML的建模過程進(jìn)行了探討,提高了系統(tǒng)的開發(fā)效率。
[1]顧添瑜.高校公寓管理[J].價(jià)值工程,2011(21).
[2]何曉蓉.軟件工程與UML案例解析[M].中國(guó)鐵道出版社,2010:65-81.
[3]方玉華.基于UML的教務(wù)管理系統(tǒng)分析與設(shè)計(jì)[J].計(jì)算機(jī)時(shí)代,2010(05):51-53.