Systems Modeling Language - SysML en abrégé - est un langage de modélisation spécifique au domaine de l'ingénierie système. Il permet la spécification, l'analyse, la conception, la vérification et la validation de nombreux systèmes et systèmes-de-systèmes. À l'origine, SysML a été développé dans le cadre d'un projet de spécification open source, et inclut une licence open source pour sa distribution et son utilisation. SysML se définit comme une extension d'un sous-ensemble d'UML (Unified Modeling Language) via l'utilisation du mécanisme de profil défini par UML.
SysML offre aux ingénieurs systèmes plusieurs améliorations notables par rapport à UML, qui a tendance à être centré sur le logiciel. Ces améliorations sont entre autres que :
SysML réutilise sept des treize diagrammes d'UML 2; Il ajoute deux diagrammes spécifiques (Diagrammes de Requirements et diagrammes Paramétriques), et les tableaux d'allocations, qui peuvent être dynamiquement dérivées des diagrammes SysML. Un tableau effectuant une comparaison des diagrammes SysML et UML 2 est disponible dans la FAQ SysML.
Les avantages de SysML sur UML pour l'ingénierie système devient évident en utilisant un exemple concret. Prenons l'exemple de la modélisation d'un système automobile: Avec SysML, il est possible d'utiliser les diagrammes de Requirements pour capturer efficacement les besoins fonctionnels, de performances et d'interface, alors qu'UML se limite à offrir des diagrammes de Cas d'utilisation pour définir les requirements de haut niveau.
Avec SysML, il est possible d'utiliser des diagrammes paramétriques pour définir précisément la performance et les contraintes mécaniques telles que l'accélération maximum, la capacité en air conditionné, et l'ingénierie acoustique/la gestion du bruit dans l'habitacle. UML ne fournit aucun mécanisme aussi direct pour capturer les informations essentielles relatives à la performance et à la mécanique.
Pour le reste du système automobile, l'extension SysML permet d'utiliser des versions étendues des diagrammes d'activité et des diagrammes d'état d'UML pour spécifier (par exemple) la logique de contrôle du logiciel embarqué dans l'ordinateur de bord de l'automobile. Et d'autres diagrammes structurels et comportementaux de SysML peuvent aussi être utilisés pour modéliser les usines qui construisent ces automobiles.