陳思恩 劉震宇
摘要:文章以軟件架構柔性成本作為研究的切入點,從組織間的視角探討了組織間業務流程感知的軟件架構柔性成本的產生機制。通過對組織間業務流程感知的軟件架構柔性成本的理論研究,建立組織間業務流程感知的軟件架構柔性成本產生的機制,拓展組織間業務流程感知的軟件架構柔性成本研究的領域。
關鍵詞:業務流程感知;軟件架構;柔性成本;產生機制
組織間業務流程感知的軟件架構(Cross-Organizational Business Process-Aware Software Architecture,簡稱CPASA)由于具備很強的柔性已逐步應用到商業管理、醫療保健、民航旅游、股票證券和金融保險等許多領域。組織面臨組織間業務流程(Cross-Organizational Business Processes,簡稱CBP)變化的不斷增加,CPASA生命周期總成本需要降低的問題。然而,組織通過配置CPASA滿足CBP變化需求,同時降低因變化過程產生的成本。但是,為了實現具備柔性的變化,組織需要在設計時期和運行時期為CPASA柔性付出成本。因此,正確把握CPASA柔性成本產生機制,是組織應該掌握的一種關鍵能力,組織需要用柔性成本產生機制來幫助做投資決策,從而避免產生昂貴的成本和減少錯誤決策。
一、 組織間業務流程感知的軟件架構及其柔性成本研究綜述
CPASA是基于組織內業務流程感知的軟件架構(Business Process-Aware Software Architecture,簡稱PASA)逐步發展起來,組織內PASA豐富的理論基礎與實踐經驗為后來的CPASA研究打下了堅實的理論基礎。Chen 和Liu(2012)指出基于業務流程感知模式的研究繼承PASA的研究工作,運用業務流程感知模式應對變化能降低因業務流程變化產生的軟件架構在設計時期與運行時期的成本,大多數PASA以業務流程感知模式來支持業務流程的變化,類似于軟件架構設計中的設計模式理念。模式提供不同層面的指導,模式關注的重點是通過經驗提取的“指導方案或準則”在軟件架構設計中的應用,模式就是把共通問題中的變化部分和不變部分和變化部分分離出來,不變的部分就構成了模式。業務流程感知模式可以作為研究CBP變化的研究基礎,并依此研究CPASA的模型。
為了幫助組織通過信息技術在一定程度上緩解和適應需求和環境的變化,軟件架構需要具備柔性,柔性體現CPASA能適應業務流程的不斷變化與不間斷的需求的能力上。軟件架構柔性的獲取需要增加投資和額外的管理成本,軟件架構柔性越高所需的成本越高,過多的柔性也會增加組織間業務流程的復雜度,降低組織間業務流程的應變時間,最終削弱組織間關系的競爭優勢(Liu & Chen, 2012)。Liu和Chen(2012)定義CPASA柔性成本是發生在軟件架構整個生命周期中組織為建立CPASA的動態柔性所付出的全部成本之和。Dreyfus和Wyner(2011)在軟件架構的柔性成本度量問題上提供了研究思路。由于軟件架構可以通過不同的組件及依賴關系描述,Baldwin和Clark(2000)、Darcu等(2005)分別研究組件復雜度對軟件架構柔性成本的影響,進而度量軟件架構柔性成本。Dreyfus和Wyner(2011)從軟件架構與組件兩個維度度量,通過軟件架構和組件復雜度對軟件架構柔性成本的影響,進而度量軟件架構柔性成本。在上述文獻回顧中,業務流程變化不斷增加,軟件架構生命周期中所花費的總成本需要降低的情況下,軟件架構柔性成本對CPASA成本產生積極影響。本研究將以軟件架構柔性成本作為本文的切入點。在綜合現有文獻中有關信息系統柔性成本及軟件架構柔性成本定義的基礎上,Liu和Chen(2012)給出有關CPASA柔性成本的定義。為此,本文把CPASA柔性成本定義為:CPASA柔性成本是發生在CPASA整個生命周期中組織為建立CPASA的動態柔性所付出的全部成本之和,在不考慮CPASA動態柔性的總成本和考慮CPASA動態柔性的總成本的差額來計算出CPASA的產生柔性成本。
在以往研究的理論基礎上,本文提出組織間業務流程感知的軟件架構柔性成本的產生機制按照“CPASA柔性成本的前因→CPASA柔性策略→CPASA柔性成本→CPASA軟件架構成本”這一主線進行研究,一方面將CPASA柔性成本的前因性研究與機制性研究相結合,按照特征機制對CPASA柔性成本的產生進行研究,提出CPASA柔性成本產生的機制。
二、 組織間業務流程感知的軟件架構柔性成本產生的前因性研究
當選擇CPASA柔性策略的目標是為了以最少的投資成本盡快響應CBP變化時,組織應該按照“CPASA柔性成本的前因→CPASA柔性策略→CPASA柔性成本→CPASA軟件架構成本”這一主線進行分析,首先探索CPASA的前因,然后了解各種CPASA柔性策略的特點,然后詳細分析組織各種影響CPASA柔性成本的因素。本文認為CPASA柔性成本產生的研究,主要包括“前因性”研究和“機制性”研究兩種方法。前因性研究主要是探索有哪些具體因素會影響CPASA柔性成本。
1. 組織間業務流程變化特征。隨著市場需求和環境的變化,CBP的運行環境比組織內部流程的運行環境更加復雜,在設計時期和運行時期均面臨更多不確定性因素的影響,CBP結構的調整和成員組織的變動是經常發生的,導致原先的流程定義可能不再適應組織需求和新的流程運行條件,需要對建立之初構建的任務邏輯關系和流程組成結構等進行調整。添加新的活動或刪除已有的活動、修改流程資源依賴關系、修改活動之間的執行依賴關系以及增加或刪除成員組織等,導致軟件架構不得不進行調整。
因此本文認為CBP變化特征是CPASA柔性成本的原因和來源,業務流程變化的特征會影響CPASA柔性成本的產生。CPASA柔性主要體現在軟件架構的可修改性,因為可修改性使PASA能夠適配業務流程變化(Weber et al., 2008)。Roser等(2011)提出從可修改程度、私有化程度、可重用程度、協作程度等四個方面來評估軟件架構的可修改性。本文進一步定義出CBP變化特征:(1)可重用程度(重用組織間業務流程;重用服務元素);(2)可修改程度(修改組織間業務流程;變化執行組織間業務流程的成員;增加組織間業務流程開發;變化服務元素;開發組織間業務流程類型);(3)協作程度(變化組織間業務流程協議規格;變化執行流程接口);(4)私有化程度(私有化組織內執行流程數據;私有化組織間業務流程實現)。
2. 組織間業務流程變化特征與柔性成本之間的關系
針對CPASA柔性成本的產生機制,本文認為CBP變化特征是CPASA柔性成本的原因和來源,CBP變化特征會影響CPASA柔性成本的產生。本文提出CBP變化特征的11種類型,通過SAAM結合質量屬性場景描述CBP變化特征的質量場景屬性,見表1,質量場景實例方法最有利于對軟件架構的柔性進行分析。Nico(1999)通過該方法捕捉軟件架構支持業務流程變化,并且通過評價這些質量場景實例的效果來評估軟件架構的柔性。本文通過SAAM方法評估一個質量場景實例影響軟件架構組件的狀況,業務流程變化影響軟件架構結構復雜度,進而影響軟件架構柔性及柔性成本。
場景修改組織間業務流程(可修改性):由于業務不斷又快速的變化,CBP需要適配新的業務模式,如何有效實現修改組織間業務流程?在CPASA設計時期和運行時期的環境下,CPASA通過合理配置滿足業務流程變化需求產生。CPASA柔性成本的產生是為了制定新的CBP需要對原本存在的業務流程模型進行必要的變更,變更盡量不要對其它業務流程產生負面影響。CPASA柔性成本的度量需要考慮CPASA的類型,無代理模式所有成員組織的ES均受到影響;中央代理模式中央代理控制器受影響;分散代理模式各個成員組織的VP受影響。
從上述11種CBP變化特征與CPASA柔性成本之間的關系分析可以發現,從結構復雜度的角度,為了適應變化,業務流程感知模式決定組件特征,決定是靜態演化組件、動態演化組件還是動態細化組件(Weber et al. 2008),進而影響基礎組件、信息共享與隱蔽組件、靜態演化組件、動態演化組件、動態細化組件、拓撲架構組件本身和依賴關系,CBP變化特征基于業務流程感知模式,因此本文認為,從結構復雜度的角度,組件特征在一定程度上可以表示CBP變化特征。上述的每一種質量場景屬性中CBP特征影響CPASA柔性成本的產生。從面向CBP變化特征的角度,不同的業務流程感知模式決定業務流程變化率的不同(Liu & Chen,2012),即不同的CBP變化特征類型決定業務流程變化率的不確定性,任務差異性,時間緊迫性,負荷伸縮性,它們都會影響CPASA柔性成本的產生。本文認為,從面向CBP變化特征的角度,業務流程變化率在一定程度上可以表示CBP變化特征。
3. 組織間業務流程變化特征與軟件架構的關系特征。支持不同類型的CBP變化,需要有相應的CPASA組件支持,Bass等(2003)在軟件架構戰術和模式分析中指出不同類型業務流程變化中需要有對應的功能邏輯實現、戰術和架構模式去支持這種變化。Chen和Liu(2012)指出CPASA可以通過配置實現柔性,從而降低CPASA總成本。CBP變化可解析為業務流程感知的18種模式,其中可修改程度、私有化程度、可重用程度、協作程度等對CPASA起決定作用(Chen & Liu,2012),與之相應,CPASA保護加入CBP的成員組織的內部數據、接口、業務流程的私有性,CPASA對協作的數據進行隱蔽,CPASA實現與CBP相關的協作。
因此,本文對影響CPASA柔性成本產生的因素進行分析發現,CBP變化特征與CPASA及CPASA柔性成本產生機制存在映射關系。本文認為CPASA與CBP的關系特征不是柔性成本產生的直接因素,但CPASA與CBP變化的關系特征會影響CPASA柔性成本的產生。本文進一步定義出CBP變化特征與CPASA的關系特征,包括功能邏輯實現、戰術和架構模式等特征。
4. 關系特征與柔性成本之間的關系。本文用可修改性戰術描述組織間業務流程變化特征與軟件架構的關系,CPASA的設計理念是以可修改性為中心設計展開,CBP變化特征體現可修改性,分析組織間業務流程變化特征與軟件架構的關系主要是分析可修改性的戰術,Bass等(2003)指出可修改性目標是控制軟件架構實現、測試和部署變更的成本,可修改性戰術根據其目標主要有局部化修改和防止連鎖反應。這兩組戰術之間的差別是由直接受變更影響的模塊(那些調整其責任來完成變更的模塊)和間接受變更影響的模塊(那些其責任保持不變,但必須改變其實現來適應直接受影響的模塊)。
三、 組織間業務流程感知的軟件架構柔性成本產生的機制性研究
1. 分析外部影響的過程機制。分析外部影響的過程機制,需要從組織間的相互依賴關系與組織間信息共享與隱蔽分析著手,進而分析出CBP變化特征需求。
2. 確定關鍵質量的過程機制。CPASA柔性主要體現在軟件架構的可修改性,具體表現在具備自主演化能力的動態演化及動態細化。因為可修改性使CPASA能夠適配業務流程變化。CPASA的設計理念是以可修改性為中心設計展開。因此本文認為CPASA自身特征是CPASA柔性成本的原因和來源,CPASA自身特征會影響CPASA柔性成本的產生。本文進一步定義出CPASA自身特征:軟件架構宏觀上支持架構的不同類型(點對點拓撲結構、分層拓撲結構、混合制拓撲結構),微觀上組件及依賴關系實現具備柔性的變化,包含流程編制和流程編排、信息共享與隱蔽、業務流程模型顯式化、自主演化能力。
3. 確定關鍵功能的過程機制。CBP變化特征與軟件架構的關系特征體現關鍵功能的過程機制的要求。CPASA的設計理念是以可修改性為中心設計展開,CBP變化特征體現可修改性。上文已定義CBP變化特征與軟件架構的關系特征:功能邏輯實現、戰術和架構模式等特征。
4. 組織間業務流程感知的軟件架構特征與柔性成本之間的關系。本文的理論分析的結果顯示CBP變化特征影響CPASA柔性成本的產生,例如,可修改程度、私有化程度、可重用程度、協作程度會對CPASA柔性成本產生影響。另一方面CPASA與CBP變化特征的關系影響CPASA柔性成本,例如:CBP變化特征影響軟件架構的功能邏輯實現、戰術和架構模式,進而影響CPASA柔性成本。同時,CPASA柔性成本的產生又會受到CPASA一些特征的影響,例如,軟件架構宏觀上支持架構的不同類型(點對點拓撲結構、分層拓撲結構、混合制拓撲結構),微觀上組件及依賴關系實現具備柔性的變化,包括流程編制和流程編排、信息共享與隱蔽、業務流程模型顯式化、自主演化能力,因為CPASA自身特征會使柔性成本的建立過程會有不同,對CBP變化特征的要求及對CPASA與CBP變化特征的關系特征的要求也會有所不同。
四、 組織間業務流程感知的軟件架構柔性成本的產生機制
本文將CPASA柔性成本的前因性研究與機制性研究相結合,按照特征機制對CPASA柔性成本的產生進行研究。本文將CPASA柔性成本產生機制分為三類:(1)來源于CBP變化的CPASA柔性成本,即CPASA柔性成本來源于CBP變化;(2)來源于CPASA特征的軟件架構柔性成本,即CPASA柔性成本建立在實現CPASA設計理念的基礎之上;(3)來源于CBP變化與CPASA特征的CPASA柔性成本,即CBP變化與CPASA適配變化緊密相聯,進而影響軟件架構柔性成本。然而在CPASA柔性成本產生機制研究基礎上,需要進一步探討軟件架構柔性成本與軟件架構生命周期總成本的關系。因此,通過上述的分析歸納,可以對CPASA柔性成本的產生形成圖中的思路,如圖1所示,得到研究模型的雛形。
五、 總結與展望
本文將軟件架構柔性成本的影響因素研究與機制性研究相結合,把影響CPASA柔性成本產生的因素分為三個方面:①CBP變化特征,包括:修改組織間業務流程、變化執行組織間業務流程的成員、增加組織間業務流程開發、變化服務元素、開發組織間業務流程類型、私有化組織內執行流程數據、私有化組織間業務流程實現、重用組織間業務流程、重用服務元素、變化組織間業務流程協議規格、變化執行流程接口;②CPASA與業務流程變化的關系特征,包括:維持語意一致性、預期期望的變更、泛化模塊、限制可能選擇、信息隱藏、維持現有接口、限制通信路徑、仲裁者使用;③CPASA自身特征。宏觀的軟件架構,微觀的軟件架構(包括組件及依賴關系)。指出CPASA柔性成本主要來源于CBP變化特征機制、CPASA特征機制、CPASA與業務流程變化的關系特征機制等三個機制,并對每種機制的特征與軟件架構柔性成本的關系進行分析。
針對CPASA柔性成本產生機制,未來研究需要對每種機制的特征與CPASA柔性成本的關系進行論述,并通過應用研究進行驗證,包括:CPASA特征與CPASA柔性成本之間的關系;CBP變化特征與CPASA成本之間的關系;關系特征與CPASA柔性成本之間的關系;CPASA柔性成本與CPASA生命周期總成本的關系四個部分進行探討,前三個組成部分是CPASA柔性成本的產生機制,第四個是CPASA柔性成本的計算模型。本文只是簡單分析了CPASA柔性成本產生機制,理論分析的結果還需要進一步深入分析,同時對CPASA柔性成本與CPASA生命周期總成本的關系進行深入分析,進一步的研究CPASA柔性成本如何計算,組織如何用柔性成本產生機制來做投資決策。
參考文獻:
1. Sien Chen, Zhenyu Liu. Change Support in Cross-Organizational Dynamic Process-Aware Softw- are Architecture - A Pattern-Based Analysis.The Eleventh Wuhan International Conference on E-Bu- siness,2012.
2. Zhenyu Liu, Sien Chen. Process-Aware View of the Relationship between Software Architecture and Flexibility Costs.Production and Operations Management Society(POMS)23nd Annual Conference, 2012.
3. Dreyfus David, Wyner, George.Digital Cem- ent: Software Portfolio Architecture, Complexity, and Flexibility. AMCIS 2011 Proceedings,2011.
4. Baldwin C.Y, Clark K.B. Design Rules: The Power of Modularity.Cambridge, MA: MIT Press, 2000.
5. 張耕.組織際流程柔性的評價與選擇策略研究.廈門大學,2007.
作者簡介:劉震宇,廈門大學管理學院教授、博士生導師;陳思恩,廈門大學管理學院博士生,高級工程師。
收稿日期:2013-03-13。