Mapping Business Process Modeling constructs to Behavior Driven Development Ubiquitous Language
行为驱动开发(BDD)是一种规范技术,通过将这些需求的文本描述与自动化测试相连接,自动证明所有功能需求都被源代码正确处理。鉴于在某些领域,在特殊的企业信息系统中,需求是由业务流程建模确定的-它使用底层业务流程的图形符号,本文旨在提供一个映射,从形成最常见的BPM语言的基本结构到行为驱动开发结构。
2010-06-25 cs.SE
Assessing usability of model driven development in industrial projects
模型驱动开发范例的整体使用会极大地影响和改变组织的软件开发部门。这种范式降低了一些任务的复杂性和成本,但也引入了新的任务,如果认真引入,会对软件开发过程中的活动和角色产生严重影响。随着模型成为最重要的开发工件,开发团队面临着新的挑战。G.评估模型的质量,分布式团队的模型划分和配置管理,构建管理的设置,工具链和通过各种工件跟踪信息。处理模型驱动开发的组织需要成功地引入新的工具和新的思维方式,他们在采用过程和培训员工方面面临挑战。本文介绍了一个正在进行的研究项目的可用性评估的建模和模型驱动的开发在一个全球性的工业组织,其总部设在德国。感兴趣的是通过完成经验的、定量的调查来分析建模(特别是使用UML)和模型驱动开发的可用性。
2014-09-22 cs.SE
The Soft Skills of Software Learning Development: the Psychological Dimensions of Computing and Security Behaviours
在编写软件代码时,开发人员通常会有意识或无意识地将功能优先于安全性。这往往归因于客户要求等有形压力,但人们对影响安全行为的心理因素知之甚少。人们越来越需要了解心理技能如何影响安全的软件开发,并了解这些技能本身是如何在学习过程中发展起来的。这项博士研究探索了这一研究领域,旨在为软件开发人员确定重要的工作场所技能;识别和实证调查这些工作场所技能背后的软技能,以了解软技能如何影响安全行为;并确定向计算机科学学生介绍和教授软技能的方法,为未来一代软件开发人员做好准备。这项研究背后的动机与工作计划一起提出。介绍了三个不同的阶段,以及计划的分析。第一阶段目前处于数据汇集阶段,第二阶段正在规划中。突出强调了以前的相关工作,并在论文的最后介绍了初步结果和计划的下一步。
2022-05-09 cs.HC cs.SE
AI-driven Development Is Here: Should You Worry?
AI驱动的开发环境(AIDE)将现代AI的强大功能集成到Visual Studio Code和JetBrains IntelliJ等IDE中。通过利用大量的语言模型和大量的开放源代码,AIDE有望自动化编程中许多显而易见的常规任务。与此同时,AIDE也带来了新的挑战,比如偏见、法律合规性、安全漏洞及其对学习编程的影响。
2022-04-15 cs.SE
Investigating the Potential of Test-Driven Development for Spreadsheet Engineering
本文针对电子表格工程缺乏结构化方法导致错误率高的问题,提出将测试驱动开发应用于电子表格创建,并通过两个案例研究验证其可行性,同时介绍了配套支持工具及后续有效性研究计划。
2008-01-31 cs.SE
Ontology Based Feature Driven Development Life Cycle
即将到来的语义Web技术支持为软件工程社区提供了新的方向。语义网也有它的根在知识工程,激发软件工程师寻找本体应用程序的应用程序在整个软件工程生存周期。语义网的内部组件是轻量级的,并且可能比外部可见模块的质量标准更低。事实上,内部组件是从外部(本体)组件生成的。这就是敏捷开发方法(如功能驱动开发)适合应用程序内部组件开发的原因。到目前为止,还没有一个特定的程序来描述本体在过程中的作用。因此,我们提出了一个基于本体的语义Web应用程序的特征驱动开发,可用于从应用程序模型开发到特征设计和实现。特征在基于OWL的领域模型中被精确定义。在转换规则中直接定义了从基于OWL的领域模型到特征列表的转换。另一方面,基于本体的整体模型可以很容易地通过自动化工具进行验证。讨论了基于本体的特征驱动开发的优点。
2013-07-16 cs.SE
An Empirical Assessment on Affective Reactions of Novice Developers when Applying Test-Driven Development
我们研究测试驱动开发(TDD)是否以及在哪个阶段影响新手开发者的情感状态,包括愉悦、唤醒、支配和喜欢。我们与29名新手开发人员进行了一项对照实验。治疗组的开发人员使用TDD执行开发任务,而对照组的开发人员使用非TDD开发方法。我们比较了情感反应的开发方法,以及实施和测试阶段,利用一个轻量级的,强大的,广泛使用的工具,即,自我评估模型。我们观察到,在情感反应方面,两种发展方法之间存在差异。因此,情感反应在TDD的应用中起着重要的作用,对情感反应的研究可以帮助研究者更好地理解TDD
2019-07-29 cs.SE
Behaviour Driven Development: A Systematic Mapping Study
本研究通过系统映射方法,分析了2006至2021年间166篇BDD论文,揭示了会议论文主导、工业界研究稀缺、指标缺乏等现状,并指出了未来研究重点。
2023-05-09 cs.SE
Diagnosable-by-Design Model-Driven Development for IEC 61499 Industrial Cyber-Physical Systems
将故障识别和诊断功能的设计和创建集成到模型驱动开发方法中是增强工业网络物理系统弹性的一种方法。我们提出了一个故障诊断引擎,旨在识别和诊断故障的IEC 61499功能块应用。使用直接与目标应用程序交互的诊断代理,我们演示了故障监测和分析技术,以及故障场景干预。通过在模型驱动开发的早期阶段设计和构建故障诊断资源,可以创建迭代测试和长期故障管理功能。在应用和完善适当的模型工件,我们证明了并发开发的功能块故障管理功能是可行的,值得的。
2021-05-09 cs.SE
Introducing Business Language Driven Development
软件工程中的一个经典问题是如何证明每一个系统需求都是由源代码正确实现的。这个问题,虽然研究得很好,仍然可以被认为是一个开放的,考虑到软件开发组织所面临的问题。为了解决这个问题,行为驱动开发(BDD)是一种规范技术,通过将这些需求的文本描述与自动化测试相连接,自动证明所有功能需求都被源代码正确处理。然而,在某些领域,如企业信息系统,需求是通过业务流程建模来识别的,业务流程建模使用底层业务流程的图形化符号。因此,本文的目的是目前的业务语言驱动的开发(BLDD),一种方法,旨在扩展BDD,直接连接业务流程模型的源代码,同时保持文字描述的表现力时,他们更好地配合比图形工件。
2010-11-09 cs.SE
Formalism-Driven Development of Decentralized Systems
去中心化系统已经被广泛开发和应用,以解决中心化系统中的安全和隐私问题,特别是自分布式账本技术的发展以来。然而,在交付之前确保其设计正确运作并尽量减少技术风险是一项挑战。虽然形式化方法在过去的几十年里取得了显著的进步,但从开发过程的角度来看,基于形式化方法的可行解决方案还没有得到很好的开发。在本文中,我们制定了一个迭代和增量的开发过程,命名为形式主义驱动的开发(FDD),开发可证明正确的分散系统的指导下,正式的方法。我们还提出了一个名为Seniz的框架,实践FDD与一个新的建模语言和脚手架。此外,我们进行案例研究,以证明FDD在实践中的有效性与Seniz的支持。
2022-01-30 cs.SE
Pricing-driven Development and Operation of SaaS : Challenges and Opportunities
本文以PetClinic为案例,研究SaaS模型中定价策略与软件开发的关系,探讨定价驱动开发与运营方法的影响,为平衡业务决策与技术实现、促进云服务效能提供战略洞察。
2024-03-20 cs.SE
Model-Driven Development of Complex Software: A Research Roadmap
模型驱动工程(Model-Driven Engineering,MDE)一词通常用于描述软件开发方法,其中创建软件系统的抽象模型并将其系统地转换为具体的实现。在本文中,我们给出了目前的研究在MDE的概述,并讨论了一些必须解决的主要挑战,以实现软件开发的MDE愿景。我们认为,充分实现MDE的愿景可能不可能在近期到中期,主要是因为涉及的邪恶的问题。另一方面,试图实现这一愿景将提供一些见解,这些见解可用于显著缩小不断发展的软件复杂性与用于管理复杂性的技术之间的差距。
2014-09-22 cs.SE
LLM-based Behaviour Driven Development for Hardware Design
University of Bremen/DFKI, Bremen, Germany(不莱梅大学/德意志联邦鹰诺夫研究所)
本文提出利用大语言模型自动化硬件设计中的行为驱动开发,以解决传统方法中手动推导行为场景的效率问题。
2025-12-23 cs.AI cs.AR cs.SE
iReDev: A Knowledge-Driven Multi-Agent Framework for Intelligent Requirements Development
本文提出知识驱动多智能体框架iReDev,通过六类智能体、人类知识注入、事件驱动通信和人在回路机制支持完整需求开发,并在多指标上优于现有基线。
2025-07-17 cs.SE
Blockchain Application Development Using Model-Driven Engineering and Low-Code Platforms: A Survey
如今,创建基于区块链的软件应用程序需要大量的技术知识,特别是在软件设计和编程方面。这被认为是在商业中采用这项技术并使其能够被更广泛的受众使用的主要障碍。作为一种解决方案,已经提出了无代码和低代码方法,这些方法只需要很少或不需要编程知识就可以创建完整的软件应用程序。在本文中,我们回顾了模型驱动工程学科的学术方法以及区块链的工业无代码和低代码开发平台。我们进一步提出了一个集成的无代码区块链环境的案例研究,以展示该领域的最新技术。基于所获得的见解,我们得出了未来开发专用于区块链领域的无代码和低代码方法的要求。
2022-04-07 cs.SE
ContextServ: Towards Model-Driven Development of Context-AwareWeb Services
在物联网和服务的时代,上下文感知Web服务(CAS)正在成为一个重要的技术,建立创新的上下文感知应用。计算机辅助系统实现了物理世界和虚拟世界的信息集成,影响着人类的生活。然而,它是具有挑战性的,建立CAS,由于缺乏上下文提供管理方法和有限的通用方法,正式的开发过程。因此,我们提出ContextServ,一个平台,使用模型驱动的方法来支持整个生存周期的CAS开发,从而提供显着的设计和管理的灵活性。ContextServ实现了一种基于UML的建模语言ContextUML,以支持多种建模语言。它还通过将上下文感知规则织入流程,支持基于WS-EJB的上下文感知组合服务的动态适应。对ContextServ及其组件的大量实验评估表明,ContextServ可以支持上下文感知Web服务的有效开发和高效执行。
2018-12-19 cs.SE
AI-driven Software Development: A Pragmatic Path to Agentic Development Processes
Munich University of Applied Sciences(慕尼黑应用科学大学);Findustrial GmbH(Findustrial有限公司)
本文提出一个务实框架,指导从辅助性AI使用到可控智能开发过程的过渡,聚焦技术、组织和质量保障机制,并通过中型软件公司案例验证其可行性。
2026-06-16 cs.SE
A Comparative Case Study on the Impact of Test-Driven Development on Program Design and Test Coverage
测试驱动开发(TDD)是一种编程技术,其中测试在源代码之前编写。TDD被认为是最基本的实践之一,能够以敏捷和迭代的方式开发软件。文献和实践都表明,TDD实践产生了几个好处。从本质上说,TDD导致了软件设计的改进,这对系统的可维护性和进一步开发产生了巨大的影响。TDD对程序设计的影响很少受到研究人员的关注。本文报告了三个软件开发项目的比较案例研究的结果,TDD对程序设计的影响是使用面向对象的度量。结果表明,TDD对程序设计的影响并不像预期的那么明显,但测试覆盖率明显优于迭代测试后开发。
2017-11-14 cs.SE
Towards Product Lining Model-Driven Development Code Generators
代码生成器系统地将紧凑模型转换为详细代码。今天,代码生成被认为是模型驱动开发(MDD)的一个组成部分。尽管代码生成器具有相关性,但其开发本身就是一项复杂的任务,而且缺乏通用的方法和架构。此外,现有代码生成器的重用和扩展仅存在于单个部件上。基于代码生成器产品线的系统化开发和重用仍处于起步阶段。因此,本文的目的是确定一个代码生成器产品线所需的机制(a)分析共同的产品线开发方法和(b)映射到一个代码生成器特定的基础设施。作为实现代码生成器产品线基础设施的第一步,我们提出了一个基于组件的实现方法的基础上的可变性感知模块系统的思想,并指出进一步的研究挑战。
2015-09-08 cs.SE
Sedeve-Kit, a Specification-Driven Development Framework for Building Distributed Systems
本文提出规范驱动的分布式系统开发框架Sedeve-Kit,通过TLA+定义规范、基于规范编码及用生成测试用例严格测试三个阶段,实现持续验证以确保系统质量。
2025-09-15 cs.SE
A Framework for Evaluating Model-Driven Self-adaptive Software Systems
在过去的几年里,模型驱动开发(MDD),基于约束的软件开发(CBSD),和面向上下文的软件已经成为有趣的替代品的设计和自适应软件系统的建设。一般来说,这些技术的最终目标是能够降低开发成本和工作量,同时提高软件系统的模块化、灵活性、适应性和可靠性。对这些技术的分析表明,它们都包括关注点分离的原则,它们的进一步集成是获得高质量和自适应软件系统的关键因素。每种技术都识别不同的关注点,并分别处理它们,以指定自适应应用程序的设计,同时,支持软件具有适应性和上下文感知。本研究探讨以模型驱动开发原则建构自适应软体系统的开发方法。为此,本文提出了一个评估框架,用于分析和评估模型驱动方法的特点及其在高度动态的上下文环境中支持具有自适应性和可靠性的支持软件的能力。这种评价框架可以帮助软件开发人员选择适合自己需求的开发方法,减少构建自适应软件系统的开发工作量。本研究强调了相关工作中支撑模型驱动方法的主要缺点,并强调在开发方法的分析、设计和实现阶段考虑自适应软件的易变方面。此外,我们认为,开发方法应该离开的选择建模语言和建模工具的软件开发人员。
2019-01-13 cs.SE
Architectural Challenges in Migrating Plan-driven Projects to Agile
软件开发已经稳步地接受敏捷软件开发方法/方法(ASDM),并且已经远离计划驱动的软件开发方法(PDM)方法,如瀑布。鉴于敏捷开发的迭代特性,将软件架构集成到敏捷方式中变得具有挑战性。本研究通过文献回顾和案例分析,确定了在已经通过计划驱动方法执行的项目和新项目中拥有强大架构的挑战。随后的分析发现,有三个主要领域:人,过程和技术,这些挑战可以映射。
2021-02-28 cs.SE
Practical Implementation Report on Introducing Spec-Driven Development Using AI Agents in Software Development PBL
Nara Institute of Science and Technology(奈良先端科学技术大学院大学);Osaka Institute of Technology(大阪工业大学);Wakayama University(和歌山大学)
本研究在大三本科生SDPBL课程中实践引入基于AI智能体的SDD,定义四阶段工作流程,发现AI提升实施吞吐量但需教师验证代码理解以维持教育效果。
2026-09-01 cs.SE
Model-Driven Development of High-Assurance Active Medical Devices
先进的医疗设备利用嵌入式软件的优势,由于这种系统的关键性质,嵌入式软件的开发受到标准化和认证制度的严格要求的约束。本文介绍了一个正在进行的项目的初步结果和经验教训,重点是开发一个软件控制的安全关键型有源医疗器械(AMD)的子系统的正式模型,负责肾脏替代治疗。标准和法规强烈推荐使用形式化方法开发AMD,并推动了本文应用的Event-B和Rodin等相关方法和工具的最新进展。预计提出的模型开发方法和规范的高置信度的医疗系统将有助于仍然稀疏的经验基础,可在正式的方法和软件工程的科学和从业者社区的处置。
2017-06-20 cs.SE
Causal Factors, Benefits and Challenges of Test-Driven Development: Practitioner Perceptions
本报告描述了一个组织采用测试驱动开发(TDD)实践的经验,作为中期软件项目的一部分,采用极限编程作为一种方法。在这个项目的三年中,团队的TDD经验与他们在其他正在进行的项目中的非TDD经验进行了比较。在这种情况下,使用TDD的好处和挑战的看法是通过五个半结构化的采访主要团队成员收集。他们的经验表明,TDD的使用一般是积极的,并探讨其原因,以加深对TDD实践的理解及其对代码质量,应用程序质量和开发生产力的影响。总结了经验教训,以帮助他人采用和实施TDD实践,并提出了一些潜在的进一步研究领域。
2021-01-29 cs.SE
Why Research on Test-Driven Development is Inconclusive?
[背景]最近对测试驱动开发(TDD)效果的调查一直是矛盾的和不确定的。这阻碍了开发团队使用研究结果作为决定是否以及如何应用TDD的基础。[Aim]为了在设计新研究时支持研究人员,并增加TDD研究在工业背景下决策过程中的适用性,我们的目标是确定TDD研究结果不确定背后的原因。[方法]对近10年来国内外权威机构发表的TDD研究文献进行分析,并对研究的建立方式进行分析。[结果]我们确定了五类直接影响TDD研究结果的因素。[结论]该研究有助于研究者进行更可靠的研究,并告知从业者在咨询TDD研究时需要考虑的风险。
2020-07-20 cs.SE
An Exploratory Study of Forces and Frictions affecting Large-Scale Model-Driven Development
在本文中,我们调查模型驱动工程,报告的探索性案例研究进行了一个大型汽车公司。这项研究包括对20名不同角色的工程师和管理人员的采访。我们发现,在一个大型组织的背景下,上下文的力量主导使用模型驱动技术的认知问题。我们确定的四种力量可能独立于选择作为软件开发基础的特定抽象,它们是软件产品线中的差异化需求,特定于问题的语言和类型的需求,探索活动中的实时建模需求,以及工件之间点对点可追溯性的需求。我们还确定了偶然复杂性的触发因素,我们称之为语言和工具引入的摩擦点。识别出的摩擦点的例子是对模型差异、点到点可跟踪性和运行时的模型更改的支持不足。
2012-07-03 cs.SE
A Comparative Study on the Impact of Test-Driven Development (TDD) and Behavior-Driven Development (BDD) on Enterprise Software Delivery Effectiveness
Solbridge International School of Business(Solbridge国际商学院)
本研究通过定性访谈比较TDD与BDD对企业软件交付效能的影响,发现TDD提升代码质量、减少缺陷,BDD改善跨职能沟通,但各有挑战,为企业选择开发模式提供指导。
2024-11-05 cs.CL cs.SE
Formal Model-Driven Engineering: Generating Data and Behavioural Components
模型驱动工程是从结构和功能的抽象模型中自动生成软件产品。通过针对特定的系统类别,可以使用模型转换和编码领域知识和实现策略的代码生成器来自动化开发过程的各个方面。使用这种方法,一个复杂的软件系统的正确性问题可以通过分析较低复杂性的抽象模型来回答,假设所采用的转换和生成器本身是正确的。本文展示了如何形式化技术可以用来建立模型转换的正确性,用于从精确的对象模型生成软件组件。源语言基于现有的形式化技术;目标语言是数据库编程中广泛使用的SQL表示法。正确性是通过为两种语言提供可比较的关系语义,并检查转换是否保持语义来建立的。
2013-01-01 cs.LO cs.MS cs.SE
A Module-System Discipline for Model-Driven Software Development
模型驱动开发是一种实用的软件开发方法,它包含领域特定语言(DSL),其中模型对应于DSL程序。模型驱动开发的一个显著特征是,模型的客户端可以通过应用不同的模型转换,从模型的一组开放的替代语义中进行选择。然而,在现有的模型驱动框架中,模型、模型转换和生成的代码工件之间的依赖关系要么是隐式的,要么是在构建脚本中全局声明的,这通常会阻碍模块化推理、单独编译和可编程性。我们提出了一个新的模块系统,将模型和模型转换为模块的设计。程序员可以在导入语句中应用转换,从而声明对生成的代码工件的依赖性。我们的设计通过防止隐藏的依赖关系来实现模块化推理和单独编译,并且它支持将建模工件与传统代码工件以及高阶转换混合。我们已经正式确定了我们的设计和上述属性,并通过实施和案例研究进行了验证,表明我们的模块系统成功地将模型驱动开发集成到传统的程序设计语言中。
2017-03-31 cs.PL cs.SE
Towards a Viewpoint-specific Metamodel for Model-driven Development of Microservice Architecture
微服务架构(MSA)是一种基于服务的架构风格,强调高内聚和松耦合。它通常被认为是面向服务的体系结构(SOA)的后代,因此可能会借鉴SOA研究的现有成果。本文提出了一个模型驱动开发(MDD)的MSA,这是从现有的SOA建模方法推导出来的元模型,但也纳入了特定于MSA的建模概念。它分为三个观点数据,服务和操作,其中每一个封装相关的概念,MSA的某一方面。该元模型旨在支持基于DevOps的MSA开发和元模型实例到MSA实现的自动转换。
2018-04-26 cs.PL cs.SE
Validation-Driven Development
本文提出验证驱动的开发(VDD)过程,结合问题框架与验证义务,在形式化开发中优先验证需求,并通过航空业案例研究验证其有效性。
2023-08-11 cs.LO cs.SE
DooML: A new Database & Object-Oriented Modeling Language for database-driven web application design and development
数据库驱动的Web应用程序是一个非常常见的软件解决方案,以解决日益增长的业务问题。对数据库和软件架构进行建模可能具有挑战性,因此没有一种用于数据库和软件架构的组合建模语言,特别适合于Web应用程序开发。在本文中,我们提出了数据库面向对象的建模语言(DooML)和它的主要原型图:一个符号指定的数据库模式和相应的面向对象的软件体系结构的设计。它结合了绘制实体关系图、关系模型和通用建模语言类图的语法,并创建了一个混合图,说明了数据库设计和软件设计规范。默认情况下,DooML确保高级Web应用程序开发的方法是模型驱动的,既面向数据库又面向对象。
2022-10-05 cs.DB cs.SE
Spec-Driven Development:From Code to Contract in the Age of AI Coding Assistants
本文探讨了在AI编码助手时代基于规范的开发方法,通过规范优先的哲学和不同领域的案例研究,提供了一种新的软件开发思路和实践框架。
2026-01-30 cs.AI cs.SE
Towards Iterative End-to-End Software Development: A Feature-Driven Multi-Agent Framework
Fudan University(复旦大学);Nanyang Technological University(南洋理工大学)
提出EvoDev框架,通过特征分解、依赖建模和上下文传播,实现迭代式端到端软件开发,在Android任务上比Claude Code提升57.3%。
2026-06-05 cs.AI cs.SE
Balancing Innovation and Ethics in AI-Driven Software Development
Cisco Systems Inc(思科系统公司)
本文批判性审视AI工具(如GitHub Copilot和ChatGPT)融入软件开发引发的伦理问题,强调解决这些问题以确保AI的负责任整合与社会受益。
2024-08-10 cs.AI cs.CY cs.SE
GTDD: Generative Test-Driven Development for AI Coding Agents with Adversarial Testing
Mizuho-DL Financial Technology Co., Ltd.(瑞穗DL金融科技有限公司)
提出GTDD,通过对抗性测试代理在开发中持续生成新输入,结合回归测试和独立接受规则,降低AI编码代理的错误接受率,实验验证其有效性。
2026-10-05 cs.LG cs.SE stat.ME
Model of Things (MoT): A Model-Driven Approach to Streamline Cloud-of-Things Application Development
University of Vale do Rio dos Sinos(里奥多斯西诺斯山谷大学)
MoT通过结合低代码原则和定制UML配置文件,提供了一种基于模型的解决方案,以简化云之物应用开发,降低技术门槛并提升开发效率。
2026-10-23 cs.ET cs.HC cs.SE