Développement agile de systèmes

Développement agile de systèmes avec le Model-Based Design

Concevoir des systèmes intégrant du logiciel en suivant des processus de développement rapides et continus avec Simulink

Les organisations parviennent à répondre aux besoins d'un marché qui évolue rapidement et à produire des designs de systèmes de plus en plus complexes en adoptant le Model-Based Design au lieu des méthodes traditionnelles. Le Model-Based Design étend les principes agiles au développement de systèmes comprenant des composants physiques ainsi que du logiciel. Le Model-Based Design est applicable à l'ensemble du cycle de développement : la capture des exigences, l'architecture du système et le design des composants, jusqu'à l'implémentation, la vérification, le test et le déploiement. Les simulations de systèmes multi-domaines permettent d’accélérer le design et facilitent les interactions avec le client pour que vous puissiez vous adapter rapidement à l’évolution des exigences. La génération automatique de code produit du logiciel fonctionnel que vous pouvez immédiatement déployer et tester sur le hardware cible.

Simulink® s'intègre à Jenkins™, Git™, GitHub® et à d'autres outils de développement agile, et vous permet d’effectuer les opérations suivantes :

  • Utiliser des modèles au lieu de documents pour que les équipes puissent collaborer et communiquer avec les clients
  • Développer des systèmes fonctionnels en simulant des modèles élaborés de manière incrémentale
  • Intégrer votre développement à des processus d'intégration, de compilation et de test continus 
  • Mettre le développement à l'échelle avec une combinaison de ressources sur PC, sur site et dans le cloud

Le développement agile de systèmes avec le Model-Based Design se base sur la simulation et la génération de code pour produire de manière incrémentale des artefacts, des études et des évaluations de design et de tests.

Favoriser la collaboration avec les modèles

Contrairement aux processus centrés sur les documents, le Model-Based Design vous permet d'utiliser des modèles pour partitionner votre design de système. La subdivision du modèle en composants facilite le développement, la collaboration et la réutilisation par des équipes multi-domaines et travaillant en parallèle. Rassemblez les équipes de différentes disciplines et leurs designs en intégrant tous les composants dans une seule simulation de niveau système avec Simulink, même si les composants sont modélisés dans des outils et à des niveaux de fidélité différents. Générez et partagez automatiquement la documentation et les vues web de vos modèles et simulations Simulink pour les audits et les revues.

Collaboration

Évaluation anticipée de la faisabilité du design

Évaluer la faisabilité du design avec la simulation, la vérification continue et la validation

Simulez votre système très tôt et souvent, avant le déploiement sur le hardware, pour vous assurer de la faisabilité du design. Explorez et évaluez des idées et des scénarios d'implémentation sans écrire de code. Vérifiez votre design grâce au développement incrémental, détectez les erreurs de design cachées et assurez la conformité avec les normes de sécurité. Vérifiez que votre système respecte les exigences fonctionnelles avec du prototypage rapide et des simulations Hardware-in-the-Loop (HIL)


Répondre rapidement aux changements avec l'élaboration incrémentale du modèle et la génération automatique de code

Réagissez rapidement aux changements dans les exigences en générant automatiquement du code de production à partir des évolutions des modèles. Utilisez des projets pour organiser votre travail et faciliter l'intégration avec les outils de contrôle de version et de gestion de configuration. Publiez les modifications dans un dépôt tel que Git pour déclencher automatiquement l'exécution de tests complets de conformité du code, l'analyse statique du code  et des tests d'intégration sur un serveur d'intégration continue Jenkins (CI).

Adaptation rapide

Collaboration avec le client

Collaborer plus facilement avec le client grâce à des modèles et simulations partageables

Comblez le fossé entre les exigences du client et l'implémentation du design en utilisant des modèles Simulink comme spécifications exécutables. Validez les exigences en simulant un prototype du système, explorez les scénarios et partagez l'évolution des modèles et des résultats avec le client avant et pendant le cycle de développement.


Mettre à l'échelle la performance et la productivité avec des ordinateurs, des clusters et le cloud

Développez un prototype sur votre ordinateur, puis mettez-le à l'échelle sur un cluster de calcul pour tirer parti des ressources hardware de votre organisation sans quitter l'environnement desktop de MATLAB® et Simulink. Pour les tâches intensives en calculs, par exemple les simulations de Monte Carlo et l'optimisation du design, exécutez des simulations en parallèle sur votre ordinateur multicœurs, un cluster de calcul, ou sur le cloud.


« Avec le Model-Based Design, la productivité de nos développeurs est facilement multipliée par dix. La simulation et la génération de code nous permet de nous adapter rapidement aux changements et d'éliminer le risque d'erreur humaine dans le code. En général, nos algorithmes fonctionnent dès la première exécution. Nous ne perdons plus de temps à déboguer le code, ce qui constituait une grande partie du cycle de développement. »

« En utilisant les outils MathWorks pour le Model-Based Design et leurs fonctionnalités de génération de code de production, nous avons gagné en agilité et pouvons réagir rapidement aux futurs défis logiciels techniques. »