En génie logiciel, l'ingénierie dirigée par les modèles (IDM, ) est un ensemble de pratiques fondées sur le concept de modèle de domaine. Ces pratiques ont pour but d'automatiser la production, la maintenance ou l'utilisation de systèmes logiciels. L'objectif de cette approche est de concentrer les efforts sur le domaine d'application du logiciel plutôt que sur son implémentation. Apparue dans les années 2000, l'ingénierie dirigée par les modèles est un sujet de recherche actif qui utilise de manière intensive les métamodèles et les transformations de modèle. Le développement dirigé par les modèles () est l'application de l'ingénierie dirigée par les modèles au développement logiciel. L'architecture dirigée par les modèles (MDA) désigne une initiative de l'Object Management Group pour mettre au point des standards non-propriétaires pour faciliter le développement dirigé par les modèles. Les années 1990 ont vu se poursuivre l'accroissement exponentiel de la complexité des systèmes informatiques, avec par exemple l'apparition de la problématique des lignes de produits logiciels, visant à minimiser simultanément les coûts de développement et le temps de mise sur le marché de nouveaux logiciels d'une même famille. Comme dans les autres sciences, on s'est de plus en plus appuyé sur la modélisation pour essayer de maîtriser cette complexité, tant pour produire le logiciel (conception) que pour le valider (test). La modélisation, au sens large, est en effet l'utilisation efficace d'une représentation simplifiée d'un aspect de la réalité pour un objectif donné. Loin de se réduire à l'expression d'une solution à un niveau d'abstraction plus élevé que le code, la modélisation en informatique peut être vue comme la séparation des différents besoins fonctionnels et préoccupations extra-fonctionnelles (telles que sécurité, fiabilité, efficacité, performance, ponctualité, flexibilité, etc.) issus des exigences. Réciproquement, la conception du logiciel consiste à fusionner (ou tisser) des solutions à ces différentes préoccupations dans du code.

À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.
Cours associés (14)
CS-311: The software enterprise - from ideas to products
This course teaches the journey taken by software engineering teams from incipient ideas to software products that solve real problems for real people.
CIVIL-127: Programming and software development for engineers
Python programming course to advance students' existing programming skills and help write better software. The course will teach best practices and techniques such as refactoring, debugging, and unit
AR-114: Digital models
Le cours de Modélisation Numérique consiste à apprendre et à manipuler les fonctions de base du logiciel de conception assistée Rhinoceros 3D grâce à l'élaboration d'un modèle simple ainsi qu'à en exp
Afficher plus
Séances de cours associées (25)
Ingénierie du développement: Questionnaire de compte rendu
Couvre le processus de questionnaire de débriefing en ingénierie du développement, en mettant l'accent sur des exemples de questions d'entrevue.
Ingénierie du développement: travail de groupe et sélection de sujets en classe
Couvre le travail de groupe, la sélection des sujets et l'organisation virtuelle pour une collaboration efficace en classe.
Limitation 2 Côtés: Configuration Concave Convexe
Couvre des sujets avancés sur les limites des formes concaves et convexes.
Afficher plus
Publications associées (32)

Design ontology for cognitive thread supporting traceability management in model-based systems engineering

Jinzhi Lu, Yan Yan

Industrial information integration engineering (IIIE) is an interdisciplinary field to facilitate the industrial information integration process. In the age of complex and large-scale systems, model-based systems engineering (MBSE) is widely adopted in ind ...
Elsevier2024

Chat2Code: A Chatbot for Model Specification and Code Generation, The Case of Smart Contracts

Shailesh Mishra

The potential of automatic code generation through Model-Driven Engineering (MDE) frameworks has yet to be realized. Beyond their ability to help software professionals write more accurate, reusable code, MDE frameworks could make programming accessible fo ...
Los Alamitos2023

Advancing efficiency and reliability in thermal analysis of laser powder-bed fusion

Christian Leinenbach, Rafal Wróbel, Thomas Mayer

In laser based powder-bed fusion of metals (PBF-LB/M), parts are fabricated by melting layers of powder using a high-intensity laser beam. During this process, the material is exposed to rapid cooling rates and intense thermal gradients, which are the unde ...
2023
Afficher plus
Concepts associés (7)
Métamodèle
Dans le cadre d'une modélisation, un métamodèle est un modèle dont les instances sont elles-mêmes des modèles. Comme l'indique le préfixe méta-, un métamodèle est une abstraction permettant de décrire des modèles. La métamodélisation désigne au sens large la conception de métamodèles. Les métamodèles peuvent prendre diverses formes et être utilisés dans divers domaines. En informatique, et plus particulièrement en génie logiciel, la notion de métamodèle est centrale à l'ingénierie dirigée par les modèles, un ensemble de pratiques qui ont en commun la création et l'utilisation de modèles pour conceptualiser un domaine d'application.
Domain-specific modeling
Domain-specific modeling (DSM) is a software engineering methodology for designing and developing systems, such as computer software. It involves systematic use of a domain-specific language to represent the various facets of a system. Domain-specific modeling languages tend to support higher-level abstractions than general-purpose modeling languages, so they require less effort and fewer low-level details to specify a given system.
Software development process
In software engineering, a software development process is a process of planning and managing software development. It typically involves dividing software development work into smaller, parallel, or sequential steps or sub-processes to improve design and/or product management. It is also known as a software development life cycle (SDLC). The methodology may include the pre-definition of specific deliverables and artifacts that are created and completed by a project team to develop or maintain an application.
Afficher plus

Graph Chatbot

Chattez avec Graph Search

Posez n’importe quelle question sur les cours, conférences, exercices, recherches, actualités, etc. de l’EPFL ou essayez les exemples de questions ci-dessous.

AVERTISSEMENT : Le chatbot Graph n'est pas programmé pour fournir des réponses explicites ou catégoriques à vos questions. Il transforme plutôt vos questions en demandes API qui sont distribuées aux différents services informatiques officiellement administrés par l'EPFL. Son but est uniquement de collecter et de recommander des références pertinentes à des contenus que vous pouvez explorer pour vous aider à répondre à vos questions.