Un curieux besoin de modèles

Un curieux besoin de modèles

Le code Nous avons introduit à la section précédente un ensemble non exhaustif d’activités qu’il est nécessaire de réaliser pour construire une application informatique. Dans cet ensemble, la réalisation du code n’apparaît que comme une activité parmi d’autres. Cependant, comme nous l’avons indiqué, la réalisation du code reste la finalité. Toutes les autres activités visent soit à faciliter cette réalisation, soit à l’optimiser, soit à permettre son évolution. Le code occupe donc une place particulière dans la construction d’une application informatique, mais laquelle exactement ? Une première certitude est que, pour exécuter une application, il faut la coder. Le code est donc absolument nécessaire à l’exécution des applications. Peut-on dire pour autant que le code soit l’application ? En d’autres termes, peut-on considérer que le code, à lui seul, représente l’intégralité de l’application ? Les questions suivantes permettent de mieux cerner la place du code dans une application informatique : 1. Question. Comment le code peut-il être utilisé pour faciliter la maintenance des applications informatiques ? Réponse. Nous pourrions penser à commenter le code afin de faciliter la maintenance, mais il faudrait alors définir le niveau de détail adéquat. La charte Linux propose, par exemple, de ne pas « surdocumenter » le code, car celui-ci devient vite illisible. Dans le projet Linux, les commentaires sont utilisés pour spécifier des travaux à faire ou des points délicats mais ne sont pas destinés à la maintenance. Nous pouvons donc considérer que le code ne peut pas réellement être utilisé pour faciliter la maintenance. 2. Question. Comment pouvons-nous retrouver les fonctionnalités d’une application en lisant le code ? 

Documentation

Ce constat de différence entre code et application informatique n’est pas nouveau. On s’accorde d’ailleurs aujourd’hui sur un ensemble de documents nécessaires à réaliser pour compléter le code. Le tableau 1.1 recense un sous-ensemble des documents à réaliser lors de la construction d’une application. Ces documents sont échangés entre les clients de l’application et les différents membres de l’équipe de développement. Nous identifions parmi ces derniers l’architecte, dont le rôle est de concevoir les composants principaux de l’application, le développeur, dont le rôle est de développer les composants de l’application, et l’administrateur, dont le rôle est d’installer l’application afin qu’elle puisse être utilisée par l’utilisateur. Insistons à nouveau sur le fait que ces documents ne peuvent être directement intégrés au code, que ce soit sous forme de commentaire ou autre.

Les modèles

Avant de préciser en quoi les modèles sont intéressants pour la construction d’applications informatiques, il est intéressant de préciser la définition du terme modèle. Le dictionnaire de la langue française en ligne TLFI (Trésor de la langue française informatisé) donne les définitions suivantes du mot « modèle » (http://atilf.atilf.fr/tlf.htm) : • Arts et métiers : représentation à petite échelle d’un objet destiné à être reproduit dans des dimensions normales. • Épistémologie : système physique, mathématique ou logique représentant les structures essentielles d’une réalité et capable à son niveau d’en expliquer ou d’en reproduire dynamiquement le fonctionnement. • Cybernétique : système artificiel dont certaines propriétés présentent des analogies avec des propriétés, observées ou inférées, d’un système étudié et dont le comportement est appelé, soit à révéler des comportements de l’original susceptibles de faire l’objet de nouvelles investigations, soit à tester dans quelle mesure les propriétés attribuées à l’original peuvent rendre compte de son comportement manifeste. Dans un contexte informatique, nous proposons la définition suivante, qui synthétise les trois définitions énoncées précédemment : Un modèle contient donc plusieurs informations sur une application informatique. Ces informations ont toutes vocation à faciliter d’une manière ou d’une autre la production du code de l’application. Un modèle peut, entre autres choses, préciser les différentes données manipulées par l’application (vue des données), préciser les différentes fonctionnalités directement offertes aux utilisateurs de l’application (vue des utilisateurs) et préciser les technologies, telles que Java, utilisées pour réaliser l’application (vue technique). En d’autres termes, un modèle est composé de plusieurs vues sur une application. Chacune de ces vues contient certaines informations sur l’application. Ces vues peuvent cibler différents niveaux d’abstraction, et elles doivent être cohérentes.

Formation et coursTélécharger le document complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *