999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的車間詳細(xì)排產(chǎn)系統(tǒng)研究

2011-10-12 13:28:18李萬高孫德廠胡耀東
制造業(yè)自動(dòng)化 2011年23期
關(guān)鍵詞:模型系統(tǒng)設(shè)計(jì)

李萬高,孫德廠,胡耀東

LI Wan-gao1, SUN De-chang2,3, HU Yao-dong1

(1.河南工程學(xué)院,鄭州 451191;2.中國科學(xué)院 沈陽自動(dòng)化研究所,沈陽 110016;3.中國科學(xué)院 研究生院,北京 100049)

0 引言

所有的企業(yè)應(yīng)用軟件系統(tǒng)都是為了支持具體的企業(yè)管理與運(yùn)作流程,總是與相關(guān)的業(yè)務(wù)領(lǐng)域密切相關(guān)。然而傳統(tǒng)的以數(shù)據(jù)存儲(chǔ)與功能實(shí)現(xiàn)為中心的軟件設(shè)計(jì)方法導(dǎo)致業(yè)務(wù)領(lǐng)域與軟件設(shè)計(jì)、開發(fā)脫節(jié),常常導(dǎo)致設(shè)計(jì)、開發(fā)偏離用戶需求。同時(shí)大量的業(yè)務(wù)規(guī)則、數(shù)據(jù)驗(yàn)證夾雜在業(yè)務(wù)對(duì)象的處理之中,業(yè)務(wù)邏輯的處理嵌入到用戶界面組件和數(shù)據(jù)庫腳本中,導(dǎo)致軟件的可維護(hù)性、可擴(kuò)展性不足。領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的開發(fā)方法彌補(bǔ)了這一缺陷,在統(tǒng)一開發(fā)過程的框架下,領(lǐng)域模型貫穿整個(gè)軟件開發(fā)周期。

1 領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)

領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)(DDD)是Eric Evans在2004年提出的概念,是一種基于模型驅(qū)動(dòng)開發(fā)(Model Driven Development MDD)思想的開發(fā)方式[1]。這種方法的核心觀點(diǎn)認(rèn)為軟件項(xiàng)目的起點(diǎn)是領(lǐng)域,針對(duì)領(lǐng)域建立符合系統(tǒng)需求的模型是軟件設(shè)計(jì)的基礎(chǔ),是業(yè)務(wù)領(lǐng)域?qū)<?、分析系統(tǒng)分析師、架構(gòu)設(shè)計(jì)師、開發(fā)人員共同交流的平臺(tái)。在軟件開發(fā)階段,推薦使用敏捷編程方法,使分析、設(shè)計(jì)、開發(fā)各環(huán)節(jié)相互反饋、促進(jìn),并對(duì)系統(tǒng)進(jìn)行持續(xù)的重構(gòu),形成良性循環(huán),有助于軟件在滿足需求的條件下,最真實(shí)的映射領(lǐng)域業(yè)務(wù)邏輯,這是瀑布模型的方法所不具備。圖1是領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)與開發(fā)模式的展示。

圖1 領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)與開發(fā)模式

領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的核心是對(duì)業(yè)務(wù)領(lǐng)域建模,對(duì)象建模和基本要素包括:分層架構(gòu)、實(shí)體、值對(duì)象、服務(wù)、模塊、聚合、工廠和資源庫[2]。對(duì)領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的研究工作,一些作者已經(jīng)做出了努力。王鵬等[3]使用領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的開發(fā)模式設(shè)計(jì)了基于WEB的船舶性能預(yù)報(bào)系統(tǒng),完成了該系統(tǒng)的分層架構(gòu)設(shè)計(jì)和業(yè)務(wù)領(lǐng)域建模。陳亮[4]結(jié)合動(dòng)態(tài)表單設(shè)計(jì)示例,對(duì)領(lǐng)域驅(qū)動(dòng)模型進(jìn)行了介紹。張金松[5]針對(duì)物流系統(tǒng),提出了一個(gè)領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的實(shí)施方案:DDD+SCRUM+XP(Extreme Programming)+CI(Continuous Integration)。系統(tǒng)架構(gòu)采用輕量級(jí)的J2EE技術(shù)(Spring+Hibernate+Compass+Ajax)。丁濤[6]對(duì)領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的基礎(chǔ)理論與技術(shù)進(jìn)行全面的介紹,包括領(lǐng)域工程、領(lǐng)域建模等, 并對(duì)航務(wù)海事系統(tǒng)進(jìn)行領(lǐng)域建模、架構(gòu)設(shè)計(jì)與系統(tǒng)實(shí)現(xiàn)。鄭琴琴[7]對(duì)業(yè)務(wù)邏輯組織方法,史棟杰等[8]對(duì)資源庫模式設(shè)計(jì)進(jìn)行了研究。

2 車間詳細(xì)排產(chǎn)領(lǐng)域模型

車間詳細(xì)排產(chǎn)是指在一定的計(jì)劃期內(nèi)為加工任務(wù)分配制造資源的過程[9]。計(jì)劃期指排產(chǎn)所涉及的時(shí)間范圍,企業(yè)一般采用滾動(dòng)周期的方法。加工任務(wù)指上層計(jì)劃系統(tǒng)給制造車間下達(dá)的已經(jīng)分解好的生產(chǎn)訂單,標(biāo)明有詳細(xì)的加工對(duì)象、加工數(shù)量、交付時(shí)間、工藝路線、加工工序等信息。制造資源指車間所擁有的設(shè)備、人員以及制造資源的能力。

2.1 領(lǐng)域知識(shí)

依據(jù)上述概念,要實(shí)現(xiàn)車間詳細(xì)排產(chǎn)必須對(duì)基礎(chǔ)數(shù)據(jù)進(jìn)行管理,這些基礎(chǔ)數(shù)據(jù)包括工作日歷、人員班組、設(shè)備工具、工藝路線、工序、物料和物料清單。為達(dá)到詳細(xì)排產(chǎn)的優(yōu)化目標(biāo),要遵循相關(guān)的生產(chǎn)規(guī)則、滿足生產(chǎn)約束;為滿足交付時(shí)間要求必須選擇合適的計(jì)劃策略,選擇適合特定環(huán)境的算法;最后對(duì)排產(chǎn)的結(jié)果進(jìn)行評(píng)價(jià),并發(fā)布執(zhí)行。經(jīng)過對(duì)這些要素的迭代分析,車間詳細(xì)排產(chǎn)領(lǐng)域知識(shí)如圖2所示。

圖2 車間詳細(xì)排產(chǎn)領(lǐng)域知識(shí)

2.2 業(yè)務(wù)模型

2.2.1 業(yè)務(wù)流程

車間詳細(xì)排產(chǎn)業(yè)務(wù)流程主要包括基礎(chǔ)數(shù)據(jù)管理和排產(chǎn)執(zhí)行?;A(chǔ)數(shù)據(jù)管理主要包括基礎(chǔ)數(shù)據(jù)維護(hù),以及基礎(chǔ)數(shù)據(jù)之間關(guān)系分配,從而建立起模擬實(shí)際生產(chǎn)環(huán)境的詳細(xì)排產(chǎn)模型。排產(chǎn)執(zhí)行主要包括加工任務(wù)加載、排產(chǎn)執(zhí)行、排產(chǎn)結(jié)果調(diào)整、排產(chǎn)結(jié)果發(fā)布、執(zhí)行過結(jié)果反饋。排產(chǎn)執(zhí)行流程如圖3所示。

基礎(chǔ)數(shù)據(jù):增加、修訂、刪除、查詢基礎(chǔ)數(shù)據(jù)信息,確?;A(chǔ)數(shù)據(jù)完整、正確、及時(shí)的維護(hù)在系統(tǒng)中。

數(shù)據(jù)分配:增加、修訂、刪除、查詢基礎(chǔ)數(shù)據(jù)分配關(guān)系,建立基礎(chǔ)數(shù)據(jù)之間的業(yè)務(wù)規(guī)則,切實(shí)反映各排產(chǎn)要素之間的制約關(guān)系。

加工任務(wù):在排產(chǎn)系統(tǒng)中建立加工任務(wù),或從上層ERP系統(tǒng)下載加工任務(wù)。

排產(chǎn)運(yùn)算:在基礎(chǔ)數(shù)據(jù)基礎(chǔ)上,選擇排產(chǎn)策略、目標(biāo),提交排產(chǎn)事務(wù),系統(tǒng)根據(jù)基礎(chǔ)數(shù)據(jù)建立排產(chǎn)環(huán)境模型,調(diào)用合適的算法,輸出排產(chǎn)結(jié)果,并對(duì)排產(chǎn)結(jié)果評(píng)價(jià)。

結(jié)果發(fā)布:根據(jù)甘特圖、負(fù)載圖、評(píng)價(jià)指標(biāo)對(duì)排產(chǎn)結(jié)果審查,根據(jù)人工經(jīng)驗(yàn)對(duì)排產(chǎn)結(jié)果進(jìn)行調(diào)整或優(yōu)化直至滿意,發(fā)布排產(chǎn)結(jié)果。

執(zhí)行反饋:根據(jù)實(shí)際生產(chǎn)開、完工時(shí)間,生產(chǎn)進(jìn)度的反饋數(shù)據(jù),不斷更新加工任務(wù)的狀態(tài),從而形成生產(chǎn)過程排產(chǎn)的閉環(huán)控制。

圖3 車間詳細(xì)排產(chǎn)執(zhí)行流程

2.2.2 領(lǐng)域模型

設(shè)計(jì)完整的企業(yè)級(jí)應(yīng)用軟件,在滿足業(yè)務(wù)領(lǐng)域和業(yè)務(wù)流程的功能性要求外,還應(yīng)該包括用戶管理、權(quán)限管理、日志管理等非功能性要求以及運(yùn)算速度等性能要求。在此基礎(chǔ)上構(gòu)建領(lǐng)域模型如圖4。

實(shí)體:模型中日歷時(shí)間、設(shè)備工具、人員班組、加工工序、工藝路線、生產(chǎn)產(chǎn)品、加工任務(wù)均具有唯一的標(biāo)識(shí),這些對(duì)象均是實(shí)體對(duì)象。

圖4 車間詳細(xì)排產(chǎn)領(lǐng)域模型

值對(duì)象:模型中生產(chǎn)能力、計(jì)劃目標(biāo)、計(jì)劃結(jié)果等對(duì)象,隨系統(tǒng)運(yùn)行而變化,不具有標(biāo)識(shí)符,是值對(duì)象。

服務(wù):模型中的數(shù)據(jù)檢查、能力核查、數(shù)據(jù)加載、模型構(gòu)建、算法調(diào)用、結(jié)果發(fā)布等均為系統(tǒng)的服務(wù)。

模塊:系統(tǒng)中實(shí)體對(duì)象的維護(hù),以及實(shí)體對(duì)象之間關(guān)系的分配,是詳細(xì)排產(chǎn)的基礎(chǔ)數(shù)據(jù),可以劃分為基礎(chǔ)數(shù)據(jù)管理模塊。加工任務(wù)、排產(chǎn)運(yùn)算、結(jié)果發(fā)布、執(zhí)行反饋是動(dòng)態(tài)的數(shù)據(jù),劃分為系統(tǒng)執(zhí)行管理模塊。用戶、權(quán)限、日志的管理劃分為系統(tǒng)管理模塊。

聚合:對(duì)于實(shí)體對(duì)象,擁有唯一的標(biāo)識(shí),可以作為聚合根,進(jìn)而形成聚合體,在模型中,人員班組、設(shè)備工具、工藝路線、生產(chǎn)產(chǎn)品、加工任務(wù)作為子模型。其中加工任務(wù)和設(shè)備工具作為領(lǐng)域的核心,因?yàn)榕女a(chǎn)的結(jié)果就是要把加工任務(wù)分配到不同的設(shè)備工具上進(jìn)行加工。

工廠:在業(yè)務(wù)處理中,像工藝路線、加工任務(wù)這樣的聚合體或者生產(chǎn)能力、排產(chǎn)模型這樣的值對(duì)象,往往包含有復(fù)雜的數(shù)據(jù)及對(duì)象分配關(guān)系,為便于實(shí)現(xiàn),需要建立構(gòu)造函數(shù)對(duì)其進(jìn)行數(shù)據(jù)初始化,這就是工廠。

資源庫:為提升系統(tǒng)的計(jì)算性能,排產(chǎn)運(yùn)算必須基于內(nèi)存運(yùn)行,需要按照排產(chǎn)執(zhí)行流程將持久化數(shù)據(jù)加載到內(nèi)存中。為使不同數(shù)據(jù)在內(nèi)存中可以區(qū)別開來,需要為復(fù)雜的實(shí)例化實(shí)體對(duì)象或值對(duì)象創(chuàng)建資源庫,而簡單的數(shù)據(jù)使用變量進(jìn)行存儲(chǔ)。

3 車間詳細(xì)排產(chǎn)系統(tǒng)架構(gòu)設(shè)計(jì)

通過上述領(lǐng)域模型的分析,可以對(duì)系統(tǒng)進(jìn)行架構(gòu)設(shè)計(jì),通用的領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的架構(gòu)性解決方案是將軟件設(shè)計(jì)為四層:用戶界面層、應(yīng)用層、領(lǐng)域?qū)雍突A(chǔ)設(shè)施層。將領(lǐng)域模型從用戶界面層、應(yīng)用層、基礎(chǔ)設(shè)施層分離出來,專注于領(lǐng)域問題的管理、業(yè)務(wù)知識(shí)的捕獲和表達(dá)。圖5展示了車間詳細(xì)排產(chǎn)的領(lǐng)域模型。

圖5 車間詳細(xì)排產(chǎn)系統(tǒng)架構(gòu)

表示層:負(fù)責(zé)向用戶展現(xiàn)信息以及解釋用戶命令。

應(yīng)用層:用來協(xié)調(diào)應(yīng)用的活動(dòng)。它不包含業(yè)務(wù)邏輯,不保留業(yè)務(wù)對(duì)象的狀態(tài),但保有應(yīng)用任務(wù)的進(jìn)度狀態(tài)。

領(lǐng)域?qū)樱喊P(guān)于領(lǐng)域的信息。這是業(yè)務(wù)軟件的核心所在。在這里保留業(yè)務(wù)對(duì)象的狀態(tài),對(duì)業(yè)務(wù)對(duì)象和它們狀態(tài)的持久化被委托給了基礎(chǔ)設(shè)施層。

持久層:作為其它層的支撐庫存在。它提供了層間的通信,實(shí)現(xiàn)對(duì)業(yè)務(wù)對(duì)象的持久化,包含對(duì)用戶界面層的支撐庫等作用。

4 車間詳細(xì)排產(chǎn)系統(tǒng)實(shí)現(xiàn)

依據(jù)上述領(lǐng)域模型和系統(tǒng)架構(gòu),開發(fā)環(huán)境為Visual Studio 2008,數(shù)據(jù)庫為SQL Server 2005。在微軟.NET應(yīng)用平臺(tái)下,采用Windows Presentation Foundation(WPF)技術(shù)實(shí)現(xiàn)。.NET平臺(tái)很好的支持了面向?qū)ο蠹夹g(shù),并為此專門開發(fā)了一種語言C#。新的WPF技術(shù)是.NET Framework的組成部分,WPF同時(shí)支持C/S和B/S結(jié)構(gòu),支持界面設(shè)計(jì)與業(yè)務(wù)邏輯開發(fā)的分離。界面設(shè)計(jì)采用XAML語言,可以對(duì)界面元素進(jìn)行定義和刻畫。通過數(shù)據(jù)綁定、事件響應(yīng)與業(yè)務(wù)邏輯層進(jìn)行交互。業(yè)務(wù)邏輯層,使用C#語言開發(fā),根據(jù)系統(tǒng)架構(gòu)設(shè)計(jì),分為應(yīng)用層和領(lǐng)域?qū)印?yīng)用層負(fù)責(zé)響應(yīng)事件與結(jié)果反饋。領(lǐng)域?qū)迂?fù)責(zé)各種對(duì)象模型的創(chuàng)建和管理。持久層負(fù)責(zé)與數(shù)據(jù)源通信,在.NET平臺(tái)下,主要使用ADO進(jìn)行連接[10]。在.NET平臺(tái)WPF技術(shù)下,系統(tǒng)實(shí)現(xiàn)架構(gòu)如圖6所示。圖7和圖8為日歷和工藝路線等基礎(chǔ)數(shù)據(jù)管理。

圖6 NET平臺(tái)下系統(tǒng)架構(gòu)

圖7 日歷管理

圖8 工藝路線、工序管理

5 結(jié)論

本文首先對(duì)領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的相關(guān)概念、開發(fā)模式進(jìn)行介紹,然后遵照領(lǐng)域工程模式對(duì)車間詳細(xì)排產(chǎn)的領(lǐng)域知識(shí)、業(yè)務(wù)流程進(jìn)行研究,在此基礎(chǔ)上建立了領(lǐng)域模型。在面向復(fù)雜系統(tǒng)建模時(shí),對(duì)模型要素識(shí)別出實(shí)體、值對(duì)象、服務(wù)等對(duì)象,并對(duì)對(duì)象關(guān)系進(jìn)行簡化,進(jìn)行模塊的劃分。 分層架構(gòu)設(shè)計(jì),使得軟件開發(fā)人員能夠在實(shí)現(xiàn)階段更多的關(guān)注領(lǐng)域模型。最后,在.NET平臺(tái)下,使用WPF技術(shù),對(duì)系統(tǒng)進(jìn)行了實(shí)現(xiàn)。實(shí)踐證明,領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)模式下,軟件系統(tǒng)的設(shè)計(jì)與開發(fā)更具有效率,軟件系統(tǒng)本身更具有較好的可維護(hù)性、可擴(kuò)展性性。

[1]Evans E.著.陳大峰,張澤鑫,譯.領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)—軟件核心復(fù)雜性應(yīng)對(duì)之道[M].北京:清華大學(xué)出版社,2006.

[2]Abel Avran&Floyd Marinescu著.孫向暉,霍泰穩(wěn),譯.領(lǐng)域驅(qū)動(dòng)設(shè)計(jì).精簡版[M],http://infoq.com/cn/minibooks/domain-driven-desian-quickly.

[3]王鵬,劉淵,冷文浩.領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)在SPP系統(tǒng)中的應(yīng)用[J],計(jì)算機(jī)工程與設(shè)計(jì),2008,29(13):3312-3364.

[4]陳亮.基于領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的軟件開發(fā)方法和實(shí)例分析[J],鐵路計(jì)算機(jī)應(yīng)用,2010,19(9):51-54.

[5]張金松.領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)在航務(wù)海事系統(tǒng)中的應(yīng)用研究[D].大連海事大學(xué),2010.

[6]丁濤.基于領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的物流平臺(tái)系統(tǒng)實(shí)現(xiàn)[D].電子科技大學(xué),2010.

[7]鄭琴琴.領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)的業(yè)務(wù)邏輯組織方法研究[J].中國科技論文在線,http://www.paper.edu.cn

[8]史棟杰,孔華峰.領(lǐng)域驅(qū)動(dòng)設(shè)計(jì)中資源庫模式的設(shè)計(jì)與實(shí)現(xiàn)[J],電腦知識(shí)與技術(shù),2011,6(33):9617-9618,9621.

[9]Michael Pinedo.Scheduling:Theory,Algorithms,and Systems Second Edition.[M],北京:清華大學(xué)出版社.

[10]Adam Nathan著.瞿杰,單佐一,夏寒.譯.WPF揭秘[M],北京:人民郵電出版社,2008.

猜你喜歡
模型系統(tǒng)設(shè)計(jì)
一半模型
Smartflower POP 一體式光伏系統(tǒng)
WJ-700無人機(jī)系統(tǒng)
ZC系列無人機(jī)遙感系統(tǒng)
北京測繪(2020年12期)2020-12-29 01:33:58
重要模型『一線三等角』
重尾非線性自回歸模型自加權(quán)M-估計(jì)的漸近分布
瞞天過?!律O(shè)計(jì)萌到家
連通與提升系統(tǒng)的最后一塊拼圖 Audiolab 傲立 M-DAC mini
設(shè)計(jì)秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設(shè)計(jì)叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
主站蜘蛛池模板: lhav亚洲精品| 亚洲有无码中文网| 久久精品人人做人人| 丰满人妻一区二区三区视频| 国产精品久久久久久影院| 日本成人一区| 国产一级在线播放| 九色综合伊人久久富二代| 亚洲精品无码成人片在线观看 | 亚洲综合香蕉| 黄色福利在线| 国产精品露脸视频| 欧美亚洲第一页| 免费无码AV片在线观看国产| 精品福利网| 2020国产精品视频| 免费国产高清精品一区在线| 亚洲视频在线观看免费视频| 免费va国产在线观看| 精品视频福利| 一级一毛片a级毛片| 极品国产一区二区三区| 亚洲精品中文字幕午夜| 最新日韩AV网址在线观看| 精品国产成人a在线观看| 成人福利在线看| 久久精品国产电影| 亚洲高清日韩heyzo| 国产无码高清视频不卡| 一级成人欧美一区在线观看| 黄色网址免费在线| 亚洲天堂首页| 91无码国产视频| 久久福利网| 久久九九热视频| 成人va亚洲va欧美天堂| 永久免费无码日韩视频| 另类综合视频| www中文字幕在线观看| 久久大香伊蕉在人线观看热2| 99久久性生片| 欧美国产在线精品17p| 亚洲手机在线| 亚洲妓女综合网995久久| 精品国产成人高清在线| 亚洲va在线观看| 一级毛片在线直接观看| 青青青国产在线播放| 色综合久久无码网| 四虎精品国产AV二区| 亚洲人精品亚洲人成在线| 欧美日韩在线第一页| 久久毛片基地| 中文字幕人妻av一区二区| 操国产美女| 狠狠色噜噜狠狠狠狠奇米777| 久久窝窝国产精品午夜看片| 高清无码不卡视频| 日韩精品一区二区三区中文无码| 日韩人妻无码制服丝袜视频| 欧美国产综合视频| 成人中文在线| 色综合成人| 日韩在线中文| 国产精品白浆在线播放| 精品视频免费在线| 欧美精品高清| 91在线一9|永久视频在线| 一本大道香蕉久中文在线播放| 国产综合另类小说色区色噜噜| 国产剧情无码视频在线观看| 欧美亚洲中文精品三区| 超薄丝袜足j国产在线视频| 亚洲天堂福利视频| 97超爽成人免费视频在线播放| 国产精品无码作爱| 超碰精品无码一区二区| 亚洲午夜天堂| 狂欢视频在线观看不卡| 黄色网页在线观看| 亚洲毛片一级带毛片基地| 香蕉视频在线精品|