平台工程 是组织通过专注于开发人员体验来优化软件开发生命周期的方法。 开发人员体验是指开发人员的生活体验,以及他们在日常工作中遇到的摩擦点。 平台工程是一组模式和做法(而不是现成的产品),有助于实现企业软件交付的现代化。
例如,一家跨国科技公司使用平台工程来提高标准化,并消除跨部门边界的重复。 该公司首先将一切作为基于代码的方式建立,让团队加入。 然后,他们开始将应用程序以一种对开发人员已有经验有意义的方式关联到 Kubernetes 上,以进一步帮助开发人员进行发现。 这样,他们就能够开始组装鼓励最佳做法的应用程序模板。 他们的开发团队现在可以选择现有的构建基块,而不是从头开始创建它们。
了解如何识别组织与 平台工程功能模型 的最大问题,以便确定要实现的模式和做法。 然后,使用来自Microsoft和其他开源项目或供应商的构建基块创建个性化、优化和安全的内部开发人员平台。
使用平台工程功能模型绘制旅程
若要开始,首先想要使用 平台工程功能模型评估组织目前所处的位置。 然后,使用功能模型跨六项功能绘制组织图表:投资、采用、治理、预配和管理、接口以及度量和反馈。 使用你的发现为未来的增长设定目标。 例如,你可能会发现组织在投资方面处于早期阶段,但在采用方面已经更为成熟。 若要绘制组织的当前平台工程实践图表, 请进行此调查 或 启动手动评估。
无需同时对每个功能取得进展。 相反,请制定一个对你的组织有意义的计划。 所有组织在某些功能方面都比其他组织更高级。 例如,在此地图中,组织计划专注于在采用、治理、供应和管理方面取得进展。
Implementation
对于已确定为改进领域的每个功能,请设定有关如何前进的目标。 这些目标涉及了解如何使用模板和其他解决方案来改进工程系统并缓解开发人员摩擦。
- 应用软件工程系统:了解一些提示,帮助你思考如何重复使用和优化工程系统,以改进自助服务,以解决你确定的问题。 了解如何在正确启动模板中使用集中管理的基础设施即代码(IaC)或其他一切即代码(EaC)工件作为构建模块。
- 优化应用程序平台:了解如何通过优化应用程序平台来解决问题。 这些更改的成本可能更高,但也可以提供显著的好处,特别是如果你能找到现成的产品来满足你的需求。 例如,改进使用可观测性或日志记录工具,或者迁移到不同的工具,是否有帮助? 如果从头开始, Azure 体系结构中心 可帮助你从头开始识别概念。
- 设计开发人员自助服务基础:了解更复杂的开发人员自助服务基础的体系结构。 这是一种演变,旨在引导您简化多个自动化系统并聚合数据。 你将在这里做更多的软件开发,所以在一段时间内,请逐步走向这个方向,而不是从这里开始。