1引言
通常情況下,市場(chǎng)上各種倉(cāng)庫(kù)管理軟件對(duì)物資的分類管理方式,與企業(yè)對(duì)物資的管理方式不符合,管理軟件存在功能缺乏和功能冗余的不足。在實(shí)地考察研究淮南礦業(yè)集團(tuán)某礦實(shí)際運(yùn)作的情況下,為了解決企業(yè)在管理物資管理過(guò)程中出現(xiàn)的問(wèn)題,研究設(shè)計(jì)了一套倉(cāng)儲(chǔ)物資管理系統(tǒng)。
傳統(tǒng)的物資管理系統(tǒng)都實(shí)現(xiàn)了工作流引擎,工作流技術(shù)很好地解決了軟件系統(tǒng)與企業(yè)對(duì)物資的管理流程不一致問(wèn)題,同時(shí)可以非常清楚快捷地描述業(yè)務(wù)流程,監(jiān)控管理工作的進(jìn)程。文獻(xiàn)中提到了工作流技術(shù)和物聯(lián)網(wǎng)技術(shù)的結(jié)合,但它只闡述它們之間的協(xié)作。而本文在深入研究工作流技術(shù)和物聯(lián)網(wǎng)技術(shù)后,結(jié)合物聯(lián)網(wǎng)智能,自動(dòng)化和可靠的特點(diǎn),通過(guò)融合物聯(lián)網(wǎng)技術(shù)和工作流技術(shù)的思想來(lái)設(shè)計(jì)軟件架構(gòu),實(shí)現(xiàn)了用物聯(lián)網(wǎng)信息傳輸?shù)乃枷雭?lái)設(shè)計(jì)基于網(wǎng)絡(luò)信息流的工作流引擎,按此思想,軟件系統(tǒng)中的物資不僅僅只是表單中的一套數(shù)據(jù),而且也是一個(gè)對(duì)象,物資屬性的改變作為信息流在各管理人員之間傳閱。在此基礎(chǔ)上實(shí)現(xiàn)了物資管理軟件,很好地解決了該企業(yè)在管理工程中出現(xiàn)的各種業(yè)務(wù)問(wèn)題。
2系統(tǒng)總體架構(gòu)設(shè)計(jì)
本系統(tǒng)深入分析研究了該礦業(yè)集團(tuán)的物資管理流程,按照信息化標(biāo)準(zhǔn),運(yùn)用結(jié)構(gòu)模塊化,面向?qū)ο蟮乃枷,?duì)系統(tǒng)進(jìn)行全新設(shè)計(jì)。
2. 1系統(tǒng)需求
系統(tǒng)需要協(xié)調(diào)物管部門和各個(gè)普通部門(如煤炭管理科,掘進(jìn)一區(qū)等)之間的物資流轉(zhuǎn)工作,物管部門和各個(gè)普通部門都有一個(gè)各自獨(dú)立的物資倉(cāng)庫(kù),在每一個(gè)流程中涉及到各種類型的人員的協(xié)作,系統(tǒng)中基本的人員角色有庫(kù)管員,部門科長(zhǎng),材料員,送料員,普通人員等,不同的角色代表不同的權(quán)限,系統(tǒng)人員以不同的角色參與到業(yè)務(wù)活動(dòng)中。
2.2模塊劃分及整體架構(gòu)
系統(tǒng)的模塊和整體架構(gòu)后端主要包括權(quán)限控制、數(shù)據(jù)安全控制、業(yè)務(wù)流程設(shè)計(jì)、業(yè)務(wù)管理、流程引擎等模塊。其中流程引擎模塊是本系統(tǒng)的核心模塊。
3設(shè)計(jì)思想
本系統(tǒng)采用架構(gòu)設(shè)計(jì)軟件,除網(wǎng)站服務(wù)器外,瀏覽器請(qǐng)求提交數(shù)據(jù)的方式都采用Ajax技術(shù),數(shù)據(jù)格式采用二技術(shù),具體采用什么格式則根據(jù)數(shù)據(jù)傳輸要求和JSON或XML的特點(diǎn)來(lái)確定。該技術(shù)可以提高交互體驗(yàn),減少傳輸?shù)娜哂鄶?shù)據(jù)。為實(shí)現(xiàn)請(qǐng)求統(tǒng)一,JSON和XML嚴(yán)格按照事先設(shè)計(jì)好的交互協(xié)議,數(shù)據(jù)返回的格式同樣嚴(yán)格規(guī)定,同時(shí)對(duì)必要的數(shù)據(jù)如用戶密碼進(jìn)行加密傳輸。
在后臺(tái)服務(wù)器端,系統(tǒng)首先檢查用戶的Session是否超時(shí),后臺(tái)所有服務(wù)必須是在用戶已經(jīng)登錄的情況下才能訪問(wèn)。系統(tǒng)接著解析前端發(fā)來(lái)的請(qǐng)求,然后把請(qǐng)求交給權(quán)限安全控制模塊,以過(guò)濾不合理或違法的請(qǐng)求,最后該模塊按請(qǐng)求指示的業(yè)務(wù)類型把它分發(fā)到對(duì)應(yīng)的模塊,各模塊執(zhí)行實(shí)際的請(qǐng)求后,生成對(duì)應(yīng)的SQL請(qǐng)求,這樣的請(qǐng)求再交由數(shù)據(jù)安全控制模塊,以產(chǎn)生最終的SQL語(yǔ)句,返回的SQL請(qǐng)求再層層返回到前端,瀏覽器把系統(tǒng)返回來(lái)的數(shù)據(jù)展示給用戶。在這個(gè)過(guò)程中,如果哪個(gè)模塊里面的檢查,或者處理出現(xiàn)異常,系統(tǒng)會(huì)立即檢測(cè)到,并把異常信息經(jīng)過(guò)加工處理后返回給前臺(tái)瀏覽器。
權(quán)限安全控制模塊主要檢查用戶發(fā)來(lái)的請(qǐng)求數(shù)據(jù)格式是否符合通信協(xié)議,是否有權(quán)限訪問(wèn)該模塊,是否超出該模塊開(kāi)放給該用戶的'權(quán)限等。數(shù)據(jù)安全控制主要是檢查數(shù)據(jù)更新是否影響數(shù)據(jù)庫(kù)的完整性,一致性要求,同時(shí)檢查用戶權(quán)限,已達(dá)到對(duì)用戶權(quán)限在數(shù)據(jù)記錄級(jí)別的控制。
4網(wǎng)絡(luò)信息流引擎實(shí)現(xiàn)
4. 1相關(guān)技術(shù)
工作流管理是支持組織業(yè)務(wù)過(guò)程高效運(yùn)行的思想、理論、方法、技能和系統(tǒng)的總稱,它可以實(shí)現(xiàn)業(yè)務(wù)的自動(dòng)執(zhí)行。工作流模型是對(duì)工作流的抽象表示,比較常見(jiàn)的工作流建模方法有:基于Petri網(wǎng)的工作流建模方法,基于時(shí)間驅(qū)動(dòng)的工程鏈工作流建模方法,基于語(yǔ)言為的工作流建模方法,基于活動(dòng)網(wǎng)絡(luò)圖的建模方法等。本文將結(jié)合物聯(lián)網(wǎng)信息傳輸?shù)乃枷,在基于活?dòng)網(wǎng)絡(luò)圖的基礎(chǔ)上研究設(shè)計(jì)出基于網(wǎng)絡(luò)信息流模型的工作流建模方法。
4.2物聯(lián)網(wǎng)信息傳輸特點(diǎn)
物聯(lián)網(wǎng)是由大量的傳感器節(jié)點(diǎn)組成,傳感器能感知環(huán)境的變化,并把這種變化信息通過(guò)網(wǎng)絡(luò)傳給匯聚節(jié)點(diǎn),信息經(jīng)過(guò)匯聚節(jié)點(diǎn)處理后,再通過(guò)網(wǎng)絡(luò)到達(dá)主機(jī),主機(jī)根據(jù)傳感器送來(lái)的消息進(jìn)行信息融合處理,最后把處理結(jié)果再反饋給用戶,把控制信息反饋給傳感器。
為了更好地在工作流中使用物聯(lián)網(wǎng)信息傳輸?shù)乃枷,現(xiàn)作如下的規(guī)定,一個(gè)環(huán)境(一個(gè)倉(cāng)庫(kù))中存在不同的網(wǎng)絡(luò)(各種類型的業(yè)務(wù)流程),一個(gè)網(wǎng)絡(luò)中有且僅有一個(gè)CN節(jié)點(diǎn),多個(gè)SN節(jié)點(diǎn)(各種物資,物資的屬性改變作為傳感器的信號(hào)),多個(gè)RN節(jié)點(diǎn)(不同的參與處理流程的人員),這里的RN和HN因?yàn)楣δ芤粯,所以不作區(qū)分,統(tǒng)稱為RN。系統(tǒng)會(huì)首先按照用戶的操作生成一個(gè)CN節(jié)點(diǎn)并把消息給CN節(jié)點(diǎn),這個(gè)網(wǎng)絡(luò)就動(dòng)起來(lái)了。
4. 3網(wǎng)絡(luò)信息流引擎設(shè)計(jì)
工作流實(shí)際上是一個(gè)網(wǎng)絡(luò),一個(gè)表單從網(wǎng)絡(luò)的起點(diǎn)開(kāi)始,經(jīng)過(guò)節(jié)點(diǎn)的處理到達(dá)下一個(gè)節(jié)點(diǎn),直到該節(jié)點(diǎn)是結(jié)束類型的節(jié)點(diǎn),流程才正式結(jié)束。本系統(tǒng)初步實(shí)現(xiàn)了按照文獻(xiàn)提到的調(diào)度策略,其擴(kuò)展的工作流引擎。這樣的好處是使得業(yè)務(wù)能更好地調(diào)度。
由于在本系統(tǒng)中工作業(yè)務(wù)流程都與倉(cāng)庫(kù)的物資流轉(zhuǎn)(入庫(kù)、出庫(kù))相關(guān),在系統(tǒng)設(shè)計(jì)的過(guò)程中,把物資信息抽象成SN節(jié)點(diǎn),傳統(tǒng)流程里的表單就是一個(gè)CN節(jié)點(diǎn)。流程開(kāi)始時(shí),CN首先收集SN的消息(物資數(shù)量,狀態(tài)的改變等),封裝成一個(gè)表單消息,然后把表單消息發(fā)送個(gè)下一個(gè)RN;RN會(huì)根據(jù)用戶的操作選擇來(lái)處理該消息,如果用戶的選擇表示該流程處理結(jié)束,那么該RN節(jié)點(diǎn)會(huì)在本網(wǎng)絡(luò)中廣播流程結(jié)束消息,所有參與該流程實(shí)例的節(jié)點(diǎn)會(huì)收到該消息,所有收到流程結(jié)束消息的節(jié)點(diǎn)會(huì)把該消息通知給相應(yīng)的用戶。
流程在發(fā)送消息時(shí)地址的實(shí)現(xiàn)采用角色方案,因?yàn)橄到y(tǒng)權(quán)限管理方式是基于角色的訪問(wèn)控制模型,所以地址用角色表示,具體的操作人員表示端口。采用網(wǎng)絡(luò)中的廣播,多播等概念實(shí)現(xiàn)一對(duì)多的消息發(fā)送處理,但是只有一個(gè)消息會(huì)被處理,消息在處理時(shí),會(huì)進(jìn)行網(wǎng)絡(luò)狀態(tài)判斷,已確定該消息是否過(guò)時(shí),對(duì)過(guò)時(shí)的消息,系統(tǒng)通知用戶后直接拋棄。
實(shí)際上大多數(shù)流程都是為了改變物資在倉(cāng)庫(kù)中的屬性,如庫(kù)存量,報(bào)廢等,但是新物資入庫(kù)則是例外。一批新的物資進(jìn)入倉(cāng)庫(kù),這就如同一個(gè)新的節(jié)點(diǎn)加入到這個(gè)倉(cāng)庫(kù)網(wǎng)絡(luò)中,這個(gè)網(wǎng)絡(luò)會(huì)監(jiān)聽(tīng)到這樣的消息,并進(jìn)行相應(yīng)的流程處理。對(duì)于其它(如物資完全出庫(kù))的情況,該網(wǎng)絡(luò)同樣能很好地解決。
4. 4流程實(shí)現(xiàn)
流程引擎中的關(guān)鍵類和接口如下:
·I Network網(wǎng)絡(luò)(流程)類型接口。
·Anode節(jié)點(diǎn)類型接口。
·I Message消息接口,用于實(shí)現(xiàn)協(xié)議。
·Ilene消息鏈路接口,消息必須通過(guò)鏈路才能到達(dá)下一個(gè)節(jié)點(diǎn)。
·C Base Network所有流程網(wǎng)絡(luò)的基類,實(shí)行了I Network接口,并且提供網(wǎng)絡(luò)公共的方法實(shí)現(xiàn)和事件,它定義了一個(gè)網(wǎng)絡(luò)類型(工作流),通過(guò)讀取數(shù)據(jù)庫(kù)里面的配置來(lái)確定網(wǎng)絡(luò)的結(jié)構(gòu),里面包括的公共方法如Send Message等,事件如:Start, End等,并提供網(wǎng)絡(luò)狀態(tài)的訪問(wèn)方法如:U interwork-State等。
·C Base Node所有節(jié)點(diǎn)的基類,實(shí)現(xiàn)了Anode接口,并且提供節(jié)點(diǎn)公共的方法實(shí)現(xiàn),這個(gè)類定義了用戶可以的操作選項(xiàng),并處理用戶的選擇,里面包括的事件方法有:On User Choice OnMessageln,OnMessage0ut等,該類的子類實(shí)現(xiàn)了具體的消息解析和處理方法。
·C Base Message所有消息的基類,實(shí)現(xiàn)了I Message接口,并且提供消息公共方法的實(shí)現(xiàn),包括定義消息的類型,消息的具體內(nèi)容等。
·C Baseline所有鏈路的基類,實(shí)現(xiàn)了Ilene接口,并且提供鏈路公共方法的實(shí)現(xiàn)。該類主要對(duì)業(yè)務(wù)做延遲,定時(shí)等處理。
·C Work J low Engine負(fù)責(zé)創(chuàng)建,讀取,釋放,結(jié)束工作流等輔助工作。
4.5流程執(zhí)行
下面以一個(gè)業(yè)務(wù)流程來(lái)解釋流程的具體執(zhí)行過(guò)程,假設(shè)工作流為物管部門物資入庫(kù),信息網(wǎng)絡(luò)流程如下:
1)瀏覽器接受用戶(材料員)輸入消息,以JSON格式發(fā)送給服務(wù)器。進(jìn)入第二步。
2)服務(wù)器對(duì)用戶提交的每一個(gè)物資抽象成SN節(jié)點(diǎn),封裝成I Message,并發(fā)送(Ilene)給該網(wǎng)絡(luò)的CN節(jié)點(diǎn)(網(wǎng)絡(luò)的特殊節(jié)點(diǎn)),進(jìn)入第三步。
3 ) CN節(jié)點(diǎn)對(duì)流程作一些預(yù)先的工作,但并不是所有的流程都有具體的工作,在本業(yè)務(wù)流里,它只是直接把消息發(fā)送給下一個(gè)RN (Anode)節(jié)點(diǎn)。進(jìn)入第四步。
4)該節(jié)點(diǎn)為稱為物管科長(zhǎng)審核,物管科長(zhǎng)可以選擇通過(guò)審核或不通過(guò)審核,當(dāng)通過(guò)審核時(shí),直接進(jìn)入第五步,否則進(jìn)入第八部步。
5)該節(jié)點(diǎn)稱為材料員確認(rèn),只有確認(rèn)操作,確認(rèn)后進(jìn)入第六步。
6)該節(jié)點(diǎn)稱為庫(kù)管員確認(rèn),只有確認(rèn)操作,確認(rèn)后進(jìn)入第七步。
7)該節(jié)點(diǎn)稱為流程成功結(jié)束,物資進(jìn)入物管倉(cāng)庫(kù),RN根據(jù)I Message提取入庫(kù)物資信息,并更新數(shù)據(jù)庫(kù),然后廣播(Send Broadcast Message)流程成功消息到各個(gè)節(jié)點(diǎn)。各節(jié)點(diǎn)收到消息后反饋給用戶。
8)該節(jié)點(diǎn)稱為流程失敗結(jié)束。物資倉(cāng)庫(kù)數(shù)據(jù)不變,并廣播失敗消息到各個(gè)節(jié)點(diǎn)。各節(jié)點(diǎn)收到消息后反饋給用戶。
4. 6工作流權(quán)限管理模型
在工作流的控制方式中有以下七種:擴(kuò)展的基于角色的訪問(wèn)控制模型、基于任務(wù)的訪問(wèn)控制模型、基于角色和任務(wù)的訪問(wèn)控制模型、基于團(tuán)隊(duì)的訪問(wèn)控制模型、基于規(guī)則的訪問(wèn)控制模型、基于狀態(tài)的訪問(wèn)控制模型、面向服務(wù)的訪問(wèn)控制模型團(tuán)。本系統(tǒng)采用基于角色的訪問(wèn)控制模型。
權(quán)限類型分為兩種粒度,一種是記錄級(jí)權(quán)限,另一種是業(yè)務(wù)級(jí)權(quán)限。系統(tǒng)再把這些權(quán)限分配給角色或者直接分配給用戶,角色可以遞歸分配給角色,最終分配給用戶。結(jié)合流程引擎的實(shí)現(xiàn),基于角色的訪問(wèn)控制模型能很好地嵌入在Anode中,一個(gè)Node就是對(duì)具有指定角色和指定人員的集合能對(duì)流程指定節(jié)點(diǎn)進(jìn)行處理的總稱。
5結(jié)語(yǔ)
本文闡述了基于網(wǎng)絡(luò)信息流模型的工作流引擎,分析了物聯(lián)網(wǎng)信息傳輸?shù)奶攸c(diǎn),同時(shí)在流程引擎中引入該思想,得益于成熟的物聯(lián)網(wǎng)理論,該引擎能很好地應(yīng)付復(fù)雜的業(yè)務(wù)需求和業(yè)務(wù)需求的變更。本文實(shí)現(xiàn)的物資管理系統(tǒng)也證明了該方案的可行性。由于是第一次在工作流中引用物聯(lián)網(wǎng)信息傳輸特點(diǎn)的思想,工作流引擎在設(shè)計(jì)實(shí)現(xiàn)方案上還存在一些欠缺,網(wǎng)絡(luò)的可擴(kuò)展性比真實(shí)的要差,各種網(wǎng)絡(luò)之間的融合方案沒(méi)有實(shí)現(xiàn),子網(wǎng)方案也只存在于引擎設(shè)計(jì)的概念階段,這也是今后要努力的方向。
【基于網(wǎng)絡(luò)信息流的物資信息管理系統(tǒng)的研究與分析論文】相關(guān)文章:
基于云計(jì)算的網(wǎng)絡(luò)監(jiān)控系統(tǒng)研究分析論文04-14
基于網(wǎng)絡(luò)的醫(yī)院信息系統(tǒng)的分析與設(shè)計(jì)論文04-22
基于云計(jì)算的網(wǎng)絡(luò)監(jiān)控系統(tǒng)研究論文04-14
客戶信息管理系統(tǒng)的研究論文10-30
基于 NTP 的航天測(cè)控網(wǎng)絡(luò)對(duì)時(shí)系統(tǒng)研究論文04-17
心電網(wǎng)絡(luò)信息管理與遠(yuǎn)程會(huì)診系統(tǒng)的定制研究論文10-27
物資管理系統(tǒng)總體設(shè)計(jì)研究論文10-23
超市信息管理系統(tǒng)研究論文04-01