Génie informatiqueLe génie informatique, ou l'ingénierie informatique, est une discipline qui traite de la conception, du développement et de la fabrication de systèmes informatiques, aussi bien d'un point de vue matériels que logiciels. Le terme anglais computer engineering est parfois utilisé dans un sens plus restreint, considérant le génie informatique comme une discipline reliée au génie électrique, et fait alors référence à la conception, au développement et à la fabrication du matériel uniquement.
Engineering design processThe engineering design process, also known as the engineering method, is a common series of steps that engineers use in creating functional products and processes. The process is highly iterative - parts of the process often need to be repeated many times before another can be entered - though the part(s) that get iterated and the number of such cycles in any given project may vary. It is a decision making process (often iterative) in which the basic sciences, mathematics, and engineering sciences are applied to convert resources optimally to meet a stated objective.
Maintenance du logicielvignette|Cycle de vie d'un logiciel La maintenance du logiciel (ou maintenance logicielle) désigne, en génie logiciel, les modifications apportées à un logiciel, après sa mise en œuvre, pour en corriger les fautes, en améliorer l'efficacité ou autres caractéristiques, ou encore adapter celui-ci à un environnement modifié. La norme ISO (ISO/IEC 14764, Software Engineering—Software Life Cycle Processes—Maintenance) décrit en détail les processus de maintenance logicielle.
Requirements engineeringRequirements engineering (RE) is the process of defining, documenting, and maintaining requirements in the engineering design process. It is a common role in systems engineering and software engineering. The first use of the term requirements engineering was probably in 1964 in the conference paper "Maintenance, Maintainability, and System Requirements Engineering", but it did not come into general use until the late 1990s with the publication of an IEEE Computer Society tutorial in March 1997 and the establishment of a conference series on requirements engineering that has evolved into the International Requirements Engineering Conference.
DevopsLe devops est un mouvement en ingénierie informatique et une pratique technique visant à l'unification du développement logiciel (dev) et de l'administration des infrastructures informatiques (ops), notamment l'administration système. Apparu autour de 2007 en Belgique avec Patrick Debois, le mouvement Devops se caractérise principalement par la promotion de l'automatisation et du suivi (monitoring) de toutes les étapes de la création d'un logiciel, depuis le développement, l'intégration, les tests, la livraison jusqu'au déploiement, l'exploitation et la maintenance des infrastructures.
Test d'intégrationDans le monde du développement informatique, L'objectif de chaque phase de test est de détecter les erreurs qui n'ont pas pu être détectées lors de la précédente phase. Pour cela, le test d’intégration a pour cible de détecter les erreurs non détectables par le test unitaire. Le test d’intégration permet également de vérifier l'aspect fonctionnel, les performances et la fiabilité du logiciel. L'intégration fait appel en général à un système de gestion de versions, et éventuellement à des programmes d'installation.
MaintenabilitéLa maintenabilité est, dans le domaine informatique, la capacité pour des composants ou des applications à être maintenus, de manière cohérente et à moindre coût, en état de fonctionnement. Plus généralement, dans l'industrie le terme exprime la capacité d'un système à être simplement et rapidement réparé et ainsi à diminuer les temps et les coûts d'intervention. La maintenabilité d'un système est souvent caractérisée lors de sa conception. Elle se calcule suivant les temps moyen d'intervention et suit une loi log-normale.
Formal specificationIn computer science, formal specifications are mathematically based techniques whose purpose are to help with the implementation of systems and software. They are used to describe a system, to analyze its behavior, and to aid in its design by verifying key properties of interest through rigorous and effective reasoning tools. These specifications are formal in the sense that they have a syntax, their semantics fall within one domain, and they are able to be used to infer useful information.
Conception centrée sur l'utilisateurLa conception centrée sur l'utilisateur ou conception orientée utilisateur (UCD, user-centered design en anglais) est une philosophie et une démarche de conception surtout présente en ergonomie informatique, où les besoins, les attentes et les caractéristiques propres des utilisateurs finaux sont pris en compte à chaque étape du processus de développement d'un produit. La norme ISO 9241-210 qui annule et remplace la norme ISO 13407 définit sept ensembles de pratique de base pour mettre en œuvre le processus de conception centrée sur l'utilisateur.
Gestion de configuration logicielleLa gestion de configuration logicielle est une discipline du génie logiciel ayant pour objet de répondre à la question : quelqu'un a obtenu un résultat. Comment le reproduire ? Le plus souvent, il ne s'agit pas de reproduire à l'identique, mais de reproduire avec des modifications incrémentales. La question est donc de comparer des résultats et d'analyser leurs différences. La gestion de configuration logicielle se révèle comme un outil de communication sophistiqué entre des acteurs indépendants, contribuant à l'édification de systèmes ouverts.