荷兰合作银行

Rabobank IDB Delivers Web and Native Mobile Banking Experiences.

Rabobank 是一家总部位于荷兰的领先国际合作银行,是荷兰第二大资产控股银行,其全球投资组合以可持续发展、食品和农业为基础。

你可能会惊讶地看到,在iOS和Android商店中,AgriBank都有一款高评级的储蓄手机应用程序(两者的评级均为4.7)。但Rabobank国际直接银行(IDB)部门为德国和比利时提供服务的网络和本地移动应用程序的成功,不仅仅暗示了该银行有能力成为其领域的创新领导者。

在面临法规遵从性挑战、客户期望提高和竞争加剧的同时,Rabobank对其客户登录流程进行了数字化、简化并赋予其活力,在单一开发平台上为500,000名客户提供其储蓄门户网站的Web版和本机移动版。让我们来看看,在西门子低代码应用平台和关键合作伙伴Finaps的帮助下,Rabobank如何能够更快、更高效地交付面向客户的高质量数字产品,并在此过程中彻底改变金融领域低代码开发的使用。

更大的期望,进一步深化

曾经有一段时间,银行业意味着面对面交流,汽车穿梭通道,或者在技术最先进的情况下进行ATM交易。但现代银行客户在网上开展业务,而不是线下排队。

Rabobank业务发展和战略主管保罗·卡默尔(Paul Kammerer)表示:“人们从苹果、安卓系统获得的应用程序,对银行也有同样的期望。我们现在需要与那些完全数字原生的公司竞争。”

但跟上客户期望的变化只是Rabobank和整个银行业面临的众多挑战之一。让我们来看看监管、竞争和现代化给银行及其业务发展战略带来的压力。

合规成本

新的银行业务机会、更高的用户访问和金融业的数字化刺激了监管力度的增加。然而,法规遵从性要求的增加往往会导致产品差异化程度的降低。

“从竞争的角度来看,银行面临的压力越来越大,”Kammerer表示,“监管正在大幅增加。根据市场的不同,以您希望的方式定义您的产品的可能性是有限的。如今,仅靠提高利率,如何才能真正将自己与其他银行区分开来?”

困在初创公司和大型科技公司之间

一方面是苹果和谷歌等大型科技公司,另一方面是初创公司,他们没有太多的传统实体成本,利用这点他们可以为客户提供更高的APR利率和尖端应用程序,竞争显然是水深火热。传统银行有时难以使用技术优先的方法重新定位自己。

“我们现在与从未提供任何金融服务产品的公司竞争,”Kammerer说,“我们不仅与传统银行竞争,而且与不同的参与者竞争,这些参与者可以添加更多功能并吸引同类客户。”

出售遗留债务的解决方案

对于传统银行企业来说,旧系统更新是一件难事,尤其是在投入了高成本、高投入的系统现代化努力,却似乎没有什么附加值的情况下。许多银行满足于在现有的基础上速胜。其结果是一项特殊的数字化工作,不仅没有减轻技术债务,反而增加了技术债务。

Kammerer说:“在一些银行,核心银行系统已经有30年的历史了。这意味着你不能很容易地适应新的编码方式或软件开发的新方式。这也是我们作为Rabobank和IDB所遇到的问题,我们更新了我们的核心银行系统,这非常昂贵。”

Kammerer和Rabobank大约在三年前完成了他们的核心遗留系统更新,花费了大量的时间、精力和费用,但从客户或客户的角度来看,并不认为这是什么大张旗鼓的事。然而,基于组件的云银行平台SopRA的实施,创造了一个可以与当今的工具、应用和创新技术相结合的现代基础。

低代码应用程序开发和Finaps介绍

在成功整合Sopra的API-first银行平台后,Rabobank的国际直接银行业务(IDB)部门开始探索如何使用这些新工具来提升其在比利时和德国的在线储蓄业务。IDB部门有兴趣构建能够利用Sopra的灵活性和客户至上优势的移动和web应用程序。作为一个较小的业务单位,IDB集团没有开发商或预算来独立实现他们为项目设定的目标:

  1. 减少客户登录时的放弃操作
  2. 通过web和移动应用程序提供功能齐全的多渠道环境
  3. 在两个独立的国际市场部署
  4. 利用小型企业单位的有限资源管理应用程序

他们求助于Mendix公司合作伙伴Finaps,他此前曾与Rabobank有合作。Rabobank IDB IT主管艾琳·朗纳(Irene Ronner)表示:“他们不仅对与我们合作的项目感兴趣,同时也帮助我们进行维护和操作部件,这也是我们所需要的。”

Finaps非常适合Rabobank,他们不仅拥有指导web和移动应用程序项目的经验,而且还了解金融部门的优先事项、基准和限制。此外,Finaps对该项目的独特做法是基于组织支持、合作和伙伴关系,作为Rabobank构建IT业务项目和整合低代码开发的模式。

“作为合作伙伴,我们真正帮助的是塑造他们的环境和工作方式,并努力与他们合作,为他们的客户提供良好的体验。”

Finaps首席商务工程师Jeroen Kesteloo说。“这不仅仅是开发。”

Ronner表示同意,称Finaps和Rabobank是一场“文化匹配”,并指出她不仅期待他们的合作关系能带来高质量的工作,而且期待双方在合作中获得丰富的经验。Ronner说:“Finaps一直在寻求以Rabobank的最佳利益为出发点,我认为这对我来说非常重要。”

中间件与西门子低代码简介

在项目开始后不久,Rabobank和Finaps认为,西门子低代码应用程序开发平台非常适合IDB,因为该平台易于与其新的Sopra核心系统和更广泛的技术堆栈进行集成和互操作,并且具有快速和低开销开发的业务优先级。Finaps还在西门子低代码中实现了一个Rabobank已知需要的功能:与通用的视觉语言协作的能力。

“这就是我发现西门子低代码的结构非常吸引人的地方,”Kammerer说,“我会对Finaps的团队提出挑战:‘好吧,你为什么要用那种方式开发它?’他们并没有解释,而是向我展示了流程,作为一个业务人员,这对我来说很容易理解。”

Rabobank将其技术堆栈设置为容器化和可组合化。在后端系统的顶部是一个跨通道的框架或层,作为所有应用程序和外部世界的连接门户。

Ronner说:“我们实际上把我们的场景粗略地归纳成是由三层组成的。基础是我们的核心银行体系,它需要稳健和坚实,不一定那么快,那么灵活。在此之上我们有CRM和分析系统,然后第三层是表现层。”

Ronner认为,表现层需要最灵活且独立于核心银行业务后端,以便在包含的环境中快速高效地进行更改。

Rabobank核心银行业务交付经理亨德里克·霍夫肯斯(Hendrik Hofkens)表示:“从安全角度来看,核心银行业务和跨渠道层托管在Sopra Steria的私有云中,而前端系统则在Azure中。这意味着我们只需监控Azure和私有云之间的连接,即可确保数据交换的安全。”

Hofkens补充说,中间件场景中也存在一个暂存环境,它是在西门子低代码中构建的,用于所有使用来自后端的主数据的前端应用程序。“此应用程序基本上从核心银行系统检索所有主数据表,并将其同步到前端应用程序。”

在所有系统都准备就绪后,Rabobank和Finaps仔细研究了如何最好地吸引客户,以及如何利用低代码构建新市场。

“我们决定在速度和敏捷性都很重要的地方使用西门子低代码,”Kammerer说,“我们开始关注三个面向客户的领域:移动应用程序、客户登录流程和整个网上银行。因此,我们有三个巨大的渠道,从战略角度来看,这三个渠道都非常重要,都是基于西门子低代码的。”

升级登录

在德国,合规协议要求向登录客户询问24个问题。大量的问题吓坏了许多潜在客户和顾客。有些被问到第23个问题时意识到输入错误,则需要重新开始整个过程。此外,Rabobank之前的设置使得难以跟踪中途放弃登录流程的用户数量。从机会成本的角度来看,Kammerer认为这是一场“噩梦”。

“我们需要问你这些问题,它们是强制性的,”Kammerer说。“我们过去的做法是预先问你每一个问题,但有了西门子低代码和Finaps,我们改变了这一点。

虽然法规要求通过Rabobank IDB开立账户时必须回答所有问题,但并未规定何时需要回答这些问题。通过将问题分为多个环节,Rabobank可以将第一步,即转换前要求降至最低,然后在用户首次登录后询问剩余的强制性问题。

“最后,我想我们只问三到四个问题:你的名字、姓氏、电子邮件地址和电话号码,”Kammerer说,“客户将收到我们的电子邮件,其中包含登录到网上银行应用程序的凭据,其余20个问题将在稍后从该应用程序中得到回答。”

这不仅促进了转化率的提高,还使Rabobank在登录过程中更具可视性。有了模块化的基于组件的基础设施和西门子低代码应用程序,用户将从Azure中托管的表现层来到Sopra Steria中托管的安全在线银行区域。

Kammerer说:“一旦你在我们的网上银行领域回答了剩下的20个问题,我就可以跟踪你正在做的一切。我可以看到你停留在什么问题上,如果你回来完成登录,你花了多少时间回答问题X、Y、Z。基于这些数据,我们能够不断优化我们的客户登录。”

虚拟验证

另一项登录监管协议要求客户验证:Rabobank必须确保创建账户的人是他们所说的人。以前,这是一个需要人工干预的亲自过程,可能需要几天才能完成。

“这种验证通常在办公室内进行,”Kesteloo说,“需要看到你的脸并将它与你的ID匹配,然后你才可以离开。但现在,整个过程完全数字化,使用一种解决方案,如WebID。”

在德国,这一解决方案是德国邮政的视频聊天识别应用程序。西门子低代码应用程序将潜在用户重定向到一个门户网站,在该门户网站上,他们自行识别身份,并被德意志邮政确认或拒绝,而该信息被路由回Rabobank。霍夫肯斯说,完成这一过程所需的时间“从几天减少到几分钟”。

在后台,Kesteloo指出,使用灵活的后端工作流管理工具(西门子低代码应用程序)可以轻松配置客户机登录流程。“它有点像一个决策引擎,允许用户动态配置用户旅程、提出的问题以及用户采取的流程,而无需发布新版本的应用程序。后台团队可以完全自行配置客户端登录流程。”

构建Web门户

在Rabobank IDB的在线web应用程序上,新用户或未登录的用户体验到嵌入在线银行web应用程序的公共网站。Kesteloo说:“一旦客户点击‘登录’,他们就会被发送到登录屏幕,并在那里开始与西门子低代码容器交互,该容器完全嵌入到Rabobank的CMS中。从那一刻起,所有发送和接收的数据都来自Sopra Steria开发的API层。所有流量都通过该中间API层移动。”

通过使用相同的会话ID,CMS、西门子低代码应用程序容器和API层都可以将用户状态标识为登录或注销,然后与会话令牌机制进行交互,以确保活动时的后端访问。“会话令牌将保持活动状态15分钟左右,”Kesteloo说。

为了构建新功能、管理和测试门户网站,Rabobank使用BuildPack构建docker映像,通过其网络托管合作伙伴Sopra Steria提供的CI/CD管道交付。Kesteloo说:“我们在本地使用SVN管理器创建一个标记,并在西门子低代码存储库中用标记标记应用程序容器的修订版。然后我们在Jenkins管道中提供,Jenkins管道只使用构建包,从存储库收集该版本,并在Azure上构建西门子低代码容器。”

移动升级

该web应用程序的成功证明了Rabobank需要克服下一个障碍:与一小群可交换的开发人员建立在线体验。据Kesteloo称,西门子低代码平台几乎“完美地”符合这些要求,同时仍保持Rabobank和Finaps团队提出的概念。

Kesteloo说:“我们有一个非常小的团队在开发手机银行应用程序,我们一开始只有三名工程师,最终只有五名。已经有了一个web应用程序,但我们的团队没有在这方面进行大量开发,因此我们必须从web应用程序中捕获业务需求,并将其转化为移动应用程序体验。”

Finaps和Rabobank IDB团队意识到,从web应用程序到移动应用程序的“提升和转移”是不可行的。他们还面临着另一个挑战。

“当时,西门子低代码只提供了一种混合解决方案,”Kesteloo说,“这将是艰难的,因为他们真的希望尽可能多地留在西门子低代码平台上,所以混合是唯一的选择,我们还与Mendix公司讨论了如何在混合解决方案中构建一个完全安全的移动银行应用程序。”

Beta 原生解决方案

团队很快发现,构建一个混合解决方案使得满足许多业务需求变得困难,甚至是不可能的。Kesteloo说:“例如,会话:当用户在屏幕上等待时,屏幕正在使用来自另一台服务器的技术,这些技术来自于移动应用程序中的软件开发工具包。我们遇到了太多的问题、界限和挑战,以至于在某个时候,我们认为我们应该让它原生化。”

根据严格的业务要求,他们还面临着将安全SDK成功嵌入混合环境的困难。与使用API层连接会话信息的web应用程序一样,移动应用程序使用API层承载安全平台传送,该平台处理生物特征安全和其他特定于会话的信息。

Kesteloo说:“这是我们在移动应用程序开发之初遇到的最大的架构挑战。整个会话的想法,即如何允许用户使用API层访问核心银行系统中的数据,必须以与web应用程序不同的方式进行处理。”

但是Finaps团队已经在与Mendix公司讨论针对低代码应用程序开发平台的新产品发布。“Mendix公司联系我们说,他们正在开发一项新技术,这是西门子低代码移动开发平台的本地体验,为什么不将Rabobank案例作为展示,成为一种测试版产品。”Kesteloo说,“而Rabobank正是为此而努力的,所以项目就是这样开始的。”

移动开发:离线优先

移动开发需要一种离线优先的方法,因为无论用户的连接状态如何,他们都希望功能强大。对于西门子低代码服务器,Finaps和Rabobank IDB通过微流记录操作,直到可以重新建立服务器连接、同步操作并记录操作。

描述解决方案如何要求异步通信,以及移动设备与后端发生的情况的明确定义,Kesteloo继续说道:“通常在西门子低代码中,你不必考虑客户端和服务器。但是对于移动应用程序,你不得不考虑,因为你的移动应用程序只是断开了连接,除非它已连接。”

Rabobank使用原生西门子低代码模板中的Microsoft App Center库来处理客户日志和离线用户活动。Kesteloo说:“作为替代方案,我们还使用Piwik,它类似于谷歌分析,也是一个SDK,我们安装在移动应用程序中,通过互联网连接发送一些用户数据。我们可以分析页面转换、脱机时发生的按钮单击,例如,nanoflow中的按钮单击会创建一个JavaScript动作,通知Piwik有人正在使用移动应用程序或单击此按钮。”

这些工具不仅有助于产品开发和客户参与,而且在出现故障或Rabobank必须分析特定设备上的错误时也有帮助。

完善经验,打入市场

发布有史以来第一个低代码本机移动B2C应用程序给Finaps和Rabobank IDB团队带来了许多新的挑战:从构建自定义React本机功能到高并发用户测试,再到首次利用公开可用的React本机库。

虽然西门子低代码平台的核心功能用于创建大部分应用程序,但Kesteloo和Rabobank团队使用React Native构建了大约20%的门户用户界面。为了巧妙地集成这些定制功能,Finaps团队使用桥接文件将React本机库嵌入到西门子低代码小部件中,使它们能够构建完全符合Rabobank团队业务需求的接口。Kesteloo说:“例如,银行详细信息部分需要一个视差滚动视图,所以我们在一个小部件中使用了一个库。我们编写这个小部件是为了与西门子低代码合作,我们自己开发了这种小部件。”

该项目的独特之处在于一个与通常交付React Native应用程序无关的开发团队。在项目开始时,Finaps团队在测试版中提供了本地移动支持,并指派了两名具有React Native经验的开发人员为项目做出贡献。“当然,这个平台已经成熟了,”Kesteloo解释道,“现在我认为你可以用任何一个西门子低代码开发团队来构建它。它本身不需要任何开源开发知识。”随着项目接近尾声,应用程序主要由西门子低代码开发人员交付。

在部署之前,团队致力于确保应用程序满足安全性和质量的高标准。“Rabobank的安全政策非常严格,”Hofkens说,“他们走得很远,但这些因素也帮助我们定义了最佳架构。”每天晚上都会进行自动化测试,确保在开发的最早阶段就检测到错误。为了提供最好的体验,团队针对离线、4G和5G以及WiFi连接的每种可能情况进行了规划;他们还构建了加载屏幕、微调器和消息,以确保用户无论连接质量如何,应用程序仍在工作。

一旦Rabobank准备好部署,Finaps就使用其Android和iOS许可证交付应用程序的测试和验收版本。Kesteloo说:“一旦他们被业务完全接受,我们将创建一个未签名的包并发送给Rabo NL,他们将根据Rabobank许可证进行签名,并在Rabobank应用商店中发布。”

让结果来说话

Rabobank IDB移动应用程序在Android和iOS商店的平均评级为4.7。对于那些分数远远低于完美分数的少数人,Rabobank知道它可以捕获错误修复和功能请求并采取行动。Kammerer说:“作为一家直销银行,我们的目标是让客户能够全天候使用我们的服务,我们已经能够提供这些服务。现在,当客户在应用商店中说,‘这就是我不给你五星评级的原因,’我们通过技术获悉,于是可以在几周内开发出满足客户要求的产品。这对客户有巨大的价值。”

通过西门子低代码,Rabobank还可以为内部审查和改进快速开发原型,提高效率和合作机会。Kammerer说:“我认为低代码帮助很大,因为人们在很短的时间后就可以在智能手机上看到应用程序。我认为如果你用完全瀑布式的经典方式开发应用程序,这是不可能的,或者更困难。”

对于Kammerer和Rabobank来说,移动应用程序更多的是客户保留,而不是新客户获取。随着Rabobank在不断变化的金融领域继续竞争,他们意识到,他们不必为客户创新下一个大型技术解决方案,而是可以快速调整或开发有助于他们跟上市场步伐的应用解决方案。从他们第一次努力的结果来看,显然Rabobank团队能够提供50万客户满意的体验。

Kammerer说:“你不必总是成为市场上最具创新性的人,但你确实需要确保自己与市场同步。如果一家银行能够在数周或数月内适应新技术,我认为客户会接受。但如果你需要三、四年,他们则不会接受。最终,我们是一家拥有财务账簿的科技公司。”