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

基于控制流的盒圖動態建模與測試

2020-01-07 08:07:43孔令東
軟件工程 2020年12期

摘 ?要:為解決傳統盒圖靜態過程描述缺少動態邏輯關系驗證問題,研究工作流中控制流的可視化建模與實現;通過分析盒圖和控制流的轉換關系,將靜態的盒圖無縫地轉換成可視化的動態控制流模型,完成從盒圖靜態過程描述到控制流的可視化動態建模、實現、測試和驗證;實現快速構建復雜業務流程的可視化分析模型并提前驗證,解決了復雜業務過程模型在編碼之前的邏輯驗證,在實際的建模中,邏輯關系清晰,便于驗證。

關鍵詞:工作流;盒圖;控制流;動態建模與測試

中圖分類號:TP311.51 ? ? 文獻標識碼:A

Abstract: This paper studies visualization modeling and implementation of control flow as there is no dynamic logical relation verification in static process description of traditional N-S (Nassi Shneiderman) Diagram. Static N-S diagram is seamlessly transformed into visual dynamic model of control flow by analyzing the relationship between N-S diagram and control flow. Visual dynamic modeling, implementation, testing and verification method are completed from N-S static process description to control flow. The visual analysis model of complex business process can be quickly built and verified in advance. This study realizes the dynamic logic verification of complex business process model before coding. In actual modeling, the logical relationship is clear and easy to verify.

Keywords: workflow; N-S diagram; control flow; dynamic modeling and testing

1 ? 引言(Introduction)

模塊或者算法的詳細設計,描述了業務邏輯實現的方法和步驟,其結果基本上決定了最終的程序代碼的質量。N-S圖也稱為盒圖,作為過程詳細設計的工具,在算法和程序之間充當橋梁的角色,可以指明控制流程、處理功能、數據組織及實現細節,從而保證程序代碼的正確性[1-3]。然而,對于復雜的業務邏輯,在代碼實現之前僅僅使用N-S圖的靜態過程描述,無法快速完成邏輯關系的動態測試和驗證,期望尋求一種簡明、快速、可視化的動態建模與測試方案。

WF(Workflow Foundation)是一種可視化的工作流編程引擎,其過程控制流C-F(Control Flow),可以直觀地描述復雜的業務邏輯過程,實現對流程控制的可視化建模。借助WF的過程工作流,可以實現從N-S到C-F的無縫轉換,通過建模轉換不僅可以可視化地展示模塊的業務邏輯,而且可以動態的完成測試以及實現[4-8]。如圖1本文技術路線所示,在算法分析到程序實現之間,探索一種從N-S靜態過程描述到C-F的可視化動態建模、測試和驗證方式,解決復雜業務過程模型在編碼之前的邏輯驗證,實現快速構建復雜業務流程的可視化分析模型并提前驗證,具有實際意義。

2 ? N-S圖和控制流的轉換(Transform between N-S diagram and control flow)

如圖2N-S和C-F控制流之間的結構轉換圖所示,圖中我們典型地給出了順序、選擇、循環結構的圖形表示和邏輯轉換,可以看出,N-S圖的基本結構和C-F控制流在可視化靜態建模上具有一一轉換對應關系,邏輯實現具有一致性。如圖2(b)中所示,對于選擇條件結構,N-S圖只能夠靜態地描述條件判斷任務,而C-F控制流在顯式地描述靜態邏輯判斷結構的同時,可以方便地借助WF引擎,動態的運行給出的“Condition”或參數,快速的驗證邏輯關系和算法;同時,在實際的算法描述中C-F控制流的規范性和可視化,也帶來建模的便利性和清晰性,尤其對于較為復雜的算法和邏輯關系分析,更具備優勢。N-S優勢在于靜態的過程設計和描述,C-F的控制流可以在可視化描述業務過程的同時,進一步的快速實現動態測試驗證,這將在后面的建模與集成應用中詳細描述。

3 ? 可視化建模與實現(Visualization modeling and implementing)

3.1 ? 順序結構的建模與實現

如圖3所示C-F的順序結構建模與實現,在Sequence控制流中顯式地完成了Sequence_Activity_1、Sequence_Activity_2、Sequence_Activity_3順序過程建模,其中Sequence_Activity_1給出了相關的順序說明,Sequence_Activity_2活動任務中給出了可以動態測試的變量variable1,可以完成模型的動態業務邏輯測試,Sequence_Activity_3顯式地給出了測試的輸出結果。在實際的測試中,變量的輸入可以方便的設置變量類型和作用域,可視化的模型一目了然,且邏輯關系清晰,我們會在隨后的集成測試中給出測試結果。相比較N-S圖中的靜態描述和直接的編碼實現,C-F圖給了我們快速可視化的邏輯展示。

3.2 ? 選擇結構的建模與實現

如圖4所示C-F的選擇結構。其中4(a)圖為IF選擇結構,判斷條件“Condition”可以動態的設置,根據判斷的條件可以顯式地執行“Then”和“Else”業務邏輯,同時,對于每一個“Then”和“Else”分支都可以顯式地嵌入更復雜的業務邏輯或算法分析,非常容易擴展。圖4(b)為Switch-Case結構,可以根據“Expression”條件表達式,顯式地確定“Case”執行的對應任務,對于每個“Case”也同樣可以嵌入復雜的過程描述。在細節之處,我們可以看到C-F控制流中也默認給出了“Default”分支。在實際的建模中,對于Case結構,C-F控制流以縱向分布,多判斷的擴展遠比N-S圖的橫向布局清晰。

3.3 ? 循環結構的建模與實現

如圖5所示C-F的循環結構,其中圖5(a)為While循環結構,圖5(b)為DoWhile循環結構,可以直觀顯式地完成N-S的While循環條件和Until循環條件的建模,同時可以根據不同的參數和變量完成動態測試,我們在后面的集成動態測試中給出案例分析。此外WF控制流中也給出了ForEach的建模方法。

4 ? 集成動態測試(Integrated dynamic testing)

前面我們分析了C-F可視化建模的基本結構,下面將以一個典型的登錄測試過程完成測試應用。主要關注集成應用的可視化便捷性、動態測試的參數、作用域和執行的過程。更為方便的是對于復雜業務邏輯,每一個控制流都可以作為集成的組件,直接進行可視化再集成。如圖6控制流的集成應用所示,集成使用了C-F控制流的基本結構,最外圍是一個順序結構(Sequence),在此內部順序地完成“inputPassword”變量的賦值和If結構;進入If結構中可視化地給出了“inputPassword==password”判斷條件,可以根據動態測試的需要,靈活的修改判斷條件,條件滿足輸出“welcome!”,否則進入Else任務;在Else任務中,又采用了一個Sequence結構用于嵌入復雜的DoWhile循環結構和順序執行最后的提示信息“please enter next day!”;在嵌入的DoWhile循環結構中順序的執行判斷密碼輸入的次數“inputCounter = inputCounter +1”語句,用于計算輸入密碼的次數和頻率,并順序地給出每次輸入的提示信息。至此,一個顯式的N-S圖靜態過程設計被可視化地建模完成,根據模型的邏輯結構可以靜態地分析邏輯關系,但對于復雜的業務流程顯然是不夠的,于是我們試圖引入動態的測試和分析。

如圖7所示C-F組件動態測試,借助WF的可視化實現,可以很方便地實現集成動態測試。在圖7(a)中給出了項目集成的更高層級的集成組件單元,將C-F中的過程流程封裝成可以進一步可視化建模的組件,相當于一個功能黑盒參與更復雜的業務過程測試。圖7(b)所示采用組件化的可視化建模,圖中的Sequence_Workflow、If_Condition_Activity、Case_Condition_Activity、While_Activity等不再是基本的結構,而是可以包含復雜業務邏輯的組件功能單元,比如可以是一個疫情狀態檢查的組件“YiQingStateChecking_Activity”或者完成訂單任務的“Order_Activity”等等,都可以在可視化建模完成后進行集成封裝。可視化的動態集成測試,需要方便的可視化的動態參數修改,在圖7(d)中,不僅可以動態的設置參數的變量類型和值,也可以隨時設置并查看變量的作用域,比如password和inputPassword的作用域在Sequence基本結構中,而inputCounter變量的作用域在DoWhile基本結構中,同時還可以可視化的輸入或導入動態的參數和變量,可以方便地實現可視化的動態測試。圖7(c)給出了集成動態測試的結果,每一個過程和組件執行都顯式可見,可以有效地幫助復雜業務邏輯的驗證和測試,達到了預期的效果。

5 ? 結論(Conclusion)

通過N-S和C-F可視化建模分析,我們將靜態的N-S圖無縫地轉換成動態可視化的C-F圖,顯式地實現參數的輸入、輸出和處理過程,實現了業務邏輯和算法的正確性和有效性驗證。對于較為復雜的業務流程,提供快速可視化的清晰驗證,可以及時發現算法分析的錯誤。解決了傳統N-S圖的靜態過程描述,缺少動態可視化的邏輯關系驗證問題,在N-S圖和編碼之間起到橋梁作用。在實際的建模實現過程,快速清晰、高效,易于理解和應用,具有實際意義。

參考文獻(References)

[1] 張海藩,牟永敏.軟件工程導論(第6版)[M].北京:清華大學出版社, 2013:117-128.

[2] 鄧德祥.結構化控制流程圖(N-S圖)的改進與模塊化程序設計的設想[J].計算機研究與發展,1995,32(12):21-26.

[3] 劉正余,蘇守寶,楊洋,等.N-S流程圖分析及其在算法描述中的應用[J].井岡山大學學報(自然科學版),2010,31(06):70-72;81.

[4] Yongliang Li, Huaiqing Zhang, Hongbo Ju, et al. Visual simulation of quantitative thinning in a Chinese fir plantation based on workflow foundation[J]. Applied Engineering in Agriculture, 2015,31(3):339-349.

[5] Microsoft. WindowsWorkflowFoundation[EB/OL]. https://docs.microsoft.com/en-us/dotnet/framework/windows-workflow-foundation, 2017-03-30.

[6] Microsoft. ProceduralWorkflows[EB/OL]. https://docs.microsoft.com/en-us/dotnet/framework/windows-workflow-foundation/procedural-workflows#controlling-execution-flow, 2017-03-30.

[7] 何隆.基于WF的工作流框架的設計和應用[D].重慶大學,2015.

[8] 鐘委明.基于WF可視化工作流編輯器的設計與實現[D].中山大學,2012.

作者簡介:

孔令東(1973-),男,博士,講師.研究領域:軟件工程和工作流技術.

主站蜘蛛池模板: 中文字幕免费视频| 亚洲最猛黑人xxxx黑人猛交| 欧美狠狠干| 亚卅精品无码久久毛片乌克兰 | 国产精女同一区二区三区久| 97免费在线观看视频| 亚洲色大成网站www国产| 五月天香蕉视频国产亚| 最新国产高清在线| 亚洲第一成网站| 亚洲va视频| 在线观看国产精美视频| 无码啪啪精品天堂浪潮av| 国产乱视频网站| 丁香五月亚洲综合在线| 欧美综合在线观看| 精品少妇人妻无码久久| a在线观看免费| 在线看片中文字幕| 国产成人久久综合777777麻豆| 精品国产成人高清在线| 欧美国产日韩另类| 亚洲成人精品| 国产福利拍拍拍| 欧美全免费aaaaaa特黄在线| 54pao国产成人免费视频| 欧美日韩一区二区三区四区在线观看 | 亚洲国产精品不卡在线 | 亚洲欧洲一区二区三区| 国产欧美日韩另类精彩视频| 毛片视频网址| 久久这里只有精品66| 免费A级毛片无码免费视频| 亚洲精品无码专区在线观看| 国产成人AV男人的天堂| 日本免费福利视频| 91福利一区二区三区| 99re热精品视频国产免费| 精品久久久久久久久久久| 欧美成人A视频| 成人免费网站久久久| 女同久久精品国产99国| 三级国产在线观看| 狠狠五月天中文字幕| 久久a级片| 好吊色妇女免费视频免费| 日本中文字幕久久网站| 亚洲人成人无码www| 欧美精品亚洲精品日韩专区| 一级毛片免费观看久| 国产成人亚洲综合A∨在线播放| 无套av在线| 国产精品理论片| 久草网视频在线| 精品久久久久久成人AV| 试看120秒男女啪啪免费| 亚洲成AV人手机在线观看网站| 无码内射在线| 国产一区二区三区在线观看免费| 91精品国产自产91精品资源| 欧美第九页| 亚洲最大福利视频网| 国产H片无码不卡在线视频| 色综合天天综合| 国产黑丝视频在线观看| 欧美精品在线看| 国产女人18水真多毛片18精品 | 天天摸天天操免费播放小视频| 国产成人福利在线| 欧美午夜小视频| v天堂中文在线| 九九久久99精品| 91免费观看视频| 国产精品毛片在线直播完整版| www亚洲天堂| 国产欧美日本在线观看| 久久久精品久久久久三级| 综合天天色| 欧美成人免费一区在线播放| 黄色在线不卡| 99热最新在线| JIZZ亚洲国产|