摘 要:面向?qū)ο蠹夹g(shù)的出現(xiàn),UML(統(tǒng)一建模語言)的誕生,為系統(tǒng)工程化體系的表述提供了極大的便利。本文即是針對某一具體的學(xué)生選課系統(tǒng)案例,運用面向?qū)ο笤硪约癠ML中需求分析所使用的用例圖,系統(tǒng)設(shè)計中靜態(tài)圖的類圖以及動態(tài)圖的活動圖等進(jìn)行有效并合理的論述。
關(guān)鍵詞:學(xué)生選課系統(tǒng);UML;系統(tǒng)分析;系統(tǒng)設(shè)計
DOI:10.16640/j.cnki.37-1222/t.2015.23.202
1 引言
文章運用UML技術(shù)所使用的用例圖、活動圖、類圖等幾種視圖形式,形象而直觀的將學(xué)生選課系統(tǒng)各階段設(shè)計模型有效表述。利用UML 面向?qū)ο笤O(shè)計工具,實現(xiàn)的不同建模方法,真正實現(xiàn)了系統(tǒng)的可視化和文檔化。
2 系統(tǒng)分析
學(xué)生選課系統(tǒng)的具體參與人員包括系統(tǒng)管理員和學(xué)生。其所涉及到的主要用例,我們可以做如下表述:本用例圖主要表述了學(xué)生參與選修課程選課的主要過程。學(xué)生利用選課系統(tǒng)進(jìn)行選課的基本原則是系統(tǒng)開發(fā)之前,通知學(xué)生做好想選課程的準(zhǔn)備,經(jīng)過一段時間的累計當(dāng)達(dá)到了所選課程的上限人數(shù)或超過了選課系統(tǒng)開放時間,系統(tǒng)將進(jìn)行關(guān)閉。同時,學(xué)生將停止選課操作。
當(dāng)然,想選課的學(xué)生前提必須是登錄到該系統(tǒng)的合法用戶。當(dāng)學(xué)生通過輸入用戶名和密碼正常登錄到系統(tǒng)后并選擇他所選修的課程后,系統(tǒng)會自動給出操作成功提示界面。因此,在本系統(tǒng)中對于學(xué)生給出的具體用例是查詢可查和選課,選課用例還可以包含有預(yù)選、正選、退選和補(bǔ)選四個選項;而系統(tǒng)管理員擇給出了設(shè)定時間、確定課程、設(shè)定人數(shù)上限、統(tǒng)計結(jié)果和查詢課程等用例描述。同時,系統(tǒng)中通過查詢用例擴(kuò)展出學(xué)生查詢課程和系統(tǒng)管理員對課程的查詢用例。
通過上述用例,我們還可以分析出在該系統(tǒng)中各事件的基本執(zhí)行順序是首先系統(tǒng)管理員要針對所有可開設(shè)的課程設(shè)定開放和關(guān)閉時間;然后,其需要設(shè)定一系列課程信息設(shè)置,包括:課程名稱、學(xué)分、課程種類、課程門數(shù)以及人數(shù)上限;當(dāng)信息設(shè)定好后,仍然由系統(tǒng)管理員查詢預(yù)設(shè)結(jié)果,這個結(jié)果可以包括:正選和補(bǔ)選結(jié)果,從而確認(rèn)最終的選課結(jié)果。
3 系統(tǒng)靜態(tài)設(shè)計
UML中系統(tǒng)設(shè)計階段可以使用用以表述系統(tǒng)內(nèi)部結(jié)構(gòu)和靜態(tài)特征的靜態(tài)模型和表述系統(tǒng)執(zhí)行操作和執(zhí)行順序的動態(tài)模型來說明。
其中系統(tǒng)靜態(tài)模型視圖主要指的是系統(tǒng)的類圖、對象圖、組件圖和配置圖。類圖,主要指的是當(dāng)前靜態(tài)模型體系中所存在的類信息,同時還包含類的內(nèi)部結(jié)構(gòu)以及類與類之間的關(guān)系等;對象圖與類圖相似,只是對象是類的實例化表述;組件圖擇反映的是代碼之間銜接的物理組織結(jié)構(gòu);配置圖則分別從硬件和軟件特別是硬件角度顯示該系統(tǒng)的物理架構(gòu)。如下圖1所示。
從上圖我們可知,類圖一般而言是由四部分構(gòu)成的。分別是參與者,界面類、控制類和實體類。其中參與者就是當(dāng)前與系統(tǒng)交互的部分,它可以是人也可以是設(shè)備、系統(tǒng)等,本文中的主要參與者就是學(xué)生;界面類則是參與者需要登錄的界面信息,本文中稱為選課登錄界面;控制類則指的是類與其子類所能控制的方法,在上圖所指的就是學(xué)生選課和信息查詢;實體類突出強(qiáng)調(diào)的是與系統(tǒng)中類相關(guān)的事物的屬性集合,如圖所指本系統(tǒng)的實體類即為選課信息和選課記錄信息。
4 系統(tǒng)動態(tài)設(shè)計
系統(tǒng)的動態(tài)模型主要由活動圖、順序圖、協(xié)作圖和狀態(tài)圖構(gòu)成。其中,活動圖表示對某項活動進(jìn)行處理時,兩個或者更多類對象之間的過程控制流;順序圖是指針對用例圖所產(chǎn)生的詳細(xì)執(zhí)行流程;協(xié)作圖則是指如何將系統(tǒng)中不同的組成部分有效結(jié)合而構(gòu)建出一個復(fù)雜的功能集合體;狀態(tài)圖表示某個類所處的不同狀態(tài)和該類的狀態(tài)轉(zhuǎn)換信息。
從上圖我們可知活動圖中由兩個實心圓表示的是本次活動的開始及結(jié)束, 而橢圓結(jié)構(gòu)則表示的是活動執(zhí)行過程,不同的活動按照控制流執(zhí)行順序進(jìn)行連接。當(dāng)然,還會遇到條件分支的情況,我們用菱形表示。分支結(jié)構(gòu)還可以有分岔和匯合兩種模式。最后,我們用活動的不同實施者即我們稱之為泳道的事物將各實施者參與的各種活動隔離開來,這樣就可以使我們的活動圖能夠充分應(yīng)用到工作流程、控制流程和業(yè)務(wù)流程中去。
本選課系統(tǒng)中以系統(tǒng)管理員作為起始點,通過將系統(tǒng)開放操作,由系統(tǒng)管理員設(shè)定開放時間后,設(shè)定選課條件,最后確定開設(shè)課程。這樣將設(shè)定結(jié)果交給學(xué)生使用。學(xué)生通過進(jìn)入系統(tǒng),查看開課信息,然后進(jìn)行核心的選課操作,當(dāng)然這其中學(xué)生有權(quán)決定是否需要修改其選課信息。當(dāng)所有選課操作過程結(jié)束后,將為學(xué)生以課表形式顯示出最終結(jié)果,這樣結(jié)束本次選課系統(tǒng)操作。
5 結(jié)語
UML作為統(tǒng)一建模語言,之所以稱之為統(tǒng)一。主要因為它打破了原有建模語言的表述不一致的弊端,使面向?qū)ο笠晥D充分描述系統(tǒng)的分析、設(shè)計、編碼、測試和維護(hù)等各個階段具有十分廣泛的應(yīng)用基礎(chǔ)。本文通過運用學(xué)生選課系統(tǒng)這個具體實例,進(jìn)一步向大家展示了UML在處理復(fù)雜事物和不同領(lǐng)域上的優(yōu)勢。
參考文獻(xiàn):
[1]劉林.管理信息系統(tǒng)[M].北京:科學(xué)出版社,2006.
[2]Sinan Si Alhir.UML高級應(yīng)用(韓宏志譯)[M].北京:清華大學(xué)出版社,2004.
[3]黎孟雄,馬繼軍.管理信息系統(tǒng)及經(jīng)典案例[M].北京:中國礦業(yè)大學(xué)出版社,2005.
[4]朱镕基.管理現(xiàn)代化[M].北京:北京科學(xué)普及出版社,1983.
作者簡介:劉龍澤(1990- ),男,滿族,河北平泉人,本科,研究方向:軟件工程。endprint