胡琪波,李福瑞,漆奮平
(航天科工第四研究院 紅峰公司,湖北 孝感 432000)
需求是指對用戶需要解決的問題的整體描述,是軟件實現(xiàn)之源[1]。根據(jù)1995年美國斯坦迪申咨詢公司對美國365 位信息技術(shù)高層經(jīng)理人員管理的8380 個項目進行調(diào)查研究結(jié)果表明:項目失敗的原因與需求過程相關(guān)的原因占了45%[2];Sheldno 所研究的美國空軍項目顯示,根據(jù)錯誤的來源劃分,需求錯誤是所發(fā)現(xiàn)錯誤中41%的來源,因此,有效的需求能減少軟件開發(fā)中的錯誤,縮短開發(fā)時間,從而降低軟件開發(fā)成本,提高軟件質(zhì)量,促進項目實施成功。
在軟件需求分析階段經(jīng)常會出現(xiàn)以下問題:用戶不清楚自己的需求、開發(fā)人員與用戶交流不充分誤解需求、需求經(jīng)常變動等問題影響需求的正確性,為了解決這些問題,進行有效的需求分析,軟件行業(yè)提出了需求分析方法。
但UML 等建模工具只是解決了調(diào)研過程中調(diào)研人員與用戶之間溝通的問題,并沒有解決獲取需求過程中的問題,例如在調(diào)研過程中,用戶往往會比較忙,不能抽出時間與需求調(diào)研人員討論需求的詳細問題;在需求調(diào)研階段過于依賴調(diào)研人員的經(jīng)驗與領(lǐng)域知識,調(diào)研人員經(jīng)驗不足也會造成需求分析不充分的情況;我國航天企業(yè)信息化起步比較晚,企業(yè)對于信息化的需求并不明確,在調(diào)研過程中用戶不清楚自己需求與需求變動的情況更是經(jīng)常出現(xiàn),增加了需求分析的難度。
為了解決以上問題,實現(xiàn)MES 系統(tǒng)在航天企業(yè)的快速實施,本文結(jié)合ERP 等軟件的企業(yè)參考模型與在航天企業(yè)MES 項目實施的經(jīng)驗,提出一種面向航天企業(yè)的參考模型,并提出了基于參考模型的需求建模方法。
為了描述企業(yè)的組織、過程和信息等情況,提高企業(yè)建模的標準化程度,ERP、MRP II、SCM 等軟件建立了一套全方位、多層次考察和分析問題的方法和模型,其中比較著名的有歐共體ESPRIT 計劃中的計算機集成制造開放系統(tǒng)體系CIM-OSA,德國Saarland 大學A.W.Scheer 教授提出的集成信息系統(tǒng)體系ARIS,普渡大學企業(yè)參考體系PERA 等[3]。
CIM-OSA 參考模型體系采用三圍矩陣對模型進行逐步細化,首先定義需求,再根據(jù)特定行業(yè)需求進行細化,最后具體化為特定企業(yè)的需求。
ARIS 參考模型以組為單位進行細化,共分為5組,每一組都能夠按照具有標準行業(yè)結(jié)構(gòu)的參考模型推導得到。
BAAN 參考模型根據(jù)不同行業(yè)建立特定行業(yè)模型字庫,并根據(jù)生產(chǎn)模式做進一步分類。
這些參考模型體系在軟件系統(tǒng)分析、業(yè)務分析、系統(tǒng)設計等階段得到了應用并取得了良好的效果,縮短了ERP 等軟件的實施周期,同時還可以為企業(yè)尋找自身不足,明確改進方向提供參考[4]。
制造業(yè)不同行業(yè)之間例如流程行業(yè)與離散行業(yè),同行業(yè)的不同企業(yè)之間,甚至一個企業(yè)的不同車間的生產(chǎn)流程都不一致,都有各自的特點,對MES系統(tǒng)都有自己特殊需求,無法建立通用的MES 參考模型,只能針對某一特定行業(yè)建立參考模型。
由于MES 軟件的行業(yè)差異性,在進行企業(yè)參考模型建模時需要考慮不同企業(yè)之間MES 系統(tǒng)的共性與差異性,因此參考BAAN 的ERP 系統(tǒng)參考模型體系,按照生產(chǎn)模式對領(lǐng)域進行建模,形成領(lǐng)域-生產(chǎn)模式的二維體系結(jié)構(gòu),如圖1 所示。
航天企業(yè)生產(chǎn)模式為多品種小批量生產(chǎn),可以進一步劃分為批次生產(chǎn)、局部小流水生產(chǎn)、半流水生產(chǎn)、流水生產(chǎn)四種生產(chǎn)模式,因此按照這四種生產(chǎn)模式對MES 常見的功能如計劃、調(diào)度、在制品管理等進行建模,生成參考模型庫。
企業(yè)參考模型分為功能參考模型、組織參考模型、過程參考模型、信息參考模型等幾個方面,本文主要介紹與需求關(guān)系較為密切的功能與過程參考模型。
基于參考模型需求建模過程如圖2 所示。
MES 參考模型建立后,在調(diào)研過程中將需求分為領(lǐng)域、功能、特征、關(guān)鍵詞等幾個層次,分別依據(jù)這幾個層次檢索參考模型庫,最終得到需求模型,具體過程在后面幾個小節(jié)詳細進行描述。
依據(jù)ISA95 標準及航天企業(yè)的實際情況,將MES 劃分為計劃、調(diào)度、數(shù)據(jù)采集、在制品管理、監(jiān)控五個領(lǐng)域,領(lǐng)域與功能之間的關(guān)系如圖3 所示。
按照領(lǐng)域?qū)墓δ軐?MES 系統(tǒng)分為任務管理、月計劃、批次計劃、生產(chǎn)準備、詳細作業(yè)計劃、實時排程、調(diào)度、領(lǐng)活、完工、工序檢驗、總檢、在制品管理、監(jiān)控等13 個模塊,計劃制定、派工、領(lǐng)活與完工、生產(chǎn)準備、不合格品處理、動態(tài)調(diào)度等6 個流程,按照不同生產(chǎn)模式分別進行建模形成功能參考模型與流程參考模型。
模型業(yè)務特征代表了在參考模型庫中具體模型的業(yè)務屬性信息,將模型賦予業(yè)務特征后可以將模型發(fā)布到參考模型庫進行管理與檢索;參考模型具有兩類業(yè)務特征,第一類是領(lǐng)域特征,這類特征值可以縮小模型檢索范圍,例如參考模型所屬領(lǐng)域,所屬功能模塊等,第二類是功能特征,在檢索時起定位作用,依據(jù)功能特征可以找到需要的參考模型,例如功能模型的業(yè)務名稱、范圍、輸入輸出等,流程模型的流程名稱、范圍、規(guī)則、輸入輸出等。
功能參考模型庫結(jié)構(gòu)如表1 所示。其中△、○、□、☆分別代表針對不同生產(chǎn)模式所集成的參考模型。
表1 功能參考模型庫結(jié)構(gòu)
流程參考模型庫結(jié)構(gòu)如表2 所示。
表2 流程參考模型庫結(jié)構(gòu)
2.2.1 功能參考模型元模型
如圖4 所示,功能元模型描述了功能建模最基本的建模元素,定義如下:①Domin(領(lǐng)域):功能的基本屬性,代表功能所處于的業(yè)務領(lǐng)域;②Name(名稱):功能的基本屬性,代表功能能夠完成的操作;③Activity(活動):功能所包含的活動,功能通過活動實現(xiàn)其操作;④Rules(規(guī)則):功能實現(xiàn)中需要遵循的規(guī)則及限制;⑤Actor(操作者):操作者代表功能的使用者,由誰來操作功能的實現(xiàn);⑥I/O(輸入輸出):輸入輸出指在功能實現(xiàn)過程中對所操作對象的改變,輸入為操作對象,輸出為改變后的對象。
2.2.2 功能參考模型表示方法
為了方便與用戶交流,避免對需求的錯誤理解,采用UML 用例圖進行功能建模,圖5 為毛坯生產(chǎn)準備用例圖。
2.3.1 流程參考模型元模型
如圖 6 所示,流程元模型描述流程建模最基本的建模元素,定義如下:①Domin(領(lǐng)域):流程所屬領(lǐng)域,一個流程只能屬于一個領(lǐng)域;②Activity(活動):流程所包含的功能及活動,一個流程對應多個功能或活動;③I/O(輸入輸出):輸入輸出指流程對操作對象的改變,一個流程對應多個輸入與輸出;④Rules(規(guī)則):流程執(zhí)行過程中需要遵循的規(guī)則及活動執(zhí)行的先后順序等,一個流程對應多個規(guī)則。
2.3.2 流程參考模型表示方法
采用UML 中的活動圖進行流程建模,圖7 為針對月計劃的毛坯生產(chǎn)準備流程。
參考模型分類方法有樹結(jié)構(gòu)分類法、關(guān)鍵詞分類法、分類編碼方法等,這幾種方法都具有自己的特點與不足,樹結(jié)構(gòu)分類法具有很好的可擴展性,但在參考模型數(shù)量很多的情況下使用不便;關(guān)鍵詞分類法可以建立跨行業(yè)的參考模型庫并進行檢索,但整體結(jié)構(gòu)不清晰,不利于添加參考模型入庫;分類編碼方法通過用戶填寫的關(guān)鍵詞表單就可以檢索符合用戶要求的參考模型,但檢索結(jié)果不理想,檢索出的參考模型并不都是用戶所需要的[5];由于本文提出的MES 參考模型是針對航天企業(yè)的,模型數(shù)量并不是很多,并要求具有良好的可擴展性,在使用過程中實現(xiàn)參考模型的積累,因此采用樹結(jié)構(gòu)分類法進行分類,樹結(jié)構(gòu)按照功能→業(yè)務特征的順序進行展開,分類方式圖8 所示。
樹結(jié)構(gòu)中每一個最末端的節(jié)點都代表了一套具有自己特征值的參考模型,為了方便對特征值進行描述與對參考模型庫進行檢索,本文通過關(guān)鍵詞來描述參考模型的特征值,關(guān)鍵詞矩陣如表3 所示。
下面以生產(chǎn)準備為例說明參考模型的特征關(guān)鍵詞取值,如表4 所示。
表3 關(guān)鍵詞矩陣
在需求建模過程中,如何在參考模型庫中檢索出需要的模型是基于參考模型需求建模的關(guān)鍵技術(shù),由于在參考模型庫建立過程中已經(jīng)將參考模型賦予了領(lǐng)域、功能、關(guān)鍵詞等特征,因此本文將領(lǐng)域特征用于參考模型的檢索,提出了基于領(lǐng)域特征的參考模型檢索方法,按照生產(chǎn)模式、領(lǐng)域、領(lǐng)域特征三個層次進行檢索,方法如圖9 所示。
具體步驟為:①選擇生產(chǎn)模式;②根據(jù)選定的生產(chǎn)模式檢索出其對應的領(lǐng)域功能;③選擇需要進行需求建模的功能;④選擇選中功能的業(yè)務特征;⑤以上面四步的選擇結(jié)果為條件檢索參考模型庫;⑥顯示檢索到的參考模型。
表4 特征關(guān)鍵詞取值
圖9 參考模型檢索過程
例如在調(diào)研過程中獲取如下需求:對月計劃下毛坯生產(chǎn)準備單,要考慮毛坯生產(chǎn)或購買時間,可以按照如下條件與順序檢索參考模型庫:①領(lǐng)域:計劃;②功能:生產(chǎn)準備;③目標:月計劃;④準備內(nèi)容:毛坯生產(chǎn)準備;⑤準備形式:有生產(chǎn)準備單;⑥有無提前期:有。
在應用了參考模型進行需求分析后,我公司信息化室MES 系統(tǒng)實施周期大大縮短,在公司數(shù)控車間僅用了一個月時間完成了調(diào)研、設計及開發(fā)工作并開始上線實施。經(jīng)過實施過程驗證,軟件與車間需求符合度為90%,剩下的10%中大部分是關(guān)于操作習慣等軟件使用方面的需求,軟件功能與流程完全符合車間現(xiàn)場現(xiàn)狀。
本文提出了一種基于參考模型的MES 需求建模方法,為不同生產(chǎn)模式的航天企業(yè)建立了參考模型庫并通過領(lǐng)域特征進行分類,在獲取了企業(yè)需求后,基于需求領(lǐng)域特征對參考模型庫的檢索,得到符合需求的需求模型,有效利用了在MES 實施過程中積累的知識,能夠更加準確、有效地建立MES 需求模型。參考模型庫也在實施過程中不斷得到完善,為以后的開發(fā)與實施提供更加全面的支持。最后,該方法在我公司數(shù)控車間的MES 系統(tǒng)實施中得到了驗證,取得了良好的效果。
[1]青 潤,著.軟件工程之全程建模實現(xiàn).北京:機械工業(yè)出版社,2010.
[2]The Standish Group.1995.The CHAOS Report.Dennis,MA:The Standish Group International,Inc.
[3]顧新建,祁國寧,韓永生,著.企業(yè)工程建模方法與企業(yè)參考模型.北京:科學出版社,2005.
[4]荊曉洲.基于MDA 方法的企業(yè)參考模型管理系統(tǒng)的研究與實現(xiàn).哈爾濱工業(yè)大學碩士學位論文,2007.