Software development processIn 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.
Prototypage logicielLe prototypage logiciel (ou « software prototyping » en anglais) désigne l'ensemble des activités de création de prototypes pour les logiciels, c'est-à-dire des versions incomplètes du programme en cours de développement. Cette activité est donc assez proche de la création et la validation de prototypes, telle qu'on la pratique dans l'industrie. Ainsi, un prototype permet d'explorer de façon interactive des scénarios d'utilisation du produit pour en valider les orientations.
Programmation orientée objetLa programmation orientée objet (POO), ou programmation par objet, est un paradigme de programmation informatique. Elle consiste en la définition et l'interaction de briques logicielles appelées objets ; un objet représente un concept, une idée ou toute entité du monde physique, comme une voiture, une personne ou encore une page d'un livre. Il possède une structure interne et un comportement, et il sait interagir avec ses pairs.
Prototypevignette|Photographie d'un prototype BMW : la BMW Nazca C2 Dans le domaine de l'industrie et plus généralement de la recherche et développement (R&D), un prototype est selon la définition de l'OCDE , mais il s'agit aussi parfois d'un exemplaire incomplet (et non définitif) de ce que pourra être un produit (éventuellement de type logiciel, ou de type « service »Djellal, F., Gallouj, C., Gallouj, F., Francoz, D., & Jacquin, Y. (2001).
Ingénierie dirigée par les modèlesEn 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.
Méthode d'analyse et de conception d'applications orientées objetLa méthode d'analyse et de conception d'applications orientées objet (dite MACAO) est fondée sur une démarche participative par prototypage incrémental (processus itératif) permettant aux utilisateurs d'intervenir très tôt dans le processus de développement du logiciel. MACAO utilise la notation UML afin de définir la structure du logiciel en termes de classes et de composants ainsi que pour modéliser sa dynamique à l'aide de diagrammes d'interactions ou d'états/transitions.
Développement de logicielLe développement de logiciel consiste à étudier, concevoir, construire, transformer, mettre au point, maintenir et améliorer des logiciels. Ce travail est effectué par les employés d'éditeurs de logiciels, des entreprises de services du numérique (ESN), des travailleurs indépendants (freelance) et des membres de la communauté du logiciel libre. Un logiciel est créé petit à petit par une équipe d'ingénieurs conformément à un cahier des charges établi par un client demandeur ou une équipe interne.
Modèle en cascadeLe modèle en cascade, ou « waterfall » en anglais, est une organisation des activités d'un projet sous forme de phases linéaires et séquentielles, où chaque phase correspond à une spécialisation des tâches et dépend des résultats de la phase précédente. Il comprend les phases d'exigences, de conception, de mise en œuvre et de mise en service. Le modèle en cascade est un cycle de vie de projet issu des industries manufacturières et du secteur de la construction, où une conception préalable est nécessaire, compte tenu des fortes contraintes matérielles et des coûts élevés afférents aux changements de la conception en cours de réalisation.
Object modeling techniqueOMT (en anglais « object modeling technique », c'est-à-dire « technique de modélisation objet ») est une technique de modélisation destinée à la conception et la modélisation pour la programmation orientée objet. Elle a été conçue en 1991 par James Rumbaugh, Michael Blaha, William Lorensen, Frederick Eddy et William Premerlani. Cette technique de représentation graphique fusionnera avec celle de la méthode Booch de Grady Booch, ainsi que celle de OOSE d'Ivar Jacobson pour donner naissance à UML en .
Modélisation d'entrepriseEnterprise modelling is the abstract representation, description and definition of the structure, processes, information and resources of an identifiable business, government body, or other large organization. It deals with the process of understanding an organization and improving its performance through creation and analysis of enterprise models. This includes the modelling of the relevant business domain (usually relatively stable), business processes (usually more volatile), and uses of information technology within the business domain and its processes.
Programmation modulaireEn informatique, la programmation modulaire reprend l'idée de fabriquer un produit (le programme) à partir de composants (les modules). Elle décompose une grosse application en modules, groupes de fonctions, de méthodes et de traitement, pour pouvoir les développer et les améliorer indépendamment, puis les réutiliser dans d'autres applications. Le développement du code des modules peut être attribué à des (groupes de) personnes différentes, qui effectuent leurs tests unitaires indépendamment.
Programmation orientée prototypeLa programmation orientée prototype est une forme de programmation orientée objet sans classe, fondée sur la notion de prototype. Un prototype est un objet à partir duquel on crée de nouveaux objets. Dans le langage de programmation orientée prototype Self, les propriétés d'un objet, qu'elles renvoient à des attributs ou à des méthodes, sont appelés slots ; il n'y a pas la même distinction entre les slots de données et les slots de code qu'on a avec les classes.
Dispatch multipleLe dispatch multiple est une fonctionnalité de certains langages orientés objet ou fonctionnels dans lesquels une fonction ou une méthode peut être spécialisée pour plus d'un de ses paramètres formels. On l'appelle alors multiméthode. La spécialisation d'une multiméthode peut ainsi dépendre du type dynamique de plusieurs de ses paramètres objets, à la différence des langages de programmation orientés objet classiques, dans lesquels la spécialisation ne dépend que du premier paramètre implicite this.
Objet (informatique)En informatique, un objet est un conteneur symbolique et autonome qui contient des informations et des mécanismes concernant un sujet, manipulés dans un programme. Le sujet est souvent quelque chose de tangible appartenant au monde réel. C'est le concept central de la programmation orientée objet (POO). En programmation orientée objet, un objet est créé à partir d'un modèle appelé classe ou prototype, dont il hérite les comportements et les caractéristiques.
Étude de casL’étude de cas est une méthode utilisée dans les études qualitatives en sciences humaines et sociales, en psychologie ou en psychanalyse, mais elle peut être utilisée dans les études pour se pencher sur un cas en particulier. Elle vise l'étude approfondie d'un cas spécifié, qu'il soit une personne, un groupe ou un sujet spécifique. Elle peut être considérée à juste titre comme l’une des plus stimulantes d’entre elles tant par ce qu’elle comporte d’exigences pour le chercheur, que par les défis théoriques et méthodologiques qu’elle pose et enfin, par les connaissances du social qu’elle permet d’élaborer.
Revue systématiquethumb|Ce diagramme illustre ce que font les auteurs d'une revue systématique. Une revue systématique est un travail de collecte, d'évaluation critique et de synthèse des connaissances existantes sur une question donnée. Cette question bien définie est issue de l'étude d'une problématique posée par un commanditaire, un gestionnaire, un praticien, un chercheur... Il s'agit, contrairement à une revue narrative et non systématique de la littérature, de minimiser les biais pouvant être inhérents soit à la matière première (données, connaissances) soit à la conduite de la revue elle-même, afin d'atteindre la plus grande objectivité possible.
RéemploiLe réemploi est, dans le domaine de la prévention des déchets, l'ensemble des systèmes et filières permettant de récupérer des objets avant qu'ils ne soient jetés, afin de leur donner une seconde vie. Il évite ainsi que des biens en fin de vie ne deviennent des déchets. L'archéologie et l'histoire ont montré que le réemploi a existé de tout temps, notamment en architecture, et il n'est pas jugé négatif d'utiliser des déchets dans la construction.
Performances (informatique)En informatique, les performances énoncent les indications chiffrées mesurant les possibilités maximales ou optimales d'un matériel, d'un logiciel, d'un système ou d'un procédé technique pour exécuter une tâche donnée. Selon le contexte, les performances incluent les mesures suivantes : Un faible temps de réponse pour effectuer une tâche donnée Un débit élevé (vitesse d'exécution d'une tâche) L'efficience : faible utilisation des ressources informatiques : processeur, mémoire, stockage, réseau, consommation électrique, etc.
Test (informatique)vignette|Une programmeuse écrivant du code Java avec JUnit. En informatique, un test désigne une procédure de vérification partielle d'un système. Son objectif principal est d'identifier un nombre maximal de comportements problématiques du logiciel. Il permet ainsi, dès lors que les problèmes identifiés seront corrigés, d'en augmenter la qualité. D'une manière plus générale, le test désigne toutes les activités qui consistent à rechercher des informations quant à la qualité du système afin de permettre la prise de décisions.
Méthodes quantitativesLes méthodes quantitatives sont des méthodes de recherche, utilisant des outils d'analyse mathématiques et statistiques, en vue de décrire, d'expliquer et prédire des phénomènes par le biais de données historiques sous forme de variables mesurables. Elles se distinguent ainsi des méthodes dites qualitatives. Le comptage et la mesure sont des méthodes quantitatives banales. Le résultat de la recherche est un nombre ou un ensemble de nombres. On les présente souvent sous forme de tables, de graphiques...