快速的结果如何帮助伊万

Ivan在与DevOps相关的部门的大型组织中工作。 每天,成千上万的员工使用DevOps工具来创建,测试和实施他们的软件。

每天有成千上万的分配流水线是正常情况。
但是,在有强大力量的地方,也有重大责任。 团队不可避免的困难导致每天数百次技术支持电话。

自然,许多人不喜欢DevOps工具。 有人说他们太越野了,而其他人则认为根本不用它们就可以做,而且速度会更快。

公司管理层了解到,所有100%的团队都不会对DevOps感到满意,但是,没有确切的数据。 很高兴看到装配线上的问题,但即使每天通常经过的分发数量也不知道。 对于严肃的指标我们能说些什么。

关于DevOps指标的问题不断提出-每个人都非常需要它们。

作为一名了解指标并了解DevOps技术的员工,Ivan密切参与了该项目的准备工作。

他与DevOps管理员一起,制定了可能的解决方案体系结构,还研究了有关DevOps指标的大量文献。 互联网上没有一篇文章,也没有一本他不会读的书。

结果,一个完整的技术解决方案诞生了,Ivan向管理层提出了该解决方案。

一切都消失了


管理层的反应是出乎意料的-尚未就实施做出决定。
“这真是惨败,兄弟,”好同事咧嘴一笑,把伊万从会议上甩了出去。

尽管具有讽刺意味,但他是对的。 如果没有做出决定,那么伊万就不会看到也没有考虑到某种威慑力。

管理层确信实施DevOps指标的技术可行性,但仍对此表示怀疑。

这是由一个非常简单的原因造成的:技术解决方案表明,实施虽然可能,但仍需要大量的人力和技术资源,即 会亲爱的。 但是,这是否会产生任何真正有用的结果是一个很大的问题。

当涉及到一个昂贵的项目时,那么:

  • 演讲效果不佳
  • 屏幕布局令人印象深刻
  • 这些例子并不令人印象深刻。

通常,该项目的开始被无限期地推迟。 在伊万看来,这项任务是完全无法解决的。

重大案件


一切都是偶然决定的。 一次,有一封信到达邮局,说有两个学生被带到该部门进行实习。 其中一名学生准备做一些小工作。
伊万(Ivan)认为,至少可以按指标做一些事情-并向学生发送了一部分项目的技术任务,该项目被归为不可能。

所有这些都以最简单的方式从Jenkins和Nexus提取数据。

想象一下,只有两天后,一个学生邀请了Ivan看看他的工作系统,这让Ivan感到惊讶。 对于“我如何获得如此高的优先级?”这个问题 然后回答:“您只有正常的传统知识。”

尽其所能,但是系统正常运行。 她从Jenkins和Nexus提取数据,并将其放入自己的数据库中。

伊万意识到他需要尽快完成剩下的工作。 他使用免费版本的QlikView从原始数据生成报告,并在晚上准备好第一个版本的DevOps指标。

接下来的星期一是一个突破。 Ivan负责人看到工作指标后大声说道:“这是我最近看到的最有用的数据!”

资源问题立即得到解决,在接下来的几天中,带有指标的项目已全面启动。

伊万(Ivan)采取了正确的行动,却没有意识到它给出了“快速结果”-一种功能最短的工作系统,可以带来真正的好处。

“快速结果”是可行的,因为当涉及到大型的昂贵系统时,不可避免地会产生很多歧义。 由于成本高昂,结果并不总是显而易见的。

因此,工作开始经常被延迟或系统被完全放弃。
快速的结果有助于以最小的手段检验假设。 最主要的是尝试在不吸引其他资源的情况下制作原型,从而使其同时具有价值和收益。

Ivan从该项目中获得了一些见解:

首先想象一下您需要什么最终结果


Ivan确切地知道他需要什么指标,直到屏幕布局。 这使他能够迅速丢弃不必要的功能,而仅留下那些功能,而这些度量则完全失去了意义。

在提议实施的十个DevOps指标中,Ivan仅留下了一个,并将其限制在一个立场和一个团队中。 实际上,一方面是最集中的压缩,另一方面是实际的实际数据。

这种截短的版本可以解决一个完全实际的问题-分析真正的团队并了解其上的度量标准是否会给他们期望的结果。

一个简单的架构图使事情变得容易得多


具有信息流和数据的最简单的部署方案很好地帮助了Ivan理解了什么在哪里以及获得它的难易程度。

詹金斯:乔布斯。 作业中的指标需要什么? 如何将其拔出? 什么协议,来自哪个地址?

Nexus:发行版。 Nexus需要什么指标? 如何获得?

帮助系统:掉线是因为 度量不需要它们。

如何合并数据? 在哪里尽可能快地这样做最容易?

如果可能,请不要进行编码。 挺好的


如果您可以将现成的内容上传到XLS或CSV,则最好这样做,而不要完全编码。

有时您可能需要编码,但仍然需要选择最简单的选项。
例如,Jenkins使用RSS和JSON来馈送数据。 选择更易于实现的选项。

Nexus仅返回XML? 好吧,没有什么可做的,您必须编写代码。

不要挂得太多。 清洁一切


不需要超级自动化即可获得快速结果。 您可以使用命令代码代替其名称。 您不应仅为了丰富数据而连接其他系统。 这些只是鲜花和美容指南-最好不用它们并节省时间。

如果速度更快,可以写入常规文本文件或csv,而不是写入数据库。
您可以手动开始的地方-开始,不要在Sheduler上浪费时间。

如果使用诸如Python或PHP之类的简单脚本语言编写代码更容易,请编写代码。 无论如何,您都做了最低限度的工作,因此您无需重写太多内容。

使用可让您快速获得结果的工具,例如免费的QlikView或Tablue作为度量标准-它们使加载和合并数据以及构建所有必要的图形变得容易。

Ivan将“快速的结果”投入了服务,在以下项目中,他始终试图首先制作一个最低限度的工作系统,以提供有用性,然后再处理其余工作。 而且它始终有效。

如果Ivan的故事对您有用,那么我将非常高兴。

快速取得成效后,请在评论中写下您的情况。

Source: https://habr.com/ru/post/zh-CN458370/


All Articles