都2023了!我不允许你还不了解AIGC!立即报名 了解详情
写点什么

敏捷世界中的合规性

  • 2018-09-18
  • 本文字数:1615 字

    阅读完需:约 5 分钟

合规性(Compliance)是指确保人们正确地做事,并能够证明做事的正确性。在实施敏捷和频繁交付的情况下,人们需要为交付过程建立合规性。融入了合规性义务(Compliance Obligation)的 DevOps 团队将更有可能取得成功。

Atlassian 2018 欧洲峰会(Summit Europe 2018)上,Atlassian 的风险未来学家(Risk Futurist) Guy Herbert 介绍了人们应该如何在敏捷中保持合规性。InfoQ 以问答、总结和文章报道覆盖了本次大会。

Herbert 指出,每个组织都受到某种形式监管义务的约束。有针对产品销售的相关规则,有针对持有客户信息并约束相关交易的规则。Herbert 表示,合规性就是确保人们做出正确的事情、知道自己正在正确地做事,并在他人质疑时可以证明自己的所作所为是正确的。

Herbert 认为,在交付过程中必须要建立合规性。过去每六个月才交付一次,这时人们可以尝试在交付前“上锁保险”。 但是现在每天都要做多次的交付,合规性无法在最后一刻才添加到过程中。

InfoQ 采访了 Herbert,采访内容包括:如何在频繁和快速交付时确保合规性;Devops 如何有助于解决合规性需求,并使现有的合规系统更加灵活。

InfoQ:当人们想要频繁快速地交付时,如何确保合规性?

Guy Herbert:我们在 Atlassian 的做法是,让团队了解风险和合规性是交付的一部分。我们向团队介绍我们当前正在做事的背景,团队承担自身工作的风险和合规性方面内容。我们使用同行评审作为关键变更控制,确保工作在构建之前通过测试。

大多数敏捷开发团队都使用了同行评审和测试,这是一种获得高质量代码的好方法。我们做法的与众不同之处在于,我们使用 Bitbucket(译者注:Atlassian 公司提供的一个基于 web 的版本库托管服务)强制执行同行评审和绿色构建。

我们赋予团队做出更改的能力,但我们也告知团队必须要由他们去做的事情。如果团队想要更改最低要求,他们需要与我们交谈。如果团队可以达到最低要求,那么可能并没有必要让我们参与进来。之后,我们要求团队每六个月就确认一次相关控制的进展情况(例如,关于用户管理或变更控制的流程),这些控制是团队正在执行我们曾与他们讨论过的情况。我们也做一些检查,为确保团队确实执行了相关的控制。对于一些可自动化的控件(例如,自动用户配置和删除),我们只需确认它们是以正确的方式配置的,并不需要做经常性检查。

InfoQ:DevOps 如何有助于人们解决合规性需求?

Herbert:一个 DevOps 团队通常具有多种合规性义务。而风险和合规性团队所需要做的就是将这些义务做分解,以便从事开发和运营工作的人员可以在完成工作的同时履行这些义务。一个例子就是变更管理。几乎所有的合规性义务都依赖于受控的变更管理环境。一旦变更实施过一次,那么该变更就可用于履行每项义务。这意味着,人们不必为每项义务实施不同的变更管理控制。当然这是一个简单的例子,还有更多的实例。风险和合规性可能非常容易做到,也可能真的很难以达成,这取决于人们是如何为团队设置这些义务的。

我们还看到,DevOps 团队具有更高的参与度和所有权。这使得合规性义务融入到 DevOps 团队中,进而增加了合规性成功交付的可能性。

InfoQ:如何使现有的合规系统更加敏捷?

Herbert:我们应该更好地了解每个团队所支持的合规性义务。团队将不再专注于义务本身,而是专注于支持这些义务的控制性活动,这样团队能够在有需要时做出更改。由此,团队就知道需要开展的控制活动。一旦控制活动发生更改,团队可以将这些控制活动转交给新的团队,或是与风险和合规团队讨论控制活动的潜在变化。

我们在 Atlassian 的做法是,通过对我们控制目标的讨论,在团队执行的控制活动和组织必须履行的合规义务之间形成一个抽象层。这使得交付团队能够专注于自身的工作,而不是每个合规性义务。

我认为风险和合规团队应该找到一些方法,为团队更好地履行合规性义务提供帮助。哪些是团队已做的事情是用于合规性的,而非基于现有基础的?对此,同行评审和绿色构建就是很好的例子。

查看英文原文: Compliance in an Agile World

2018-09-18 10:321159
用户头像

发布了 390 篇内容, 共 118.8 次阅读, 收获喜欢 252 次。

关注

评论

发布
暂无评论
发现更多内容

开发提效小技巧分享(一)

编程三昧

3月月更 前端工具

如何在 eNSP 上保存配置?

Ethereal

什么是元宇宙?为何要关注它?——解码元宇宙

CECBC

比特币突破4.4万美元!美欧制裁或推动俄罗斯资金转向加密货币

CECBC

聊聊 Pulsar: Pulsar 分布式集群搭建

老周聊架构

云原生 Apache Pulsar 3月月更

44条工程管理经验教训

hongfei

项目管理 3月月更 工程管理 工程经验

[银行面试系列]1 进入银行之前必须了解的20个问题

暖蓝笔记

3月程序媛福利 3月月更

OKR怎么写?100个OKR案例模板

PingCode

Go语言实战之数组的内部实现和基础功能

山河已无恙

Go 语言 3月月更

让ICT飞鸟,长出数字能源的翅膀

脑极体

如何在敏捷中管理和减少技术负债?

PingCode

初识工业互联网

劼哥stone

工业互联网

将本地代码同步到gitee和github中去

布衣骇客

Git Commit #Github

千万级学生管理系统的考试试卷存储方案

晨亮

「架构实战营」

AWS S3 对象存储攻防

火线安全

云原生 云安全

如何在 Linux 中将主目录移动到新分区或磁盘?

Ethereal

期待!Fedora 36 发布日期和新功能

Ethereal

docker、k8s 面试总结

yuexin_tech

Docker k8s

搭建 VuePress 博客,你可能会用到的一些插件

冴羽

Vue 博客 vuepress 博客开发 博客搭建

面试官:GRE 和 IPsec 隧道有什么区别?

Ethereal

如何做好一场技术分享

Hockor

团队管理 个人成长

Linux运维必知:如何从其 PID 中查找进程名称

Ethereal

性能测试中Disruptor框架shutdown失效的问题分享

FunTester

Disruptor 性能测试 接口测试 高性能队列 FunTester

如何打造良好的分享氛围

Hockor

团队管理 技术分享

开发电脑用 Windows 还是 Mac

HoneyMoose

SpringDataRedis序列化带有双引号

编号94530

redis spring 序列化 Jackson

患上“远见病”的VR,不得不走进动物世界

脑极体

三条命令搭建自己的博客平台

山河已无恙

WordPress 3月月更

Linux小技巧:如何在 Vim 中显示行号?

Ethereal

从用户输入URL到页面展示,这中间发生了什么?

Tristan

前端 浏览器

紫光展锐解除楚庆CEO职务,内部员工爆料那些不为人知的内情!

杰哥-IC男奋斗史

芯片行业思考

  • 需要帮助,请添加网站小助手,进入 InfoQ 技术交流群
敏捷世界中的合规性_治理_Ben Linders_InfoQ精选文章