Index of /GestionProjetInfo/Glossaire

Icon  Name                    Description
[PARENTDIR] Parent Directory        
<style>
#contenu h1>* { background-color: rgba(255, 238, 221, 0.8);margin: 0 10px;padding: 0 10px;border: 1px solid #114499;} 
#contenu td { padding:4px; }
</style>
<h1><span>Le glossaire de E. Chenu</span></h1>

<table><tr>
<th>Application concurrente
</th>
<td>
Une application est concurrente lorsqu’elle a plusieurs flux d’exécution en parallèle. 
Les applications distribuées et multithread sont 2 exemples d’applications concurrentes.
</td>
</tr><tr>
<th>Application multithread</th>
<td>
Application dont le flux d’exécution se divise en flux parallèles 
appelés processus légers ou <em lang="en">threads</em> dans l’espace d’adressage d’un processus unique.
</td>
</tr><tr>
<th>Architecture</th>
<td>
L’<b>architecture logicielle</b> décrit d’une manière symbolique 
et schématique les différents composants d’un ou de plusieurs programmes informatiques, 
leurs interrelations et leurs interactions. 
L’architecture logicielle, produite lors de la phase de conception, 
ne décrit pas ce que doit réaliser un programme 
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 ».
</td>
</tr><tr>
<th>Assertion Asynchrone</th>
<td>
Une <b>assertion</b> représente un énoncé considéré ou présenté comme vrai.
L’asynchronisme qualifie deux processus qui ne se déroulent pas au même moment. 
Au sein d’un programme, les appels de méthodes sont faits de façon synchrone, 
c’est-à-dire l’appellent attend le retour de l’appelé pour continuer son exécution. 
En asynchrone, l’appelant continue immédiatement son exécution après un appel. 
L’appelé réalise son traitement de façon indépendante.
</td>
</tr><tr>
<th>Boîte noire</th>
<td>
Envisager un produit uniquement en termes d’entrées et sorties.
</td>
</tr><tr>
<th>Classe</th>
<td>
En programmation orientée objet une classe déclare des propriétés communes 
à un ensemble d'objets. 
La classe déclare des attributs représentant l'état des objets 
et des méthodes représentant leur comportement.
Une classe représente donc une catégorie d'objets. 
Il apparaît aussi comme un moule ou une usine à partir de laquelle 
il est possible de créer des objets. On parle alors d'un objet 
en tant qu'instance d'une classe (création d'un objet ayant les propriétés de la classe).
</td>
</tr><tr>
<th>Conception</th>
<td>
Voir Architecture.
</td>
</tr><tr>
<th>Cohésion</th>
<td>
Cohésion entre classes dans un package, entre services dans une classe : 
« qui se ressemble s’assemble »
</td>
</tr><tr>
<th>Compatibilité</th>
<td>
Facteur de qualité. La compatibilité est la facilité avec laquelle 
des éléments logiciels peuvent être combinés à d’autres.
</td>
</tr><tr>
<th>Composant</th>
<td>
Brique logicielle. Un composant est un élément d’un système, 
d’une application ayant des fonction prédéfinies et est capable, théoriquement , 
de communiquer avec d’autres composants. 
On parle aussi de programmation orientée composant, 
c’est-à-dire une programmation ayant une approche modulaire de l’architecture applicative.
</td>
</tr><tr>
<th>Correction</th>
<td>
Facteur de qualité. La correction est la capacité que possède un produit logiciel 
de mener à bien sa tâche, telle qu’elle a été définie par sa spécification.
</td>
</tr><tr>
<th>Couplage</th>
<td>
Une entité (fonction, module, classe, package, composant) est couplée à une autre 
si elle dépend d’elle.
</td>
</tr><tr>
<th>Couplage faible</th>
<td>
Par opposition au couplage fort. 
Aussi nommé couplage lâche ou léger. 
Désigne une relation faible entre plusieurs entités (classes, composants), 
permettant une grande souplesse de programmation, de mise à jour. 
Ainsi, chaque entité peut être modifiée en limitant l’impact du changement 
au reste de l’application. Le couplage fort, au contraire, tisse un lien puissant 
qui rend l’application plus rigide à toute modification de code.
</td>
</tr><tr>
<th>Couverture de code</th>
<td>
Consiste à s'assurer que le test conduit à exécuter l'ensemble (ou une fraction déterminée) 
des instructions présentes dans le code à tester.
</td>
</tr><tr>
<th>Déploiement</th>
<td>
Action permettant la diffusion d’une application. 
On peut utiliser un installeur ou simplement un téléchargement.
</td>
</tr><tr>
<th>Design-pattern</th>
<td>
Motif de conception ou patron de conception. Concept aidant à résoudre un problème récurrent. 
Il décrit une solution au problème que l’on rencontre.
Il s’agit de procédés de conception, des bonnes pratiques.
</td>
</tr><tr>
<th>Efficacité</th>
<td>
Facteur de qualité. 
L’efficacité est la capacité d’un système logiciel à utiliser 
le minimum de ressources matérielles, que ce soit le temps machine, 
l’espace occupé en mémoire externe et interne, ou la bande passante des moyens de communication
</td>
</tr><tr>
<th>Encapsulation</th>
<td>
L’encapsulation permet de cacher quelque chose dans une autre chose. 
En programmation, l'encapsulation de données est l'idée de cacher l'information.
</td>
</tr><tr>
<th>Extensibilité</th>
<td>
Envisager un produit uniquement en termes d’entrées et sorties.
</td>
</tr><tr>
<th>Encapsulation</th>
<td>
Facteur de qualité. 
L’extensibilité est la facilité d’adaptation des produits logiciels 
aux changements de spécifications.
</td>
</tr><tr>
<th>Facilité d’utilisation</th>
<td>
Facteur de qualité. La facilité d’utilisation est la facilité avec laquelle des personnes présentant des formations et des compétences différentes peuvent apprendre à utiliser les produits logiciels et s’en servir pour résoudre des problèmes.
Elle recouvre également la facilité d’installation, d’opération et de contrôle
</td>
</tr><tr>
<th>Fonctionnalité</th>
<td>
La fonctionnalité est l’étendue des possibilités offertes par un système.
</td>
</tr><tr>
<th>Génie logiciel</th>
<td>
Le terme génie logiciel désigne l'ensemble des méthodes, des techniques 
et outils concourant à la production d'un logiciel, 
au-delà de la seule activité de programmation
</td>
</tr><tr>
<th>Gestion de configuration</th>
<td>
La <b>gestion de configuration</b> consiste à gérer la description technique d'un système (et de ses divers composants), ainsi qu'à gérer l'ensemble des modifications apportées au cours de l'évolution du système. La gestion de configuration est utilisée pour la gestion de systèmes complexes .
La <b>gestion de configuration</b> est avant tout un ensemble de pratiques. Ces pratiques sont au nombre de quatre.
<ul><li> <b>Identification des articles</b> de la configuration
</li><li> <b>Contrôle des changements</b>
</li><li> <b>Enregistrement des états</b> de la configuration
</li><li> <b>Audit et revue</b>
</li></ul>
</td>
</tr><tr>
<th>Instance</th>
<td>
Instance d’une classe = objet. Voir les définitions de classe et objet.
</td>
</tr><tr>
<th>Intégration</th>
<td>
L'intégration a pour but de valider le fait que 
toutes les parties développées indépendamment fonctionnent bien ensemble.
L'<b>intégration</b> est une activité d'un projet durant laquelle 
on vérifie le produit par des tests d'intégration
</tr><tr>
<th>Intégration continue</th>
<td>
L'intégration continue est une technique utilisée en génie logiciel.
Elle consiste à vérifier à chaque modification de code source 
que le résultat des modifications ne produit pas de régression de l'application 
en cours de développement. Bien que le concept existait auparavant, 
l"intégration continue" se réfère généralement a la pratique de l'extreme programming
</td>
</tr><tr>
<th>Itération</th>
<td>
Au sens général, une itération représente des passages dans une boucle de répétition. 
Au sens méthodologique, ce terme est employé pour désigner un passage au travers 
toutes les activités de développement d’un logiciel.
</td>
</tr><tr>
<th>Objet</th>
<td>
Un <b>objet</b> est l'instanciation d'une classe au sens de la programmation orientée objet. 
C’est une variable d’une classe.
</td>
</tr><tr>
<th>Optimisation</th>
<td>
En programmation optimiser le code consiste à le modifier pour rendre le logiciel plus efficace, 
c’est-à dire plus économe en terme de consommation de ressources 
(temps d’exécution, utilisation de la mémoire, ...).</td>
</td>
</tr><tr>
<th>Paradigme de programmation</th>
<td>
Un <b>paradigme de programmation</b> est un style fondamental de programmation informatique 
qui traite de la manière dont les solutions aux problèmes doivent être formulées 
dans un langage de programmation (à comparer à la méthodologie, 
qui est une manière de résoudre des problèmes spécifiques de génie logiciel).
</td>
</tr><tr>
<th>Persistance</th>
<td>
La persistance est un mot employé pour qualifier le fait de permettre 
à une application d’exploiter ses données même après un arrêt ou un crash: 
les données persistent même après l’arrêt de l’application.
</td>
</tr><tr>
<th>Polymorphisme</th>
<td>
En informatique, le <b>polymorphisme</b> est l'idée d'autoriser le même code 
à être utilisé avec différents types, 
ce qui permet des implémentations plus abstraites et générales.
</td>
</tr><tr>
<th>Programmation orientée objet</th>
<td>
Paradigme de programmation informatique qui consiste en la définition 
et l'assemblage de briques logicielles appelées objet; 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.
</td>
</tr><tr>
<th>Ponctualité</th>
<td>
Facteur de qualité. 
La ponctualité est la capacité d’un système logiciel à être livré 
au moment désiré par ses utilisateurs, ou avant.
</td>
</tr><tr>
<th>Portabilité</th>
<td>
Facteur de qualité. 
La portabilité est la facilité avec laquelle des produits logiciels 
peuvent être transférés d’un environnement logiciel ou matériel à l’autre
</td>
</tr><tr>
<th>Processus</th>
<td>
Ensemble d’<b>activités</b> coordonnées et régulées, en partie ordonnées, 
dont le but est de créer un produit
</tr><tr>
<th>Réutilisabilité</th>
<td>
Facteur de qualité. 
La réutilisabilité est la capacité des éléments logiciels à servir 
à la construction de plusieurs applications différentes
</td>
</tr><tr>
<th>Robustesse</th>
<td>
Facteur de qualité. 
La robustesse est la capacité qu’offrent des systèmes logiciels 
à réagir de manière appropriés à la présence de conditions anormales
 </td>
</tr><tr>
<th>Spécification</th>
<td>
C'est l'étape en génie logiciel qui consiste à <b>décrire</b> ce que le logiciel doit faire
</td>
</tr><tr>
<th>Test</th>
<td>
En informatique, un <b>test</b> (anglicisme) désigne une procédure 
de vérification partielle d'un système informatique : 
le but est de s'assurer que le système informatique réagit de la façon prévue 
par ses concepteurs.
</td>
</tr><tr>
<th>Test d’intégration</th>
<td>
Test qui vérifie que toutes les parties développées indépendamment fonctionnent bien ensemble.
</td>
</tr><tr>
<th>Test unitaire</th>
<td>
Le <b>test unitaire</b> est un procédé permettant de s'assurer 
du fonctionnement correct d'une partie déterminée d'un logiciel ou d'une portion d'un programme.
Il s'agit pour le programmeur de tester un module, indépendamment du reste du programme, 
ceci afin de s'assurer qu'il répond aux spécifications fonctionnelles et 
qu'il fonctionne correctement en toutes circonstances.
</td>
</tr></table>

 


<p class="signature" style="text-align:right;font-size:80%;font-style:italic;"> Ce contenu est largement inspiré 
du <a href="http://manu40k.free.fr/CoursGenieLogiciel.pdf">support de cours de E. Chenu</a>
pour l'ESISAR. </p>