CACI améliore la prestation de services technologiques aux clients du secteur public avec GitLab
GitLab Ultimate
Vous souhaitez découvrir ce que GitLab Ultimate peut offrir à votre équipe ?
Avec GitLab, CACI a réussi à répondre largement aux besoins logiciels de ses clients tout en renforçant sa position dans le secteur et ses résultats.
CACI International Inc. est une entreprise dont le chiffre d'affaires s'élève à 6,7 milliards de dollars. Sa technologie et son expertise jouent un rôle essentiel dans la modernisation de la sécurité nationale et des administrations aux États-Unis. Elle se considère comme un acteur majeur de la transformation du secteur, et son processus de développement de logiciels agile est un atout considérable. Elle s'est forgée une solide réputation en fournissant logiciels et matériels définis par logiciel stratégiques aux agences gouvernementales, aux services de renseignement et au ministère de la Défense aux États-Unis. C'est pourquoi, lorsque l'entreprise a réalisé qu'elle devait repenser sa façon de développer et de déployer des logiciels, elle s'est associée à GitLab, une entreprise qui révolutionne son propre secteur.
CACI a migré vers la plateforme DevSecOps alimentée par l'IA de GitLab pour accroître la réactivité et le rendement, la sécurité et la productivité. Cela lui a également permis de remplacer ses anciennes chaînes d'outils encombrantes et coûteuses.
« Nos clients comptent sur nous parce qu'ils savent que le développement logiciel agile est notre plus grande force », explique Glenn Kurowski, Senior Vice President et CTO de CACI. « En portant un regard critique sur nos méthodes, nous avons réalisé que certains programmes utilisaient des chaînes d'outils DevSecOps qui ne nous convenaient plus. Les multiples chaînes d'outils DevSecOps que nous avions acquises étaient réparties entre les différentes équipes chargées du développement logiciel. Ce processus fonctionnait, mais nous savions que nous pouvions le rendre plus efficace. Nous avons dû nous adapter pour améliorer notre atout majeur.
Selon Glenn Kurowski, CACI a choisi GitLab comme partenaire pour plusieurs raisons : la confiance qu'elle accorde à sa plateforme DevSecOps complète, le rythme rapide d'innovation continue de GitLab, et sa volonté de travailler à l'élaboration commune d'une réponse aux nouvelles exigences de sécurité du gouvernement américain. L'adoption de GitLab a également permis à CACI d'avoir une approche plus homogène et d'éliminer les ralentissements dus à l'utilisation de produits disparates.
La plateforme GitLab au centre de l'environnement commun de développement de CACI
L'intention de CACI était d'utiliser GitLab comme élément central lors de la création d'un environnement commun de développement logiciel (CSDE) à l'échelle de l'entreprise.
L'intégration des logiciels de CACI dans l'environnement CSDE, qui est configuré en tant que service sur AWS GovCloud, garantit que chaque produit développé est entièrement conforme aux nouvelles réglementations fédérales. L'environnement inclut un ensemble standard d'outils, de services et de frameworks de règles permettant de garantir la conformité aux réglementations. Avec CSDE en tant que service, il est disponible pour tous les projets, et la plateforme DevSecOps de GitLab en est l'épine dorsale.
« Auparavant, nos équipes devaient souvent créer une chaîne d'outils DevSecOps pour chaque nouveau contrat », explique Kyle Craft, CSDE Service Lead chez CACI. « En intégrant GitLab au cœur de notre environnement CSDE, nous n'avons qu'à créer un compte pour commencer le travail, au lieu de consacrer du temps à la création et à l'administration d'une chaîne d'outils. C'est un gain de temps considérable. »
Les équipes de CACI utilisent l'environnement CSDE pour près de 190 projets de développement logiciel différents, sauf si un client exige l'utilisation de son propre environnement. L'entreprise réalise des économies de 90 % en matière de main-d'œuvre et de travail d'administration de la chaîne d'outils depuis son passage à un environnement CSDE basé sur GitLab. L'automatisation de l'application de correctifs ne nécessite plus que quelques minutes, tandis que le scanning de sécurité a été accéléré par 13 fois par rapport aux mises en œuvre précédentes.
« Nos développeurs apprécient la facilité d'utilisation, la disponibilité, la fiabilité et l'évolutivité de notre service CSDE basé sur GitLab », déclare Kyle Craft. « GitLab est au centre de notre processus de développement de logiciels. Nos employés adorent la rapidité avec laquelle ils peuvent lancer des projets et produire des logiciels dans le cadre de nouveaux programmes et projets. »
CACI a connu une « croissance explosive » du nombre d'utilisateurs de l'environnement CSDE depuis sa standardisation sur GitLab. Lors de son déploiement à l'été 2022, l'environnement commun de développement logiciel comptait seulement 110 utilisateurs. Un peu plus d'un an plus tard, il était utilisé par plus de 1 900 développeurs. Le fait que GitLab s'adapte à l'échelle du développement logiciel agile de CACI constitue un réel avantage. Par exemple, un même programme compte plus de 150 applications et émet 800 nouvelles versions de fonctionnalités par an.
« Nos clients attendent de l'innovation et des logiciels de haute qualité. Une vélocité sans pareille leur est nécessaire afin de déployer rapidement de nouvelles fonctionnalités qui répondent à l'évolution de leurs besoins », explique Glenn Kurowski. « Contrairement à la majorité des acteurs de notre secteur, nous optimisons le développement de logiciels, et ce à grande échelle. Pour étendre notre position de leader, nous nous sommes tournés vers GitLab afin de repenser la façon dont nous créons des logiciels rapidement sans compromettre la sécurité. »
Prise en charge d'une version logicielle majeure
L'environnement CSDE basé sur GitLab a joué un rôle essentiel lors de la création par CACI d'une nouvelle version d'un système de communication pour l'un de ses clients.
Deux versions antérieures du projet ont été développées à l'aide d'un large éventail d'outils DevSecOps différents. Pour soutenir le développement de la nouvelle version de l'application, l'équipe a basculé vers l'environnement CSDE basé sur GitLab de CACI pour profiter d'une plateforme DevSecOps intégrée de bout en bout.
« GitLab proposait toutes les fonctionnalités et l'automatisation dont nous avions besoin dans une seule application. Cela a simplifié notre travail », explique Wesley Monroe, Technical Project Manager chez CACI. « Les fonctionnalités de feuille de route, de gestion des tickets et de scanning de sécurité étant disponibles sur une seule et même plateforme, cela n'est en rien comparable à ce que nous utilisions avant », ajoute-t-il.
Conformité aux réglementations gouvernementales
L'un des plus grands avantages de la plateforme DevSecOps de GitLab est qu'elle permet à CACI de gérer les nouvelles exigences de conformité de sécurité, ce qui permet d'éviter les rectifications coûteuses.
La conformité aux lois, réglementations et normes gouvernementales est cruciale pour un contractant au service de l'État, et affirmer d'assurer cette conformité ne suffit pas : il faut également être en mesure d'en apporter la preuve.
L'environnement CSDE est un autre exemple de la capacité de CACI à devancer les besoins de ses clients. « Nous nous sommes positionnés pour être en mesure de répondre aux futures exigences en matière de sécurité des contrats », explique Kyle Craft. « Les données réglementaires étant suivies et stockées ensemble sur la plateforme GitLab, nous pouvons attester du respect des normes de sécurité, avec données sauvegardées à l'appui. »
L'utilisation d'une seule plateforme permet également aux équipes de CACI de contrôler la sécurité en amont, en l'intégrant à chaque phase du cycle du développement logiciel. C'est la clé pour être en mesure de respecter les réglementations gouvernementales américaines axées sur la sécurité, telles que le Secure Software Development Framework (SSDF).
Réduction des coûts et simplification des processus
Avant que CACI ne lance sa migration vers la plateforme DevSecOps de GitLab, le travail des équipes était ralenti par un grand nombre d'outils disparates et coûteux répartis dans l'ensemble de l'entreprise. L'entreprise limite maintenant cette complexité en arrêtant d'utiliser certains de ces outils.
En réduisant les chaînes d'outils, Glenn Kurowski affirme que l'entreprise a réduit les coûts d'acquisition de licences, a passé moins de temps à administrer ses outils et a pu consacrer plus de temps au développement de logiciels. Il note également que les équipes sont plus productives, qu'elles lancent des projets beaucoup plus rapidement et qu'elles répondent plus facilement aux pics de demande. Il explique que la formation a également été simplifiée, que les mises à niveau se font plus facilement et plus rapidement et que la gestion de projet est à présent plus en phase avec le développement du code. Les correctifs sont également appliqués avec peu ou pas de temps d'arrêt.
Comme les développeurs travaillent sur une plateforme commune, ils passent facilement d'un projet à l'autre pour répondre à l'augmentation de la demande. « Cela garantit aux clients un accès rapide aux meilleurs développeurs », explique Glenn Kurowski.
La plateforme leur a également permis de créer une documentation infiniment meilleure que ce qu'ils produisaient auparavant, indique Kyle Craft. Cela s'explique en grande partie par le fait que la plateforme favorise une forte collaboration au sein des équipes DevSecOps et entre elles, ce qui leur donne une meilleure visibilité sur les projets ainsi que la possibilité de partager la responsabilité de la documentation des problèmes, solutions et meilleures pratiques.
Création d'une communauté DevSecOps
Les utilisateurs DevSecOps de CACI ont créé ce que Kyle Craft appelle une « communauté de pratique » grâce à la visibilité et à la collaboration renforcées que propose la plateforme. « Comme nous utilisons la même plateforme, nous sommes plus que jamais connectés les uns avec les autres », explique-t-il.
CACI envisage de tirer parti de manière ciblée et responsable des fonctionnalités d'IA intégrées à la plateforme, telles que GitLab Duo. Selon Glenn Kurowski, l'entreprise prévoit d'utiliser l'IA pour mieux comprendre le code existant et en développer du nouveau.
« Nous admirons la façon dont GitLab enrichit les processus DevSecOps avec l'IA », ajoute-t-il. « Nos codeurs passent plus de temps à comprendre le code qu'à l'écrire. C'est la norme dans le secteur. L'idée d'enrichir le processus avec une explication du code, des suggestions de code et une assistance au code, en général, répond à un besoin essentiel. »
À la date de publication, toutes les informations et les personnes mentionnées dans l'étude de cas sont exactes.