戴一平
(華南師范大學(xué) 教育信息技術(shù)學(xué)院,廣州 510631)
Enterprise Architect在實(shí)驗(yàn)預(yù)約管理系統(tǒng)的建模研究
戴一平
(華南師范大學(xué) 教育信息技術(shù)學(xué)院,廣州 510631)
介紹了應(yīng)用EA建立實(shí)驗(yàn)預(yù)約管理系統(tǒng)數(shù)據(jù)模型的開發(fā)過程,側(cè)重于該系統(tǒng)結(jié)構(gòu)的設(shè)計(jì)與實(shí)現(xiàn),并期望能提煉出一種適合一般管理系統(tǒng)的框架。在整個(gè)項(xiàng)目的設(shè)計(jì)和實(shí)施過程中,始終采用UML圖等作為描述文檔,并將其和統(tǒng)一過程結(jié)合,實(shí)現(xiàn)項(xiàng)目的迭代和增量式開發(fā)。
預(yù)約;EA;統(tǒng)一建模語言
實(shí)驗(yàn)室是實(shí)驗(yàn)教學(xué)和科學(xué)研究的重要基地,也是對學(xué)生實(shí)施素質(zhì)教育、能力培養(yǎng)和科技創(chuàng)新的重要媒體。實(shí)驗(yàn)室信息化管理是提高實(shí)驗(yàn)教學(xué)質(zhì)量和效率及實(shí)現(xiàn)教學(xué)效果最優(yōu)化的重要手段。信息化管理系統(tǒng)數(shù)據(jù)模型的開發(fā)需要有相應(yīng)優(yōu)秀工具去實(shí)現(xiàn),統(tǒng)一建模語言UML(Unified Modeling Language)是一種構(gòu)建直觀化、明確化和文檔化軟件系統(tǒng)產(chǎn)物的通用可視化建模語言。它捕捉了被構(gòu)建系統(tǒng)的有關(guān)決策和理解用來理解設(shè)計(jì)瀏覽配置維護(hù)以及控制系統(tǒng)的信息。UML可以與所有的開發(fā)方法、生命階段、應(yīng)用領(lǐng)域和媒介一同使用。它意圖統(tǒng)一過去建模技術(shù)的經(jīng)驗(yàn),將當(dāng)前軟件最佳實(shí)踐合并至標(biāo)準(zhǔn)的方法。UML包括語義概念、標(biāo)記符號和指南,具有靜態(tài)、動態(tài)環(huán)境和組織性的部分,它可被具有代碼產(chǎn)生和報(bào)表生成的交互式可視建模工具所支持。UML規(guī)范沒有定義標(biāo)準(zhǔn)過程,但可用于迭代的開發(fā)過程,并支持現(xiàn)有的大多數(shù)面向?qū)ο蟮拈_發(fā)過程[1,2]。
對UML我們可以這樣理解:它不是編程語言,其工具可以提供UML至各種編程語言的代碼生成,也可從現(xiàn)有的程序逆向構(gòu)筑模型。UML不是用于定理證明的高度正式的語言,實(shí)際上有很多正式的語言,但它們不易理解或不適用于多種用途。UML是通用性的建模語言,不適用于特定的領(lǐng)域,更特定的語言和工具可能更加合適,如GUI設(shè)計(jì)、VLSI電路設(shè)計(jì)或基于規(guī)則的人工智能。UML是離散的建模語言,它不打算對如工程和物理的連續(xù)系統(tǒng)建模,UML是對諸如軟件、硬件或數(shù)字邏輯的離散系統(tǒng)建模的通用語言[3]。本文結(jié)合實(shí)驗(yàn)預(yù)約管理系統(tǒng)的開發(fā)過程,對應(yīng)用Enterprise Architect建立數(shù)據(jù)模型問題作較詳細(xì)的分析。
系統(tǒng)的開發(fā)是以軟件工程方法學(xué)為指導(dǎo),依照軟件工程開發(fā)步驟來進(jìn)行。首先進(jìn)行需求分析,然后根據(jù)需求分析結(jié)果進(jìn)行功能模塊設(shè)計(jì)、數(shù)據(jù)庫設(shè)計(jì)、單模塊開發(fā)和系統(tǒng)集成測試等,依照分析-設(shè)計(jì)-開發(fā)-測試-部署的步驟進(jìn)行。這是軟件工程方法學(xué)的核心實(shí)現(xiàn)路線,但具體的開發(fā)過程并不依賴于某一開發(fā)方法論,而采用靈活的迭代式開發(fā)模型,以需求分析為中心指導(dǎo)各階段的開發(fā)[3-4]。
Apache幾乎可以運(yùn)行在所有廣泛使用的Unix、Windows、Linux操作系統(tǒng)平臺上。目前成為世界上最流行的Web服務(wù)器軟件之一。其特點(diǎn)是安裝簡單、速度快、性能穩(wěn)定、可移植性非常好,并可做代理服務(wù)器使用,全球很多著名網(wǎng)站,如 Amazon、Yahoo、W3 Consortium、Financial Times等都是 Apache 的用戶[5-6]。
PHP是一種HTML內(nèi)嵌式的語言,其獨(dú)特的語法混合了C、Java、Perl以及自創(chuàng)的語法,可以比CGI或者Perl更快速的執(zhí)行動態(tài)網(wǎng)頁,而且支持幾乎所有流行的數(shù)據(jù)庫以及操作系統(tǒng)[7-8]。
MySQL是小型關(guān)系型數(shù)據(jù)庫管理系統(tǒng),被廣泛地應(yīng)用在Internet上的中小型網(wǎng)站中。由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點(diǎn),許多中小型網(wǎng)站為了降低網(wǎng)站總體擁有成本而選擇了MySQL作為網(wǎng)站數(shù)據(jù)庫,支持非常廣泛的操作系統(tǒng),提供TCP/IP、ODBC和JDBC等多種數(shù)據(jù)庫連接途徑[9-11]。
Enterprise Architect(以下簡稱EA)是以目標(biāo)為導(dǎo)向的軟件系統(tǒng),覆蓋了系統(tǒng)開發(fā)的整個(gè)周期,除開發(fā)類模型外,還包括事務(wù)進(jìn)程分析、使用案例需求、動態(tài)模型、組件和布局、系統(tǒng)管理、非功能需求、用戶界面設(shè)計(jì)、測試和維護(hù)等功能,為整個(gè)團(tuán)隊(duì)提供高級的UML 2.2建模工具。使用EA設(shè)計(jì)人員可以充分利用UML 2.2圖表的功能,支持全部13種UML 2.2圖表和相關(guān)的圖表元素,包括:
(1)結(jié)構(gòu)圖表:類、對象、合成元素、包、組件、布局;
(2)行為圖表:使用案例、通信、序列、交互概述、行為、狀態(tài)、時(shí)序;
(3)擴(kuò)展:分析(簡單行為)、定制(需求、變動和UI設(shè)計(jì));
(4)使用工具能夠跟蹤依賴關(guān)系、支持大型模型,幫助開發(fā)設(shè)計(jì)人員管理大型復(fù)雜的工程;提供CVS或SCC工具,以時(shí)間快照為基線,通過比較來跟蹤模型變動,從而實(shí)現(xiàn)版本控制;含有項(xiàng)目可視化窗口,提供高性能直觀的工作界面;
(5)具備源代碼的正向和反向工程能力,支持多種通用語言,包括 C++ 、C#、Delphi、Java、PHP、VB.Net、Visual Basic等,可獲取免費(fèi)的CORBA和Python附加組件,并提供語法突顯功能的內(nèi)置源代碼編輯器,確保在一致的工作環(huán)境中快速導(dǎo)航和查找用戶模型的源代碼[12-14]。
需求模型(Requirements Model)是一種文檔式模型,通過準(zhǔn)確恰當(dāng)?shù)亓谐鼋忉岄_發(fā)過程中需要實(shí)現(xiàn)的功能行為來描述待開發(fā)項(xiàng)目,并為開發(fā)過程中需要使用到的各種結(jié)構(gòu)化技術(shù)文檔(功能或技術(shù)規(guī)格說明書,測試計(jì)劃)而使用需求模型。EA可在模型中直接建立其它學(xué)科的軟件開發(fā)模式來集成需求管理的UML工具。
需求管理是建立在解決許多問題的可追溯性的、跨學(xué)科的團(tuán)隊(duì)分工、系統(tǒng)集成的變更和配置管理的核心。具有的特點(diǎn)包括:
(1)在模型中能夠直接創(chuàng)建和查看需求;
(2)在模型中直接細(xì)化用例;
(3)可加入每一個(gè)需求的屬性,如難點(diǎn)、狀態(tài)和類型,也可以自定義屬性;
(4)能夠跟蹤業(yè)務(wù)規(guī)則的需求,測試案例和分析加工;
(5)可跟蹤關(guān)系矩陣和考慮需求的變化的影響[15];
(6)能夠?yàn)榭蛻魟?chuàng)建優(yōu)質(zhì)的MS Word和HTML文件。
2.2.1 角色定義
用例分析就是捕獲系統(tǒng)、子系統(tǒng)、類或組件的行為,并通過用例圖向外部用戶展示。統(tǒng)一系統(tǒng)開發(fā)過程強(qiáng)調(diào)用例驅(qū)動及迭代增量的開發(fā),用例不但用于捕獲需求,而且還是提供從分析到測試的活動基礎(chǔ)[16]。
定義參與者(Actors):參與者是與系統(tǒng)、子系統(tǒng)或類發(fā)生交互作用的外部用戶、進(jìn)程或其它系統(tǒng)的理想化角色[17]。一個(gè)參與者代表了一類外部用戶可能與系統(tǒng)發(fā)生的交互。通過分析確認(rèn)本系統(tǒng)的參與者為:教師、學(xué)生、管理員。在實(shí)際運(yùn)行過程中,一個(gè)實(shí)際用戶可以既是教師又是管理員,也可是學(xué)生又是管理員。
2.2.2 用例模型的建立
用例是一個(gè)外部可見的系統(tǒng)內(nèi)聚功能單元,它由一種被稱為主體(Subject)的類元提供,用例表示為主體與系統(tǒng)單元的一個(gè)或多個(gè)參與者之間所交換的消息序列。[16,18]下面對綜合測評子系統(tǒng)進(jìn)行分析和說明,并給出系統(tǒng)的主體-學(xué)生的用例。
(1)學(xué)生:學(xué)生參與用例圖如圖1。系統(tǒng)具體包括實(shí)驗(yàn)的預(yù)約、實(shí)驗(yàn)報(bào)告的提交、查詢等等。其中,網(wǎng)上預(yù)約的組織管理形式有助于使學(xué)生成為教學(xué)過程中的真正主體,學(xué)生可以根據(jù)自己的學(xué)習(xí)進(jìn)度自主選擇實(shí)驗(yàn)內(nèi)容、時(shí)間并預(yù)約實(shí)驗(yàn)資源。網(wǎng)上預(yù)約的實(shí)施還有助于實(shí)現(xiàn)開放實(shí)驗(yàn)室設(shè)備、場地和師資的有機(jī)結(jié)合,在一定程度上緩解了實(shí)驗(yàn)資源的相對不足,做到資源的合理共享和有機(jī)整合,以實(shí)現(xiàn)開放性實(shí)驗(yàn)教學(xué)。
(2)教師:除了擁有類似學(xué)生的權(quán)限外,教師可以進(jìn)行實(shí)驗(yàn)方案的征集、審核,實(shí)驗(yàn)報(bào)告的審閱、批改和實(shí)驗(yàn)成績的考核。實(shí)驗(yàn)預(yù)約的審核由主管實(shí)驗(yàn)室的實(shí)驗(yàn)中心主任或分管教學(xué)的副院長進(jìn)行審批,他們角色也是教師,除了上述擁有的權(quán)限外,還比一般教師多了審批一級。
(3)系統(tǒng)管理員:擁有所有的權(quán)限。實(shí)驗(yàn)室資源管理子系統(tǒng)主要包括實(shí)驗(yàn)設(shè)備、儀器、場地和資料的管理。通過構(gòu)建實(shí)驗(yàn)室資源管理子系統(tǒng),師生可以隨時(shí)了解實(shí)驗(yàn)資源的分配和使用情況,實(shí)時(shí)地為開放實(shí)驗(yàn)教學(xué)的資源調(diào)配提供指導(dǎo),可最大程度實(shí)現(xiàn)實(shí)驗(yàn)室資源的合理配置,為學(xué)生合理安排自主學(xué)習(xí)時(shí)間提供參考。
2.2.3 使用時(shí)序圖與活動圖細(xì)化用例
確定用例化,有必要對用例進(jìn)行細(xì)化,在用例的細(xì)化階段,UML提供了非常好的工具:用簡單的時(shí)序圖來描述參與者和系統(tǒng)的交互,用活動圖來描述工作流。
(1)登錄認(rèn)證模塊設(shè)計(jì)
登錄控制部分就是要求用戶在使用系統(tǒng)前進(jìn)行登錄,然后根據(jù)用戶所擁有的權(quán)限對訪問進(jìn)行控制。系統(tǒng)使用基于安全策略的統(tǒng)一用戶管理、認(rèn)證,把用戶的資料存放在統(tǒng)一的中央用戶管理認(rèn)證服務(wù)器上?;舅枷胧菙r截用戶的請求,檢查該用戶是否已經(jīng)登錄,如果沒有登錄則轉(zhuǎn)向到用戶認(rèn)證服務(wù)的登錄頁面。
圖1 學(xué)生參與用例圖
(2)使用時(shí)序圖確定參與者與系統(tǒng)交互
用例是一種文本的描述,主要用于解釋用例的具體內(nèi)容或者事務(wù)流程。時(shí)序圖可以更精確、更直觀地表達(dá)用例。它按時(shí)間組織描述了參與者和系統(tǒng)的交互情況。如圖2所示為本系統(tǒng)的學(xué)生預(yù)約時(shí)序圖。
時(shí)序圖簡單地顯示了參與者之間的動態(tài)交互關(guān)系,但沒有顯示它們之間的結(jié)構(gòu)關(guān)系。如果一個(gè)用例有多個(gè)流程,就需要使用多個(gè)時(shí)序圖才能表示出這些流程。在需求捕獲和分析階段早期,必要的時(shí)序圖相對簡單而且不完整。當(dāng)進(jìn)入到用例分析,并用更深入的細(xì)節(jié)精制時(shí)序圖時(shí),這種情況就會改變。用時(shí)序圖捕獲每一種用例的主流程是有用的,但是捕獲每一個(gè)流程乃至每一個(gè)交替變換的流程,特別是當(dāng)它們的數(shù)目非常多時(shí),就不必要了,因此,一般用時(shí)序圖來捕獲用例的主流程。為了能夠顯示多個(gè)流程,往往有活動圖[19]。
2.2.4 系統(tǒng)其他需求
系統(tǒng)應(yīng)具備靈活性、實(shí)用性、兼容性、高效性、可擴(kuò)充性和可維護(hù)性、安全可靠性和穩(wěn)定性。實(shí)驗(yàn)預(yù)約管理系統(tǒng)架構(gòu)是基于PHP應(yīng)用程序體系結(jié)構(gòu)的。同時(shí),為了實(shí)現(xiàn)系統(tǒng)的可重用性和可擴(kuò)展性,在架構(gòu)實(shí)驗(yàn)預(yù)約管理系統(tǒng)時(shí)還遵循以下原則:使用MVC設(shè)計(jì)模式實(shí)現(xiàn)實(shí)驗(yàn)預(yù)約管理系統(tǒng)的邏輯分層。在系統(tǒng)中,利用一個(gè)用戶界面控制器控制網(wǎng)頁的生成、轉(zhuǎn)發(fā)及業(yè)務(wù)組件調(diào)用,實(shí)現(xiàn)模型和視圖的分離,從而使系統(tǒng)的各個(gè)功能模塊達(dá)到一種層間松散藕合的效果,提高系統(tǒng)靈活性、復(fù)用性和可維護(hù)性[20]。
圖2 學(xué)生預(yù)約時(shí)序圖
2.2.5 硬件配置環(huán)境
物理/配置模型提供了一種部署在整個(gè)系統(tǒng)的基礎(chǔ)設(shè)施組件的詳細(xì)模型。它詳述網(wǎng)絡(luò)功能、服務(wù)器規(guī)格、硬件要求和其他相關(guān)資料部署。物理模型顯示在何處以及將如何部署系統(tǒng)組件。圖3部署圖說明實(shí)驗(yàn)預(yù)約管理系統(tǒng)物理部署環(huán)境,它顯示組件位于服務(wù)器、機(jī)器或硬件的位置,可闡明網(wǎng)絡(luò)連接、局域網(wǎng)帶寬等。
一個(gè)節(jié)點(diǎn)是描述任何服務(wù)器、工作站或其它主機(jī)硬件用來部署到開發(fā)環(huán)境的組成部分。也可指定節(jié)點(diǎn)之間的聯(lián)系(如TCP/IP)和要求。節(jié)點(diǎn)有性能特點(diǎn)、最低硬件標(biāo)準(zhǔn)、操作系統(tǒng)級別等記錄。
基于PHP程序體系結(jié)構(gòu)設(shè)計(jì)原則,把整個(gè)實(shí)驗(yàn)預(yù)約管理系統(tǒng)設(shè)計(jì)成為一系列的相互獨(dú)立功能模塊,并且為每個(gè)模塊定義一個(gè)通用接口。每個(gè)模塊的設(shè)計(jì)過程是相互獨(dú)立的,這樣有利于團(tuán)隊(duì)的并行開發(fā)和使用第三方的組件。另外,模塊之間相互獨(dú)立也使系統(tǒng)更容易擴(kuò)展和維護(hù)。如圖4學(xué)生用戶預(yù)約模塊主要組件及其關(guān)系,限于篇幅,其它模型不一一列舉。
圖3 物理/配置模型
圖4 學(xué)生用戶預(yù)約模塊主要組件及其關(guān)系
3.2.1 邏輯(類)數(shù)據(jù)模型建模
邏輯數(shù)據(jù)模型反映的是系統(tǒng)分析設(shè)計(jì)人員對數(shù)據(jù)存儲的觀點(diǎn),是對概念數(shù)據(jù)模型進(jìn)一步的分解和細(xì)化,并根據(jù)業(yè)務(wù)規(guī)則確定業(yè)務(wù)對象、業(yè)務(wù)對象的數(shù)據(jù)項(xiàng)及業(yè)務(wù)對象之間關(guān)系的基本藍(lán)圖。其內(nèi)容包括所有的實(shí)體和關(guān)系,確定每個(gè)實(shí)體的屬性,定義每個(gè)實(shí)體的主鍵,指定實(shí)體的外鍵,需要進(jìn)行范式化處理[21]。如圖5。
邏輯數(shù)據(jù)模型的目標(biāo)是盡可能詳細(xì)的描述數(shù)據(jù),但并不考慮數(shù)據(jù)在物理上如何去實(shí)現(xiàn)。邏輯數(shù)據(jù)建模不僅會影響數(shù)據(jù)庫設(shè)計(jì)的方向,還間接影響最終數(shù)據(jù)庫的性能和管理。如果在實(shí)現(xiàn)邏輯數(shù)據(jù)模型時(shí)投入得足夠多,那么在物理數(shù)據(jù)模型設(shè)計(jì)時(shí)就可以有許多可供選擇的方法。
3.2.2 物理數(shù)據(jù)模型建模
物理數(shù)據(jù)模型是在邏輯數(shù)據(jù)模型的基礎(chǔ)上,考慮各種具體的技術(shù)實(shí)現(xiàn)因素,進(jìn)行數(shù)據(jù)庫體系結(jié)構(gòu)設(shè)計(jì),以實(shí)現(xiàn)數(shù)據(jù)在數(shù)據(jù)庫中的存放。
圖5 用戶登錄相關(guān)類
物理數(shù)據(jù)模型的內(nèi)容包括確定所有的表和列,定義外鍵用于確定表之間的關(guān)系,基于用戶的需求可能進(jìn)行范式化等要求[21]。在物理實(shí)現(xiàn)上的考慮,可能會導(dǎo)致物理數(shù)據(jù)模型和邏輯數(shù)據(jù)模型有較大的不同。如圖6。
圖6 學(xué)生信息管理模塊圖示
物理數(shù)據(jù)模型的目標(biāo)是指如何用數(shù)據(jù)庫模式來實(shí)現(xiàn)邏輯數(shù)據(jù)模型以及保存數(shù)據(jù)。學(xué)生信息管理模塊的開發(fā)目的是管理全學(xué)院學(xué)生的各種信息,方便學(xué)生信息的查詢。學(xué)生信息管理的功能概括起來包括信息的錄入、維護(hù)和查詢。
代碼工程是一個(gè)轉(zhuǎn)化過程,包括自動代碼生成、逆向工程、模型代碼和源代碼之間的同步。可以從UML生成源代碼模型元素的類或接口??缮傻恼Z言包括 C、C++ 、C#、Delphi、Java、PHP、Python、Action Script、Visual Basic and VB.NET源代碼,源代碼包含類的定義、變量和每個(gè)UML類的屬性及方法,可使用源代碼查看器來查看任何要打開的源代碼。
3.3.1 正向工程
源代碼生成(正向工程)采用UML的類或接口的模型元素創(chuàng)建詳細(xì)的闡述并編譯源代碼。正向工程的主要工作包括類、屬性和方法,確保模型和代碼間的一致。例如將圖5用戶登錄相關(guān)類進(jìn)行正向工程可得到三個(gè) PHP 源文件,分別是 LoginAction.php、UseCode.php、LoginActionForm.php。
代碼從類或接口的模型元素中生成,所以必須創(chuàng)建所需的類和接口的元素,添加屬性(生成變量)和操作(生成方法)。在生成代碼之前,應(yīng)該確保代碼生成的默認(rèn)設(shè)置符合要求。默認(rèn)設(shè)置位于源代碼工程選項(xiàng)對話框(選擇工具選項(xiàng)源代碼工程菜單選項(xiàng))。設(shè)置默認(rèn)值,以符合需要的語言和首選項(xiàng)。首選項(xiàng),可以定義默認(rèn)的構(gòu)造函數(shù)和析構(gòu)器,包括接口方法和創(chuàng)造語言的Unicode的選項(xiàng)[22]。
3.3.2 逆向工程
逆向工程的功能是將現(xiàn)有的源代碼構(gòu)建為數(shù)據(jù)模型,即映射為UML表示的源代碼結(jié)構(gòu),并能夠檢查遺漏的代碼和重復(fù)的代碼,而將UML模型更新。
在EA的逆向工程中,可以導(dǎo)入以上各種語言的代碼到UML模型,將現(xiàn)有的源代碼結(jié)構(gòu)映射成為UML的表示,例如一個(gè)Java類映射到UML類元素的變量作為屬性的定義,模式也隨著業(yè)務(wù)和Java類之間的相互作用在UML模型與相應(yīng)的接口類圖中顯示,逆向工程可為用戶檢查遺留代碼和審議重用的代碼庫的功能或使UML模型與最新代碼同步進(jìn)程。研究在一個(gè)UML模型的代碼使用戶能夠識別關(guān)鍵模塊中的代碼,有利于理解原有業(yè)務(wù)系統(tǒng)的系統(tǒng)要求,使開發(fā)獲得更好的源代碼做更全面的了解[22]。
EA是一種出色的、面向?qū)ο蟮目梢暬到y(tǒng)分析建模工具,依托UML整套成熟的建模技術(shù),廣泛地應(yīng)用于眾多領(lǐng)域。其建模過程并不是簡單的線性過程,而是一種與UML緊密聯(lián)系的演化與迭代過程,通過不斷地分析、評價(jià)和修改、再分析,最終得到高質(zhì)量的系統(tǒng)分析模型。在建模過程中,須根據(jù)具體情況,選擇合適的UML圖示清晰地描述各種功能。它的各個(gè)模型能幫助開發(fā)人員更好地理解業(yè)務(wù)流程,建立更可靠、更完善的系統(tǒng)模型,增加用戶和開發(fā)人員對問題的描述的共識,減少語義差異,保障分析的正確性。它改變了傳統(tǒng)軟件的設(shè)計(jì)思想,降低了系統(tǒng)設(shè)計(jì)的盲目性與不確定性,也更有利于系統(tǒng)的擴(kuò)展與測試,加強(qiáng)了用戶、開發(fā)人員、分析人員、測試人員以及管理人員之間的信息傳遞與溝通,極大地提高了相互間的協(xié)作能力和軟件開發(fā)的工程化程度。
[1] Object Management Group Inc.OMG Unified Modeling Language(OMG UML2.3),Infrastructure[EB/OL].(2010)[2010 - 12 - 12].http://www.omg.org/technology/documents/modeling_spec_catalog.htm#UML.
[2] Object Management Group Inc.OMG Unified Modeling Language(OMG UML2.3),Superstructure[EB/OL].(2010 -5 -3)[2010 -12 -12].http://www.omg.org/technology/documents/modeling_spec_catalog.htm#UML.
[3] James Rumbaugh,Jacobson Ivar,Booch Grady.The Unified Modeling Language Reference Manual[M].Boston:Addison Wesley Longman,Inc.,1999:3-4.
[4] 劉濤,周曉鋒.基于PowerDesigner高校進(jìn)修人員系統(tǒng)的建模研究[J].計(jì)算機(jī)技術(shù)與發(fā)展,2009,19(10):185-188.
[5] 維基百科.Apache[DB/OL].(2010 -10 -18)[2010 -12 -13].http://zh.wikipedia.org/zh-cn/Apache.
[6] Netcraft Ltd.October 2010 Web Server Survey[DB/OL].(2010 - 10 -12).http://news.netcraft.com/archives/2010/10/12/october-2010-webserver-survey.html.
[7] 維基百科.PHP[DB/OL].(2010-12-12)[2010-12-13].http://zh.wikipedia.org/zh-cn/PHP.
[8] PHP Documentation Group.PHP Manual[M/OL].The PHP Group,(2010 -12 -17)[2010 -12 -18].http://www.php.net/manual/en/.
[9] 維基百科.MySQL[DB/OL].(2010-12-10)[2010-12-12].http://zh.wikipedia.org/zh-cn/MySQL.
[10] 百度百科.MySQL[DB/OL].(2010 -11-26)[2010-12-12].http://baike.baidu.com/view/24816.htm.
[11] Stefan Hinz,Lead Team,DuBois Paul,et al.MySQL 5.5 Reference Manual[M/OL].California:Oracle Corporation,(2010 - 12)[2010 - 12 -20].http://dev.mysql.com/doc/refman/5.5/en/index.html.
[12] Sparx Systems Pty Ltd.Enterprise Architect User Guide[M/OL].Australia:Sparx Systems,(2010 - 9)[2010 - 12 - 9].http://www.sparxsystems.com/enterprise_architect_user_guide/8.0/.
[13] Wikipedia.Enterprise architect[DB/OL].(2010 -11 -17)[2010 -12 -19].http://en.wikipedia.org/wiki/Enterprise_architect.
[14] 百度百科.Enterprise Architect[DB/OL].(2007 -9 -27)[2010 -12 -19].http://baike.baidu.com/view/1152740.htm.
[15] Sparx Systems Pty Ltd.Enterprise Architect User Guide[M/OL].Australia:Sparx Systems,(2010 - 9).http://www.sparxsystems.com/enterprise_architect_user_guide/8.0/.
[16] Eric J.Naiburg,Maksimchuk Robert A.UML for Database Design[M].Boston:Addison Wesley,2001:49 -64.
[17] Pascal Roques.UML in Practice[M].West Sussex:John Wiley & Sons Ltd.,2004:6 -14.
[18] Scott W.Ambler.The Elements of UML 2.0 Style[M].New York:Cambridge University Press,2005:33 -46.
[19] Craig Larman.Applying UML and Patterns-An Introduction to Object-Oriented Analysis and Design and the Unified Process[M].Prentice Hall,1997.
[20] Seth Ladd,Darren Davison,Steven Devijver,et al.Expert Spring MVC and Web Flow[M].New York:Apress,2006:21 -40.
[21] Abraham Silberschatz,Henry F.Korth,Sudarshan S.DATABASE SYSTEM CONCEPTS[M].New York:McGraw-Hill,2001:15 -122.
[22] Sparx Systems Pty Ltd.Enterprise Architect User Guide[M].Australia:Sparx Systems,2010:1281 - 1348.
The research on the modeling of Enterprise Architect in the experiment reservation management system
DAI Yi-ping
(School of Educational Information Technology,South China Normal University,Guangzhou 510631,China)
This article describes the development process of establishing data model in experimental reservation management system by applying Enterprise Architect,focusing on the design and implementation of the system architecture and hoping to extract a suitable framework for general management systems.During the whole process of design and implementation,UML diagrams are used as the document and combined with unification process to realize the iteration and incremental development.
reservation;EA;unified modeling language
TP392
A
1009-3907(2011)06-0035-06
2011-05-11
戴一平(1971-),男,廣東廣州人,實(shí)驗(yàn)師,碩士,主要從事數(shù)據(jù)庫、軟件工程、計(jì)算機(jī)應(yīng)用技術(shù)。
責(zé)任編輯:吳旭云