文/葉宏謨
數位發展部政務次長林宜敬指出,臺灣的硬體產業實力強大,軟體產業相對薄弱,主要原因是許多電機資訊相關人才受高薪吸引投入了半導體領域,導致軟體產業面臨人才短缺的問題。同時,軟體開發成本高昂,臺灣因市場規模小,使得軟體開發難度更高,若要推動軟體產業的發展,勢必需要走向國際市場 [註 1]。
台灣軟體公司規模都很小,要走向國際談何容易。誠如林政務次長所說,軟體開發成本很高,本來就很難,走向國際必須是多語言架構,更是難上加難。
台灣的硬體業發達,但軟體業落後。全世界大部分的電腦是台灣製造,為什麼世界市場上沒有台灣的 ERP 產品?要讓台灣的 ERP 在世界上發光,最有效的方法就是向台灣已經發光的硬體業學習,要利用標準化的元件在標準化的製程中生產 [註 2]。
SOA-ERP 包含上萬個服務向架構(Service-Oriented Architecture,SOA)的標準化服務元件,以及企業統一資料架構(Enterprise Unified Data Architecture,EUDA)的資料庫,而且 SOA-ERP 是多國語言架構。每個 SOA-ERP 服務的輸入條件(Parameter)中,都有一個必傳條件,登入者主機語言(HOSTLANGUAGE),應用程式呼叫 SOA-ERP 服務元件時,可指定一種語言,服務的回傳訊息(RETURNMSG)就會是那種語言。
[ 加入 CIO Taiwan 官方 LINE 與 Facebook ,與全球 CIO 同步獲取精華見解 ]
SOA-ERP 服務元件或叫用 SOA-ERP 服務元件的前端應用程式(例如 NEO 或 HRP,前者是一般產業 ERP,後者是醫療業 ERP)都是多語言架構。服務元件或應用程式的原始碼完全沒有任何中文或其他語言的顯義(Significant)文字,原始碼中所有會出現在應用程式畫面上的文字都是不顯義(Insignificant)的代碼。SOA-ERP 有一個字彙檔,第 1 欄是代碼第 2 欄是所指定語言的字詞,登入應用程式時須指定語言,經過代碼轉譯後所指定語言的字詞才會呈現在前端畫面上。多語言架構除了用在多國語言外,也能用在產業別模組,因為每種產業的用語都不同,甚至也能用在個別公司的特殊用語,完全不必修改程式。
台灣軟體公司若能以組裝 SOA-ERP 服務的方式開發應用系統,就不會有多國語言的問題,可以走向國際市場。若能以 SOA-ERP 服務元件的文件(Service Doc)訓練人工智慧(AI),則軟體公司的應用程式生產力將提升千百倍,軟體公司將會著重於開發產業別 SOA-ERP 服務元件,產業別服務元件越來越完整,企業用戶就能自己用 SOA-ERP 服務元件和 AI 開發應用程式了,不需要依賴軟體公司。未來,有可能人人都是公民開發者(Citizen Developer)[註 3]。
SOA-ERP 服務元件除了是多語言架構,也是多公司架構,其功能不亞於國際知名 ERP 系統,且從微企業、中小企業、到大企業都能適用。對微企業來說,只要設定為一個公司群(Entity Group)、一個公司(Entity)、一個營運點(Site)即可;對集團企業來說,可設定多個公司群、每個公司群下設多個公司、每個公司下設多個營運點(Site),整個集團也可以設多個營運點群(Site Group),後者即跨公司的事業部(Business Unit,BU)。
如果很多軟體公司都利用組裝 SOA-ERP 服務元件開發企業應用系統,很多企業都下載這些企業應用系統來使用,也都有能力利用 SOA-ERP 服務元件自主客製內部特殊需求的應用程式,SOA-ERP 服務元件就可以作為台灣企業應用軟體的國家基礎建設,就能變成台灣軟體的護國神山。
軟體元件需要不斷的維護(Maintenance)及增強(Enhancement),而 SOA-ERP 服務元件的原始程式碼是台灣獨有的,其他國家就算非法山寨 SOA-ERP 服務元件,也無維護及增強的能力,只能跟在後面。
[ 推薦文章:元件化與生態系驅動的數位轉型 ]
每個企業都有 ERP 系統和多套其他應用系統,例如商務流程管理系統(BPM)、客戶關係管理系統(CRM)、電腦輔助設計製造系統(CAD/CAM)、製造執行系統(MES)、銷售點系統(POS)、人力資源管理系統(HRM)等,這些系統都有共用的主資料(Master Data),例如部門、主管、員工、產品、廠商、客戶、件號或品項(Item)、材料表(BOM)、製程、作業、人機資源、會計科目等,這些資料一有異動,所有系統都必須同步維護。由於多套系統須在一瞬間同步維護很困難,多數企業都面臨應用系統資料無法整合的「資料孤島」(Data Silo)問題。
SOA-ERP 有上萬個服務元件,每個服務都有 API,包括 CRUD(增、查、修、刪)API。所以企業可以利用 SOA-ERP 作為主資料維護中心,使用者只操作建立在 SOA-ERP 之上的主資料管理(Master Data Management,MDM)應用程式維護主資料,再由 SOA-ERP 自動定期、批次、閉門、逐一維護所有應用系統的主資料。SOA-ERP 有「串聯服務元件」的服務元件,可以把維護各應用系統資料的服務元件做成一個交易(Transaction),在維護應用系統眾多資料表的過程中,只要一有差錯就會自動倒回(Transaction Roll Back)並回傳錯誤訊息,不會造成資料表的資料不一致。除了資料同步整合,SOA-ERP 元件也能用來開發跨系統應用,例如資料分析或產品碳足跡計算,如圖 1。
「改善」(Kaizen)要一步一步來(One at a Time),而且要持續改善(Continuous Improvement),企業資訊系統的改善也是一樣。每個企業都有 ERP 系統和其他多套應用系統,有資料不整合的問題。雖然能用 SOA-ERP 的服務整合各系統資料,可能還是會有一些問題。企業應找出問題最大的應用程式或應用系統,利用以 SOA-ERP 元件開發的應用程式,取代之,接著再找出問題次大的應用程式或應用系統再以 SOA-ERP 元件開發的應用程式取而代之。如果企業的 ERP 系統已經很老舊,必須更換,則可以考慮導入以 SOA-ERP 元件開發的 ERP 系統,例如 NEO 或 HRP。
導入 ERP 系統是非常龐大的工程,所以應該一步一步來,逐步汰換。可以先導入 SOA-ERP 的核心元件,讓原 ERP 系統的核心基本資料先同步到 SOA-ERP,再讓其他應用程式來參照。企業資訊系統此時應該就能出現一些改善效益,例如可定期整合、同步各系統的核心主資料。
包括會計科目的核心主資料同步後,可考慮導入財務會計模組。各企業都需要會計作業,而 SOA-ERP 的會計元件可承接任何系統的前端作業資料,例如銷售和採購,只要以程式直接讀取前端系統的作業資料,或把和會計作帳有關的前端資料轉出到 Excel 檔,就能呼叫服務元件在 SOA-ERP 開立會計傳票。SOA-ERP 是多公司架構,集團企業可以把各公司的會計模組,一次一個換成 SOA-ERP 的會計系統,可同時解決高階主管資訊需求和合併報表問題。
接下來企業可以考慮導入或汰換規劃(Planning)模組,規劃是批次作業,邏輯也相當標準化。然後是製造(Manufacturing)模組,製造模組是相對複雜的模組,牽涉到製程、作業、和人機資源。然後是成本(Costing)模組,SOA-ERP 元件可以把製程所產生的成本或碳分攤到各個產品上。SOA-ERP 有計算產品碳足跡的元件,是每個企業都需要的。銷售、採購、和庫存習習相關,且各產業的實務流程差別頗大,可以一次汰換成以 SOA-ERP 元件開發的應用程式,例如 NEO 的運籌(Logistics)模組。
集團企業中的大公司若使用國際知名 ERP 系統,例如 SAP 或 Oracle,可以只把不符合需求且客製成本太高的模組汰換成以 SOA-ERP 元件開發的應用程式,集團企業中的小公司則可全套系統都汰換成基於 SOA-ERP 服務元件的應用系統。因為是先以 SOA-ERP 為資料整合中心,在汰換的過程中,整個集團各公司、各系統的資料可以一直維持一致。
企業畢竟是使用者,希望有人開發應用程式讓他們「隨插即用」(Plug and Play)就好。元件軟體公司可以利用既有的 SOA-ERP 跨產業共用元件開發產業別元件,並做成產業別模組,例如醫院的藥品庫存管理模組或醫材採購模組。應用軟體公司可以組裝 SOA-ERP 元件開發各式各樣的應用程式,或更換既有系統的產業別模組,開發產業別系統。重點是軟體公司必須知道企業需要什麼,這就有賴顧問公司了。顧問公司有產業知識,知道如何利用資訊系統協助企業改善作業流程。顧問公司(醫生)在分析(問診)使用者(病人)需求後,開出需求規格(處方);應用軟體公司(藥局)根據需求規格,利用元件軟體公司(藥廠)的元件開發能滿足使用者需求的應用程式(抓藥,不只是單純的把藥包起來,還要組合元件開發 UI)(圖 2)。
[ 閱讀 葉宏謨 所有的文章 ]
顧問公司、應用軟體公司、和元件軟體公司形成軟體供應鏈生態系,在軟體供應鏈生態系中,直接服務客戶的顧問公司(Tier 1)協助企業導入應用軟體公司(Tier 2)所開發的應用程式。若現成的應用程式不能完全滿足使用者,則顧問公司或應用軟體公司可修改、客製應用程式。若現成的元件不足則由元件軟體公司(Tier 3)製作、維護、增強各式各樣的軟體元件,交付應用軟體公司(Tier 2)組裝成應用程式。在軟體生態系中,顧問公司、應用軟體公司,和元件軟體公司都有標準化的程序和文件,應用程式都是由標準化的 SOA-ERP 元件組成。和台灣傲視世界的硬體一樣,利用標準化的元件在標準化的製程中產出應用軟體 [註2] [註4]。
數位發展部若要振興台灣的軟體產業,可以把 SOA-ERP 元件當作台灣的國家基礎建設。期望這個以 SOA-ERP 元件為基礎的軟體供應鏈生態系,能變成台灣的另一個護國神山。
[註1] 鄭宜芬,AI崛起台灣產業生態,CIO雜誌,2024 年 11 月。
[註2] 葉宏謨,軟體工廠,SOA-ERP筆記,2009年 12 月。
[註3] 葉宏謨,低碼程式與公民開發者,CIO雜誌,2022年6月。
[註4] 葉宏謨,參觀軟體工廠,YouTube,2013 年11 月
(本文授權非營利轉載,請註明出處:CIO Taiwan)