你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

创新应用程序的应用程序开发

正如在《用数字发明使数据民主化》中所讨论的那样,数据推动了整个数字经济中的大多数创新。 基于这个类比,应用程序是加油站和基础设施,是将燃料送到正确的人所必不可少的。

在某些情况下,仅数据就足以推动变革并满足客户需求。 但更常见的是,满足客户需求的解决方案需要应用程序来塑造数据并创造体验。 创新的应用程序与用户互动并提供信息和指导。 本文根据要验证的假设总结了几个原则,可以帮助你找到正确的应用程序开发解决方案。

此图显示有助于创建一个应用程序的元素,该应用程序可为客户提供满足其需求的体验。

共享代码

能够快速响应客户反馈、市场变化和机会的团队通常创新得最好。 创新应用的首要原则是成长心态的一个要素:“共享代码”。代码共享邀请不同的观点和贡献,并刺激创新。 因此,应用程序开发应该从共享代码存储库开始。

一个广泛采用的管理代码存储库的工具是 GitHub,它允许你快速创建共享代码存储库。 另一种选择是 Microsoft Azure Repos,它是一种 Azure DevOps 服务,可为你的项目提供无限的云托管私有存储库。 对于使用 Azure Repos 时的版本控制,可以选择 Git(分布式类型)或 Team Foundation 版本控制 (TFVC)(集中式)。 有关 Azure Repos、Git 和 TFVC 的详细信息,请参阅 Azure Repos 文档

平民开发者

专业开发人员对创新很重要。 如果某个假设在规模上被证明是准确的,专业开发人员可以稳定解决方案并为规模化做好准备。 不幸的是,专业开发人员可能供不应求,专业开发会增加成本并减缓创新。

公民开发人员是使用企业 IT 认可的开发和运行时环境创建新业务应用程序的用户。 使用公民开发人员可以帮助扩展开发工作并加速早期假设检验。 当可以通过诸如用于应用程序接口的 Power Apps、用于流程和预测的 AI Builder、用于工作流的 Power Automate 以及用于数据消费的 Power BI 等工具来验证早期假设时,这种策略是可行且有效的。

注意

当你依靠公民开发人员来测试假设时,建议也配备专业的开发人员来支持、审查和指导工作。 专业人士可以帮助开发稳健的设计,加速创新的回报。 通过在正确的时间让专业开发人员参与进来,你可以在以后实现更清晰的过渡。

智能体验

智能体验将现代 Web 应用程序的速度和规模与认知服务和机器人的智能相结合。 这些技术的每一种可能足以满足你客户的需求。 如果组合得当,这些技术可以拓宽通过数字体验满足的需求范围,同时有助于控制应用程序开发成本。

新式 Web 应用

现代 Web 应用程序可以是满足内部或外部客户需求的最快方式。 他们提供的体验可以快速吸引客户并允许快速发展解决方案。

增加智能

对于专业和公民开发人员来说,将机器学习和 AI 功能添加到应用程序中变得越来越容易,这些功能有助于满足客户的需求并创建交互式体验。 这些功能的一些示例是:

  • 语音转文本
  • 文本到语音转换
  • 计算机视觉
  • 视觉搜索
  • 预测 AI

创新者应该警惕利用这些功能来创建交互式和现代体验。

机器人

机器人是一种对话式人工智能应用程序,它为用户提供的体验更像是与人打交道,而不是与传统的计算机应用程序打交道。 用户通过文本、交互卡和语音与机器人聊天。 机器人交互的范围可以从快速问答(例如预订晚餐)到智能地提供对服务的访问的复杂对话。

机器人可以完成其他类型的软件可以完成的任务 - 读写文件、使用数据库和 API,以及处理常规的计算任务。 使机器人不同于其他软件的是,它们使用的通信机制通常是人与人之间通信才会使用的。 机器人很像现代 Web 应用程序;它们驻留在 Internet 中,使用 API 发送和接收消息。 机器人中的内容差异很大,具体取决于机器人的类型。 现代机器人软件依赖一系列技术和工具,在各种平台上提供日益复杂的体验。 不过,简单的机器人可以只接收消息并将其回显给用户,基本不需要编写代码。

云原生解决方案

云原生体系结构使你能够拥抱快速变化,并更轻松地运行弹性和可扩展的应用程序。 云原生应用程序通常是使用容器、微服务、托管服务、无服务器函数和基于事件的编程构建的。 最常见的是,云原生解决方案使用持续交付来缩短上市时间。

云原生解决方案允许集中式开发团队保持对业务逻辑的控制,而无需单一的集中式解决方案。 云原生解决方案还创建了一个锚点,可推动公民开发人员的输入和现代体验的一致性。 最后,云原生解决方案提供了一个创新加速器,让公民和专业开发人员能够以最少的障碍安全地进行创新。

通过现有解决方案进行创新

许多客户假设最好通过现有解决方案的现代化版本来实现。 如果当前的业务逻辑接近满足客户需求,就会发生这种情况。

大多数形式的现代化,包括重构,都包含在云采用框架内的迁移方法中。 该方法指导云采用团队完成将数字资产迁移到云的过程。 Azure 迁移指南为同一方法提供了一种简化的方法,适用于少量工作负载甚至单个应用程序。

解决方案经过迁移和现代化改造后,可通过多种方式创建新的创新应用解决方案以满足客户需求。 例如,公民开发人员可以测试假设,或者专业开发人员可以创造智能体验云原生解决方案

扩展现有解决方案

扩展解决方案是现代化的一种常见形式。 当以下客户假设成立时,这可能是最快的创新途径:

  • 现有的业务逻辑满足或接近客户需求。
  • 改进的体验(而不是新的体验)最能满足客户的需求。
  • 最小可行产品 (MVP) 解决方案所需的业务逻辑已经集中化,通常通过 n 层、Web 服务、API 或微服务设计。 这种方法包括将现有解决方案包装在云中托管的新体验中。 在 Azure 中,此解决方案可能会存在于 Azure 应用服务中。

重建现有解决方案

如果现有解决方案满足或接近满足客户需求,但无法轻松扩展,则可能需要对其进行重构。 在这种方法中,应用程序被迁移到云端。 在应用程序被迁移后,其部分内容将被修改,或者被复制为 Web 服务或微服务,与现有解决方案并行部署。 可以将基于并行服务的解决方案视为扩展解决方案。 该解决方案将简单地将现有解决方案与托管在云中的新体验相结合。 在 Azure 中,此解决方案可能会存在于 Azure 应用服务中。

注意

重构或重新组织解决方案或集中业务逻辑可能会快速触发耗时的技术顶峰,而不是客户价值的来源。 这是创新的风险,尤其是在假设验证的早期。 在解决方案的设计中发挥一点创造性,应该有一条通向 MVP 的路径,而且不需要重构现有解决方案。 推迟重构直到可以大规模验证初始假设是明智之举。

运营模型创新

除了应用程序开发的现代创新方法外,应用程序操作也有显著创新。 这些方法催生了许多组织运动。 其中最突出的是云卓越中心运营模型。 当人员配备齐全且成熟时,业务团队可以选择为解决方案提供自己的运营支持。

云卓越中心中的自助服务运营管理模型类型允许在解决方案环境中进行更严格的控制和更快的迭代。 这些目标是通过将运营控制和责任转移给业务团队来实现的。

如果你尝试扩展或满足对现有解决方案的全球需求,这种方法可能足以验证客户假设。 在迁移解决方案并使其稍微现代化之后,业务团队可以对其进行扩展,以测试各种假设。 这些通常涉及关注性能、全球分布以及受 IT 运营阻碍的其他客户需求的客户群组。

减少开销和管理

在创新应用程序或解决方案中需要维护的内容越多,该应用程序或解决方案的迭代速度就越慢。 这意味着你可以通过减少操作对可用带宽的影响来加速创新。

要为交付创新解决方案所需的多次迭代做好准备,提前思考很重要。 例如,通过支持无服务器选项,在流程早期尽量减少运营负担。 在 Azure 中,无服务器应用程序选项可能包括 Azure 应用服务容器

同时,考虑 Azure 中的无服务器事务数据选项,它也可以减少开销。 Azure 产品目录提供了无需完整数据平台即可托管数据的数据库选项。

后续步骤

根据假设和解决方案,本文中的原则可以帮助设计符合 MVP 定义并吸引用户的应用程序。 接下来是助力采用的原则,它提供了更快、更有效地将应用程序和数据交到客户手中的方法。