Site icon Systematic Paris-Region

Feuille de route du Hub Digital Engineering 2022 – INGERIERIE SYSTEME & LOGICIELLE

Feuille de route du Hub Digital Engineering 2022 - INGERIERIE SYSTEME & LOGICIELLE

Feuille de route du Hub Digital Engineering 2022 - INGERIERIE SYSTEME & LOGICIELLE

” Vers des méthodes d’ingénierie système et logicielle augmentées et durables pour faire face en confiance à la complexité des systèmes “.

L’augmentation de la complexité des systèmes et des logiciels est au cœur de nombreuses préoccupations des concepteurs. Face à cela, le rythme incrémental des innovations en matière de méthodes et d’outils dans le domaine de l’ingénierie des systèmes numériques ne suffit plus pour répondre aux attentes et relever les défis qu’ils soulèvent liés à leur complexité. Les innovations dans le domaine des technologies numériques sont pourtant porteuses de promesses capables d’introduire les ruptures nécessaires pour changer cette situation. Ces innovations concernent notamment l’IA appliquée à l’ingénierie système et logiciel, les avancées dans le domaine des technologies informatiques dites « formelles » (au sens des mathématiques) et les progrès en terme d’environnement de travail collaboratif, une des clefs du succès de l’intelligence collective.

Introduction

L’ingénierie des systèmes est une approche multidisciplinaire définie scientifiquement. Elle s’appuie sur des méthodes, des outils, des normes et standards, et des connaissances facilitant la maîtrise du cycle de vie des systèmes complexes. Cela inclue l’idéation, la spécification, la conception, la validation, la réalisation, jusqu’au démantèlement.

Selon l’INCOSE, l’ingénierie système se caractérise par un ensemble de préoccupations présentées dans la Figure ci-dessous. Ces préoccupations incluent notamment les aspects informatiques, logiciels et matériels, mais pas seulement aussi les lois physiques de façon générale.

(Credit to INCOSE)

 

lngénierie informatique & ingénierie système :

Quel que soit le type de système, l’ingénierie informatique, c’est-à-dire logicielle et matérielle, est étroitement liée à l’ingénierie système. De l’ingénierie des exigences à l’IVVQ (Intégration, Vérification, Validation, et Qualification), les pratiques de modélisation (fonctionnelle, non-fonctionnelle, dysfonctionnelle) formelles ou non formelles, sont de plus en plus utilisées.

Les systèmes peuvent être ou non embarqués. Dans le cas de systèmes embarqués, il faut en particulier résoudre des problèmes d’optimisation, d’encombrement, de poids, d’énergie, etc. Entrent dans cette catégorie, les systèmes dits cyber-physiques (CPS) car ils contrôlent un environnement physique comme les systèmes mécatroniques, les systèmes dits IoT), les système de type « cloud computing » ou encore « edge computing ».

Notons que cette feuille de route se focalise sur la maîtrise du développement des systèmes complexes. Les systèmes sont complexes de par leur hétérogénéité, leur nombre important de constituants en interactions multiples et dont la compréhension ou le développement demande de mettre en œuvre un grand nombre de connaissances dépassant les capacités d’un seul individu, nécessitant ainsi un collectif.

 

Une compétition économique intense :

Le développement de ces systèmes fait l’objet d’une compétition économique intense générant des contraintes toujours plus fortes sur les moyens de développement et de production. Parmi ces contraintes, reviennent le plus souvent l’innovation, la réduction des coûts et des temps de développement et l’amélioration de la qualité des produits. On voit également une demande toujours plus accrue de fonctionnalités d’interaction et donc de communication entre les différents systèmes qui font le quotidien des utilisateurs ou celui des entreprises.

On voit également apparaître un glissement de « l’utilisateur » au « client » qui a également pour conséquence d’étendre l’ingénierie au-delà des parties prenantes habituelles par la prise en compte des fonctions marketing et commerciales.

Par ailleurs, le fonctionnement des systèmes complexes doit se conformer de plus en plus à un nombre croissant de contraintes normatives et/ou de régulation. On peut citer entre autre les normes de sûreté (par exemple, ISO 26262, DO-178C, CEI 61513 et CEI 62061) et de sécurité, ou encore les normes anti-pollution (par exemple, les normes d’émissions « Euro » pour les moteurs thermiques).

 

Complexité essentielle et complexité accidentelle :

Néanmoins, quand on s’intéresse à la complexité des systèmes, il est important de faire la distinction entre complexité essentielle et complexité accidentelle telles que définies par Brooks :

– La complexité essentielle est relative à la nature même du système. Elle est inévitable et pour les raisons détaillées ci-avant (compétition et normes), elle est en expansion dans le domaine des systèmes cyber-physiques.
– La complexité accidentelle est celle qui naît soit de l’utilisation de mauvais moyens de développement (par exemple, des outils inadaptés ou des méthodes de travail trop généralistes pour être efficaces), soit d’une mauvaise utilisation des moyens disponibles (par exemple, utiliser un outil sans lire son mode d’emploi peut s’avérer contre-productif). La complexité accidentelle liée au développement des systèmes est donc évitable, si l’on utilise les bons moyens de la bonne méthode.

 

Croissance de complexité et besoin d’innovation :

La raison principale qui explique le phénomène de croissance de la complexité essentielle des systèmes est ce besoin vital d’innovation. Cela se traduit principalement par plus de fonctions, plus « d’intelligence » dans les fonctions, plus d’autonomie, et plus d’interactions (communications). Or, si on augmente le nombre des fonctions et le nombre des interactions entre les fonctions, il est aisé de comprendre qu’on augmente inexorablement la complexité (essentielle) des systèmes. De plus, les interactions entre les différentes fonctions peut-être à l’origine de comportements dît émergents rajoutant un élément supplémentaire de complexité. Le problème actuel est que le niveau de complexité dépasse déjà les capacités humaines à les gérer [Robert N. Charette 2005].

La tendance à considérer des systèmes de systèmes, c’est-à-dire des systèmes composés de sous-systèmes interconnectés de nature différentes, dont la capacité globale est plus importante que la somme de chaque sous-système, ne va pas arranger la situation.

Aller plus loin, nécessite donc de nouveaux moyens, plus puissants et plus efficaces, pour aider les parties prenantes d’un développement afin de gérer et maîtriser cette complexité.

En ce qui concerne la complexité accidentelle, celle-ci est par définition un phénomène que l’on peut éviter, il suffit pour cela de la prévenir. Si elle est la conséquence d’une utilisation inappropriée de langages, méthodes, processus, technologies, et/ou outils, éliminer ce type de complexité revient à mettre en place des artefacts méthodologiques appropriés au domaine d’application et/ou aux différentes préoccupations des acteurs du développement.

 

Organisation de la feuille de route :

Qu’elle soit accidentelle ou essentielle, la complexité des systèmes et des logiciels est donc un enjeu majeur pour notre société. Dans ce contexte, nous avons organisé la feuille de route sur l’ingénierie système et logiciel autour des thèmes suivants :

• la maîtrise de la complexité et de ses nouvelles formes ;
• l’ingénierie système et développement durable ;
• le rapprochement des moyens et de l’objet des développements ;
• au sujet des évolutions technologiques des outils.

io

I a

Pour

Pour découvrir toute la feuille de route Ingénierie Système & Logicielle du Hub Digital Engineering de Systematic, téléchargez-la en un clic ci-dessous !

Pour

Quitter la version mobile