SummaryThe present paper sums up the work and results of an on-going partnership program between BUREAU VERITAS & the CEA LIST, started in 2015, whose main objective is to propose a generic and pragmatic methodology in the form of a set of guidelines for software development and assessment. Initiated by the observation of an absence of dedicated software safety assessment standards and tools in several industrial sectors, and benefiting from the BUREAU VERITAS knowledge of software safety certification standards and the CEA LIST expertise in software code verification, these guidelines are focusing on development processes and the use of efficient tools to verify software through a white-box approach. They have been designed to be usable in all the domains that deal with the quality, reliability and/or safety of software systems, especially in sectors where safety concerns are not prevalent (e.g. car amenities -multimedia, air conditioning, etc.-, robotics and smart devices -automated handling, connected bracelets and watches, etc.-) or those lacking existing regulations (e.g. marine & offshore, part of the defense sector, industrial and agricultural machines, etc.).
RésuméCet article récapitule le travail et les résultats d'un programme de partenariat entre BUREAU VERITAS & le CEA LIST, initié en 2015, dont l'objectif principal est la proposition d'une méthodologie générique et pragmatique sous la forme d'une liste de recommandations pour le développement et l'évaluation de logiciels. Partant du constat qu'un certain nombre de secteurs industriels ne bénéficient pas de référentiel dédié ni d'outils associés pour l'évaluation de la sécurité du logiciel, et profitant de la connaissance par BUREAU VERITAS des référentiels de certification de la sécurité du logiciel et de l'expertise du CEA LIST en vérification de code logiciel, ces recommandations se concentrent sur les processus de développement et l'utilisation d'outils efficaces pour vérifier le logiciel par une approche « boîte-blanche ». Elles ont été élaborées pour être applicables dans tout domaine s'appuyant sur la qualité, la fiabilité et/ou la sécurité des logiciels, notamment dans les secteurs où les préoccupations liées à la sécurité sont moins prégnantes (ex. des équipements automobiles -multimédia, air conditionné, etc.-, la robotique et les appareils intelligents -systèmes de manutention automatisés, montres et bracelets connectés, etc.) ou ceux qui ne possèdent pas de réglementations existantes (ex. la marine & offshore, une partie du secteur de la défense, les machines industrielles et agricoles, etc.).