Application (informatique)Une application, un applicatif ou encore une appli, une app est, dans le domaine informatique, un programme (ou un ensemble logiciel) directement utilisé pour réaliser une tâche, ou un ensemble de tâches élémentaires d'un même domaine ou formant un tout. Typiquement, un éditeur de texte, un navigateur web, un lecteur multimédia, un jeu vidéo, sont des applications. Les applications s'exécutent en utilisant les services du système d'exploitation pour utiliser les ressources matérielles.
Architecture logicielleL’architecture logicielle décrit d’une manière symbolique et schématique les différents éléments d’un ou de plusieurs systèmes informatiques, leurs interrelations et leurs interactions. Contrairement aux spécifications produites par l’analyse fonctionnelle, le modèle d'architecture, produit lors de la phase de conception, ne décrit pas ce que doit réaliser un système informatique mais plutôt comment il doit être conçu de manière à répondre aux spécifications. L’analyse décrit le « quoi faire » alors que l’architecture décrit le « comment le faire ».
Application webEn informatique, une application web (aussi appelée web application, de l'anglais et français) est une application manipulable directement en ligne grâce à un navigateur web et qui ne nécessite donc pas d'installation sur les machines clientes, contrairement aux applications mobiles. De la même manière que les sites web, une application web est généralement installée sur un serveur et se manipule en actionnant des widgets à l'aide d'un navigateur web, via un réseau informatique (Internet, intranet, réseau local, etc.
Évolution (biologie)En biologie, l’évolution est la transformation du monde vivant au cours du temps, qui se manifeste par des changements phénotypiques des organismes à travers les générations. Ces changements généralement graduels (mais pouvant être rapides ou lents) peuvent aboutir, à partir d’une seule espèce (dite « espèce-mère »), à la formation de nouvelles variétés périphériques devenant progressivement des « espèces-filles ». Inversement, la fusion de deux lignées par hybridation ou par symbiogenèse entre deux populations d'espèces différentes peuvent produire une troisième espèce nouvelle.
Rich Internet applicationUne rich Internet application (RIA), ou application Internet riche, est une application Web qui offre des caractéristiques similaires aux logiciels traditionnels installés sur un ordinateur. La dimension interactive et la vitesse d'exécution sont particulièrement soignées dans ces applications Web. Une RIA peut être : exécutée sur un navigateur Web. Aucune installation n'est requise ; exécutée localement dans un environnement sécurisé appelé sandbox (bac à sable).
Logicielthumb|Démarche de construction d'un logiciel. En informatique, un logiciel est un ensemble de séquences d’instructions interprétables par une machine et d’un jeu de données nécessaires à ces opérations. Le logiciel détermine donc les tâches qui peuvent être effectuées par la machine, ordonne son fonctionnement et lui procure ainsi son utilité fonctionnelle. Les séquences d’instructions appelées programmes ainsi que les données du logiciel sont ordinairement structurées en fichiers.
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.
Environnement de développementEn programmation informatique, un environnement de développement est un ensemble d'outils qui permet d'augmenter la productivité des programmeurs qui développent des logiciels. Il comporte un éditeur de texte destiné à la programmation, des fonctions qui permettent, par pression sur un bouton, de démarrer le compilateur ou l'éditeur de liens ainsi qu'un débogueur en ligne, qui permet d'exécuter ligne par ligne le programme en cours de construction. Certains environnements sont dédiés à un langage de programmation en particulier.
Utilisateur finalthumb|Infirmières utilisant un logiciel informatique aux États-Unis en 1987. En informatique, dans le cadre du développement d'un logiciel, lutilisateur final est la personne qui va utiliser ledit logiciel. Les développeurs peuvent avoir de la peine à comprendre les besoins de cet utilisateur.
Mise en œuvreLa mise en œuvre est le fait de mettre en place un projet. En ingénierie et plus particulièrement en informatique, la mise en œuvre désigne la création d’un produit fini à partir d’un document de conception, d’un document de spécification, voire directement depuis une version originelle ou un cahier des charges. L’utilisation de l’anglicisme « implémentation », de l'anglais to implement, est courante (et acceptée).
Search-based software engineeringSearch-based software engineering (SBSE) applies metaheuristic search techniques such as genetic algorithms, simulated annealing and tabu search to software engineering problems. Many activities in software engineering can be stated as optimization problems. Optimization techniques of operations research such as linear programming or dynamic programming are often impractical for large scale software engineering problems because of their computational complexity or their assumptions on the problem structure.
Architecturevignette|upright=1.2|La cathédrale Saint-Pierre de Beauvais, , toute en pierre de taille, est l’exemple le plus aérien et dématérialisé de l'architecture gothique qui atteint là ses limites techniques. vignette|upright=1.2|La coupole du Panthéon, construit dans l'Antiquité romaine au début du , est restée de loin la plus large coupole du monde durant de nombreux siècles. Elle ne sera égalée qu'au par le dôme de la cathédrale de Florence qui marque de ce fait le début de la Renaissance, pour n'être dépassée qu'à partir du par les dômes contemporains.
Génie logicielLe génie logiciel, l'ingénierie logicielle ou l'ingénierie du logiciel (en software engineering) est une science de génie industriel qui étudie les méthodes de travail et les bonnes pratiques des ingénieurs qui développent des logiciels. Le génie logiciel s'intéresse en particulier aux procédures systématiques qui permettent d'arriver à ce que des logiciels de grande taille correspondent aux attentes du client, soient fiables, aient un coût d'entretien réduit et de bonnes performances tout en respectant les délais et les coûts de construction.
Programmation fonctionnelleLa programmation fonctionnelle est un paradigme de programmation de type déclaratif qui considère le calcul en tant qu'évaluation de fonctions mathématiques. Comme le changement d'état et la mutation des données ne peuvent pas être représentés par des évaluations de fonctions la programmation fonctionnelle ne les admet pas, au contraire elle met en avant l'application des fonctions, contrairement au modèle de programmation impérative qui met en avant les changements d'état.
Développement par l'utilisateur finalLe développement par l'utilisateur final ou informatique de l'utilisateur fait référence aux activités et aux outils permettant aux utilisateurs d'utiliser l'informatique, et notamment les outils de l'informatique de l'utilisateur, afin de créer ou de modifier des artéfacts de logiciel (description de comportements automatisés), ainsi que des objets de données sans connaissance significative des langages de programmation.
InteropérabilitéL’interopérabilité est la capacité que possède un produit ou un système, dont les interfaces sont intégralement connues, à fonctionner avec d’autres produits ou systèmes existants ou futurs et ce sans restriction d’accès ou de mise en œuvre. Il convient de distinguer « interopérabilité » et « compatibilité ». Pour être simple, on peut dire que la compatibilité est une notion verticale qui fait qu'un outil peut fonctionner dans un environnement donné en respectant toutes les caractéristiques et l'interopérabilité est une notion transversale qui permet à divers outils de pouvoir communiquer - quand on sait pourquoi, et comment, ils peuvent fonctionner ensemble.
Intelligence ambiante[[Image:Evolution computer 1960-2010-fr.jpg|thumb|500px|right|L'évolution des ordinateurs : la course à la miniaturisation et à la diffusion dans le milieu ambiant. Parce que la technologie permet de fabriquer des ordinateurs minuscules et omniprésents (nano-informatique), elle ouvre à presque tous les objets de la vie courante, la capacité à déclencher un échange spontané d'informations, sans interaction avec leur utilisateur.
Méthode formelle (informatique)En informatique, les méthodes formelles sont des techniques permettant de raisonner rigoureusement, à l'aide de logique mathématique, sur un programme informatique ou du matériel électronique numérique, afin de démontrer leur validité par rapport à une certaine spécification. Elles reposent sur les sémantiques des programmes, c'est-à-dire sur des descriptions mathématiques formelles du sens d'un programme donné par son code source (ou, parfois, son code objet).
Serveur d'applicationsvignette|Logo symbolisant une application serveur Un serveur d'applications est un logiciel d'infrastructure offrant un contexte d'exécution pour des composants applicatifs. Le terme est apparu dans le domaine des applications web. Au sens strict les composants hébergés par le serveur d'applications ne sont pas de simples procédures ou scripts mais de réels composants logiciels conformes à un modèle de composants (EJB, COM, Fractal, etc.). Les clients des serveurs d'application sont : des programmes autonomes (standalone application), des applets ou d'autres composants.