作者 张先宏,博士,西门子汽车行业技术总监。2004年至今,担任西门子工业软件汽车行业技术总监,高级软件工程师,数字化解决方案资深专家。熟悉数字化转型及数字化工业软件解决方案,并支持完成了数个重要项目,先后担任过船舶行业、航天兵器行业及汽车行业技术总监,现主要支持汽车行业数字化及新能源电池行业数字化转型工作。
本文解释了配备正确的低代码平台的组织如何提高每个敏捷开发的成功率,无论是快速原型还是构建与核心后台系统集成的多渠道体验的复杂项目。
敏捷开发是一个术语,用于描述以一种流动的、不断发展的方式构建软件解决方案的方法,而不是从一开始就固定在一个详细的、僵化的规范中。这是一种项目管理方法,主要关注一到四周的短期开发周期,称为“sprint”,其想法是,在每个冲刺结束时,可以向利益相关者展示软件开发的进展,以获得反馈。这有助于确保开发工作符合需求,并最终符合业务目标。小问题不变成大问题,故障风险大大降低,为用户和业务提供良好结果的概率大大增加。快速开发变革性应用程序需要快速实验、频繁的迭代以及业务和IT之间的密切协作。
敏捷方法论的指导思想是2001年出版的《敏捷软件开发宣言》(Manifesto for agile Software Development),17位领先的软件开发人员为敏捷软件开发定义了12条原则,他们宣称,从他们自己的软件开发经验中,他们学会了重视四条成功的首要规则,我们可以将其解释如下。
过程和工具上的个人与交互
规则和实践需要保持在最低限度,特别是与传统瀑布式开发过程相比,并且应该能适应各种情况。真正的重点必须是使各种类型的开发人员能够相互协作以及与业务协作,以便快速做出决策并适应不断变化的需求。
软件第一,文档第二
尽管交付软件的文档编制无疑是重要的,但创建它应该被视为次要的,并且不得妨碍开发人员的精力、流程和精力。在任何情况下,敏捷都是一种迭代和不断发展的方法,因此让软件满足用户不断发展的需求是首要的,而不是创建详细的文档,而这些文档无论如何都需要不断编辑才能与软件的不断发展相结合。
与客户持续协作
合同可以很好地列出客户(或用户)的感知需求。但为客户提供成功开发的关键不是不断参考合同要求,而是鼓励积极参与,并利用客户的领域知识来帮助确保最终交付的解决方案实现其预期目标。有效的合作需要持续地沟通、分享想法和反馈。
响应变化胜过遵循计划
变化应该是预期的,每个应用程序开发都应该支持迭代方法:持续而不是一次性规划,要持续测试和持续集成。如果时间和资源被有效地部署,就需要有意愿考虑变化以满足不断发展的目标,并提前知道需要变革。
低代码平台如何支持敏捷开发
最有可能的是,开发团队以某种形式实践敏捷。但是,尽管敏捷强调协作和促进协作的方法,但仅仅依靠方法论是不够的。还需要如下要素。
业务与IT协作
业务部门及其用户通常不理解应用软件代码,代码是一种只有程序员才使用的语言。缺乏共同语言会限制跨部门合作,抑制思维过程,并使交流反馈变得困难。这会挫败敏捷的雄心壮志,并破坏成果。但有一个解决办法。正确的低代码平台能够帮助参与者克服沟通障碍,更轻松地进行协作,从而为成果做出重大贡献。
社交协作
社交协作工具为您的整个团队创建了一个共享空间,以便与项目进行沟通并保持最新。在设计思维的背景下,团队在工件上进行共享和协作(例如人物角色和旅程地图),以及通过民意测验征求反馈。
即时的应用共享
通过即时预览和共享实时工作应用程序,进一步增强协作能力。这使得最终用户能够在应用程序开发过程中尽早并经常看到应用程序并对其做出反应,从而鼓励持续反馈和快速迭代。
敏捷项目管理能力
建议寻找一个具有内置敏捷项目管理功能的低代码平台。虽然可以与第三方工具集成,但以开发人员为中心的工具通常使用起来相当复杂,限制了业务用户的参与。
项目管理门户
一个易于使用的项目门户使整个团队能够轻松地在整个敏捷开发过程中创建用户场景、协作和交流。
用户场景
方便业务用户使用,有助于与业务涉众协作,以捕获、优化用户需求并确定其优先级,规划冲刺和未来版本;并管理各种积压工作。
共享项目空间
为整个团队创建共享项目空间,并定义个人角色(例如产品所有者、scrum管理员、开发人员、用户)。
整个应用程序生命周期的可追溯性
定义用户场景后,将场景附加到开发的特定部分,记录开发进度、版本控制、更新、修订和测试用例,直到生产。
可视化低代码开发
低代码平台提供了一个可视化的开发环境,而不是基于代码的开发环境。使用可视化模型,开发团队成员和业务用户可以轻松地创建和审查功能,提供反馈,验证假设,并确定应用程序的改进。人们可以很容易地交换想法,创造性地工作与更快速的实验。
通用可视化语言
因为整个团队都很容易理解可视化模型,所以可视化模型有助于开发人员和业务部门之间的持续协作。在任何时候,甚至在流程的早期,他们都可以坐在一起讨论和审查功能,收集反馈,验证假设,并确定改进。
快速迭代
由于开发速度如此之快,应用程序可以立即预览,因此低代码平台可以实现快速迭代。开发人员可以根据用户反馈实时进行更改,不断迭代以获得所需的结果。
公众开发者友好
可视化开发“拖放”环境允许具有有限或没有编码技能的面向业务的开发人员将其领域专业知识贡献给应用程序构建过程,而更多的技术开发人员提供更复杂的逻辑。
可重用组件
能够在创建应用程序组件时捕获它们,并将它们保存到重用库中,从而提供了一个随时可用的组件库,用于加速未来的应用程序构建。
Automated testing自动测试
敏捷环境的低代码平台还应该包括一个自动化测试套件,提供一套全面的工具,用于根据应用程序的用户场景创建、重构和自动化可重用的端到端测试。
与用户场景相关
作为开发生命周期的一部分,允许自动定义、编码和测试每个场景。
工具范围
易于与第三方测试工具集成,包括UI测试。
连续测试
应该可以在应用程序开发过程的任何阶段使用自动化测试和质量监控,而不是固定在特定的开发阶段。
分阶段部署
如今的IT组织需要实施DevOps最佳实践,将开发、测试、运营和业务线利益相关者结合在一起,以促进其应用程序组合的持续集成、应用程序监控和交付。
持续集成
将更新集成到共享存储库中,自动化构建应用和测试以快速发现和解决问题。
CI/CD工具
通过开放API构建应用的持续集成/持续开发工具。
云部署
能够部署到任何云中是敏捷环境低代码平台的一个基本要素。
云原生环境
该平台应该是云原生的、无状态的,并且支持容器化。云可移植性对于将应用程序轻松安装和自动部署到目标环境以进行测试、验收和生产(作为CI/CD流程的一部分)至关重要,一旦投入生产,就需要快速进行更改。
用户闭环反馈
将业务用户的输入作为开发周期的一部分,并将其反馈到用户场景中,从而形成一个迭代循环。
应用重启
在收到用户对应用程序元素的反馈后定义哪些元素将有助于场景进展,下一个sprint之后可以将反馈精确地连接到需要进一步迭代的应用程序元素。
嵌入式反馈
小部件使用户能够直接在应用程序中提供即时反馈。反馈分为想法、bug或增强,包括来自用户的评论以及平台自动捕获的元数据。
结论
人们普遍认为,如果使用得当,敏捷开发可以为应用软件开发项目带来积极的成果。事实上,Standish小组的研究表明,特别是对于中型和大型项目,敏捷项目的失败率是瀑布式项目的一半。
然而,尽管利益相关者、用户和IT之间的协作是敏捷的核心,但业务团队和开发人员倾向于思考和使用不同的语言。低代码平台在大部分开发工作中使用可视化模型来克服这一障碍,使相关各方能够查看正在进行的工作、分享想法和反馈。最好的平台Mendix为整个应用程序生命周期提供了一套全面、集成的工具,从构思和开发到部署和操作。通过低代码方法,可以通过迭代过程开发应用程序,以满足用户不断变化的需求和组织对数字创新的需求,从而提高用户接受度和投资回报率。
更多信息,请访问以下链接:
Mendix官网:低代码应用开发平台 - 快速高效地构建应用 | Mendix
Mendix中国论坛:Mendix开发者论坛-加入Mendix开发者论坛,一起引领创新。
Mendix行业解决方案:Low-Code Solution Gallery | Customizable Solutions For Every Industry
低代码应用程序开发平台评估指南 | Mendix 评估指南
Mendix动画展示:Application Development Demos – Mendix Low-Code Platform文章来源:https://www.toymoban.com/news/detail-415794.html
感谢阅读!文章来源地址https://www.toymoban.com/news/detail-415794.html
到了这里,关于低代码如何支持敏捷软件开发的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!