Découvrez comment intégrer facilement l'analyse statique, les tests unitaires et d'autres méthodes de test de logiciels C et C++ dans votre pipeline CI/CD. Inscrivez-vous pour la démo >>

Pourquoi Cisco est reconnaissant pour l'analyse statique

Par Parasoft

22 novembre 2016

5  min lire

À l'approche de Thanksgiving, voyons pourquoi des entreprises de premier plan comme Cisco Systems sont reconnaissantes pour l'analyse statique ...

Les plus grandes entreprises du monde dépendent Cisco Systems, un leader mondial des solutions de réseau, pour maintenir leurs systèmes critiques en fonctionnement continu. C'est pourquoi la société a activement investi dans des efforts pour garantir que la qualité de ses logiciels est de classe mondiale. Considérant que les pannes système ont des conséquences de plusieurs millions de dollars, Cisco sait que l'assurance qualité est un facteur clé de son succès continu sur le marché.

Pour atteindre ses objectifs en matière de qualité logicielle dans l'environnement Java, Cisco a adopté l'outil d'analyse statique de Parasoft pour Java : Jtest Parasoft. Parasoft Jtest est standard chez Cisco avec plus de 1100 développeurs qui l'utilisent quotidiennement. La société réalise des gains de productivité grâce à la configuration automatisée des règles et des paramètres ainsi qu'au développement continu des compétences Java. Les équipes de développement détectent les erreurs beaucoup plus tôt dans le cycle de vie du développement logiciel, ce qui se traduit par une productivité et une qualité globales accrues dans un marché qui l'exige de plus en plus.

Pourquoi Cisco a adopté les outils d'analyse statique

Les produits Cisco alimentent de nombreux sites et applications Web qui imprègnent Internet, de sorte que la société comprend que beaucoup dépend de sa capacité à fournir des solutions de haute qualité. Pour répondre aux demandes et aux attentes en constante augmentation des clients, Cisco a lancé une initiative de grande envergure visant à promouvoir l'excellence en termes de qualité logicielle.

«Cisco se rend compte que pour rester à la pointe du marché, il doit disposer des meilleurs outils pour augmenter la qualité», déclare Andy Chessin, un responsable technique chargé d'évaluer les produits et outils de test logiciel et de promouvoir leur adoption.

L'un des défis de Cisco, cependant, consistait à engager ses développeurs Java dans un processus de test de développement qui éliminerait les erreurs logicielles et générerait un code propre. Avec des attentes de qualité élevées chez Cisco, les développeurs de logiciels et les ingénieurs sont tenus de répondre aux exigences strictes en matière de test et de qualité des logiciels. Trois domaines qui ont fait l'objet d'une attention particulière sont l'analyse statique, les tests unitaires et la révision de code.

Cependant, ces exigences élevées ne peuvent être satisfaites sans des plates-formes et des logiciels de test sophistiqués. Dans cet esprit, Cisco a investi dans outils d'analyse de code statique de Parasoft. Au cœur de ses efforts de développement Java, Cisco a mis en œuvre le Jtest de Parasoft pour éliminer les erreurs logicielles critiques au fur et à mesure du développement du code d'application.

La qualité, cependant, est autant une question de culture et d'engagement qu'une technologie. Pour garantir le succès de ses efforts de qualité logicielle, la société devait générer des taux d'adoption élevés de l'analyse statique. Chessin a joué un rôle particulièrement critique dans cet effort. Lorsqu'il est arrivé dans l'entreprise, il s'est rendu compte de la nécessité de développer un plan clair pour la mise en œuvre de l'analyse statique, la formation des développeurs et la prise en charge de l'adoption.

Chessin s'est appuyé sur le cadre d'analyse statique de Parasoft pour créer un plan «plan directeur» définissant les rôles, les responsabilités et les attentes pour conduire la mise en œuvre de Jtest parmi les développeurs Cisco.

Les résultats de ces efforts ont été phénoménaux. Au cours des dernières années, le nombre de développeurs utilisant l'analyse statique de Parasoft a augmenté de manière explosive, passant de 24 à plus de 1100 XNUMX utilisateurs réguliers. Ce qui a rendu cette adoption élevée possible, c'est qu'en plus des directives de la haute direction de Cisco, la réussite de la mise en œuvre était liée à une planification diligente et à un soutien actif.

Chessin et son équipe ont fourni l'infrastructure et l'assistance nécessaires pour intensifier l'adoption de Parasoft Jtest. Ils ont rencontré des développeurs pour répondre à des questions, organisé des déjeuners éducatifs et produit des cours de vidéo à la demande pour soutenir leur formation. Ces mesures se sont avérées extrêmement importantes pour le succès du déploiement. En fournissant des ressources aux développeurs et aux architectes de manière juste à temps, ils ont pu soutenir la formation et le développement de beaucoup plus de personnes qu'ils ne pourraient en avoir en utilisant une formation conventionnelle.

Pendant ce temps, Parasoft s'est montré extrêmement réactif. Non seulement les représentants de la société ont activement répondu aux préoccupations et aux questions des développeurs, mais ils ont également rapidement déployé les nouvelles fonctionnalités et capacités nécessaires pour prendre en charge la convivialité et l'évolutivité de Jtest dans l'environnement exigeant de Cisco.

«Sans la coopération de Parasoft, j'aurais personnellement eu beaucoup moins de succès», déclare Chessin. «Les choses auraient été faites, mais pas aussi vite. Tout ce que je ressentais était un obstacle ou me gênait a été résolu immédiatement.

Avantages de l'analyse statique: détection précoce des défauts et productivité accrue

L'une des principales améliorations de la productivité a été la configuration automatisée. Parasoft permet aux architectes logiciels de transférer facilement une configuration de règles et de paramètres pour tester une base de code vers une autre base de code dans laquelle les modifications et les nouvelles règles sont facilement configurées.

Cette fonctionnalité devient particulièrement importante lorsque les développeurs travaillent dans différentes technologies telles que les threads ou les Enterprise Java Beans. En quelques secondes, les règles peuvent être activées ou désactivées pour protéger la base de code sans l'introduction manuelle de nouvelles règles et paramètres. Lorsque l'architecte met les règles nouvelles et personnalisées sur le serveur d'équipe, elles deviennent instantanément accessibles à tous les développeurs. Pour une équipe avec quelques leads et un éventail de développeurs dans le monde, cela représente un énorme gain de productivité.

Les gains de productivité sont également réalisés en identifiant les erreurs de manière à aider les développeurs à améliorer leur propre précision. Lorsqu'un développeur clique sur une erreur, par exemple, la documentation explique non seulement le fonctionnement d'une règle particulière, mais fournit également un exemple de code préféré. «L'un des gains les plus importants est que Parasoft a appris aux ingénieurs à devenir de meilleurs développeurs», déclare Chessin. «Dans le processus d'utilisation de Parasoft, nous constatons de moins en moins de défauts dans la base de code, car les développeurs apprennent à mieux écrire Java. Au fur et à mesure qu'ils deviennent de meilleurs développeurs, l'architecte intègre alors plus de règles et le résultat est un meilleur code. Il y a un impact cyclique. »

De plus, la gestion de la qualité en amont produit de meilleurs produits en aval. Les versions nocturnes de la base de code, par exemple, sont devenues plus propres à mesure que les développeurs exécutent Jtest sur le bureau avant de vérifier leur code. En traitant les erreurs et les défauts logiciels plus tôt dans le processus de développement logiciel, ils éliminent les problèmes de qualité qui auraient autrement pu nuire à la productivité ou créer des problèmes de qualité en aval.

Enfin, Cisco a réalisé des gains de productivité des développeurs grâce à l'intégration de Parasoft Jtest avec l'environnement de développement intégré (IDE) de la Fondation Eclipse. La richesse de l'EDI d'Eclipse permet aux développeurs de gérer des projets dans un seul endroit et de basculer entre eux. Il offre également une fonctionnalité de résolution rapide. Dans de nombreux cas, Parasoft Jtest a fourni une passerelle pour présenter cet outil et ce cadre puissants aux développeurs, générant des gains de productivité qui continueront de croître au fil du temps.

Étendre l'analyse statique et favoriser l'adoption

Après avoir déployé Parasoft Jtest auprès de 1100 XNUMX développeurs, Cisco se concentre désormais sur l'augmentation de l'adoption par le biais de l'éducation afin d'augmenter considérablement la qualité et la productivité au cours des années à venir. Parasoft travaille avec Cisco pour fournir une formation technique continue afin de garantir que les ressources d'apprentissage sont disponibles pour tous les utilisateurs - qu'ils soient nouveaux ou avancés développeurs, architectes ou testeurs.

Alors que l'équipe d'évaluation des outils de Cisco a envisagé d'autres outils possibles pour la gestion de la qualité des logiciels basée sur Java, elle a désormais clairement établi Parasoft comme la norme. «Nous avons le meilleur outil dans cet espace qui pourrait être déployé dans cette entreprise», déclare Chessin. Avec le succès de cette entreprise, il mène actuellement des évaluations pour déterminer quels outils devraient devenir la norme en ce qui concerne le test du code logiciel dans les applications Web et les environnements SOA / API.

«Si je pouvais tenir les autres fournisseurs responsables du type de soutien que j'ai reçu de Parasoft, ce serait un monde parfait», déclare Chessin. «Le soutien, la coopération et le véritable intérêt que j'ai reçus de Parasoft ont été remarquables.»

Par Parasoft

Les outils de test de logiciels automatisés de pointe de Parasoft prennent en charge l'ensemble du processus de développement logiciel, depuis le moment où le développeur écrit la première ligne de code jusqu'aux tests unitaires et fonctionnels, jusqu'aux tests de performance et de sécurité, en exploitant des environnements de test simulés en cours de route.

Recevez les dernières nouvelles et ressources sur les tests de logiciels dans votre boîte de réception.