Rechercher
Contactez-nous Suivez-nous sur Twitter En francais English Language
 











Abonnez-vous gratuitement à notre NEWSLETTER

Newsletter FR

Newsletter EN

Vulnérabilités

Se désabonner

Code : les éléments clés pour comprendre la méthodologie Shift left

août 2021 par Ponicode

Le code de mauvaise qualité coûte des millions de dollars à l’industrie logiciel et génère un volume croissant de coûts imprévus en réparation et maintenance. Face à ce fléau de nouvelles pratiques et de nouveaux outils sont apparus ces dernières années afin d’industrialiser l’approche de la production logicielle. Ponicode, plateforme d’Intelligence Artificielle visant à améliorer systématiquement la qualité logicielle tout en optimisant la vélocité des développeurs, revient sur les éléments clés pour comprendre l’une de ces solutions : l’approche “Shift left”. Le Shift Left et sa communauté d’adeptes grandissante cherche à réduire durablement les risques auxquels une entreprise est exposée via sa production logicielle : augmentation des coûts de développement, perte de contrôle de la dette technique et érosion de l’image de marque.

Changer de paradigme pour identifier et corriger les problèmes le plus tôt possible
Les ingénieurs logiciels ont longtemps laissé la charge des tests aux équipes qualité qui interviennent postérieurement à la création de logiciels. Cependant face à la complexité croissante du code et l’accélération des cycles de production, les analystes ont identifié que la correction de failles et de bugs en aval du cycle de développement était particulièrement coûteuse. C’est de cette observation qu’est né l’approche Shift Left. Identifier de manière précoce les erreurs dans le code permet de gagner temps et argent à moyen et long terme. Déplacer les tests en amont du cycle de développement permet en effet de réduire le coût de correction d’un bug de manière significative, le faisant passer en moyenne de 7 600 USD s’il est détecté et corrigé en fin de cycle à 80 USD si la détection et la correction se font en début de cycle (chiffres issus de l’étude 2020 d’IBM “The State of Vulnerability Management in the Cloud and On-Premises”). Ces chiffres agrègent toutes les dimensions de la correction des bugs : impact sur le chiffre d’affaires, taux horaire des développeurs qui resolvent des bugs complexes ou encore la création de valeur ajoutée interrompue par les efforts de réparation. Le constat est limpide : il est préférable d’identifier rapidement les petits défauts et de les corriger à un stade précoce plutôt que d’avoir à faire face à des fonctionnalités défectueuses à un stade ultérieur.

C’est ainsi que les développeurs ont commencé à examiner le cycle de vie traditionnel du développement de logiciels, en tenant compte de ces statistiques pour essayer de créer un cycle plus efficace.

L’approche Shift left permet de réduire le coût total du développement d’un logiciel de façon significative. Cette amélioration nécessite d’optimiser la façon dont les développeurs utilisent leur temps, les invitant à réaliser plus de tests de chaque unité de code produit, au moment où ils les écrivent.

Les avantages de l’approche Shift left

Les avantages pour l’entreprise sont évidents. Les tests les plus lourds et complexes postérieurs à la création du logiciel sont évités, permettant ainsi une mise sur le marché accélérée de logiciels de plus grande qualité. Et dans les plus rares occurrences ou les logiciels ont des bugs, les failles sont plus rapidement identifiées et peuvent être corrigées aussitôt ce qui permet un gain de productivité. Enfin, et surtout, la raréfaction des bugs offre aux utilisateurs une expérience sans accroc et aux entreprises une image de marque préservée. On compare souvent Shift Left avec les progrès du zéro défaut introduit dans les années 90 dans l’industrie automobile : tester le plus tôt possible, de manière continue et à haute fréquence. Et les avantages de cette approche ne sont pas seulement technique et commercial mais également humain. Elle permet d’offrir un meilleur flux de travail et une expérience de développement plus fluide. Elle réconcilie création et contrôle qualité et ainsi responsabilise ou réengage les développeurs sur la qualité du code produit.

En réduisant frustration et ralentissement de la production de code occasionné par les bugs les entreprises observent une meilleur satisfaction au travail. Encore faut-il que les développeurs ne voient pas en cette modification du cycle de développement un report de charge ou une évolution défavorable de leur rôle. Afin que cette responsabilité retrouvée de la qualité que permet l’approche Shift Left ne crée pas une surcharge, il est nécessaire d’équiper les développeurs avec des outils adaptés. Les partisans du Shift Left promeuvent l’automatisation ou a minima l’assistance technologique de la création de tests.

L’évolution de la méthodologie Shift left

C’est ainsi qu’entre en scène les nouveaux outils utilisant le pouvoir de l’intelligence artificielle afin de faciliter la création de tests. Le champ des possibles dans l’industrialisation du code s’est nettement agrandie ces dernières années. L’intelligence artificielle permet désormais d’accélérer les tests et de plus rapidement identifier les failles présentes dans le code afin que les développeurs puissent se concentrer davantage sur les tâches à haute valeur ajoutée. L’intelligence artificielle au service des développeurs signifie une plus grande homogénéité du code écrit sans jamais éroder la créativité des développeurs. Logiciel plus robuste, écriture de code de qualité accélérée et ingénieurs équipés pour se concentrer sur leur cœur de métier : l’approche Shift Left et ces outils représentent un pas significatif afin de supporter la vitesse de l’innovation dans l’industrie logicielle.


Voir les articles précédents

    

Voir les articles suivants