郭濤
【摘 要】以工位制生產方式為基礎,分析了大型養路機械生產計劃支持系統的需求,設計出系統的領域模型,采用分層架構和面向對象技術,開發出C/S模式的PPSS系統。該系統已成功應用于某大型養路機械制造企業,取得了良好的應用效果。
【關鍵詞】工位制生產;大型養路機械;生產計劃支持系統;軟件架構
工位制生產方式以工位為作業組織單元,按照節拍化均衡生產的方式,以流水式作業組織生產[1]。目前廣泛應用于汽車、船舶、軌道交通裝備、大型養路機械等裝備制造行業。中國南車集團公司編制了工位制節拍化生產工作指南,構筑了獨具特色的工位制節拍化生產方式[2]。南車戚墅堰機車有限公司通過規范工藝流程、查找工序瓶頸、工位切分、編制標準化作業指導書,提升了生產效率和產品質量[3]。天津中車唐車軌道車輛有限公司把先進的精益化思想融入對傳統軌道車輛制造當中,分析了工位制節拍化生產方式的優勢和重要性,并制定了實施方案[4]。
制定合理的生產計劃是工位制生產有序進行的前提條件。合理的生產計劃可以綜合協調工位、人員、設備、物料等之間的關系,從而提高生產效率、保證產品質量和訂單交付日期。
中國鐵建高新裝備股份有限公司制造總廠采用了工位制生產方式,然而每個月的生產計劃依靠有經驗的生產調度人員來制定。該方式不僅耗時費力,而且當生產任務變動時需要重新制定計劃,不能快速的應對任務的變動。大型養路機械生產計劃支持系統(Production Plan Support System,簡稱PPSS)能夠準確高效的根據生產任務制定生產計劃,從而代替人工方式制定生產計劃。
1 PPSS系統分析
1.1 用例分析
PPSS用例模型如圖1所示。PPSS的用戶角色類型分為5種:系統管理員、角色管理員、用戶管理員、數據管理員、計劃員。PPSS的功能包括角色管理、用戶管理、數據管理(包括生產工位管理、生產工序管理、車型數據管理)、生產任務管理、制定生產計劃。不同角色的用戶只能使用指定的功能:系統管理員可以使用系統的所有功能;角色管理員可以使用角色管理功能;用戶管理員可以使用用戶管理功能;數據管理員可以使用數據管理功能;計劃員可以使用生產任務管理、制定生產計劃功能。
1.2 領域建模
在PPSS用例分析的基礎上,對系統進行建模,對大型養路機械生產計劃支持系統領域的需求和領域知識進行總結,歸納出該類系統的共同特征,使用UML建立其領域模型(Domain Model)。
PPSS領域模型包括2個領域概念包:核心包、生產計劃向導包。如圖2所示。各包的功能如下:
核心(Core)包為PPSS系統領域概念模型的基礎和核心,其它包都依賴于核心包中的各種概念。它包含了PPSS系統中的各種概念實體:生產任務(Production Mission)、車型(Machine Type)、生產工序(Production Process)、工位(Work Station)、工時(Working Hours)等。各個概念的關系如下:一個月度生產計劃有多個生產任務;每個生產任務對應一種車型;每種車型有多臺車和多個工序;每個工序有一個工時、開始時間和結束時間;一個工位有多個工人,可完成多道工序。
生產計劃向導(Production Plan Guide, PPG)包用來生成生產計劃,包含了生成生產計劃相關的各種概念和相關的算法,分別為生產任務管理算法(Mission Management Method)、生產計劃向導算法(Plan Guide Method)。
2 PPSS軟件架構設計
2.1 PPSS概念性架構
根據PPSS系統分析,并綜合比較分層架構模式、黑板架構模式、中介架構模式、微核架構模式等多種架構模式,選用分層架構作為PPSS軟件架構。在分層架構模式下,將系統從下至上分為四層:數據層(Data Layer)、數據訪問層(Data Access Layer)、業務邏輯層(Business Logic Layer)、表示層(Presentation Layer)。數據庫可采用Access、SQL Server、Firebird嵌入式數據庫等。分層架構降低了系統的耦合度和依賴關系,易替換,可復用,利于標準化。
PPSS的概念性架構如圖3所示。
表示層是系統的UI部分,負責用戶與系統的交互。WinForm中含有多個Windows窗體,用戶通過這些窗體與系統進行交互。WinForm通過邏輯層獲取數據。
邏輯層提供業務邏輯的封裝,是整個系統的核心。IBBLLStrategy是對業務策略的抽象封裝,BLL是業務邏輯層的核心模塊,它包含了整個系統的核心業務。在業務邏輯層中,必須通過數據訪問層才能訪問數據庫。
數據訪問層提供訪問不同數據庫的方法的封裝。IDAL模塊是數據訪問層的接口程序集,DALFactory模塊是創建DAL對象的工廠,Model模塊包含了數據實體對象,SQLDAL、AccessDAL和FirebirdDAL分別訪問SQL Server數據庫、Access數據庫和Firebird數據庫,實現了IDAL接口。
數據層在物理上實現數據的創建、查找、更新、刪除等操作,其實質是在SQL Server、Access和Firebird數據庫中實現這些操作。
2.2 PPSS實際架構
概念性架構確定了PPSS的設計要素和交互機制。在PPSS概念性架構的基礎上,設計出能為實際開發提供更多指導的實際架構,著重從架構設計的5視圖法[5](邏輯架構、開發架構、運行架構、數據架構、物理架構)來設計實際架構。
下面以邏輯架構和數據架構為例對實際架構進行說明。
邏輯架構著重考慮功能需求,它關注行為或職責的劃分。下面以活動圖說明PPSS的邏輯架構,如圖4所示。PPSS用戶登錄系統后,可使用個人信息管理、用戶管理、角色管理、基礎數據管理、生產任務管理功能。其中每個功能下有不同的子功能。用戶通過系統最終可生成月度生產計劃報表。
數據架構關注持久化數據的存儲方案。下面以E-R圖對PPSS數據架構進行說明,如圖5所示。在PPSS的數據庫中有8張表:用戶表(Users)、角色表(Roles)、車型表(Machine Type)、工位表(Production Group)、工序表(Production Process)、生產任務表(Production Plan)、計劃時間表(Plan Time)、日志表(System Log)。
各個表的作用如下:用戶表用于存放系統用戶數據,角色表用于存放系統角色數據,車型表用戶存放大型養路機械車型數據,工位表用戶存放生產工位數據,工序表用于存放大型養路機械的工序數據,生產任務表用于存放各個月份的生產任務數據,計劃時間表用于存放工序時間節點數據,日志表用于存放系統生成的日志數據。
3 PPSS設計、實現與應用
在對PPSS進行系統分析和軟件架構設計的基礎上,結合生產實際,開發出基于工位制生產的大型養路機械生產計劃支持系統。
3.1 大型養路機械生產工序流程
中國鐵建高新裝備股份有限公司制造總廠總裝分廠在生產組織方式上分為四個工段:噴漆工段、預組裝工段、總組裝工段、調試工段,各工段有若干工位。生產流程如圖6所示。由于大型養路機械生產流程工序較多,結合總裝分廠實際,PPSS僅涉及到組裝過程,不涉及調試過程。
3.2 系統開發平臺
本系統基于.NET開發平臺,采用C#語言和Firebird嵌入式數據庫(可擴展為Access、SQL Server等其它關系型數據庫)開發。具體如下:
?誗主開發平臺:Visual Studio 2010 (C#語言)
?誗數據庫平臺:Firebird 2.5.1 (SQL語言)
?誗數據庫建模工具:CA Erwin 7.2.0
?誗系統建模工具:Visio2010,Enterprise Architect 8.0
3.3 系統主要功能模塊
大型養路機械生產計劃支持系統包括7個功能模塊:用戶登錄、用戶管理、角色管理、基礎數據管理、計劃任務管理、計劃報表生成、系統日志。如圖7所示。
用戶登錄功能模塊用于驗證用戶的合法性和用戶所屬的角色類型,根據不同角色類型給用戶分配指定的功能。用戶登錄后能修改個人密碼、查看并修改個人信息。
用戶管理功能模塊用于查看、添加、編輯、刪除用戶。系統內置用戶不能被編輯和刪除;系統當前登錄用戶能被編輯,但不能被刪除。該功能的使用要求當前登錄用戶具有用戶管理權限。
角色管理功能模塊用于查看、添加、編輯、刪除角色。系統內置角色不能被編輯和刪除;當前登錄用戶的角色能被編輯,但不能被刪除;在刪除角色時,若角色包含用戶數據,會提示用戶,如仍選擇刪除,相應的用戶數據也會被一并刪除。該功能的使用要求當前登錄用戶具有角色管理權限。
基礎數據管理功能模塊用于與大型養路機械生產相關的數據管理,包括工位數據的查看、添加、編輯、刪除;工序數據的查看、添加、編輯、刪除、排序;生產車型數據的查看、添加、編輯、刪除。生產車型數據含有每個生產工序的生產工時數據。該功能的使用要求當前登錄用戶具有基礎數據管理權限。
計劃任務管理功能模塊用于某年某月生產任務的查看、添加、編輯、刪除。添加的生產任務包括車型、生產批次、數量、編號信息。該功能的使用要求當前登錄用戶具有生產計劃向導權限。
計劃報表生成功能模塊用于某年某月生產計劃的生成。在生成計劃時,首先指定該月的休息日和假期。在月歷中單擊某天即可將該天添加為休息日或假期,在休息日及假期列表中右鍵選中某天可刪除該天。最后單擊生成計劃按鈕即可生成本月度的生產計劃報表,報表為EXCEL格式。該功能的使用要求當前登錄用戶具有生產計劃向導權限。
系統日志功能模塊用于記錄用戶的關鍵操作,包括系統登錄信息、用戶管理信息、角色管理信息、數據管理信息、計劃任務管理信息、計劃報表生成信息。系統日志不能被編輯或刪除。系統日志的查看需要當前登錄用戶具有系統日志查看權限。
3.4 系統測試與應用
本系統采用C/S結構,可將數據庫部署于服務器,多個客戶端軟件運行于用戶計算機,也可將數據庫和客戶端軟件部署于同一計算機作為單機軟件使用。
下面以制造總廠總裝分廠2016年11月份的生產任務為例對本系統進行測試應用。總裝分廠11月份的生產任務如表1所示。
打開軟件,用系統管理員用戶登錄系統,輸入正確密碼后進入軟件。
依次進入:數據管理——車型工時管理——增加車型。輸入相關車型信息及其工時數據后保存。若車型數據已存在則可跳過該步驟。
進入生產計劃向導菜單,選擇生產時間:2016年11月,選擇車型:搗固車,輸入批次:2015-303,輸入數量:5臺,輸入初始編號:376#,單擊添加按鈕。穩定車生產任務的添加同上所述。添加完成后,在右側列表可看到添加的生產任務,選定后可以編輯或刪除。如圖8所示。單擊下一步按鈕,選擇休息日和假期,選定后單擊生產計劃按鈕,即可生成2016年11月總裝分廠生產計劃表。如圖9所示。
實際測試應用表明該大型養路機械生產計劃支持系統操作簡單、方便,界面友好,功能豐富,可幫助用戶快速高效地制定大型養路機械月度生產計劃。
4 結束語
通過分析基于工位制生產的大型養路機械生產計劃支持系統,設計出系統的軟件架構,在Visual Studio 2010平臺上使用C#語言和Firebird嵌入式數據庫開發出大型養路機械生產計劃支持系統。系統的成功應用表明,該系統設計合理有效,能夠滿足大型養路機械生產計劃制定的需求。
【參考文獻】
[1]楊善偉.精益生產在戚機公司機車組裝車間的應用研究[D].鎮江:江蘇大學,2013.
[2]中國南車集團公司.工位制節拍化生產方式[J].企業管理,2014(1):99-100.
[3]唐軍軍,蔣新艷.精益節拍化生產運用研究[J].卷宗,2014(12):339-340.
[4]陳卓.工位制節拍化生產方式在軌道車輛制造中的重要性[J].企業改革與管理,2016(18):215.
[5]溫昱.軟件架構設計[M].北京:電子工業出版社,2008:64-65.
[責任編輯:朱麗娜]