XX電網(wǎng)公司 企業(yè)級(jí) 資產(chǎn)管理系統(tǒng) 概要設(shè)計(jì)說(shuō)明書(shū)
《XX電網(wǎng)公司 企業(yè)級(jí) 資產(chǎn)管理系統(tǒng) 概要設(shè)計(jì)說(shuō)明書(shū)》由會(huì)員分享,可在線(xiàn)閱讀,更多相關(guān)《XX電網(wǎng)公司 企業(yè)級(jí) 資產(chǎn)管理系統(tǒng) 概要設(shè)計(jì)說(shuō)明書(shū)(78頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)廣東電網(wǎng)公司深圳市康拓普信息技術(shù)有限公司二零一零年六月 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司修訂記錄版本版本修訂說(shuō)明修訂說(shuō)明作者作者審核審核審核日期審核日期V1.0概要設(shè)計(jì)說(shuō)明書(shū)許久歌、夏成文、王楊、單俊、柯庭、肖威、李壽榮所有權(quán)聲明:深圳市康拓普信息技術(shù)有限公司版權(quán)所有 不得復(fù)制Copyright 2009 by Shenzhen Comtop Information Technology Co., Ltd. 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)- I -目 錄1系統(tǒng)概述系統(tǒng)概述 .11.1名詞解釋.11
2、.2系統(tǒng)的上下文聯(lián)系.21.3系統(tǒng)的物理部署結(jié)構(gòu).31.4系統(tǒng)的技術(shù)體系結(jié)構(gòu).41.5系統(tǒng)的功能體系結(jié)構(gòu).51.6子系統(tǒng)概述.51.7系統(tǒng)主要場(chǎng)景描述.81.7.1新增場(chǎng)景.81.7.2查詢(xún)場(chǎng)景.91.8關(guān)鍵的設(shè)計(jì)概念.101.8.1系統(tǒng)采用技術(shù)簡(jiǎn)介.101.8.2系統(tǒng)中的 J2EE 應(yīng)用模式 .191.8.3系統(tǒng)應(yīng)用的字符編碼.211.8.4表單驗(yàn)證.241.8.5工作流應(yīng)用開(kāi)發(fā).241.8.6系統(tǒng)主要設(shè)計(jì)模式.282系統(tǒng)出錯(cuò)處理設(shè)計(jì)系統(tǒng)出錯(cuò)處理設(shè)計(jì) .352.1后臺(tái)處理機(jī)制.352.2頁(yè)面端處理機(jī)制.363權(quán)限驗(yàn)證機(jī)制權(quán)限驗(yàn)證機(jī)制 .374子系統(tǒng)的說(shuō)明子系統(tǒng)的說(shuō)明 .374.1項(xiàng)目管理.3
3、74.1.1前期與立項(xiàng)說(shuō)明.374.1.2項(xiàng)目進(jìn)度管理說(shuō)明.404.1.3服務(wù)確認(rèn)說(shuō)明.414.1.4質(zhì)量安全管理說(shuō)明.434.1.5決算轉(zhuǎn)資說(shuō)明.444.1.6資料管理說(shuō)明.444.1.7查詢(xún)統(tǒng)計(jì)說(shuō)明.464.1.8統(tǒng)計(jì)決策與支持.464.2物資管理.47 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)- II -4.2.1主數(shù)據(jù)管理.484.2.2需求管理.484.2.3采購(gòu)管理.494.2.4儲(chǔ)運(yùn)管理.514.2.5查詢(xún)統(tǒng)計(jì)說(shuō)明.534.3資產(chǎn)管理.544.3.1基礎(chǔ)數(shù)據(jù)管理.544.3.2資產(chǎn)臺(tái)帳管理.554.3.3資產(chǎn)建設(shè)管理.564.3.4輸網(wǎng)資產(chǎn)變更管理.584.3.5資產(chǎn)退役管理
4、.584.3.6工單管理.594.3.7實(shí)體關(guān)系.604.3.8設(shè)計(jì)考慮的因素.604.4財(cái)務(wù)管理.604.4.1固定資產(chǎn)管理.604.5服務(wù)合同管理.624.5.1服務(wù)合同管理說(shuō)明.624.6服務(wù)合同付款管理.634.6.1服務(wù)合同付款管理說(shuō)明.634.7接口說(shuō)明.644.7.1概述.644.7.2子系統(tǒng)構(gòu)架.644.7.3代碼目錄結(jié)構(gòu).644.7.4實(shí)體關(guān)系.644.7.5設(shè)計(jì)考慮的因素.645軟件重用軟件重用 .645.1第三方軟件使用說(shuō)明.645.1.1水晶報(bào)表(Crystal Report) .655.1.2Webi .655.1.3fusionchart.665.1.4水晶報(bào)表應(yīng)用
5、功能描述.665.2重用庫(kù)組件使用說(shuō)明.675.3新組件功能說(shuō)明.70 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 1 頁(yè)1 系統(tǒng)概述系統(tǒng)概述在南網(wǎng)公司的統(tǒng)一部署下,廣東電網(wǎng)公司于 2007 年啟動(dòng)了“創(chuàng)先”工作。而廣東電網(wǎng)作為全國(guó)最大的省級(jí)電網(wǎng),地域遼闊,資產(chǎn)龐大,在現(xiàn)有的電力體制環(huán)境下,對(duì)于如何有效地經(jīng)營(yíng)和管理資產(chǎn),實(shí)現(xiàn)企業(yè)資產(chǎn)使用的可靠性、使用效率、使用壽命和成本支出的綜合平衡,是對(duì)廣東電網(wǎng)生產(chǎn)經(jīng)營(yíng)能力的一種考驗(yàn),也是創(chuàng)建先進(jìn)水平省級(jí)供電企業(yè)所需重點(diǎn)突破的核心內(nèi)容。但是,公司資產(chǎn)管理一直沿用傳統(tǒng)的基于職能部門(mén)分工的“條塊化” 、 “分段式”管理模式,資產(chǎn)
6、管理觀(guān)念薄弱,從而導(dǎo)致在資產(chǎn)管理過(guò)程中出現(xiàn)了管理目標(biāo)不明確、不統(tǒng)一,評(píng)估與考核體系不科學(xué)、不健全,資產(chǎn)管理組織不協(xié)調(diào),管理鏈條和信息割裂等現(xiàn)象,形成了資產(chǎn)管理的職能和信息條塊壁壘,突出表現(xiàn)在資產(chǎn)管理粗放、使用效率不高、生命較短、資產(chǎn)實(shí)物管理與價(jià)值管理脫節(jié)等,管理手段的滯后,制約了公司實(shí)現(xiàn)國(guó)際領(lǐng)先的戰(zhàn)略目標(biāo)。因此,必須對(duì)現(xiàn)有的資產(chǎn)管理模式進(jìn)行管理變革,引入先進(jìn)的資產(chǎn)管理理念和現(xiàn)代化資產(chǎn)管理手段,通過(guò)信息系統(tǒng)支撐資產(chǎn)全生命周期管理體系的建設(shè),全面提升公司資產(chǎn)管理水平。企業(yè)級(jí)資產(chǎn)管理系統(tǒng)依據(jù)廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理信息系統(tǒng)功能規(guī)范及實(shí)施方案的要求,通過(guò)對(duì)資產(chǎn)的規(guī)劃設(shè)計(jì)、設(shè)備采購(gòu)、工程建設(shè)、生產(chǎn)運(yùn)營(yíng)
7、、退役報(bào)廢等全生命周期進(jìn)行全過(guò)程綜合管理,實(shí)現(xiàn)項(xiàng)目管理、物資管理、財(cái)務(wù)管理、生產(chǎn)管理四大業(yè)務(wù)的橫向融合,以及省公司、地市供電局、縣級(jí)供電局等的縱向貫通,實(shí)現(xiàn)資產(chǎn)使用的可靠性(Reliability)、使用效率(Efficiency)、使用壽命(Lifespan)和全生命周期成本(Life Cycle Cost)的綜合最優(yōu),落實(shí)資產(chǎn)全生命周期管理體系的資產(chǎn)管理策略、業(yè)務(wù)流程、組織架構(gòu)、評(píng)估考核等關(guān)鍵要素,為科學(xué)高效的現(xiàn)代化資產(chǎn)全生命周期管理體系建設(shè)及目標(biāo)的實(shí)現(xiàn)提供信息系統(tǒng)支持。1.1名詞解釋名詞解釋縮寫(xiě)描述設(shè)計(jì)模式設(shè)計(jì)模式提供了設(shè)計(jì)不同系統(tǒng)、不同應(yīng)用時(shí)經(jīng)常發(fā)生的問(wèn)題的解決方案,向編程人員提供特定
8、問(wèn)題的可依據(jù)的方法藍(lán)圖。J2EE全稱(chēng)是 Java 2 Platform Enterprise Edition,它是由 sun 公司領(lǐng)導(dǎo)、各廠(chǎng)商共同制定并得到廣泛認(rèn)可的工業(yè)標(biāo)準(zhǔn)。 XMLXML(Extensible Markup Language),一種擴(kuò)展性標(biāo)識(shí)語(yǔ)言。MVC 模式模式MVC 是 ModelViewController 的簡(jiǎn)寫(xiě)。Model 代表的是應(yīng)用的業(yè)務(wù)邏輯(通過(guò)JavaBean,ActionForm 實(shí)現(xiàn))。 View 是應(yīng)用的表示面(由 JSP 頁(yè)面產(chǎn)生)。 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 2 頁(yè)Controller 是提供應(yīng)
9、用的處理過(guò)程控制(一般是一個(gè) Servlet),通過(guò)這種設(shè)計(jì)模型把應(yīng)用邏輯,處理過(guò)程和顯示邏輯分成不同的組件實(shí)現(xiàn)。StrutsStruts 是采用 Java Servlet/JavaServerPages 技術(shù),開(kāi)發(fā) Web應(yīng)用程序的開(kāi)放源碼的 FrameWork。Web ServiceWeb Services 是建立可互操作的分布式應(yīng)用程序的新平臺(tái),是一種新的 web 應(yīng)用程序分支,他們是自包含、自描述、模塊化的應(yīng)用。水晶報(bào)表水晶報(bào)表為企業(yè)提供了用于 OLAP 的交互式的、簡(jiǎn)單易用的分析報(bào)表功能,專(zhuān)為 Web 用于而設(shè)計(jì),為企業(yè)的決策人員提供了無(wú)與倫比的決策支持功能。Ejb3.0.1.2系統(tǒng)
10、的上下文聯(lián)系系統(tǒng)的上下文聯(lián)系企企業(yè)業(yè)級(jí)級(jí)資資產(chǎn)產(chǎn)管管理理系系統(tǒng)統(tǒng)招招投投標(biāo)標(biāo)系系統(tǒng)統(tǒng)PKIOAK合合同同管管理理檔檔案案管管理理生生產(chǎn)產(chǎn)系系統(tǒng)統(tǒng)全全面面預(yù)預(yù)算算管管理理1.系統(tǒng)與 Excel 2000 / XP/2003 的接口使用 Apache POI 組件。2.系統(tǒng)與數(shù)據(jù)庫(kù)連接使用數(shù)據(jù)庫(kù)連接池。 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 3 頁(yè)3.系統(tǒng)與 XML 文檔交互使用 Apache JDOM。4.系統(tǒng)采用打印組件來(lái)實(shí)現(xiàn)打印和打印預(yù)覽功能。5.系統(tǒng)提供與財(cái)務(wù)系統(tǒng)的接口。付款單據(jù)傳入財(cái)務(wù)系統(tǒng),財(cái)務(wù)付款后,企業(yè)級(jí)資產(chǎn)管理系統(tǒng)能夠及時(shí)從財(cái)務(wù)系統(tǒng)獲取付款的
11、數(shù)據(jù)。6.系統(tǒng)通過(guò)定時(shí)器組件實(shí)現(xiàn)與 OAK 系統(tǒng)的接口,每天通過(guò) OAK 系統(tǒng)提醒用戶(hù)及時(shí)處理企業(yè)級(jí)資產(chǎn)管理系統(tǒng)的待辦工作。7.系統(tǒng)提供與招投標(biāo)系統(tǒng)的接口。將項(xiàng)目信息傳遞給招投標(biāo)管理系統(tǒng),項(xiàng)目招標(biāo)后,企業(yè)級(jí)資產(chǎn)管理系統(tǒng)能夠及時(shí)從招投標(biāo)系統(tǒng)中獲取項(xiàng)目的招標(biāo)信息。8.系統(tǒng)提供與生產(chǎn)管理系統(tǒng)進(jìn)行的接口。實(shí)現(xiàn)項(xiàng)目管理、設(shè)備臺(tái)帳、維護(hù)計(jì)劃、工單與生產(chǎn)管理系統(tǒng)的交互。9.和企業(yè)信息門(mén)戶(hù)管理系統(tǒng)集成,支持從門(mén)戶(hù)系統(tǒng)直接進(jìn)入企業(yè)級(jí)資產(chǎn)管理系統(tǒng)來(lái)處理待辦事宜。10. 采用 WebService 和 EJB 遠(yuǎn)程接口技術(shù)實(shí)現(xiàn)系統(tǒng)之間的數(shù)據(jù)交換。其中 EJB 遠(yuǎn)程接口技術(shù)的使用適用于由我公司開(kāi)發(fā)的業(yè)務(wù)系統(tǒng)之間的數(shù)據(jù)
12、交換。WebService 技術(shù)主要適用我公司開(kāi)發(fā)的系統(tǒng)與其他公司開(kāi)發(fā)的業(yè)務(wù)系統(tǒng)之間的數(shù)據(jù)交換。1.3系統(tǒng)的物理部署結(jié)構(gòu)系統(tǒng)的物理部署結(jié)構(gòu)企業(yè)級(jí)資產(chǎn)管理系統(tǒng)的部署采用“全省大集中”的模式,系統(tǒng)存在用戶(hù)數(shù)、業(yè)務(wù)數(shù)據(jù)量大特點(diǎn),建議系統(tǒng)硬件架構(gòu)如下圖所示: 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 4 頁(yè)系統(tǒng)硬件架構(gòu)1.4系統(tǒng)的技術(shù)體系結(jié)構(gòu)系統(tǒng)的技術(shù)體系結(jié)構(gòu) 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 5 頁(yè)1.5系統(tǒng)的功能體系結(jié)構(gòu)系統(tǒng)的功能體系結(jié)構(gòu)項(xiàng)目管理項(xiàng)目管理企業(yè)級(jí)資產(chǎn)管理企業(yè)級(jí)資產(chǎn)管理系統(tǒng)系統(tǒng)前期與立項(xiàng)設(shè)計(jì)與計(jì)劃執(zhí)行與監(jiān)控
13、資料管理物資管理物資管理申購(gòu)管理采購(gòu)管理儲(chǔ)運(yùn)管理品控管理竣工決算招投標(biāo)管理系招投標(biāo)管理系統(tǒng)統(tǒng)合同管理系合同管理系統(tǒng)統(tǒng)生產(chǎn)管理系生產(chǎn)管理系統(tǒng)統(tǒng)檔案管理系檔案管理系統(tǒng)統(tǒng)EIPPKIOAK設(shè)備臺(tái)帳管理設(shè)備管理設(shè)備管理工單管理財(cái)務(wù)管理財(cái)務(wù)管理資金管理核算管理全面預(yù)算管理全面預(yù)算管理系統(tǒng)系統(tǒng)固定資產(chǎn)管理模版管理配置管理企業(yè)級(jí)資產(chǎn)管理系統(tǒng)在項(xiàng)目前期管理、設(shè)計(jì)、執(zhí)行與監(jiān)控到竣工的過(guò)程中,通過(guò)物料裝配使初設(shè)臺(tái)帳形成正式的設(shè)備臺(tái)帳,以概算結(jié)構(gòu)為核心控制整個(gè)項(xiàng)目過(guò)程發(fā)生成本,歸集物資采購(gòu)與服務(wù)采購(gòu)成本,所有成本分?jǐn)偟綍汗蕾Y產(chǎn)卡片后形成正式的固定資產(chǎn)卡片。技改項(xiàng)目涉及到資產(chǎn)報(bào)廢和閑置則需要更新資產(chǎn)卡片,并將閑置物資
14、入庫(kù)供再次使用。在生產(chǎn)運(yùn)營(yíng)過(guò)程中由預(yù)試、定檢、消缺等運(yùn)維工作生成工單,根據(jù)設(shè)備與備品配件的關(guān)聯(lián)關(guān)系查找?guī)齑?,可以領(lǐng)用備品配件或者進(jìn)行物資申購(gòu),生成物資和服務(wù)采購(gòu)訂單,在工單執(zhí)行過(guò)程中將歸集所有發(fā)生成本。1.6子系統(tǒng)概述子系統(tǒng)概述根據(jù)需求規(guī)格說(shuō)明書(shū)將系統(tǒng)劃分為以下 4 個(gè)主要功能模塊,項(xiàng)目管理、物資管理、設(shè)備管理、財(cái)務(wù)管理。項(xiàng)目管理包括前期管理、設(shè)計(jì)與計(jì)劃、執(zhí)行與監(jiān)控、竣工決算等子模塊,前期管理包括了項(xiàng)目從規(guī)劃到項(xiàng)目年度投資計(jì)劃,設(shè)計(jì)與計(jì)劃包括項(xiàng)目開(kāi)工前的各項(xiàng)設(shè)計(jì)與計(jì)劃工作,執(zhí)行與監(jiān) 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 6 頁(yè)控規(guī)劃包括項(xiàng)目施工過(guò)程中對(duì)質(zhì)
15、量、安全、資金的控制,竣工決算包括項(xiàng)目階段驗(yàn)收到?jīng)Q算轉(zhuǎn)資的工作。類(lèi)端目錄結(jié)構(gòu): JSP 整體目錄結(jié)構(gòu):模塊名稱(chēng)JSP 目錄說(shuō)明對(duì)應(yīng)的需求項(xiàng)component重用組件config通用配置管理維護(hù)組件css通用的 cssdownload提供 Java 下載文件error通用的系統(tǒng)錯(cuò)誤提示頁(yè)面images通用的圖片文件include通用的包含文件js通用的 js 文件lcam企業(yè)級(jí)資產(chǎn)管理系統(tǒng) Jsp 文件項(xiàng)目文件webprojectmaterial目錄說(shuō)明:按照系統(tǒng)的功能劃分。masterdata 基本資料,數(shù)據(jù)業(yè)務(wù)層。commom 公用函數(shù)。component 公用組件。interactive
16、與外部系統(tǒng)的 webservice 接口。project 項(xiàng)目管理各個(gè)模塊material 物資管理各個(gè)模塊device 設(shè)備管理各個(gè)模塊finance 財(cái)務(wù)管理各個(gè)模塊payment 付款contract 合同 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 7 頁(yè)devicefinancecontractpaymentcommoncomponentimagesjsprimarypage通用系統(tǒng)訪(fǎng)問(wèn)主頁(yè)面system系統(tǒng)的管理文件WEB-INF配置文件存放路徑workflow工作流引擎頁(yè)面文件extext 動(dòng)態(tài) js 組件配置文件目錄結(jié)構(gòu):目錄下級(jí)目錄說(shuō)明對(duì)應(yīng)的
17、需求項(xiàng)lcam企業(yè)級(jí)資產(chǎn)管理系統(tǒng)的配置文件projectmaterialdevicefinancecontractpaymentcomponentdwrtemplate(excel、doc、xml)compagedwr 配置文件 tld存放標(biāo)簽WEB-INFlib存放工程項(xiàng)目管理系統(tǒng)所引用到的包集合APP-INFclasses存放編譯以后的 Java 類(lèi)代碼配置平臺(tái)目錄結(jié)構(gòu) 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 8 頁(yè)目錄下級(jí)目錄說(shuō)明project項(xiàng)目管理相關(guān)配置material物資管理相關(guān)配置device設(shè)備管理相關(guān)配置finance財(cái)務(wù)管理相關(guān)配置c
18、ontract合同管理相關(guān)配置payment付款管理相關(guān)配置ct.lcam.masterdata主數(shù)據(jù)管理相關(guān)配置1.7系統(tǒng)主要場(chǎng)景描述系統(tǒng)主要場(chǎng)景描述系統(tǒng)場(chǎng)景從系統(tǒng)應(yīng)用層的實(shí)現(xiàn)方式分為以 JSP 和 Struts 兩種實(shí)現(xiàn)方式;從系統(tǒng)功能上分可以分為新增場(chǎng)景和查詢(xún)場(chǎng)景。1.7.1新增場(chǎng)景新增場(chǎng)景 新增、更新、刪除等操作場(chǎng)景與新增場(chǎng)景類(lèi)似,統(tǒng)稱(chēng)新增場(chǎng)景。下面以新增開(kāi)工申請(qǐng)為例對(duì)以 Struts 方式實(shí)現(xiàn)的前端表現(xiàn)層的新增場(chǎng)景進(jìn)行描述,如圖: 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 9 頁(yè)用戶(hù) StartExecut.jsp StartExecutActio
19、n.java StartExecutMan.java增加開(kāi)工申請(qǐng) StartExecutAppSrv.java調(diào)用Action將Form傳給VO將VO傳給代理調(diào)用業(yè)務(wù)邏輯執(zhí)行增加返回整數(shù)表示操作成功返回參數(shù)把返回值傳給Action提示用戶(hù)成功把返回值傳給JSP StartExecutDao.java調(diào)用DAO插入數(shù)據(jù)Struts 為前端表現(xiàn)層的新增場(chǎng)景1.7.2查詢(xún)場(chǎng)景查詢(xún)場(chǎng)景查詢(xún)、顯示列表等場(chǎng)景都?xì)w為查詢(xún)場(chǎng)景。下面以開(kāi)工申請(qǐng)的查詢(xún)?yōu)槔枋?Struts 為前端表現(xiàn)層的查詢(xún)場(chǎng)景: 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 10 頁(yè)Struts 為前端表現(xiàn)層的
20、查詢(xún)場(chǎng)景1.8關(guān)鍵的設(shè)計(jì)概念關(guān)鍵的設(shè)計(jì)概念1.8.1系統(tǒng)采用技術(shù)簡(jiǎn)介系統(tǒng)采用技術(shù)簡(jiǎn)介1.8.1.1MVC 模式簡(jiǎn)介模式簡(jiǎn)介 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 11 頁(yè)MVC 英文即 Model-View-Controller,即把一個(gè)應(yīng)用的輸入、處理、輸出流程按照Model、View、Controller 的方式進(jìn)行分離,這樣一個(gè)應(yīng)用被分成三個(gè)層-模型層、視圖層、控制層。 它們分別擔(dān)任不同的任務(wù),下圖顯示了這幾個(gè)模塊各自的功能以及它們之間的相互關(guān)系。視圖視圖視圖(View)代表用戶(hù)交互界面,對(duì)于 Web 應(yīng)用來(lái)說(shuō),可以概括為 HTML 界面,但有可能
21、為XHTML、XML 和 Applet。隨著應(yīng)用的復(fù)雜性和規(guī)模性,界面的處理也變得具有挑戰(zhàn)性。一個(gè)應(yīng)用可能有很多不同的視圖,MVC 設(shè)計(jì)模式對(duì)于視圖的處理僅限于視圖上數(shù)據(jù)的采集和處理,以及用戶(hù)的請(qǐng)求,而不包括在視圖上的業(yè)務(wù)流程的處理。業(yè)務(wù)流程的處理交予模型(Model)處理。比如一個(gè)訂單的視圖只接受來(lái)自模型的數(shù)據(jù)并顯示給用戶(hù),以及將用戶(hù)界面的輸入數(shù)據(jù)和請(qǐng)求傳遞給控制和模型。模型模型模型(Model)就是業(yè)務(wù)流程/狀態(tài)的處理以及業(yè)務(wù)規(guī)則的制定。業(yè)務(wù)流程的處理過(guò)程對(duì)其它層來(lái)說(shuō)是黑箱操作,模型接受視圖請(qǐng)求的數(shù)據(jù),并返回最終的處理結(jié)果。業(yè)務(wù)模型的設(shè)計(jì)可以說(shuō)是 MVC最主要的核心。目前流行的 EJB 模
22、型就是一個(gè)典型的應(yīng)用例子,它從應(yīng)用技術(shù)實(shí)現(xiàn)的角度對(duì)模型做了進(jìn)一步的劃分,以便充分利用現(xiàn)有的組件,但它不能作為應(yīng)用設(shè)計(jì)模型的框架。它僅僅告訴你按這種模型設(shè)計(jì)就可以利用某些技術(shù)組件,從而減少了技術(shù)上的困難。對(duì)一個(gè)開(kāi)發(fā)者來(lái)說(shuō),就可以專(zhuān)注于業(yè)務(wù)模型的設(shè)計(jì)。MVC 設(shè)計(jì)模式告訴我們,把應(yīng)用的模型按一定的規(guī)則抽取出來(lái),抽取的層次很重要,這也是判斷開(kāi)發(fā)人員是否優(yōu)秀的設(shè)計(jì)依據(jù)。抽象與具體不能隔得太遠(yuǎn),也不能太近。MVC并沒(méi)有提供模型的設(shè)計(jì)方法,而只告訴你應(yīng)該組織管理這些模型,以便于模型的重構(gòu)和提高重用性。 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 12 頁(yè)我們可以用對(duì)象編程
23、來(lái)做比喻,MVC 定義了一個(gè)頂級(jí)類(lèi),告訴它的子類(lèi)你只能做這些,但沒(méi)法限制你能做這些。 業(yè)務(wù)模型還有一個(gè)很重要的模型那就是數(shù)據(jù)模型。數(shù)據(jù)模型主要指實(shí)體對(duì)象的數(shù)據(jù) 保存(持續(xù)化)。比如將一張訂單保存到數(shù)據(jù)庫(kù),從數(shù)據(jù)庫(kù)獲取訂單。我們可以將這個(gè)模型單獨(dú)列出,所有有關(guān)數(shù)據(jù)庫(kù)的操作只限制在該模型中??刂破骺刂破骺刂?Controller)可以理解為從用戶(hù)接收請(qǐng)求, 將模型與視圖匹配在一起,共同完成用戶(hù)的請(qǐng)求。劃分控制層的作用也很明顯,它清楚地告訴你,它就是一個(gè)分發(fā)器,選擇什么樣的模型,選擇什么樣的視圖,可以完成什么樣的用戶(hù)請(qǐng)求。控制層并不做任何的數(shù)據(jù)處理。例如,用戶(hù)點(diǎn)擊一個(gè)連接,控制層接受請(qǐng)求后, 并不處
24、理業(yè)務(wù)信息,它只把用戶(hù)的信息傳遞給模型,告訴模型做什么,選擇符合要求的視圖返回給用戶(hù)。因此,一個(gè)模型可能對(duì)應(yīng)多個(gè)視圖,一個(gè)視圖可能對(duì)應(yīng)多個(gè)模型。MVC 處理過(guò)程首先控制器接受用戶(hù)的請(qǐng)求,并決定應(yīng)該調(diào)用哪個(gè)模型來(lái)進(jìn)行處理;然后模型根據(jù)用戶(hù)請(qǐng)求進(jìn)行相應(yīng)的業(yè)務(wù)邏輯處理,并返回?cái)?shù)據(jù);最后控制器調(diào)用相應(yīng)的視圖來(lái)格式化模型返回的數(shù)據(jù),并通過(guò)視圖呈現(xiàn)給用戶(hù)。MVC 的優(yōu)點(diǎn)首先,模型、視圖與控制器的分離,使得一個(gè)模型可以具有多個(gè)顯示視圖。如果用戶(hù)通過(guò)某個(gè)視圖的控制器改變了模型的數(shù)據(jù),所有其它依賴(lài)于這些數(shù)據(jù)的視圖都應(yīng)反映到這些變化。因此,無(wú)論何時(shí)發(fā)生了何種數(shù)據(jù)變化,控制器都會(huì)將變化通知所有的視圖,導(dǎo)致顯示的更新
25、。這實(shí)際上是一種模型的變化-傳播機(jī)制。其次,模型是自包含的,與控制器和視圖保持相對(duì)獨(dú)立,所以可以方便地改變應(yīng)用程序的數(shù)據(jù)層和業(yè)務(wù)規(guī)則。此外,控制器提高了應(yīng)用程序的靈活性和可配置性。MVC 的應(yīng)用范圍適用 MVC 需要精心的計(jì)劃,由于它的內(nèi)部原理比較復(fù)雜,所有需要花費(fèi)一些時(shí)間去理解它。將MVC 運(yùn)用導(dǎo)應(yīng)用系統(tǒng)中,會(huì)帶來(lái)額外的工作量,增加應(yīng)用的復(fù)雜性,所以 MVC 不適合小型應(yīng)用程序。但對(duì)于開(kāi)發(fā)存在大量用戶(hù)界面,并且業(yè)務(wù)邏輯復(fù)雜的大型應(yīng)用程序,MVC 將會(huì)使軟件在健壯性、代碼重用和結(jié)構(gòu)方面上一個(gè)新的臺(tái)階。盡管在最初構(gòu)建 MVC 框架時(shí)會(huì)花費(fèi)一定的工作量,但從長(zhǎng)遠(yuǎn)的角度來(lái)看,它會(huì)大大提高后期軟件開(kāi)發(fā)
26、的效率。MVC 與 J2EE 架構(gòu)的關(guān)系MVC 與 J2EE 架構(gòu)的對(duì)應(yīng)關(guān)系是:View 處于 Web Tier 或者說(shuō)是 Client Tier,通常是JSP/Servlet,即頁(yè)面顯示部分。Controller 也處于 Web Tier,通常用 Servlet 來(lái)實(shí)現(xiàn),即頁(yè)面顯 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 13 頁(yè)示的邏輯部分實(shí)現(xiàn)。Model 處于 Middle Tier,通常用服務(wù)端的 javaBean 或者 EJB 實(shí)現(xiàn),即業(yè)務(wù)邏輯部分的實(shí)現(xiàn)。MVC 與 Struts 的關(guān)系MVC 模式是一種架構(gòu)模式,其實(shí)需要其他模式協(xié)作完成。在 J2
27、EE 模式目錄中,通常采用service to worker 模式實(shí)現(xiàn),而 service to worker 模式可由集中控制器模式,派遣器模式和Page Helper 模式組成。而 Struts 只實(shí)現(xiàn)了 MVC 的 View 和 Controller 兩個(gè)部分,Model 部分需要開(kāi)發(fā)者自己來(lái)實(shí)現(xiàn),Struts 提供了抽象類(lèi) Action 使開(kāi)發(fā)者能將 Model 應(yīng)用于 Struts 框架中。1.8.1.2Struts 簡(jiǎn)介簡(jiǎn)介對(duì)于開(kāi)發(fā) Web 應(yīng)用,要從頭設(shè)計(jì)并開(kāi)發(fā)出一個(gè)可靠、穩(wěn)定的框架并不是一件容易的事。幸運(yùn)的是,隨著 web 開(kāi)發(fā)技術(shù)的日趨成熟,在 web 開(kāi)發(fā)領(lǐng)域出現(xiàn)了一些現(xiàn)成
28、的優(yōu)秀的框架,開(kāi)發(fā)者可以直接使用他們,Struts 就是一種不錯(cuò)的選擇,它是基于 MVC 的 Web 應(yīng)用框架。在 Struts 中,模型由實(shí)現(xiàn)業(yè)務(wù)邏輯的 JavaBean 或 EJB 組件構(gòu)成,控制器由 ActionServlet 和Action 來(lái)實(shí)現(xiàn),視圖由一組 JSP 文件構(gòu)成。下圖顯示了 Struts 實(shí)現(xiàn)的 MVC 框架。Struts-config.xml瀏瀏覽覽器器Web服服務(wù)務(wù)器器(控控制制器器)ActionServlet(視視圖圖)JSP(模模型型)EJBEJBEJBActionActionAction(Struts 實(shí)現(xiàn)的 MVC 框架)在 Struts 框架中,視圖就是一
29、組 JSP 文件,在這些 JSP 文件中沒(méi)有業(yè)務(wù)邏輯,也沒(méi)有模型信息,只由標(biāo)簽,這些標(biāo)簽可以是標(biāo)準(zhǔn)的 JSP 標(biāo)簽或客戶(hù)化標(biāo)簽,如 Struts 標(biāo)簽庫(kù)里的標(biāo)簽,此外,通常也將 Struts 框架中的 ActionForm Bean 也劃分到視圖模塊中。模型表示應(yīng)用程序的狀態(tài)和業(yè)務(wù)邏輯,在這里,我們用 JavaBean 和 EJB 組件來(lái)實(shí)現(xiàn)??刂破饔?ActionServlet 類(lèi)和 Action 類(lèi)來(lái)實(shí)現(xiàn)。在 Struts 中,模型、視圖、控制器三者之間的關(guān)系和各自的主要功能如下圖: 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 14 頁(yè)1.8.1.3EJB
30、 技術(shù)簡(jiǎn)介技術(shù)簡(jiǎn)介EJB 的概念的概念EJB 的全稱(chēng)是 Enterprise java bean。是 JAVA 中的商業(yè)應(yīng)用組件技術(shù)。EJB 結(jié)構(gòu)中的角色 EJB 組件結(jié)構(gòu)是基于組件的分布式計(jì)算結(jié)構(gòu),是分布式應(yīng)用系統(tǒng)中的組件。EJB 的體系結(jié)構(gòu)的體系結(jié)構(gòu)EJB 分布式應(yīng)用程序是基于對(duì)象組件模型的,低層的事務(wù)服務(wù)用了 API 技術(shù)。EJB 技術(shù)簡(jiǎn)化了用 JAVA 語(yǔ)言編寫(xiě)的企業(yè)應(yīng)用系統(tǒng)的開(kāi)發(fā),配置。EJB 技術(shù)定義了一組可重用的組件:Enterprise Beans。你可以利用這些組件,象搭積木一樣的建立你的分布式應(yīng)用程序。當(dāng)你把代碼寫(xiě)好之后,這些組件就被組合到特定的文件中去。每個(gè)文件有一個(gè)或多
31、個(gè) Enterprise Beans,在加上一些配置參數(shù)。最后,這些 Enterprise Beans 被配置到一個(gè)裝了 EJB 容器的平臺(tái)上。客戶(hù)能夠通過(guò)這些Beans 的 home 接口,定位到某個(gè) beans,并產(chǎn)生這個(gè) beans 的一個(gè)實(shí)例。這樣,客戶(hù)就能夠調(diào)用 Beans 的應(yīng)用方法和遠(yuǎn)程接口。EJB 服務(wù)器作為容器和低層平臺(tái)的橋梁管理著 EJB 容器和函數(shù)。它向 EJB 容器提供了訪(fǎng)問(wèn)系統(tǒng)服務(wù)的能力。例如:數(shù)據(jù)庫(kù)的管理和事務(wù)的管理,或者對(duì)于其它的 Enterprise 的應(yīng)用服務(wù)器。所有的 EJB 實(shí)例都運(yùn)行在 EJB 容器中。容器提供了系統(tǒng)級(jí)的服務(wù),控制了 EJB 的生命周期。
32、EJB 中的有一些易于使用的管理工具如:Security-配置描述器(The Deployment descriptor)定義了客戶(hù)能夠訪(fǎng)問(wèn)的不同的應(yīng)用函數(shù)。容器通過(guò)只允許授權(quán)的客戶(hù)訪(fǎng)問(wèn)這些函數(shù)來(lái)達(dá)到這個(gè)效果。Remote Connectivity-容器為遠(yuǎn)程鏈接管理著低層的通信 issues,而且對(duì) Enterprise Beas 的開(kāi)發(fā)者和客戶(hù)都隱藏了通信細(xì)節(jié)。EJB 的開(kāi)發(fā)者在編寫(xiě)應(yīng)用方法的時(shí)候,就象是在條用本地的平臺(tái)一樣的??蛻?hù)也不清楚他們調(diào)用的方法可能是在遠(yuǎn)程被處理的。Life Cycle managment-客戶(hù)簡(jiǎn)單的創(chuàng)建一個(gè) Enterprise beans 的實(shí)例,并通常取消一
33、個(gè)實(shí)例。而容器管理著 Enterprise Beans 的實(shí)例,使 Enterprise Beans 實(shí)現(xiàn)最大的效能 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 15 頁(yè)和內(nèi)存利用率。容器能夠這樣來(lái)激活和使 Enterprise Beans 失效,保持眾多客戶(hù)共享的實(shí)例池。等等。 Trasction management-配置描述器定義了 Enterprise beans 的事務(wù)處理的需求。容器管理著那些管理分布式事務(wù)處理的復(fù)雜的 issues。這些事務(wù)可能要在不同的平臺(tái)之間更新數(shù)據(jù)庫(kù)。容器使這些事務(wù)之間互相獨(dú)立,互不干擾。保證所有的更新數(shù)據(jù)庫(kù)都是成功發(fā)生的,
34、否者,就回滾到事務(wù)處理之前的狀態(tài)。EJB 組件是基于分布式事務(wù)處理的企業(yè)級(jí)應(yīng)用程序的組件。所有的 EJB 都有如下的特點(diǎn):EJB包含了處理企業(yè)數(shù)據(jù)的應(yīng)用邏輯。定義了 EJB 的客戶(hù)界面。這樣的界面不受容器和服務(wù)器的影響。于是,當(dāng)一個(gè) EJB 被集合到一個(gè)應(yīng)用程序中去時(shí),不用更改代碼和重新編譯。EJB 能夠被定制 各種系統(tǒng)級(jí)的服務(wù),例如安全和事務(wù)處理的特性,都不是屬于 EJB 類(lèi)的。而是由配置和組裝應(yīng)用程序的工具來(lái)實(shí)現(xiàn)。 EJB 的分類(lèi)的分類(lèi)有兩種類(lèi)型的 EJB: Session beans 和 entity beans。Sessionbeans 是一種作為單用戶(hù)執(zhí)行的對(duì)象。作為對(duì)遠(yuǎn)程的任務(wù)請(qǐng)求
35、的相應(yīng),容器產(chǎn)生一個(gè) Session beans 的實(shí)例。一個(gè) Session beans 有一個(gè)用戶(hù).從某種程度上來(lái)說(shuō),一個(gè) Session bean 對(duì)于服務(wù)器來(lái)說(shuō)就代表了它的那個(gè)用戶(hù).Session beans 也能用于事務(wù),它能夠更新共享的數(shù)據(jù),但它不直接描繪這些共享的數(shù)據(jù)。Session beans 的生命周期是相對(duì)較短的。典型的是,只有當(dāng)用戶(hù)保持會(huì)話(huà)的時(shí)候,Session beans 才是活著的。一旦用戶(hù)退出了,Session beans 就不再與用戶(hù)相聯(lián)系了。Session beans被看成是瞬時(shí)的,因?yàn)槿绻萜鞅罎⒘?,那么用?hù)必須重新建立一個(gè)新的 Session 對(duì)象來(lái)繼續(xù)會(huì)話(huà)
36、。Session bean 典型的聲明了與用戶(hù)的互操作或者會(huì)話(huà)。也就是說(shuō),Session bean 了在客戶(hù)會(huì)話(huà)期間,通過(guò)方法的調(diào)用,掌握用戶(hù)的信息。一個(gè)具有狀態(tài)的 Session bean 稱(chēng)為有狀態(tài)的 Session bean.當(dāng)用戶(hù)終止與 Session beans 互操作的時(shí)候.會(huì)話(huà)終止了,而且,bean 也不再擁有狀態(tài)值。Session bean 也可能是一個(gè)無(wú)狀態(tài)的 session bean.無(wú)狀態(tài)的 Session beans 并不掌握它的客戶(hù)的信息或者狀態(tài)。用戶(hù)能夠調(diào)用 beans 的方法來(lái)完成一些操作。但是,beans 只是在方法調(diào)用的時(shí)候才知道用戶(hù)的參數(shù)變量。當(dāng)方法調(diào)用完成
37、以后,beans 并不繼續(xù)保持這些參數(shù)變量。這樣,所有的無(wú)狀態(tài)的 session beans 的實(shí)例都是相同的,除非它正在方法調(diào)用期間。這樣,無(wú)狀態(tài)的Session beans 就能夠支持多個(gè)用戶(hù).容器能夠聲明一個(gè)無(wú)狀態(tài)的 Session beans.能夠?qū)⑷魏蜸ession beans 指定給任何用戶(hù)。Entity Beans 對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)提供了一種對(duì)象的視圖。例如:一個(gè) Entity bean 能夠模擬數(shù)據(jù)庫(kù)表中一行相關(guān)的數(shù)據(jù)。多個(gè) client 能夠共享訪(fǎng)問(wèn)同一個(gè) Entity bean.多個(gè) client 也能夠同時(shí)的訪(fǎng)問(wèn)同一個(gè) Entity bean.Entity beans 通
38、過(guò)事務(wù)的上下文來(lái)訪(fǎng)問(wèn)或更新下層的數(shù)據(jù)。這樣,數(shù)據(jù)的完整性就能夠被保證。Entity Beans 能存活相對(duì)教長(zhǎng)的時(shí)間,并且狀態(tài)是持續(xù)的。只要數(shù)據(jù)庫(kù)中的數(shù)據(jù)存在,Entity beans 就一直存活。而不是按照應(yīng)用程序或者服務(wù)進(jìn)程來(lái)說(shuō)的。即使 EJB 容器崩潰了,Entity beans 也是存活的。Entity Beans 生命周期能夠被容器或者 Beans 自己管理。如果 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 16 頁(yè)由容器控制著保證 Entity beans 持續(xù)的 issus。如果由 Beans 自己管理,就必須寫(xiě) Entity beans的代碼,
39、包括訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)的調(diào)用。 Entity Beans 是由主鍵(primary key 一種唯一的對(duì)象標(biāo)識(shí)符)標(biāo)識(shí)的。通常,主鍵與標(biāo)識(shí)數(shù)據(jù)庫(kù)中的一塊數(shù)據(jù),例如一個(gè)表中的一行,的主鍵是相同的。主鍵是client 能夠定位特定的數(shù)據(jù)塊。(增加 EJB3 介紹、吳華庭)1.8.1.4Web Service 簡(jiǎn)介簡(jiǎn)介Web Services 是建立可互操作的分布式應(yīng)用程序的新平臺(tái),是一種新的 web 應(yīng)用程序分支,他們是自包含、自描述、模塊化的應(yīng)用,可以發(fā)布、定位、通過(guò) web 調(diào)用。Web Service 可以執(zhí)行從簡(jiǎn)單的請(qǐng)求到復(fù)雜商務(wù)處理的任何功能。一旦部署以后,其他 Web Service 應(yīng)用程序
40、可以發(fā)現(xiàn)并調(diào)用它部署的服務(wù)。 Web Service 平臺(tái)需要一套協(xié)議來(lái)實(shí)現(xiàn)分布式應(yīng)用程序的創(chuàng)建。任何平臺(tái)都有它的數(shù)據(jù)表示方法和類(lèi)型系統(tǒng)。要實(shí)現(xiàn)互操作性,Web Service 平臺(tái)必須提供一套標(biāo)準(zhǔn)的類(lèi)型系統(tǒng),用于溝通不同平臺(tái)、編程語(yǔ)言和組件模型中的不同類(lèi)型系統(tǒng)。在傳統(tǒng)的分布式系統(tǒng)中,基于界面(interface)的平臺(tái)提供了一些方法來(lái)描述界面、方法和參數(shù)(譯注:如 com 和 cobar 中的 idl 語(yǔ)言。同樣的,Web Service 平臺(tái)也必須提供一種標(biāo)準(zhǔn)來(lái)描述 Web Service,讓客戶(hù)可以得到足夠的信息來(lái)調(diào)用這個(gè)Web Service。最后,我們還必須有一種方法來(lái)對(duì)這個(gè) Web
41、 Service 進(jìn)行遠(yuǎn)程調(diào)用。這種方法實(shí)際是一種遠(yuǎn)程過(guò)程調(diào)用協(xié)議(rpc)。同時(shí) rpc 協(xié)議還與編程語(yǔ)言無(wú)關(guān)。一般 Web Service 實(shí)現(xiàn)包含四個(gè)基本步驟:創(chuàng)建 Web Service 的商業(yè)邏輯(通常是一些 Java 類(lèi));將這些 Java 類(lèi)部署到一個(gè) SOAP 服務(wù)器上;生成客戶(hù)訪(fǎng)問(wèn)代碼;部署客戶(hù)應(yīng)用。而 Web Service由兩部分組成:SOAP-Web Service 之間的基本通信協(xié)議;WSDL-Web Service 描述語(yǔ)言,它定義了 Web Service 做什么,怎么做和查詢(xún)的信息。下圖描述了 Web Service 的 3 個(gè)組成部分-WSDL、SOAP、UD
42、DI。Web Service服務(wù)描述What,how,where服務(wù)消息RequestResponse公共網(wǎng)址URLWSDLSOAPUDDI 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 17 頁(yè)Web Service 的三個(gè)組成部分下面是組成 Web Service 平臺(tái)的三項(xiàng)技術(shù):1.8.1.4.1XML 和和 XSD 擴(kuò)展的標(biāo)記語(yǔ)言(xml)是 web service 平臺(tái)中表示數(shù)據(jù)的基本格式。除了易于建立和易于分析外,xml 主要的優(yōu)點(diǎn)在于它既是平臺(tái)無(wú)關(guān)的,又是廠(chǎng)商無(wú)關(guān)的。無(wú)關(guān)性是比技術(shù)優(yōu)越性更重要的:軟件廠(chǎng)商是不會(huì)選擇一個(gè)由競(jìng)爭(zhēng)對(duì)手所發(fā)明的技術(shù)的。 x
43、ml 解決了數(shù)據(jù)表示的問(wèn)題,但它沒(méi)有定義一套標(biāo)準(zhǔn)的數(shù)據(jù)類(lèi)型,更沒(méi)有說(shuō)怎么去擴(kuò)展這套數(shù)據(jù)類(lèi)型。例如,整形數(shù)到底代表什么?16 位,32 位,還是 64 位?這些細(xì)節(jié)對(duì)實(shí)現(xiàn)互操作性都是很重要的。w3c 制定的 xml schema(xsd)就是專(zhuān)門(mén)解決這個(gè)問(wèn)題的一套標(biāo)準(zhǔn)。它定義了一套標(biāo)準(zhǔn)的數(shù)據(jù)類(lèi)型,并給出了一種語(yǔ)言來(lái)擴(kuò)展這套數(shù)據(jù)類(lèi)型。Web Service 平臺(tái)就是用 xsd 來(lái)作為其數(shù)據(jù)類(lèi)型系統(tǒng)的。我們用 Java 來(lái)構(gòu)造一個(gè) Web Service 時(shí),為了符合 Web Service 標(biāo)準(zhǔn),所有使用的數(shù)據(jù)類(lèi)型都必須被轉(zhuǎn)換為 xsd 類(lèi)型。1.8.1.4.2SOAPWeb Service 建好
44、以后,就需要去調(diào)用它。簡(jiǎn)單對(duì)象訪(fǎng)問(wèn)協(xié)議(Soap)提供了標(biāo)準(zhǔn)的 rpc 方法來(lái)調(diào)用 Web Service。實(shí)際上,Soap 規(guī)范定義了 Soap 消息的格式,以及怎樣通過(guò) http 協(xié)議來(lái)使用Soap。Soap 也是基于 xml 和 xsd 的,xml 是 Soap 的數(shù)據(jù)編碼方式。Soap 是 XML Web Service 的通信協(xié)議。當(dāng)把 SOAP 描述為一種通信協(xié)議時(shí),多數(shù)人都會(huì)想到 DCOM 或 CORBA,并且會(huì)問(wèn)SOAP 如何激活對(duì)象?或SOAP 使用什么樣的命名服務(wù)?等問(wèn)題。雖然 SOAP 實(shí)現(xiàn)方案可能會(huì)包含上述內(nèi)容,但 SOAP 標(biāo)準(zhǔn)并未對(duì)其進(jìn)行規(guī)定。SOAP 一種規(guī)范,用
45、來(lái)定義消息的 XML 格式 - 這是規(guī)范中所必需的部分。包含在一對(duì) SOAP 元素中的、結(jié)構(gòu)正確的 XML 段就是 SOAP 消息。SOAP 規(guī)范的其他部分介紹如何將程序數(shù)據(jù)表示為 XML,以及如何使用 SOAP 進(jìn)行遠(yuǎn)程過(guò)程調(diào)用 (RPC)。這些可選的規(guī)范部分用于實(shí)現(xiàn) RPC 形式的應(yīng)用程序,其中客戶(hù)端將發(fā)出一條 SOAP 消息(包含可調(diào)用函數(shù),以及要傳送到該函數(shù)的參數(shù)),然后服務(wù)器將返回包含函數(shù)執(zhí)行結(jié)果的消息。目前,多數(shù) SOAP 實(shí)現(xiàn)方案都支持 RPC 應(yīng)用程序,這是因?yàn)榱?xí)慣于開(kāi)發(fā) COM 或 CORBA 應(yīng)用程序的編程人員熟悉 RPC 形式。SOAP 還支持文檔形式的應(yīng)用程序,在這類(lèi)應(yīng)
46、用程序中,SOAP 消息只是 XML 文檔的一個(gè)包裝。文檔形式的 SOAP 應(yīng)用程序非常靈活,許多新的 XML Web Service 都利用這一特點(diǎn)來(lái)構(gòu)建使用 RPC 難以實(shí)現(xiàn)的服務(wù)。SOAP 規(guī)范的最后一個(gè)可選部分定義了包含 SOAP 消息的 HTTP 消息的樣式。此 HTTP 綁定非常重要,因?yàn)閹缀跛挟?dāng)前的 OS(以及許多以前的 OS)都支持 HTTP。HTTP 綁定雖然是可選的,但幾乎所有 SOAP 實(shí)現(xiàn)方案都支持 HTTP 綁定,因?yàn)樗?SOAP 的唯一標(biāo)準(zhǔn)協(xié)議。由于這一原因,人們通常誤認(rèn)為 SOAP 必須使用 HTTP。其實(shí),有些實(shí)現(xiàn)方案也支持 MSMQ、MQ 廣東電網(wǎng)公司企業(yè)
47、級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 18 頁(yè)系列、SMTP 或 TCP/IP 傳輸,但由于 HTTP 非常普遍,幾乎所有當(dāng)前的 XML Web Service 都使用它。由于 HTTP 是 Web 的核心協(xié)議,因此大多數(shù)組織的網(wǎng)絡(luò)基礎(chǔ)結(jié)構(gòu)都支持 HTTP,并且員工已經(jīng)了解了如何對(duì)其進(jìn)行管理。如今,已經(jīng)建立了用于 HTTP 的安全保護(hù)、監(jiān)視和負(fù)載平衡的基礎(chǔ)結(jié)構(gòu)。1.8.1.4.3WSDL用機(jī)器能閱讀的方式提供一個(gè)正式的描述文檔。Web service 描述語(yǔ)言(WSDL)就是這樣一個(gè)基于 XML 的語(yǔ)言,用于描述 Web Service 及其函數(shù)、參數(shù)和返回值。因?yàn)槭腔?/p>
48、于 XML 的,所以WSDL 既是機(jī)器可閱讀的,又是人可閱讀的,這將是一個(gè)很大的好處。一些最新的開(kāi)發(fā)工具既能根據(jù)你的 Web Service 生成 WSDL 文檔,又能導(dǎo)入 WSDL 文檔,生成調(diào)用相應(yīng) Web Service 的代碼。1.8.1.4.4開(kāi)發(fā)開(kāi)發(fā) Web Service 的步驟的步驟1、編寫(xiě)服務(wù)器端導(dǎo)入 WebService 包和 WebMethod 包:import javax.jws.WebService; import javax.jws.WebMethod;實(shí)現(xiàn)的服務(wù)類(lèi)前加WebService 符號(hào); 為了代碼清晰,類(lèi)提供的公開(kāi)方法前加WebMethod 符號(hào),這個(gè)不寫(xiě)
49、對(duì)編譯也沒(méi)影響。2、編譯服務(wù)器端javac 命令的 classpath 選項(xiàng)中要有 javaee.jar 的路徑,如 javac -classpath d:/Sun/SDK/lib/javaee.jar -d ./build src/endpoint/Hello.java用 wsgen 命令生成 wsdl 文件.服務(wù)器端打包。3、在客戶(hù)端機(jī)器上自動(dòng)生成 stub 類(lèi)客戶(hù)機(jī)上必須也裝有 jdk 和 javaee5用 wsimport 工具將服務(wù)器傳過(guò)來(lái)的 wsdl 文件轉(zhuǎn)換成本地的 stub 類(lèi)4、編寫(xiě)客戶(hù)端調(diào)用代碼導(dǎo)入 WebServiceRef 包:import javax.xml.ws.W
50、ebServiceRef;導(dǎo)入本地生成的 stub 類(lèi),如:import endpoint.HelloService;import endpoint.Hello;指明服務(wù)器的 wsdl 路徑:WebServiceRef(wsdlLocation=http:/localhost:8080/xxx/xxxService?WSDL)聲明一個(gè)靜態(tài)的 service 對(duì)象:static HelloService service;對(duì)要調(diào)用的遠(yuǎn)程方法聲明一個(gè)代理對(duì)象,通過(guò)代理來(lái)調(diào)用真正的遠(yuǎn)程方法5、編譯客戶(hù)端調(diào)用程序,注意 classpath 參數(shù)中要有 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康
51、拓普信息技術(shù)有限公司 第 19 頁(yè)stub 類(lèi)的路徑;javaee.jar 的路徑;appserv-ws.jar 的路徑。6、用 appclient 執(zhí)行客戶(hù)端程序進(jìn)入到客戶(hù)端程序的上級(jí)目錄;把 APPCPATH 的值設(shè)置為當(dāng)前目錄;appclient 的第一個(gè)參數(shù)為客戶(hù)端程序名,后面的參數(shù)是傳給客戶(hù)端程序本身的命令行參數(shù)。下圖是分布式服務(wù)下 Web Service 的實(shí)現(xiàn)結(jié)構(gòu)圖:客戶(hù)端程序JAX-RPC StubJAX-RPC運(yùn)行環(huán)境JAX-RPCTieJAX-RPC運(yùn)行環(huán)境服務(wù)接口實(shí)現(xiàn)(無(wú)狀態(tài)會(huì)話(huà)Bean或者Java對(duì)象)業(yè)務(wù)邏輯實(shí)現(xiàn)層Web ServiceHTTP傳輸SOAP請(qǐng)求服務(wù)實(shí)現(xiàn)
52、返回結(jié)果Web Service 的基本結(jié)構(gòu)圖客戶(hù)端需要根據(jù) WSDL 創(chuàng)建客戶(hù)端 Java 程序,其中包括 Stub 程序??蛻?hù)端調(diào)用相應(yīng)的 Stub 程序,進(jìn)一步調(diào)用 JAX-RPC(Java APIs for XML-Based Remote Procedure Call,基于 XML 的遠(yuǎn)程過(guò)程調(diào)用的 Java API)運(yùn)行環(huán)境創(chuàng)建 SOAP 請(qǐng)求消息,通過(guò) HTTP 傳輸給服務(wù)器端。Web 服務(wù)器端的 JAX-RPC 運(yùn)行環(huán)境在收到 SOAP 請(qǐng)求消息后,對(duì) SOAP 的 XML 內(nèi)容進(jìn)行解析,再通過(guò) Tie 來(lái)調(diào)用服務(wù)接口實(shí)現(xiàn)類(lèi)(無(wú)狀態(tài)會(huì)話(huà) Bean 或者 Java 對(duì)象),得到結(jié)果
53、后,創(chuàng)建SOAP 響應(yīng)消息返回給客戶(hù)端。1.8.2 系統(tǒng)中的系統(tǒng)中的 J2EE 應(yīng)用模式應(yīng)用模式本系統(tǒng)主要采用 J2EE 和 JSP 兩項(xiàng)技術(shù)構(gòu)建,同時(shí)還有 Struts 和 XML。J2EE 應(yīng)用于服務(wù)器端,主要采用 EJB 技術(shù),提供與數(shù)據(jù)庫(kù)的交互、與 Struts 的通信。EJB 分為實(shí)體 Bean 和會(huì)話(huà)Bean 兩大部分,實(shí)體 Bean 全部采用 CMP(即容器管理的持續(xù)),特殊情況下可采用 BMP(Bean 管 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 20 頁(yè)理的持續(xù)),CMP 實(shí)現(xiàn)與數(shù)據(jù)庫(kù)的交互,實(shí)現(xiàn)對(duì)數(shù)據(jù)的存取以及數(shù)據(jù)庫(kù)事務(wù)的管理;會(huì)話(huà) B
54、ean 實(shí)現(xiàn)業(yè)務(wù)邏輯,對(duì)數(shù)據(jù)進(jìn)行邏輯處理,同時(shí)提供了 Struts 的訪(fǎng)問(wèn)接口??紤]到系統(tǒng)中存在大量數(shù)據(jù)的訪(fǎng)問(wèn),如果客戶(hù)端直接調(diào)用 CMP,那么將產(chǎn)生大量的 RMI 調(diào)用,從而加重網(wǎng)絡(luò)負(fù)載,影響系統(tǒng)的性能。因此系統(tǒng)中的 EJB 采用 Value Object(值對(duì)象)模式,將要顯示給用戶(hù)的數(shù)據(jù)封裝到值對(duì)象中,然后通過(guò)會(huì)話(huà) Bean 的方法調(diào)用返回給客戶(hù)端。另外,采用了 PPI模式(Page By Page Iterator)等進(jìn)行數(shù)據(jù)的分頁(yè)顯示,進(jìn)一步減輕網(wǎng)絡(luò)負(fù)載,提高系統(tǒng)的訪(fǎng)問(wèn)效率。同時(shí)結(jié)合 DAO 模式(Data Access Object)等實(shí)現(xiàn)對(duì)部分?jǐn)?shù)據(jù)的存取訪(fǎng)問(wèn)??紤]到深圳供電局目要
55、求門(mén)戶(hù)信息管理系統(tǒng)上能夠及時(shí)的反映項(xiàng)目管理系統(tǒng)的各項(xiàng)指標(biāo),以便提供給領(lǐng)導(dǎo)查閱、參考或決策,我們采用了基于 WebService 的技術(shù)來(lái)實(shí)現(xiàn)項(xiàng)目管理系統(tǒng)數(shù)據(jù)指標(biāo)的定時(shí)存取功能,這種技術(shù)允許網(wǎng)絡(luò)上的所有系統(tǒng)進(jìn)行交互。隨著技術(shù)的發(fā)展,一個(gè) Web 服務(wù)可以包含額外的指定功能并且可以在多個(gè) B2B 應(yīng)用中協(xié)作通訊。 Web 服務(wù)可以理解請(qǐng)求中上下文的關(guān)系,并且在每一個(gè)特定的情況下產(chǎn)生動(dòng)態(tài)的結(jié)果。這些服務(wù)會(huì)根據(jù)用戶(hù)的身份,地點(diǎn)以及產(chǎn)生請(qǐng)求的原因來(lái)改變不同的處理,用以產(chǎn)生一個(gè)唯一的,定制的方案。這種協(xié)作機(jī)制對(duì)那些只對(duì)最終結(jié)果有興趣的用戶(hù)來(lái)說(shuō),是完全透明的。系統(tǒng)提供把項(xiàng)目導(dǎo)出導(dǎo)入 XML 文檔的功能,同時(shí)
56、系統(tǒng)還采用 XML 技術(shù)實(shí)現(xiàn)系統(tǒng)配置文件的訪(fǎng)問(wèn)。XML 是一種能夠讓你自己創(chuàng)造標(biāo)識(shí)的語(yǔ)言,它可以將數(shù)據(jù)與格式從網(wǎng)頁(yè)中分開(kāi),它可以?xún)?chǔ)存數(shù)據(jù)和共享數(shù)據(jù),在本系統(tǒng)中就是利用 XML 的這種特性來(lái)進(jìn)行數(shù)據(jù)的傳輸和存儲(chǔ)。另外,對(duì)于系統(tǒng)中部分信息的 Excel 導(dǎo)入導(dǎo)出采用第三方軟件 POI 實(shí)現(xiàn),對(duì)系統(tǒng)報(bào)表的數(shù)據(jù)展示使用到了 WebService。下面是以上描述的圖解: 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 21 頁(yè)EntityBeanSessionBeanDelegate(業(yè)務(wù)代表)DataBase讀取數(shù)據(jù)調(diào)用SessionBean的方法類(lèi)類(lèi)端端模模型型(E E
57、J JB B)S St tr ru ut ts s方方式式Filter(進(jìn)行編碼和session過(guò)期判斷)JSP(顯示)ActionForm通過(guò)Action調(diào)用業(yè)務(wù)代表方法與ActionForm數(shù)據(jù)交互通過(guò)配置文件對(duì)其控制調(diào)用Taglib調(diào)用標(biāo)簽顯示控制ActionServletDA0調(diào)用DAO的方法通過(guò)jdbc進(jìn)行數(shù)據(jù)交互ActionHttp輸入通過(guò)JPA Annotation訪(fǎng)問(wèn)EntityBean1.8.3 系統(tǒng)應(yīng)用的字符編碼系統(tǒng)應(yīng)用的字符編碼(統(tǒng)一用 GBK)無(wú)論是對(duì) Web 應(yīng)用的本地化還是國(guó)際化,都會(huì)涉及到字符編碼轉(zhuǎn)換問(wèn)題,Web 應(yīng)用的各種可能的輸入和輸出,當(dāng)數(shù)據(jù)流的源與目的地使
58、用不同的字符編碼時(shí),就需要對(duì)字符編碼進(jìn)行正確的轉(zhuǎn)換。 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 22 頁(yè)Web客客戶(hù)戶(hù)數(shù)數(shù)據(jù)據(jù)庫(kù)庫(kù)Web應(yīng)應(yīng)用用Web容器XML配配置置文文件件輸入表單數(shù)據(jù)輸出數(shù)據(jù)(Web 應(yīng)用的輸入流和輸出流)1、處理 Http 請(qǐng)求數(shù)據(jù)編碼默認(rèn)情況下,IE 瀏覽器發(fā)送請(qǐng)求時(shí)采用ISO-8859-1字符編碼,如果 Web 應(yīng)用程序要正確的讀取用戶(hù)發(fā)送的中文數(shù)據(jù),則需要進(jìn)行編碼轉(zhuǎn)換。系統(tǒng)通過(guò)公用的字符編碼轉(zhuǎn)換函數(shù)來(lái)進(jìn)行處理2、處理 XML 配置文件編碼在 XML 文件中包含有中文,將 XML 文件字符編碼設(shè)為GB2312,這樣在 Java 程
59、序加載和解析 XML 文件時(shí)無(wú)需再進(jìn)行編碼轉(zhuǎn)換。 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 23 頁(yè) 3、處理資源文件編碼定義資源文件創(chuàng)建資源文件按照配置文件,創(chuàng)建對(duì)應(yīng)的資源文件 ApplicationResources-impproject.properties對(duì)資源文件進(jìn)行編碼轉(zhuǎn)換編碼轉(zhuǎn)化采用 JKD 中提供的 native2ascii 命令,在 DOS 下執(zhí)行如下命令,將生成按照GB2312 編碼的中文資源文件 ApplicationResources-impproject_zh_CN.properties當(dāng) Web 客戶(hù)的 Locale 為中文時(shí),系
60、統(tǒng)框架將自動(dòng)選擇來(lái)自ApplicationResources-impproject_zh_CN.properties 文件的消息文本。 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 24 頁(yè)1.8.4 表單驗(yàn)證表單驗(yàn)證系統(tǒng)采用 Validator 驗(yàn)證框架引入 Validator,在配置文件中添加插件:添加要驗(yàn)證的表單字段的信息:資源文件定義如下:1.8.5 工作流應(yīng)用開(kāi)發(fā)工作流應(yīng)用開(kāi)發(fā)現(xiàn)代企業(yè)管理通常圍繞一個(gè)或多個(gè)業(yè)務(wù)流程展開(kāi)企業(yè)的各種活動(dòng)和各項(xiàng)日常工作。通過(guò)業(yè)務(wù)流程協(xié)調(diào)企業(yè)各種物質(zhì)和人力資源,利用計(jì)算機(jī)以流程驅(qū)動(dòng)的工作流技術(shù)應(yīng)運(yùn)而生。 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)
61、管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 25 頁(yè)工作流就是在一個(gè)業(yè)務(wù)處理過(guò)程中的信息流和控制流。信息流就是部門(mén)之間傳遞的各種文檔、消息和數(shù)據(jù)??刂屏鳑Q定了在哪些部門(mén)、那些人之間傳遞信息,以及傳遞的次序。工作流系統(tǒng)的任務(wù)就是高效地管理公司業(yè)務(wù)處理過(guò)程中的這種信息流和控制流。工作流系統(tǒng)的特點(diǎn):采用圖形化的描述手段,根據(jù)企業(yè)業(yè)務(wù)審批的過(guò)程模型,定義各種不同業(yè)務(wù)及其流程模型,約束各個(gè)環(huán)節(jié)的辦理權(quán)限和時(shí)限,使業(yè)務(wù)審批過(guò)程更加直觀(guān),更加清晰,更加規(guī)范;通過(guò)圖形化工作流定義的強(qiáng)大功能,可以迅速實(shí)現(xiàn)業(yè)務(wù)審批過(guò)程的變更和重組。工作流系統(tǒng)的核心采用純 JAVA 編程,不依賴(lài)于運(yùn)行的硬件和操作系統(tǒng)平
62、臺(tái);根據(jù)流程定義,控制流程的流轉(zhuǎn)過(guò)程和工作流執(zhí)行過(guò)程中各種狀態(tài)和狀態(tài)變化,同時(shí)為用戶(hù)提供流程跟蹤信息,使得用戶(hù)能隨時(shí)查看流程的當(dāng)前狀態(tài)和流程的執(zhí)行過(guò)程。為了定義流程并使用流程引擎的強(qiáng)大功能,應(yīng)用程序需要調(diào)用工作流系統(tǒng)提供的接口。我們盡量為方便開(kāi)發(fā)考慮,為用戶(hù)提供功能強(qiáng)大而調(diào)用簡(jiǎn)單的接口,使用戶(hù)在短時(shí)間內(nèi)便可開(kāi)發(fā)出滿(mǎn)足需要的應(yīng)用程序。1.8.5.1工作流系統(tǒng)的組成工作流系統(tǒng)的組成工作流系統(tǒng)有以下三大模塊(如下圖):工作流定義模塊;工作流引擎;應(yīng)用程序調(diào)用接口;工作流平臺(tái)關(guān)系示意圖1.8.5.2工作流定義工作流定義 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)深圳市康拓普信息技術(shù)有限公司 第 26
63、 頁(yè)通過(guò)分析、建模將業(yè)務(wù)過(guò)程轉(zhuǎn)化成某種能夠被計(jì)算機(jī)處理的形式化表示,我們稱(chēng)之為流程定義。為了能使用戶(hù)直觀(guān)、方便的定義流程,我們提供了圖形化的流程設(shè)計(jì)器,具體使用人員通過(guò)簡(jiǎn)單拖拽即可輕松地完成流程定義工作;流程定義能夠滿(mǎn)足業(yè)務(wù)管理過(guò)程中各種審批業(yè)務(wù)的需要,能夠?qū)崿F(xiàn)定向回退、條件分支等復(fù)雜流程。流程設(shè)計(jì)器采用純 JAVA 編程,不依賴(lài)于運(yùn)行的硬件和操作系統(tǒng)平臺(tái);采用中間件技術(shù),穩(wěn)定、高效地完成分布式系統(tǒng)的通訊和協(xié)作,使得工作流的定義工作不依賴(lài)于處理服務(wù)器和服務(wù)器的運(yùn)行環(huán)境。流程有以下基本概念:1、活動(dòng)(Activity)任何一個(gè)業(yè)務(wù)流程都可以分解到最基本的行為步驟,稱(chēng)為活動(dòng)。它代表了為完成流程的最
64、終目的而執(zhí)行的獨(dú)立(最?。┤蝿?wù)?;顒?dòng)可能是人工執(zhí)行的,也可能是自動(dòng)執(zhí)行的。 連接(Connector)這是對(duì)業(yè)務(wù)流程活動(dòng)之間的時(shí)間邏輯和處理邏輯關(guān)系的描述。2、參與者(Participant)參與者是部分或全部執(zhí)行某個(gè)活動(dòng)的實(shí)例(即活動(dòng)的一次運(yùn)行)的人。每位參與者都必須具有屬于某個(gè)(某些)角色的屬性。 3、角色(Role)角色是組織中具有完成特定活動(dòng)能力的參與者的邏輯表示。業(yè)務(wù)中的每個(gè)活動(dòng)都要有角色與之相對(duì)應(yīng),并且需要屬于相應(yīng)角色的資源來(lái)完成。參與者可能會(huì)屬于一個(gè)或多個(gè)角色,反之亦然。 4、數(shù)據(jù)源(Data Source)業(yè)務(wù)流程中用于活動(dòng)存取的數(shù)據(jù)介質(zhì)的集合。任何活動(dòng)的執(zhí)行都有可能涉及數(shù)據(jù)或
65、信息的處理,訪(fǎng)問(wèn)數(shù)據(jù)源有讀(read)和寫(xiě)(write)兩種基本的形式。流程設(shè)計(jì)器兼有業(yè)務(wù)流程建模和工作流建模的功能特性,用戶(hù)使用設(shè)計(jì)器即可對(duì)實(shí)際的業(yè)務(wù)流程進(jìn)行信息建模,由此產(chǎn)生圖形方式表達(dá)的業(yè)務(wù)模型。其中繪制的基本圖元包括:開(kāi)始、結(jié)束標(biāo)志及活動(dòng)(節(jié)點(diǎn))和連接。在每個(gè)活動(dòng)上可附加定義規(guī)則屬性,以便動(dòng)態(tài)決定實(shí)際執(zhí)行路徑的選擇。設(shè)計(jì)器提供以下功能幫助用戶(hù)定義流程:增加開(kāi)始節(jié)點(diǎn)(標(biāo)志);增加結(jié)束節(jié)點(diǎn)(標(biāo)志);增加任務(wù)節(jié)點(diǎn)(活動(dòng));增加流程分叉的條件節(jié)點(diǎn);增加子流程;增加消息廣播節(jié)點(diǎn):增加表示流程執(zhí)行路徑的連接,連接有三種方式表示執(zhí)行路徑;刪除節(jié)點(diǎn)、連接; 廣東電網(wǎng)公司企業(yè)級(jí)資產(chǎn)管理系統(tǒng)概要設(shè)計(jì)說(shuō)明書(shū)
66、深圳市康拓普信息技術(shù)有限公司 第 27 頁(yè)定義任務(wù)節(jié)點(diǎn)的屬性;定義條件節(jié)點(diǎn)的屬性;定義流程的基本屬性;定義流程角色。1.6.5.3工作流引擎工作流引擎工作流引擎是工作流運(yùn)行時(shí)控制系統(tǒng)的核心部分,提供工作流過(guò)程的管理及各活動(dòng)步驟之間的狀態(tài)轉(zhuǎn)換,各種過(guò)程實(shí)例的執(zhí)行都是由它負(fù)責(zé)完成的。工作流引擎解釋流程定義,完成流程的可操作實(shí)例的創(chuàng)建及控制,調(diào)度流程中各活動(dòng)步驟,為所涉及到的用戶(hù)生成待其處理的任務(wù),并在合適的時(shí)機(jī)調(diào)用有關(guān)的應(yīng)用程序資源,等等。工作流引擎主要提供以下功能:分析流程定義流程在執(zhí)行過(guò)程中,工作流引擎分析該流程的定義,通過(guò)分析定義的語(yǔ)意獲得當(dāng)前流程的狀態(tài),當(dāng)前執(zhí)行任務(wù),以及定義時(shí)為該任務(wù)指定的執(zhí)行方式、該任務(wù)處理完成后的轉(zhuǎn)交情況等信息。工作流引擎主要分析以下和任務(wù)有關(guān)的信息:任務(wù)是不是發(fā)送給同部門(mén)的用戶(hù)處理。這里的部門(mén)是泛指,既可以是一個(gè)科室、一個(gè)部門(mén)、一個(gè)分公司等等。進(jìn)行這樣的語(yǔ)意分析是重要和有意義的,因?yàn)榧瘓F(tuán)公司下屬若干分公司,分公司又有若干部門(mén),部門(mén)中的每個(gè)人可能是申請(qǐng)人、處理人、審批人等等。假如員工要申請(qǐng)一項(xiàng)任務(wù),首先報(bào)本部門(mén)的部門(mén)經(jīng)理審批,然后逐級(jí)上報(bào)到集團(tuán)公司。我們根據(jù)集
- 溫馨提示:
1: 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 初中生物--人體的呼吸1-人教版課件
- 社會(huì)研究方法mpa論文寫(xiě)作PPT培訓(xùn)課件
- 2020高考語(yǔ)文專(zhuān)題-圖文轉(zhuǎn)換漫畫(huà)答題技巧ppt課件
- 《語(yǔ)言表達(dá)之補(bǔ)寫(xiě)語(yǔ)句》ppt課件
- 肺心病診斷及治療(與“肺動(dòng)脈”有關(guān)的文檔共46張)
- 中考?xì)v史一輪專(zhuān)題復(fù)習(xí)壟斷資本主義時(shí)代的世界課件
- 重慶市結(jié)核病防治基本DOTS細(xì)則介紹
- 鋁的化合物(教育精品)
- 軸對(duì)稱(chēng)(例1)(教育精品)
- 愛(ài)之鏈chuan(教育精品)
- bs71p44(教育精品)
- bh(教育精品)
- 北師大版小學(xué)五年級(jí)語(yǔ)文上冊(cè)《生命與水》課件
- 13白鵝ppt(教育精品)
- 荷葉圓圓 (5)課件