Case Studies

ALGOTEC

AlgoTec 为医学成像技术实施了持续集成并扩展了自动化测试——测试数百个 C++ 项目并将构建速度提升了 80%

Algotec概述

Algotec 是 Carestream 旗下的一家公司,正在开发侧重于放射学、心脏病学和乳房造影法等医学成像技术的新一代医疗信息技术平台。

Algotec 为医疗机构提供基于网页的医学成像影像管理、读取、处理、报告和分发高级解决方案。这些解决方案包括医学影像处理、医学成像信息管理、远程放射学和图像归档和通信系统(PACS)。放射学信息系统(RIS)、远程放射学系统、多站点影像管理系统(SuperPACS)、临床数据归档和电子健康托管服务。Algotec 是 Carestream Health 旗下的全资子公司。

世界各地的数千个医疗中心均安装了 CARESTREAM Vue 产品套件,该套件可优化医学成像,促进卓越的临床治疗和出色的病患护理。它包括配备尖端临床影像处理功能的工作站、能够处理并存储大量的医疗数据的服务器以及管理病患和程序的产品等等。

难点

Vue 产品套件是一套非常复杂精密的软件。它包含了正在快速增长的代码库,其中已有数百万行代码。代码构建使用微软 Visual Studio 进行,需要很长时间才能完成。有时,他们的产品采用最新硬件进行构建也需要 3 个小时以上。

他们完整重构了大约 400 个 C++项目。许多项目包含超过 30 个源文件,每个文件超过一百行。Algotec 还大量使用宏、TLB导入和自定义构建步骤,每一项都进一步增加了额外编译时间。

这样的构建时间意味着,开发人员需要很长时间才能获得关于其新特性和错误修复方面的反馈,从而导致许多集成问题的产生,进而损害生产效率和质量。

由于构建时间长,Algotec 的每个产品都只有两个每日构建版本:一个调试版本,一个正式发布版本。编译要耗费一整夜时间,因为相同的构建服务器白天都在使用,所以夜间根本没有足够的时间对它们进行自动部署和测试。

IncrediBuild 让我们从每晚进行一次漫长的构建,转型到了每天进行多次构建,最终落实了完整的持续集成流程,从而提高了生产力并改善了质量。

Yossi Zinger

SCM 负责人、软件配置经理

解决方案

为了部署他们的 Visual Studio 构建加速解决方案,Algotec 接触了 IncrediBuild。每一名开发人员都安装了一个Agent,该Agent启动构建后,可利用网络上所有可用的机器。

结果令人印象深刻。编译时间得到了大幅缩短。在较小的项目中,他们见证了约 90% 的构建时间降幅(从约 30 分钟缩短至 3 分钟)。在最大的项目中,构建时间最初从 190 分钟缩短至了约 40 分钟;在咨询 IncrediBuild 专家后,他们对项目和依赖项设置进行了优化,并最终实现了约 34 分钟的总构建时间——这比原来的构建时间缩短了 80%。

益处

随着构建时间大幅缩短,Algotec 便能够实施持续集成。他们能够一天进行多次构建,从而获得更快的反馈,并有充足的可用时间在夜间对产品进行自动部署和测试。这开启整个公司自动化测试的先河,并不断扩展。

实现效果

小型项目
30分钟
3分钟
大型项目
3小时
34分钟