用例2.0技术驱动业务过程建模方法
2018-01-19沈晓奕杨德仁董富江
沈晓奕 杨德仁 董富江
摘要:为了避免结构化业务过程中引入非结构化业务带来的复杂性,提出一种用例2.0技术驱动业务过程建模方法。基本思想是使用用例2.0在结构化业务过程中灵活更改或调整影响业务过程的扩展部分,并保留不受变化影响的基本部分,通过扩展用例2.0覆盖非结构化业务过程需求。结构化业务过程与非结构化业务过程相互补充,给出一个具体的医院业务过程模型案例。该方法能够在结构化业务过程基础上使用用例2.0和UML活动图建模。
关键词:医院;SBP;UBP;用例2.0;UML活动图
DOIDOI:10.11907/rjdk.181649
中图分类号:TP301
文献标识码:A 文章编号:1672-7800(2018)010-0051-04
英文摘要Abstract:In order to avoid complexity caused by introducing unstructured business process into structured business process, this paper puts forward a use case 2.0 technology-driven business process modeling method.The basic idea of this method is to use case 2.0 in flexible business process to change or adjust the influence of some parts of the business process and retain those who are not affected by changes in the basic part, and by extending the use case 2.0 the demand of the unstructured is covered. Structured and unstructured business process business processes complement each other, and a specific hospital business process instance is given. The method can be used to use case 2.0 and UML activity diagram for modeling on the basis of the structured business process.
英文关键词Key Words:hospital;SBP;UBP;Use Case 2.0;UML activity diagrams
0 引言
业务过程建模是组织建模的一个关键要素,由组织内部和外部不同团队协作参与完成。统一建模语言(Unified Modeling Language,UML)属于结构化业务过程,可用于多方协作业务过程建模,并提供一组丰富的结构和行为视图可视化表示[1]。UML 活动图(UML Activity Diagrams)是UML中用于描述业务过程最重要的工具,提供一系列图形符号支持对业务过程建模,定义参与到活动中的对象及角色、状态和属性变化。但是,在面对异常的不可预见性业务过程中,UML活动图在设计业务过程模型时难以灵活更改或调整业务模型。
1 业务过程建模方法研究现状
已有业务过程文献提出了大量业务过程建模方法,针对不同业务过程类型,可以分为命令式过程建模方法和声明式过程建模方法[2-4]。命令式过程建模方法是指基于图形表示的过程建模语言对业务过程基本结构中活动和控制流依赖关系的精确定义[5-6]。基于图形表示的命令式过程建模方法已经被提出[7],包括UML[8]、BPMN[9]、Petri 网[10]、EPC s[11]。声明式过程建模方法通过模型指定最小业务关注点,即管理业务过程的策略和规则,如CMMN[12-13]。结构化业务过程(Structured Business Pro cesses ,SBP)属于命令式过程建模方法,非结构化业务过程(Unstructured Business Processes ,UBP)属于声明式过程建模方法[14-16]。结构化业务过程模型与非结构化业务过程模型相比,明确规定了执行业务过程路径的规范,有益于提高模型的可理解性和过程执行效率,但是可能会限制业务过程的灵活性。在非结构化业务过程中,允许涉众拥有更大自由决定执行哪一项任务应对不可预见的需求[17],可以在原结构基础上直接添加额外的新任务,而不需要重新设计业务过程,业务过程的适应性和灵活性很高[2]。文献[12]和文献[17]提到了医疗过程具有很强的灵活性,并使用非结构化语言CMMN敏捷地应对医疗过程建模的需求。文献[18]提出了新的建模语言,称为业务过程和案例管理符号(BPCMN),以一种结构化的方式在BPMN中表示,并且以一种非结构化的方式使用CMMN,通过BPMN和CMMN集成更好地建立业务过程模型。文献[19]提出了一种将UBP转换为SBP的方法,使用强制语言进行建模。文献[20]指出结构化业务过程通常由非结构化业务过程组成,需要探索一种全面的建模方法,能够满足结构化和非结构化业务过程建模需要,无需在结构化业务过程中引入非结构化业务过程,却存在以下不足:对非结构化业务过程CMMN,没有任何符号定义过程模型中的用户角色。目前,结构化业务过程和非结构化业务过程的研究仅仅涉及BPMN、CMMN、Petri 网、EPC s等图形表示,而使用UML建模语言对结构化业务过程的研究仍是空白。
本文将UML建模语言用例2.0与活动图相結合,对结构化业务过程进行建模,用例2.0建模替代非结构化业务过程的需求,并将该方法应用于具体的医院业务过程模型案例。结果表明,用例2.0能够满足非结构化的需求,避免了结构化业务过程引入非结构化需求带来的复杂性。
2 用例2.0理论基础与基本概念
用例2.0是呈现、运用、管理用例有效的新方式,被用于不同企业新业务开发和实践过程,以增量方式体现用户业务过程需求[21]。用例2.0的核心是用例、讲故事和用例切片。用例捕获业务目标,以一种简单而全面的方式识别和捕获所有不同但相关的故事。讲故事是使涉众关注业务目标、交流业务需求并探索用例的一种方法,也是连接涉众、用例和用例切片之间鸿沟的桥梁。用例切片是用例本身的一部分,用例切成薄片即用例切片,用例切片组成增量版本。
尽管用例2.0提出了用例的新版本,但它并不是指统一建模语言的更新,而是指软件开发人员和业务分析人员应用用例的方式更加有效。用例2.0技术有三大支柱:用例叙述结构;用例、用例切片与增量;讲故事。
2.1 用例叙述结构
用例通常用文本形式表现,通过编写用例叙述的结构,展示一个完整的用例故事。用例关注组织的特定目标,实现目标的最简单方法是由基础流程描述的,其它则被作为扩展流程呈现。基础流程的每一步都可能出现不可预见的状况,将异常状况作为扩展流程捕获,可以在需要时添加到基本流程中。在此过程中,可以确定最重要的用例,同时也可以很容易过滤掉对用户没有实际价值的用例。例如图1,在病人取药的基础流程中,出现医院药品短缺等异常流程,为保证病人用药,医院及时联系医药供应商供给。
2.2 用例、用例切片与增量
图2 显示了医院内部协作段4个版本的增量开发。第一个增量版本包含两个来源于用例1问诊的用例切片,分别为用例切片1.1挂号和用例切片1.2诊病。第二个增量版本中添加用例切片1.3拿药方和用例切片2.1取药。然后,添加更多切片创建第三和第四个增量版本。其中,第四个增量版本是现阶段最完整的版本。
2.3 讲故事
一个故事是用例叙述的一部分,找到有效故事的关键是理解用例叙述结构。在此基础上,提出基于路径扩展的模型建模,是指以用例2.0为核心技术,基于基本路径,以可选路径为扩展点建模。对路径扩展业务模型建模有两个阶段:①基本路径阶段,业务分析人员明确业务关注点,即关注的用例,将可预测的业务范围考虑在内;②路径扩展阶段,基本路径不作任何变更,额外扩展未预先设计的异常路径,必要时将异常路径添加到基本路径中(见图3)。该方法以医院业务相关人员为执行者,可以将每个用例看作动作的一个映射,执行动作的基本路径和扩展路径,展现病人到医院问诊的整个业务过程。
图3左边叙述的是基础流程,而扩展流程则被显示为与基础用例中一系列步骤的分离。基础流程自顶向下,从用例开始到用例结束终止用例,是完整、有价值的用例版本。基础流程的线性步骤有4步:第一步挂号,第二步问诊,第三步离院,第四步评价。在基础流程中可能出现异常事件,即扩展用例开药、检查、住院、治疗。在基础流程和扩展流程相互补充的过程中,完善业务过程模型。
图3右边是由医院内部协作段扩展至医院外部代理与委托段的业务过程。医院外部代理与委托段基础流程分别是供应商供应、专家评估、社会评价、政府监督,其中专家评估出现异常事件评估治疗方案,病人评价出现异常事件投诉医院。每个扩展用例在业务过程建模中自底向上不断扩展完善,清楚叙述整个用例,并且每个扩展流程都在基础流用例开始时开始,在基础流用例结束时结束。
用例叙述结构引导人们识别任何缺失的故事,并确保所有故事都是格式良好和可补充的,即使用用例2.0以弹性的方式应对未知业务需求,并在此基础上继续扩展业务用例。将用例2.0技术的用例与UML活动图执行者的动作相互映射,映射规则是将用例2.0基础、扩展流程与活动图的核心段、内部协作段、外部代理及委托段一一对应,用例2.0的用例与活动图动作一一映射。通过该组映射规则提供两者之间的映射,允许在用例2.0中捕获UML活动图的动作,然后将其应用到某医院业务过程模型的案例研究中。
3 UML活动图建模案例
随着信息系统的发展,业务过程建模广泛应用于医疗各业务领域。本文通过某医院业务流程模型建模分析,采用UML建模语言中的活动图对医院内部核心段、内部协作段、外部代理与委托段等结构化业务过程进行动态建模,并依次逐段细化。活动图反映医院核心段的核心功能主要有挂号、问诊、离院、评价。医院内部协作段功能主要有开药、检查、住院、治疗。医院业务过程并不是独立运行,建模过程中需要涉及多个参与者,主要包括外部代理与委托段的医药器材供应商、院外专家、社会公众、政府人员,这些协作者也通过活动图反映。
3.1 业务过程模型:核心段
在核心段病人看病活动中,两个主执行者分别是病人和医生,对病人和医生两个执行者的每一个动作进行说明,具体如图4所示。
当主执行者为病人时,包括挂号、问诊、离院、评价4个动作。病人通过线上预约或者线下窗口两种方式挂号,选择科室和专家姓名后,医院系统自动生成挂号单,病人领取挂号单完成挂号。病人到指定科室问诊,被医生诊断为健康,可直接离院。病人出院后,对医院的医疗行为进行评价并生成评价报告。当主执行者为医生时,其主要业务动作为诊断,医生接诊后询问病人病情,听取病人主诉,进行一般身体检查即初次诊断。医生诊断病人为健康,病人可以直接出院。
3.2 业务过程模型:内部协作段
医院内部协作的业务过程,由核心段扩展到药剂师发药、检验/影像技师检查、护士安排住院等内部协作,3个主要执行者分别是药剂师、影像/检验技师和护士。
图5详细描述了内部协作段的医院内部活动。当主执行者为药剂师时,其主要业务动作为发药,即药剂师根据医生开的药方抓药、配药并把药品分配给病人;其次是检查各科室及全院的药品数量,当药品库存达到最低限度时,及時上报给相关部门请求补充药物。当主执行者为检验/影像技师时,其使用诊疗设备为病人拍片检查,根据检查结果给出结论并提供检查报告。当主执行者为护士时,护士根据病人病历、检查报告和住院通知单,安排病人到住院部治疗。
3.3 業务过程模型: 外部代理与委托段
医院外部代理与委托段业务过程建模,由医院内部协作段进而扩展至外部代理与委托段的供应商供应、专家评估、社会评价、政府监督等,如图6—图9所示。
当医院内部发生异常业务事件时,通常要求进行案例管理。药剂师检查各科室及全院的药品数量,发现药品库存达到最低限度时,及时上报医院有关部门采购,连接到第一个接口A,A为供应商供应接入端口。医生根据检查报告为病人制定治疗方案,院外专家评估病人质疑和诊疗方案合理性,连接到第二个接口B,B为专家评估接入端口。病人将医院治疗方案、药品价格、服务质量等评价信息上传网络,医院接受社会公开评价,连接到第3个接口C,C为社会评价接入端口。最后,由政府对药品价格 、服务质量、病人投诉进行监督,连接到第4个接口D,D为社会监督的接入端口。
4 结语
本文研究发现,在结构化业务过程中UML活动图不能有效捕获所有业务流程,为了应对未知的异常业务过程需求,提出一种用例2.0技术驱动的业务过程建模方法,基于用例2.0技术,使用路径扩展模型建模解决该问题。该方法能够满足结构化和非结构化业务过程建模的需要,无需在结构化业务过程中引入非结构化业务过程,避免了业务过程的复杂性。在未来工作中,需进一步对业务过程建模方法在医院医疗领域的应用进行分析,对医院医疗领域业务流程进行建模与优化。
参考文献:
[1] NOGUERA M, CHUNG L. Ontology-driven analysis of UML-based collaborative processes using OWL-DL and CPN[J]. Science of Computer Programming,2010,75(8):726-760.
[2] GOEDERTIER S, VANTHIENEN J, CARON F. Declarative business process modelling: principles and modelling languages[J]. Enterprise Information Systems, 2015,9(2):161-185.
[3] WESTERGAARD M, SLAATS T. CPN tools 4: a process modeling tool combining declarative and imperative paradigms[C].Beijing:International Conference on Business Process Management,2014.
[4] SILVA N C, OLIVEIRA C A L D, ALBINO F A L A, et al. Declarative versus imperative business process languages: a controlled experiment[C].16th International Conference on Enterprise Information Systems, 2015:394-401.
[5] GIACOMO G D, DUMAS M, MAGGI F M, et al. Declarative process modeling in BPMN[J]. Advanced Information Systems Engineering,2015:84-100.
[6] MERTENS S, GAILLY F, POELS G. Enhancing declarative process models with DMN decision logic[C]. International Conference on Enterprise, Business-Process and Information Systems Modeling, 2015:151-165.
[7] CARDOSO E, LABUNETS K, DALPIAZ F, et al. Modeling structured and unstructured processes: an empirical evaluation[C].35th International Conference, 2016:347-361.
[8] ESHUIS R, WIERINGA R. A formal semantics for UML activity diagrams——formalising workflow models[C]. University of Twente Centre for Telematics & Information Technology, 2017:1-44.
[9] ALLWEYER T. BPMN 2.0: Introduction to the standard of business process modeling[M]. Norderstedt:Books on Demand GmbH, 2016.
[10] LI X, FANG X, ZHAO J. The approach of analyzing consolidation and the change domain in medical business process models based on Petri net[J]. Journal of Yangtze University, 2016:20-25.
[11] DONGEN B V, DIJKMAN R, MENDLING J. Measuring similarity between business process models[J]. Seminal Contributions to Information Systems Engineering, 2013, 5074:405-420.
[12] CARVALHO R M D, MILI H, BOUBAKER A, et al. On the analysis of CMMN expressiveness: revisiting workflow patterns[C].Enterprise Distributed Object Computing Workshop, 2016:1-8.
[13] MARIN M A, LOTRIET H, POLL J A V D. Metrics for the case management modeling and notation (CMMN) specification[C].Research Conference on South African Institute of Computer Scientists and Information Technologists, 2015:28.
[14] DUMAS M, ROSA M L, MENDLING J, et al. Understanding business process models: the costs and benefits of structuredness[C]. International Conference on Advanced Information Systems Engineering, 2012:31-46.
[15] JESSICA Y T Y, LEE R W B, TSUI E. Examining knowledge audit for structured and unstructured business processes: a comparative study in two Hong Kong companies[J]. Journal of Knowledge Management, 2015:514-529.
[16] BUKHSH Z. BPMN plus : a modelling language for unstructured business processes[D]. Enschede:University of Twente,2015.
[17] CARVALHO R M D, MILI H, GONZALEZ J, et al. Comparing ConDec to CMMN: towards a common language for flexible processes[C]. Roma:International Conference on Model-Driven Engineering and Software Development, 2017.
[18] HINKELMANN K. Business process flexibility and decision-aware modeling—the knowledge work designer[C].Domain-Specific Conceptual Modeling, 2016:397-414.
[19] ESHUIS R, KUMAR A. Converting unstructured into semi-structured process models[C]. Data & Knowledge Engineering, 2016:43-61.
[20] BUKHSH Z A, SINDEREN M V, SIKKEL N, et al. Understanding modeling requirements of unstructured business processes[C]. International Conference on E-Business,2017:17-27.
[21] IVAR J,IAN S,BRIAN K.Use-case 2.0[C]. Communications of the ACM,2016:61-69.
(責任编辑:何 丽)