确保数据一致性:单一可信数据源(SSOT)的概念与 5 个应用示例
很多行业的团队都在践行“单一可信数据源”这个理念。但是,什么是单一可信数据源(SSOT)?这里有开发中的五个单一可信数据源的示例,一起来了解一下。
单一可信数据源的含义是什么?
单一可信数据源(Single Source of Truth,简称 SSOT)是一种将信息结构化的做法,确保每个人都使用相同的数据。
在版本控制中,单一可信数据源指的是以每个人都可以在一个共同位置访问的方式储存所有的代码、配置和其他数字资产。
为什么单一可信数据源很重要?
维护单一可信数据源是很重要的,因为:
没有单一可信数据源
信息被隔离在不同的地方;
团队成员花时间在寻找信息上,降低了生产力;
出现一些常见并且修复成本高昂的错误。
拥有单一可信数据源
信息易于发现;
每个人都知道在哪里找到信息,生产力得以提升;
减少了出错的可能性以及修复的成本。
在版本控制中,单一可信数据源非常重要。对于需要共享可能来自不同版本控制系统、不同类资产的团队来说,单一可信数据源尤为重要。对于全球分布的团队来说,尤其是当他们需要克服时区差异时,这更是至关重要的。
如何通过版本控制获得单一可信数据源
现在,您已经了解了为什么单一可信数据源对版本控制的重要性。那么,如何获得单一可信数据源呢?
当您使用 Git 这种分布式的版本控制系统时,创建单一可信数据源是很困难的。因为这些系统通常有很多代码库,这些代码库又储存在单个的本地工作站上。这使得获得单一可信数据源变得很有挑战,并阻碍了团队的有效协作。
如果您有了 Perforce Helix Core,就可以将单储存库(monorepo)作为单一可信数据源。每个人都使用最新版本的文件,访问他们需要的信息。此外,您还能获得规模方面的优势。在 Perforce Helix Core 中,单储存库可以随着资产的增加而扩展,并且无论资产多少,您都可以将所有内容放在一起。一起来看看 Perforce Helix Core 的单一可信数据源示例吧。
5 个 Perforce Helix Core 中的单一可信数据源示例
以下是每天使用 Perforce Helix Core 的团队中经常出现的 5 个示例。
1、不同类型资产的单一可信数据源
您可能需要将多种类型的资产整合到一个可信数据源中。这包括:
源代码
二进制文件
美术作品
硬件设计
更多其他类型
许多行业都有这种需求,下面以游戏开发为例。
开发人员、设计师和美术人员正在处理大型文件,有源代码,也有其他文件和资产:
二进制文件(可以占游戏最终内容的 90-95%)、原始美术作品、处理后的纹理、模型、动画、声音、预渲染的过场动画。
这些不同类型的资产都要在一个地方进行管理。要获得单一可信数据源可能很困难,除非您使用的是 Perforce Helix Core。
使用 Perforce Helix Core,您可以获得所有类型资产的单一可信数据源。因为 Perforce Helix Core 可以在一个代码库中储存源代码、二进制文件、美术作品和任何其他类型的数字资产。
2、多版本控制系统的单一可信数据源
您可能拥有多个版本控制系统,这会妨碍建立单一可信数据源。当团队被分散在不同地方时,您将如何保障团队的协作?
例如,您可能有一个在 Perforce Helix Core 中工作的内部开发团队。但同时您还有一个使用 Git 的第三方开发团队。这可能会阻碍协作,并阻止您实现单一可信数据源。直到您将 Helix4Git 与 Perforce Helix Core 一起使用。
Helix4Git 是一个嵌入在 Perforce 服务器中的 Git 服务器。它在后台工作,将第三方团队正在处理的源代码引入您的流水线。然后,Git 团队可以从您那里获取代码,并无需学习就能开始为项目做出贡献。
这样就在多个版本控制系统之间创建了一个单一可信数据源。
3、全球团队的单一可信数据源
您的团队可能分布在全球各地。
例如,3A 游戏开发工作室的团队通常由数百名美术人员、开发人员和贡献者组成。将所有的人才都汇聚在同一个地点是不可能的。全球分布式开发就是答案。但是,如何在不牺牲速度的情况下,让每个人都能访问到相同的文件呢?
使用 Perforce Helix Core,您可以做到。世界两端的团队成员可以像坐在一起一样快速地进行协作。
Perforce Helix Core 的可扩展架构——Perforce 联合架构——使之成为可能。无论团队成员身在何处,这项技术都能实现快速复制。
4、组件团队的单一可信数据源
您可能还会有不同的团队在处理独立的组件,这些组件最终必须全部组合在一起。
例如,您的团队可能通过“基于组件的开发”方法进行工作。他们需要一个单一的配置可信数据源,包括:
交付的产品列表,以及构建每个产品的组件列表;
要维护的活跃开发流列表,例如主线和两个维护的版本;
每个流所需的组件版本列表;
开发人员和官方所构建的工作区配置。
使用 Perforce Helix Core,您可以用代码来管理您的配置。您用于版本控制和管理源代码的所有最佳实践都可以应用于您的配置中。
例如,您可能管理着 8 个全球设计工作室,为销往原始设备制造商的 SSD 驱动器制作固件。您可以从所有产品的基本配置开始,然后与原始设备制造商一起定制配置。
有了 Perforce Helix Core,每个人都可以放心地工作,确保自己正在开发正确的组件集。他们能够获得所需的更新,而无需去寻找。他们可以确信自己在项目生命周期中使用的是正确的版本。
此外,您还可以单独测试配置的新版本,而不会破坏构建。否则这将影响整体速度。这为您的配置和源代码提供了一个单一的可信数据源。
5、硬件和软件资产的单一可信数据源
您可能在一家开发嵌入式系统的公司工作。这意味着您可能有软件和硬件团队需要在资产上进行协作。
例如,您正在开发一款片上系统(SoC)。在设计和集成过程中,硬件和软件团队需要能够共同工作并共享资产。
借助Perforce Helix Core,您可以获得跨硬件和软件团队的单一可信数据源。他们可以轻松共享资产。此外,Perforce Helix Core 可以安全地对设计文件和软件文件进行版本控制,以便进行流片。因此,所有的更改都会被跟踪、追溯,并且确保合规。
立即在开发中获取单一可信数据源
Perforce Helix Core 提供您的团队所需的单一可信数据源,无论您是在以下哪方面进行工作:
协作处理多种类型的资产;
使用多个版本控制系统(通过 Helix4Git 和 Helix TeamHub 使用);
管理遍布全球的团队;
处理不同的组件;
需要共享硬件和软件资产。
龙智即将亮相 ACT 汽车电子与软件技术周,带来大规模、安全、高效的开发解决方案
在现代汽车软件开发中,确保存在一个单一可信的数据源是至关重要的。汽车软件涉及大量的代码、配置和设计文件,来实现车辆的各项功能和安全性。如果数据源不可靠或不一致,可能会导致软件错误、功能故障甚至安全漏洞,对整个汽车系统造成严重影响。
在即将举行的 ACT 汽车电子与软件技术周上,龙智带来集成了 Perforce Helix Core 的汽车行业解决方案,助力大规模团队轻松协作、加速创新,并开发安全、可靠且合规的汽车软件。我们将在展会上向您展示 Perforce Helix Core 的强大功能,并提供针对不同规模的团队需求的解决方案。
诚挚地邀请各位于 8 月 17-18 日(周四-五)莅临 #26 龙智展位!除了展示 Perforce Helix Core 的功能与特色外,我们还带来了静态代码分析 Helix QAC 与 Klocwork、项目管理 Jira、知识库 Confluence,以及基于 Jira Service Management 的 ITSM 等解决方案,帮助汽车企业实现敏捷与高效开发,提升产品的安全与合规性,并加强团队协作,更好、更快地交付产品。莅临展位还能参与精彩的抽奖活动,赢取丰厚奖品。龙智 DevSecOps 专家也将在现场与您面对面交流,为您解答各种关于汽车软件开发的问题,分享我们的最佳实践和经验。
评论