Symbian utilise Coverity grace aux vérificateurs de code source personnalisé

Par:
fredericmazue

jeu, 08/03/2007 - 13:29

Coverity, l’éditeur de la solution d’analyse de code source la plus évoluée au monde, vient d’annoncer aujourd’hui la mise à disposition d’une nouvelle version de Coverity Extend, une suite d’outils grâce auxquels les développeurs d’applications embarquées, d’applications d’éditeurs indépendants et d’applications d’entreprise pourront créer facilement des vérificateurs personnalisés du code source fonctionnant avec Coverity Prevent, le produit d’analyse phare de la société. Cette nouvelle version dispose désormais d’un accès complet aux types C/C++, d’une nouvelle bibliothèque d’exemples et d’une documentation étendue. Ce produit constitue une évolution importante pour les développeurs travaillant sur des logiciels dotés de fonctions spéciales pour lesquelles ils ont besoin de disposer de vérificateurs spécifiques d’analyse du code source.

Symbian est dans le monde, le principal système d’exploitation ouvert équipant plus de 70 millions de téléphones mobiles issus des chaînes de production des principaux fabricants de téléphones. Symbian avait besoin d’outils permettant de gérer plus facilement une équipe de développeurs regroupant plus de 500 ingénieurs répartis dans différents pays, afin de garantir la qualité des lignes de code de son système d’exploitation Symbian. Elle avait besoin de toute la souplesse d’Extend pour analyser ce logiciel hautement personnalisable requerrant une configuration différente pour chaque type de plate-forme téléphonique mobile. En outre, les développeurs avaient besoin d’un outil leur permettant d’étendre en permanence la portée de l’analyse de façon à pouvoir identifier des bugs spécifiques à chaque type de plate-forme.

« Nous avons choisi Coverity surtout en raison d’Extend qui nous permet d’écrire nos propres vérificateurs personnalisés que nous pouvons ensuite utiliser pour analyser la base de code unique de Symbian » a déclaré Neil Taylor, officiant chez Symbian en tant que spécialiste des architectures technologiques. Il a ensuite ajouté « Nous avions dressé une liste exhaustive des critères auxquels devait répondre l’outil d’analyse statique que nous envisagions d’acquérir et nous avons comparé de nombreux produits. Coverity a été le seul à répondre à ces critères et capable de faire face à la complexité des 5 millions de lignes que compte notre base de code ».

Après avoir implémenté Coverity Extend, tous les ingénieurs de Symbian ont pu créer des vérificateurs personnalisés leur permettant d’analyser toutes les configurations du système d’exploitation éponyme. Chaque vérificateur personnalisé a été mis à la disposition de l’ensemble des ingénieurs faisant partie du groupe, permettant ainsi de créer rapidement une bibliothèque de vérification personnalisée sophistiquée. Le groupe des ingénieurs concernés considère que chaque défaut détecté par Coverity a permis d’économiser 3 jours de travail d’ingénieur pour résoudre le problème associé à ce défaut. De plus, chaque vérificateur de défaut personnalisé peut être utilisé par chacun des membres d’une équipe de développement.

Coverity Extend offre aux développeurs une solution alternative remplaçant les processus d’analyse manuelle du code qui permettent uniquement d’analyser des portions de la base de code. Au travers d’une utilisation stratégique de l’automatisation et des vérifications personnalisées, les groupes de développement sont en mesure d’effectuer une analyse complète de l’intégralité du code et d’établir des processus visant à imposer des règles de programmation. Les groupes de développement de logiciels peuvent établir et imposer des politiques et processus visant à assurer la qualité des logiciels ou créer des ensembles de règles à respecter dans le cadre de la définition des politiques internes de programmation ou de l’établissement des normes industrielles en matière de programmation. Il est possible d’automatiser des processus personnalisés de vérification du code. Il est également possible de créer des vérificateurs de sécurité personnalisés empêchant tout accès non autorisé à des données sensibles ainsi que d’autres formes d’intrusions malveillantes.

Les fonctions clés incluses dans Coverity Extend sont les suivantes :
- Accès total aux types C/C++ ;
- Syntaxe C++ pour les vérificateurs personnalisés, ce qui permet à n’importe quel développeur de créer rapidement des vérificateurs dans un environnement familier ;
- Flexibilité permettant de créer pratiquement n’importe quelle fonction de vérification ;
- Bibliothèque d’exemples de référence permettant d’accélérer le développement des vérificateurs ;
- Documentation facilitant la création de vérificateurs personnalisés ;
- Vérificateurs exécutés pendant le processus de développements.