RPA与敏捷开发方法

RPA与敏捷开发方法

字数统计: 4k字 | 阅读时长≈ 13分钟

与传统自动化相比,RPA(Robotic Process Automation)不仅易于使用且实施成本更低,成效明显。据数据显示,RPA可以将运营成本平均降低25-50%。随着RPA与AI、流程挖掘等技术的融合,应用场景不断增多,使得RPA成为企业追捧的自动化技术。

然而,RPA存在脆弱性挑战业务流程稳定性的问题。为防止拓展RPA带来的挑战和失败,一些有想法的杰出人士采用敏捷方法来实施和推动自动化计划。实践证明,敏捷方法使RPA在业务中获得更好的治理、更灵活的扩展能力、效率和降低成本,减轻实施风险和返工。因此,敏捷方法实施的RPA成为一种更高效的RPA应用与实施方法结合架构。

从敏捷开发说起

在软件开发领域,传统的瀑布模型需要很长时间才能完成整个流程,而且风险高、难以应对变化。于是,2001年17位知名开发人员聚集在一起讨论替代瀑布模型的新方法,最终形成了敏捷宣言和敏捷联盟。

敏捷开发是一种”轻量级”的迭代模型,强调协作和即时性,增加客户参与度,并将软件开发从面向过程转变为面向对象。它与瀑布模型有着明显的区别。

敏捷开发以用户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。它将一个大项目分为多个相互联系的小项目(冲刺),并在整个项目生命周期中不断评估需求、计划和结果,使变更成为流程的有机组成部分。

总之,敏捷开发旨在解决瀑布模型存在的问题,用一种轻量、敏捷的方法来改善或替代传统的重型软件开发方法。

敏捷开发的核心价值观

敏捷开发的核心价值观强调:

  • 个体和互动优于流程和工具
  • 工作的软件高于详尽的文档
  • 客户合作高于合同谈判
  • 响应变化高于遵循计划

这些价值观重视协作和即时性,增加客户参与度,并将软件开发从面向过程转变为面向对象。

在敏捷开发中,软件项目被切分成多个子项目,每个子项目都经过测试,具备可视、可集成和可运行使用的特征。这意味着一个大项目被分为可独立运行的小项目,并且在整个项目生命周期中不断评估需求、计划和结果,使变更成为流程的有机组成部分。

与传统的瀑布模型相比,敏捷开发更加灵活和适应变化。它侧重于快速交付有价值的软件,通过持续反馈和迭代改进来满足客户需求。敏捷开发能够更好地应对市场和技术的变化,提高项目的成功率和效率。

敏捷RPA与敏捷交付

虽然很多RPA开发者没有编程基础,但他们也参与了软件开发过程,所以仍然需要遵守一定的开发逻辑。与传统软件开发不同,RPA和技术简化了程序开发过程,因此更加注重交付。由于对自动化和开发平台的理解不同,不同业务线开发的自动化程序在逻辑上会有一些差异,可能会降低稳定性并增加脆弱性。

大量的业务人员并行开发会导致大量的自动化程序。这些程序能否高质量交付,或者如何保障高效交付,成为自动化程序交付的主要问题。现在敏捷开发已成为主流,受到主流RPA厂商的影响,RPA也在摒弃传统的瀑布式开发模式,向敏捷开发靠拢。这诞生了敏捷RPA(Agile RPA)。

什么是敏捷RPA?

敏捷RPA不是一个过程,而是一种价值观。它通过一些轻量级流程框架和操作技术的支持,帮助RPA团队将这种价值观付诸实践。执行敏捷开发和成为敏捷组织是有区别的:前者关注过程和技术,后者则由敏捷原则和价值观指导行为。

敏捷交付的特点

敏捷交付是迭代式和增量式交付的组合:

  • 增量交付:一个接一个地自动化一些流程组件
  • 迭代交付:以低保真度自动化所有流程组件,然后逐渐提高其自动化保真度

在敏捷RPA交付中,关键是经常生产”工作机器人”,为利益相关者创造价值的最终自动化业务流程的子集。需要注意的是,在敏捷RPA交付中,没有什么是真正被认为是最终的,因为可以在功能、性能、可靠性、稳定性、安全性、可用性等方面不断拓展自动化。

为什么RPA需要敏捷方法?

根据调查数据,78%的实施了RPA的公司预计在未来3年内增加投资。但是只有很少的公司能够将RPA扩展到初始试点之外。维护工作是阻止公司扩展RPA的主要原因之一。

导致RPA中断的三大原因

  1. 自动化本身的问题

    • 程序设计错误
    • 算法问题
    • 系统内部错误
  2. 应用程序问题

    • 应用程序稳定性
    • 兼容性问题
    • 交互接口设计不合理
  3. 环境问题

    • 硬件故障
    • 网络问题
    • 系统资源不足

敏捷方法的优势

对于RPA项目而言,敏捷方法有很多好处:

  1. 跨职能团队协作:打破孤岛并促进业务/IT协调
  2. 持续迭代改进:为实施后的持续更改和升级留出空间
  3. 扩展治理框架:提供在整个企业中扩展RPA所需的治理框架
  4. 用户共同参与:与最终用户共同实施,符合敏捷方法的合作理念

敏捷开发方法如何让RPA项目更成功?

RPA与纯软件和产品开发有很大不同,但是可以借鉴和应用基本的敏捷原则来产生相同的结果:更快地交付价值,同时降低成本和风险。

敏捷RPA的核心实践

1. 更懂协作的团队

RPA的敏捷方法包含一个由不同利益相关者组成的专门团队,包括:

  • 开发人员
  • 测试人员
  • 业务角色

这不仅增强了识别RPA机会的有效性,而且还促进了大规模治理。

2. 更优质的设计和定义

在机器人流程自动化的敏捷方法中,业务流程在任何开发开始之前就被设计和优化。这使大型组织能够:

  • 完全标准化和优化端到端业务流程
  • 考虑流程与更大的业务目标的关联
  • 确保法规遵从性

3. 更高效的积压维护

积压工作能够让组织:

  • 将复杂流程分割成多个工作项
  • 独立确定优先级
  • 有效管理机器人维护

4. 冲刺计划和回顾

  • Sprint计划:短暂的工作突增,能够重新确定工作优先级
  • Sprint回顾:吸取经验教训,避免重复错误

后记:因人而异择优而选

看到这里,大家应该对敏捷RPA有了一定的了解。其实想要实现敏捷RPA也很简单,就是建立RPA卓越中心,然后告诉RPA CoE管理者要引入敏捷方法,并坚定不移的支持其工作就可以了。

但说起来容易做起来难,因为要改变大型组织固有的IT组织架构及开发逻辑,着实是一个难上加难的问题。

这篇文章的用意,并不是告诉大家在RPA建设与应用上一定要严格遵守敏捷方法,而是说在RPA引入时可以适当参考敏捷方法,以避免在后面的RPA应用中出现太多问题而导致项目搁浅,同时也为基于自动化获得更高的ROI打下更好的基础。

每个组织的信息化程度不同,IT建设情况不同,程序开发的理念也不同,这就决定了不是每个组织都适合采用敏捷方法进行各种项目开发。

重要提醒

  • 敏捷RPA交付有许多好处,但也带有敏捷方法固有的某些风险
  • 敏捷方法并不适合每个组织,这取决于组织的情况
  • 不要将敏捷实践和原则强加给那些不愿采用敏捷的人
  • 只需要给人们正确的信息让他们说服自己

剩下的,全部交给决策者。