[论文解读] Filling the Gap between Business Process Modeling and Behavior Driven Development
本文通过使用UML状态图(特别是有限状态机,FSM)将业务流程建模(BPM)与行为驱动开发(BDD)相结合,提出了一种方法:利用UML状态图对业务流程进行建模,并自动生成BDD测试。该方法弥合了高层流程模型与可执行规范之间的鸿沟,提升了企业信息系统开发中的可追溯性与质量。
Behavior Driven Development (NORTH, 2006) is a specification technique that is growing in acceptance in the Agile methods communities. BDD allows to securely verify that all functional requirements were treated properly by source code, by connecting the textual description of these requirements to tests. On the other side, the Enterprise Information Systems (EIS) researchers and practitioners defends the use of Business Process Modeling (BPM) to, before defining any part of the system, perform the modeling of the system's underlying business process. Therefore, it can be stated that, in the case of EIS, functional requirements are obtained by identifying Use Cases from the business process models. The aim of this paper is, in a narrower perspective, to propose the use of Finite State Machines (FSM) to model business process and then connect them to the BDD machinery, thus driving better quality for EIS. In a broader perspective, this article aims to provoke a discussion on the mapping of the various BPM notations, since there isn't a real standard for business process modeling (Moller et al., 2007), to BDD. Firstly a historical perspective of the evolution of previous proposals from which this one emerged will be presented, and then the reasons to change from Model Driven Development (MDD) to BDD will be presented also in a historical perspective. Finally the proposal of using FSM, specifically by using UML Statechart diagrams, will be presented, followed by some conclusions.
研究动机与目标
- 解决企业信息系统(EIS)中业务流程建模与敏捷开发中可执行测试之间的脱节问题。
- 通过提出向BDD的正式映射,克服BPM符号缺乏标准化的问题。
- 通过将业务流程模型与可测试的行为规范直接关联,提升软件质量。
- 用BDD替代模型驱动开发(MDD),以提升可测试性与开发人员的一致性。
- 通过FSM建立业务流程模型与软件行为之间的正式、可执行链接。
提出的方法
- 使用UML状态图作为有限状态机(FSM)的形式化表示,对业务流程进行建模。
- 使用自然语言描述,将状态图中的状态与转换映射到BDD风格的场景。
- 通过预定义的转换规则,从状态机模型自动生成BDD测试用例。
- 使用BDD框架执行测试,验证实现是否满足建模的业务行为。
- 利用BDD的文本规范能力,确保业务需求与代码之间的一致性。
- 引入从MDD到BDD演进的历史视角,为向以行为为中心的开发转变提供依据。
实验结果
研究问题
- RQ1如何将业务流程模型正式映射到可执行的BDD规范?
- RQ2现有BPM符号在支持自动化测试与验证方面存在哪些局限性?
- RQ3以UML状态图形式使用的FSM在提升业务流程与软件行为之间可追溯性方面有何优势?
- RQ4用BDD替代MDD如何提升企业软件系统的质量与可维护性?
- RQ5将状态机模型转换为BDD测试用例需要哪些转换模式?
主要发现
- 使用UML状态图能够对业务流程进行精确且形式化的表示,适用于自动化测试生成。
- 将FSM映射到BDD可实现从业务流程模型自动推导出可执行测试用例。
- 所提出的方法提升了业务需求与实现之间的可追溯性,减少了规范差距。
- 从MDD转向BDD通过提供人类可读、以行为为中心的规范,增强了开发人员参与度与测试覆盖率。
- 该方法为统一企业系统中的业务流程建模与测试驱动开发提供了实用路径。
- 通过使用形式化明确的FSM(以UML状态图为载体)作为BDD集成的共同基础,缓解了BPM符号缺乏标准化的问题。
更好的研究,从现在开始
从阅读论文到最终审阅,大幅缩短您的研究时间。
无需绑定信用卡
本解读由 AI 生成,并经人工编辑审核。