Cours Merise

Formation Merise avancé : Le modèle relationnel MLD


Télécharger Formation Merise avancé : Le modèle relationnel MLD

★★★★★★★★★★3.5 étoiles sur 5 basé sur 1 votes.
Votez ce document:

Télécharger aussi :


CHAPITRE III LE NIVEAU LOGIQUE

 

Changez de chanson quand vous changez de montagne.

(Proverbe chinois)

Les fonctions et les concepts principaux sont définis (niveau conceptuel). L'entreprise est organisée sous forme de postes de travail et de sites.

L'objectif du niveau logique est la définition des moyens informatiques à disposition des postes de travail (utilisateurs) afin d'effectuer les opérations organisées. Cette définition passe par la description de :

n  l'aspect externe de ces moyens informatiques sous forme de masques d'écran et de leur succession.

n  les actions de ces moyens informatiques sur la structure logique des données et, pour cela,

n  la structure logique des données (MLD) indépendamment de tout choix de matériel ou de logiciel de développement informatique.

Le niveau logique représente le dernier niveau validé par l'utilisateur final (sauf si celui-ci réalise la programmation). Il comprend une vue de utilisateur de l'informatique (vue externe de l'informatique) et une vue plus spécifique (vue interne).

Le modèle logique de données (MLD) décrit les structures de données indépendamment de la gestion physique des bases de données. Il est une étape intermédiaire, intellectuellement très satisfaisante, vers le modèle physique de données. Si celui-ci peut être construit, le MLD peut être sauté.

Un premier MLD se déduit d'un MOD (Modèle Organisationnel de Données). Il est ensuite optimisé ou modifié suivant le choix de l'utilisateur pour accélérer certains traitements effectués par les outils informatiques. Le modèle logique de traitement décrit les moyens informatiques, les outils de consultation et d'écriture informatique. Un outil logiciel "utilisateur" permet soit la lecture, soit l'écriture d'informations dans la mémoire (les enregistrements du modèle logique de données) de l'ordinateur ou les deux (écriture et lecture). On distingue outil transactionnel ou en traitement immédiat et outil de traitement différé. Définir un outil informatique, c'est :

n  dans le cas d'outils transactionnels, définir la liste des enchaînements "question réponse", ce qui est affiché à l'écran et ce que l'utilisateur peut frapper au clavier (Modèle logique de traitement).

n  dans le cas d'outil de traitement différé, déterminer les fonctions de tri, de calcul, de recherche et leurs conditions d'enclenchement nécessaires au déroulement de l'outil.

C'est aussi, dans les deux cas, indiquer quelles sont les données ou informations lues et écrites dans le modèle logique de données à chaque étape (spécification interne).

Exemple d'outil informatique transactionnel : outil d'interrogation des abonnés téléphoniques. Cet outil est décrit par une succession d'étapes (le Modèle Logique de Traitement). La première étape concerne la saisie du Nom, du prénom de l'abonné et la deuxième affiche son numéro de téléphone, s'il existe.

Pour chaque outil transactionnel un MLT sera construit et les informations de chaque étape analysées.

Exemple d'outil de traitement différé : les factures sont émises toutes les décades. Un programme s'enclenchera donc le 10, le 20 et le 30 de chaque mois pour imprimer toutes les factures.

Les applications des outils de traitement différé ou par lot sont les traitements enclenchés par un temporisateur ou les traitements nécessaires dus aux "performances" des machines. Les factures sont émises toutes les décades. Mais, comme le calcul des factures avec TVA dure par exemple plus de 4 heures, le calcul des lignes de factures TTC se fera tous les jours et l'impression toutes les décades. Cela donnera lieu à deux outils de traitement différé, le calcul des lignes de facture et le calcul et l'impression des factures.

Le modèle logique de communication concerne surtout les outils de traitement différé. Certaines données d'un MLD correspondent à des données d'un autre MLD. Quand ces données peuvent être dupliquées automatiquement, en différé, sans l'aide de l'utilisateur, des outils peuvent effectuer ce transfert de données d'une base à une autre. Dans certains cas spécifiques, comme la réservation de vols aériens, cela concerne les outils fonctionnant "en temps réel" demandant une lecture ou une écriture instantanée sur un site de données différent du poste de travail. Ce MLC est un sous-ensemble du MOC.

1 LE MODELE LOGIQUE DE DONNEES, un exercice intellectuel.

Le modèle logique de données est un passage du MOD vers un système informatique de stockage des informations dans une base de données (Modèle physique de données).

Il comprend des enregistrements d'informations et des chemins d'accès aux informations.

Tous les individus et toutes les relations d'un MOD contenant des informations se transforment en enregistrement. Toutes les relations se transforment en deux, trois ou N chemins. Une relation contenant des informations se transforme donc en un enregistrement et des chemins.

La construction des enregistrements et des chemins d'accès aux informations est indépendante du futur logiciel de gestion des données. Cependant, la connaissance de ce logiciel, appelé SGBD pour Système de Gestion de Base de Données, accélère la construction des fichiers finals. Si le SGBD est connu, passez directement au niveau physique des données.

1.1 Enregistrement.

Un enregistrement est l'unité de données du niveau logique.

Les occurrences d'enregistrement mémorisent toutes les occurrences d'information d'individu ou de relation et des occurrences de pattes, de cardinalité maximale égale à un, désirées par l'utilisateur.

 

Les informations contenues dans les individus et les relations sont mémorisées dans les enregistrements. Une occurrence d'enregistrement, un enregistrement élémentaire, est identifié par une occurrence d'information particulière déclarée comme clé de l'enregistrement. Une occurrence de clé d'enregistrement identifie une occurrence d'enregistrement. Un enregistrement est "identifié" par une clé. Celle-ci peut être l'identifiant de l'individu d'origine dans le cas d'enregistrement issu d'individu. Elle peut être aussi la composition de clés d'enregistrement ou la composition de clé(s) et d'un numéro d'ordre.

Un enregistrement est représenté sous la forme d'un rectangle, la clé de l'enregistrement est soulignée pour indiquer sa spécificité.

Les numéros de fils ou de père sont des informations clés d'enregistrement.

Tout   ce   qui   contient   une   ou   des   informations   est   transformé   en

enregistrement. Donc, tout individu se transforme en enregistrement,

 

et toute relation porteuse d'information(s) se transforme en enregistrement.

 

1.2 Chemin

Un chemin permet la lecture d'informations à partir d'autres informations situées dans les enregistrements.

Un chemin est orienté. A partir d'une occurrence d'information, le chemin conduit à une ou N occurrence(s) d'information. Par extension, le chemin d'un enregistrement vers un autre est le chemin de sa clé vers la clé du second.

N

 

1

Un chemin peut ne pas exister pour toutes les occurrences d'information de départ. Nous retrouvons les cardinalités minimum et maximum. Une patte de relation est mémorisée par un chemin. Un chemin permet donc de mémoriser les liaisons telles que Individu1-Relation1-Individu2 lisibles sur un modèle conceptuel ou organisationnel de données.

Deux chemins sont implicites et ne seront plus pris en compte par la suite : le chemin de la clé de l'enregistrement vers les informations de l'enregistrement et les chemins des informations d'un enregistrement vers sa clé.

1    - Le chemin de la clé d'un enregistrement vers une information de ce même enregistrement est implicite.

Exemple : le chemin du numéro de client vers son adresse de livraison est implicite. Si le "numéro de client", clé de l'enregistrement client est connu, l'adresse de livraison de ce client est connue. La clé de l'enregistrement donne accès à toutes les occurrences d'information de l'enregistrement.

2    - D'autres chemins, qui permettent de remonter des occurrences d'information vers l'occurrence de l'enregistrement, peuvent être explicités par enregistrement.

Exemple : à partir du nom du client, de son prénom et de son adresse de livraison, je veux être capable de retrouver le bon client et son numéro, sa clé.

 

1.3 Construction du Modèle Logique de Données.

Le passage du MOD au MLD se fait en fonction de règles. Celles-ci examinent les cardinalités des pattes, le nombre de pattes d'une relation et l'existence éventuelle d'informations dans la relation.

1.3.1 Cas de la relation à patte 1,1

La relation se transforme en deux chemins dont un peut être supprimé en cas de redondance d'information. C'est le cas du fils et de son père. Le fils n'a qu'un père et le père peut avoir de 0 à N fils :

 

Les deux individus se transforment en deux enregistrements dont les clés sont les identifiants des individus père et fils, soit le numéro de père et le numéro de fils.

La relation donne naissance à deux chemins : le premier permet l'accès du fils à un père et le deuxième d'un père à tous ses fils.

 

La migration du numéro de père dans l'enregistrement fils supprime le premier chemin. Seul reste le chemin du père vers le ou les fils.

 

Le chemin restant est représenté par une flèche pour différencier le départ (numéro du père) de l'arrivée (numéro du fils).

 

Cette flèche est dans le sens inverse de celle représentée sur le modèle de données.

 

1.3.2 Relation binaire à pattes X,N - X,N non porteuse d'information

Une relation binaire X,N X,N (X est égal à 0 ou 1) ne comprenant pas d'information se transforme en 2 chemins à N informations arrivées. Nous retrouvons le même cas que le précédent. Comme les chemins ont N arrivées, la migration d'une information dans un enregistrement n'est pas possible.



1.3.3 Relation binaire à pattes X,N X,N porteuse d'informations

Une relation binaire X,N X,N comprenant des informations se transforme en 3 chemins et un enregistrement.

Deux individus et une relation porteuse d'informations se transforment en 3 enregistrements et 3 chemins :

n  identifiant de l'individu 1 vers identifiant de l'individu 2,

n  la réciproque, identifiant 2 vers identifiant 1 et

n  le chemin des deux identifiants vers les informations de la relation.

 

Prenons l'exemple suivant : un compte d'une société a d'autres comptes de liaison ou de consolidation correspondant à plusieurs filiales. Le compte client no 411-412 correspond chez ma filiale Capone au compte fournisseur 401-512. La filiale Capone est pour moi le client 412 et je suis chez elle le fournisseur 512.

 

Pour passer au niveau logique, les deux individus "compte" et "filiale" dont les identifiants sont "numéro de compte" et "numéro de filiale" deviennent deux enregistrements "compte" et "filiale" de clés "numéro de compte" et "numéro de filiale". La relation "lier", porteuse d'informations, se transforme en un enregistrement dont la clé peut être appelée "clé enregistrement lier".

COMPTE

numéro compte

 

FILIALE

numéro filiale

 

LIER

Clé enregistrement lier numéro compte liaison

 

La relation "lier" 0,N 0,N porteuse d'informations se transforme en trois chemins.

n  Le premier chemin permet d'obtenir toutes les filiales concernées par un compte donné.

n  Le deuxième obtient tous les comptes liés à une filiale donnée.

n  Le troisième chemin permet d'obtenir le numéro de compte de la filiale à partir d'un numéro de compte et d'un numéro de filiale. Un chemin permet d'accéder à une ou N informations (arrivée) à partir de une ou N informations (de départ).

 

1.3.4 Relations non binaires

Le cas des relations non binaires complique horriblement le sujet. Ainsi, une relation ternaire - à trois pattes - entraîne la création de :

n  3 chemins partant de chaque individu vers les deux autres individus via la relation, plus

n  les 6 chemins de chaque individu vers un seul des deux autres et,

n  du chemin des trois individus vers l'information de la relation, quand elle existe.

Soit, au total, 10 chemins possibles à partir d'une relation ternaire ! Tous ces cas entraîneront la création d'un enregistrement provenant de la relation. L'identification des chemins sert à l'optimisation : quels seront les chemins empruntés ?

1.3.5 Construction de la clé

Les clés d'enregistrement, provenant d'individu ou de relation, peuvent être la composition de clés d'enregistrement des individus originels ou la composition de clés et d'un numéro d'ordre.

Clé composée de clés

La relation "concerner", devenue individu du fait de la "patte optionnelle" avec la facture, est identifiable par la commande et le produit.

 

L'individu "ligne de commande" se transforme en enregistrement dont la clé peut être la composition du numéro de commande et du numéro de produit.

 

LIGNE DE COMMANDE

numéro de commande * numéro de produit

 

La clé de l'enregistrement ligne de commande est la composition ou la série du numéro de commande et du numéro de produit. Si le numéro de commande est égal à 38767 et le numéro de produit à 045, le numéro de ligne de commande est égal à 38767 045.

Noter les "trous éventuels" sert au modèle logique.

Exemple : document et signature, mais avec la variante que les "signatures anonymes", les croix apposées existent. Sur un document, tel rôle (le jugé) est reconnu, mais le nom de la personne n'est pas connu, la personne n'a pas été identifiée. Le modèle de départ est le suivant :

 

Supposons que l'individu RESPONSABILITE provenant des relations Signer et Anonyme devienne un enregistrement. La clé de l'enregistrement "responsabilité" peut être composée de clés (numéro document-numéro de personne-numéro rôle). Cette clé peut avoir un numéro de personne inexistant ou vide. Le numéro de personne est un "trou" dans la clé (numéro document, numéro de personne, numéro rôle). Pourtant la composition des deux ou des trois clés fonctionne comme clé de la responsabilité. Ce concept est important quand on passera au modèle physique de données. Certains systèmes de gestion des données n'acceptent pas de valeur vide dans la clé.

 

RESPONSABILITE

code document, code personne, code rôle

 

Clé d'enregistrement provenant de relation porteuse d'information.

Une deuxième manière de représenter la migration est de transformer en 3 enregistrements les deux individus et la relation. La clé de l'enregistrement provenant de la relation est la composition des identifiants des deux individus. La construction de cette clé mémorise le chemin des deux individus vers la relation.

Exemple précédent : si la clé de l'enregistrement "lier" est la composition de "numéro de compte" et "numéro de filiale", le troisième chemin disparaît.

Clé composée de clé et d'un numéro d'ordre

Dans certains cas, la création d'un numéro d'ordre (premier, deuxième, troisième ) permet de créer une clé composée et supprime un chemin.

Exemple   :  l'échelle  est  composée  de  N  barreaux.  Les  individus  sont

"barreaux" et "échelle".

 

Dans le passage au modèle logique, les deux individus "barreau" et "échelle" deviennent des enregistrements "barreau" et "échelle" et la relation génère deux chemins provenant des deux pattes.

 

La clé de l'enregistrement barreau, "référence barreau" est choisie comme composition de l'information "référence de l'échelle" et du "numéro du barreau dans l'échelle". Choisir cette composition dispense du chemin barreau vers échelle. Il suffira de lire une partie de la clé du barreau pour connaître l'échelle. Un seul chemin est déclaré, le chemin de la référence de l'échelle vers les N barreaux de l'échelle.

 

Deuxième exemple de numéro d'ordre : l'individu location provenant de la relation identifié par "numéro de contrat" et "numéro d'ordre de la voiture louée". La voiture A1 aura la location 1 la première semaine, la voiture A2 aura la location 2 la deuxième semaine et la voiture A1 aura la location 3 la troisième semaine.

1.4 Optimisation

Le passage des MOD au MLD peut être généré suivant les règles précédentes, puis modifié "manuellement" afin d'optimiser traitements et données. Les moyens d'optimiser un modèle logique de données sont la suppression ou la redondance de chemin ou la duplication d'informations (migration d'identifiants ou la redondance d'informations).

1.4.1 Suppression de chemin.

Des chemins provenant de pattes "conceptuelles" sont supprimés si l'utilisateur ne désire pas les emprunter.

Exemple : la commande ne concerne qu'une seule devise. La liste des commandes par devise ou le chemin du "code devise" vers le "numéro de commande" n'intéresse pas l'utilisateur, il est supprimé.

 

1.4.2 Redondance de chemin

Plusieurs chemins se suivant donnent naissance à un nouveau chemin qui, par expérience de l'utilisateur, sera souvent utilisé.

Exemple : le véhicule a un propriétaire qui peut être une personne.

 

Le passage au modèle logique génère 3 enregistrements et 4 chemins issus des 2 relations.

 

Si le véhicule et ses caractéristiques sont consultés, le nom et le prénom du propriétaire seront consultés. Un chemin est créé partant de l'information "référence du véhicule" pour aller vers l'information "référence de la personne". Si l'information est unique, celle-ci peut migrer, être écrite plusieurs fois pour faciliter et accélérer certains traitements.

Une redondance d'informations est créée en mémoire pour limiter les chemins successifs à parcourir.

 

1.4.3 Migration ou redondance d'informations.

Migration et redondance sont deux manières de dupliquer les informations. Une clé migre, un résultat de calcul et une information différente d'une clé sont redondés. Migration de clé.

Nous l'avons déjà rencontrée : c'est le cas de la migration du numéro de père dans l'enregistrement fils pour supprimer le chemin du numéro de fils vers le numéro de père.

Redondance des résultats de calcul.

Deux cas se présentent, un calcul issu d'une équation telle que montant TTC = montant HT (1+TVA) ou un calcul avec comptage, ristourne accordée en fonction du nombre de commandes. Dans ce deuxième cas, faut-il gérer un compteur et, si oui, quand doit-il être utilisé ? Ce compteur peut être géré dans le modèle de données et mis à jour pour chaque incrément. Le choix de gérer ou non ce compteur revient en premier lieu à l'utilisateur. Calcul issu d'une équation : le calcul du montant d'une facture avec TVA fait appel au modèle suivant. La facture concerne un à N produits (lignes de facture). Chaque produit est assujetti à un régime de TVA.



 

Les trois informations résultats de règles de calcul peuvent être "placés" dans le modèle logique de données.

 

Trois règles correspondent à ce calcul. La première calcule le "montant hors taxe de la ligne de facture" en multipliant le prix unitaire hors taxe par la quantité facturée. La deuxième calcule le "montant TVA incluse" en utilisant le taux de TVA applicable au produit. La troisième calcule le "montant avec TVA" de la facture.

 

Une autre redondance ou une autre règle de calcul aurait pu être choisie ; le prix unitaire par produit avec TVA par exemple.

Questions : vrai ou faux ?

1.  Un enregistrement logique contient toujours des informations.

2.  L'information identifiant un individu peut être une clé de l'enregistrementissu de l'individu.

3.  Une patte peut se transformer en chemin.

4.  Un chemin provient obligatoirement d'une patte.

5.  La clé d'un enregistrement peut se décomposer en plusieurs informationsélémentaires.

6.  Les informations hypothèses et les informations résultats d'un mêmecalcul peuvent être mémorisées dans un MLD.

7.  Les informations hypothèses et les informations résultats d'un mêmecalcul peuvent être mémorisées dans un MCD ou un MOD.

8.  Le MLD dépend du matériel informatique de l'entreprise.

9.  Un MLD non optimisé peut être construit à partir d'un MOD et de règles.

EXERCICE SUR LE MLD :

Dessiner le MLD à partir du MOD suivant,

 

2 MODELE LOGIQUE DE TRAITEMENT

Le modèle logique de traitement suit le modèle organisationnel de traitement. Celui-ci comprend les opérations effectuées par des postes de travail. A chaque opération organisée sont associés un ou plusieurs outils informatiques. Le modèle logique de traitement comprend la partie visible, la spécification externe des transactions informatiques, le cheminement possible d'écran à écran après un menu principal

 

et la partie non visible, interne, lectures et actions d'écritures d'informations dans le modèle logique de données.

2.1 Opération organisée et outils informatiques

L'outil est le moyen, AVEC QUOI ?, mis à disposition de l'utilisateur pour effectuer une ou des opérations organisées.

Je peux aller au cinéma à vélomoteur, en voiture ou prendre l'avion pour aller à Hollywood. C'est l'arrivée de l'homo habilis, l'homme sachant se servir d'outils. De même, l'outil utilisateur sera un traitement de texte ou un programme spécifique sur tableur. Les outils les plus simples sont la gomme et le crayon.

Chaque opération organisée s'automatise plus ou moins. Le plus correspond à une automatisation liée à l'informatique, le moins correspond à une phase non automatisable, peu rentable ou de pure décision. Les choix d'automatisation sont liés au gain de temps (traitement d'un plus grand nombre de dossiers par une même personne ou temps de séjour du dossier plus court dans l'entreprise) ou à une amélioration des conditions de travail (recopie inutile d'un dossier). Divers outils (informatiques) sont conçus par procédure et répondent à une ou plusieurs opérations organisées de cette procédure.

Exemple d'outils pour réaliser l'opération organisée "prise en compte de la commande" : interrogation du client, interrogation du stock de produit, enregistrement de la commande.

Les outils sont des aides et non un découpage de l'opération en sousopérations ou tâches.

Si l'opération concerne un voyage de Paris à Marseille, les différentes étapes de Paris à Lyon, de Lyon à Marseille s'effectuent à l'aide d'un même outil, une voiture. La voiture n'est pas une partie de voyage.

Chaque opération peut être effectuée à l'aide d'un ou plusieurs outils.

Réciproquement, un outil peut servir à plusieurs opérations. La voiture sert à aller au cinéma et les lunettes stéréoscopiques à regarder le film en relief. Ces deux outils peuvent me servir pour aller travailler ou pour lire.

1  opération         

2  outils D b

 

L'outil est une notion utilisateur. Un couteau suisse est un exemple d'outil. Il en existe en plusieurs tailles et avec un nombre de lames différent. Le choix dépend de la taille de la main, de celle de la poche ou du prix que l'on veut y consacrer.

La définition des outils peut se faire par procédure. Porter une attention particulière à la première opération à réception d'un message. Un outil de consultation ou de mise à jour peut être utilisé par le partenaire émetteur du message !

2.2 Outils informatiques

Dans la pratique, l'outil est informatique et peut être de deux types : transactionnel ou interactif , traitement immédiat ou "en temps réel" ou en traitement différé ou par lot , calcul sans intervention directe de l'utilisateur. Dans le deuxième cas, le programme s'enclenche et effectue ses calculs et ses mises à jour éventuelles sur les données à un moment prédéterminé.

 

Exemple d'outils d'une opération organisée de prise de commande: le choix répond au besoin d'interrogation du stock et de création de l'ordre de livraison. La prise de la commande peut être exécutée par (presque) une infinité d'outils.

Solution A - Un seul outil pour tout faire.

Interrogation du stock, création de l'ordre de livraison, consultation des délais de réapprovisionnement, consultation des goûts du client pour connaître sa catégorie (pressés ou non), recherche des produits de substitution pour livraison immédiate ou annonce du délai de livraison acceptable. Comme vous pouvez le constater, cet outil fait tout, papa et maman.

 

      Solution B -   Deux outils

1.  Interrogation du stock

2.  Création de l'ordre de livraison (outil d'édition)

 

C - A vous de l'inventer :

 

2ème exemple d'outils

Un tire-bouchon à droite, à gauche ou à air comprimé sont 3 outils.

3ème exemple, l'infocentre est un outil d'interrogation des données de l'entreprise par un langage simple d'emploi. Il est considéré comme un outil pouvant s'appliquer à des opérations de prise de décision.

2.3 Outil interactif

Un outil interactif permet un dialogue entre l'utilisateur et l'ordinateur via un écran et un clavier. Il comprend des écrans se succédant où l'utilisateur tape des informations ou des commandes au clavier et obtient immédiatement la réponse. Il enchaîne les traitements sans arrêt.

2.3.1 La vue utilisateur : la spécification externe des outils.

Un état est une étape d'un outil informatique, un ensemble d'informations affichées et prêt à recevoir des informations (à saisir). Un "masque" d'écran peut servir à plusieurs états.

Le dessin des états, des écrans de saisie (et d'affichage) des informations, et de leur enchaînement est proposé par ou à l'utilisateur final. Le "masque" des états, le dessin ou le support des écrans, peut servir pour plusieurs états, mais, en règle générale, états de saisie et d'interrogation des enregistrements sont différents.

Il est important de valider la liste des outils avec l'utilisateur final et le responsable informatique qui suivra la réalisation pour ne pas voir apparaître de nouveaux outils en cours de validation.

Exemple d'état et de support : soit un outil d'interrogation des fils en fonction du nom du père. Sur le premier état est saisi le nom du père. Le deuxième état affiche le nom du père saisi dans l'état précédent (grenouille dans l'exemple) et les noms des fils (corbeau, écureuil ou taureau).

 

Ces deux états (saisie du père et affichage des fils) possèdent le même support (les références viennent du bébête show).

 

L'enchaînement des états de l'outil est le suivant :

 

Le passage du premier état au deuxième se fait à condition que le père existe et qu'il ait des fils.

Un MLT peut être plus compliqué et débuter par un menu des états :

Enchaînement

Des États

 

Les états et leur enchaînement doivent être approuvés par l'utilisateur final avant de commencer la programmation. Ainsi, l'utilisateur final peut changer d'avis sur la "tête" des états et de leur enchaînement sans remettre en question la programmation.

2.3.2 Que devient la représentation repliée en "caractéristique" "type de" et "valeur" ?

La représentation d'une partie du modèle conceptuel de données replié où des individus deviennent des occurrences d'un individu "type de " implique la création d'écrans banalisés, non spécifique des occurrences.

Le modèle comprend les individus "type de " "contrat" et "caractéristique" et les relations "posséder" porteuses de l’information "valeur", "type de contrat" et "autoriser".

 

Les états de saisie et de restitution de ces valeurs ne peuvent donner lieu à des zones de saisie spécifiques de chaque caractéristique. Toutes les caractéristiques devront être saisies suivant un même masque, en colonnes "caractéristique" et "valeur".

Si l'état de saisie est différent d'une présentation en colonnes "caractéristique" et "valeur", le modèle conceptuel doit être déplié L'informatique ne peut pas gérer des présentations d'informations spécifiques de chaque occurrence.

 

Exemple : un cas où se pose le bien-fondé de la décomposition fine est le cas de saisie de paramètres d'un équipement (par exemple hauteur, largeur, épaisseur du chapeau, nombre de pieds ). Ces renseignements sont purement indicatifs et ne serviront qu'en consultation. Une représentation concentrée en EQUIPEMENT, TYPE D'EQUIPEMENT et PARAMETRE ne permet pas de concevoir un écran de saisie avec passage du curseur sur chaque paramètre après son libellé explicatif. Les caractéristiques doivent être identifiées. Chaque aaa représente des caractères affichés : nombre de pieds, épaisseur etc et chaque sss représente l'information saisie : 4, 3 mm etc..



2.3.3 Standards de développement

Des "standards" de développement des outils sont fixés en début de spécification. Voici les principaux :

-     un macro-outil, appelé moniteur de transaction, permet de passer d'un outil à un autre, d'un outil de saisie à un outil d'interrogation. Son existence conditionne la conception des outils transactionnels.

Voici l'exemple d'un outil de création des fils de père s'adressant à un outil de consultation des pères. Le premier état de l'outil de saisie des fils saisit le numéro de père. A partir de cet état, pour aider l'utilisateur ne connaissant pas les numéros de père, l'état de consultation des numéros de père et de leur nom peut être appelé directement. Ainsi, le numéro de père pourra être connu et quelquefois rapporté directement au premier état.

 

1ER ETAT : saisie des numéros de Père

CONSULTATION DES PERES de l'OUTIL : SAISIE DES FILS

-     action des touches fonctions nommées souvent F1, F2 sur les claviers. Exemples : F1 menu précédent, F2 interrogation des occurrences de la zone, F3 touche d'aide de l'écran ou de l'information, F4 retour au menu principal, F5 pagination avant, F6 pagination arrière

-     dessin de grille standard avec réservation de zones pour l'affichage de la date, du numéro de transaction actuelle, des messages d'erreur, des aides sur chaque information ou sur l'écran ou saisie du numéro de transaction où l'on veut accéder directement

 

-     conception générale d'un outil - création, modification, suppression dans un menu ou code à saisir dans les lignes d'un état.

 

-     Comment passe-t-on d'un état à l'autre en cas d'enregistrement de MLD "dépendant" ? Quand le nombre de fils dépasse un certain nombre, passe-ton à un état suivant ou sont-ils sur le même état ?

Exemple : saisie des familles. L'outil à développer doit permettre la saisie de familles, du père, de la mère (nom, prénom) et des enfants, (leur sexe, prénom et date de naissance).

Solution 1 : 1er état, saisie des informations des parents et deuxième état, saisie des informations des enfants.

Solution 2 : 1er état, saisie des informations des parents et saisie des informations de 5 enfants. Si la famille a plus de 5 enfants, valider, repasser sur le même état et rajouter des enfants.

Solution 3 : 1er état, menu principal, plus ou moins de 5 enfants. Deuxième état, saisie des informations des parents et des enfants des familles de moins de 5 enfants et troisième état, saisie des informations des familles de plus de 5 enfants.

-     type de libellé des messages d'erreur issus de contraintes sur les informations de l'état, abréviations ou libellé des informations. Les messages d'erreur sont-ils gérés dans le modèle de données ? en anglais ?

-     type de validation. Se sert-on d'une touche fonction pour valider ou doiton répondre au message Validation Oui/Non ?

2.3.4 De nouvelles informations apparaissent.

Les informations telles que code action (suppression, création ), enregistrement suivant, numéro de transaction suivante apparaissent dans des proportions importantes (facteur 1,5). Ces informations ne correspondent à rien dans le modèle de données. Elles sont des aides pour l'utilisateur.

Les informations aval équivalentes (donneur d'ordre, c'est-à-dire "numéro de client ayant commandé" est en aval de "numéro client") réapparaissent dans les spécifications. Il faut les utiliser afin de lever les éventuelles ambiguïtés.

2.3.5 Le traitement des données : la spécification interne des outils

De chaque état, une ou plusieurs action(s) de mise à jour, de modification ou de suppression d'occurrence d'information ou d’enregistrement peut exister. La spécification interne consiste à déclarer les actions et l'obtention des informations :

n  affichées dans chacun des états suivants

n  concernées par une action sur les informations d'un enregistrement n faisant partie d'une condition de passage de cet état vers un des suivants.

Elles sont obtenues à partir des informations connues dans le premier état les informations affichées et saisies - et au moyen de :

n  une règle de calcul

n  la clé d'un enregistrement (qui donne accès à toutes les informations de l'enregistrement)

n  un chemin d'accès

Exemple : l'outil concerne l'interrogation des fils d'un père. Le premier état saisit un numéro de père. Si celui-ci n'existe pas, l'état suivant est la création d'un père. A partir de cet état, une occurrence de l'enregistrement père est créée. Si celui-ci existe, l'état suivant affiche les fils, leur prénom et leur date de naissance.

 

Les informations dont l'obtention doit être déclarée sont :

n  prénom du fils, date de naissance du fils qui sont des informations affichées dans l'état "affichage des fils" et non saisies dans l'état "saisie du numéro de père". Elles sont obtenues via le chemin allant du numéro de père vers les numéros de fils.

n  numéro de père est une information non saisie sur l'état création du père et à créer dans le MLD à partir de l'action création du père. Cette action s'effectue à partir de cet état. Cette information "numéro de père" est le numéro saisi dans l'état "saisie du numéro de père" ou un numéro résultat de la règle de calcul "nouvel abonné" qui consiste à ajouter 1 au dernier inscrit.

L'utilisateur valide une partie des spécifications internes, les modifications possibles des informations d'enregistrement.

Le concepteur, qui n'a alors de concepteur que le nom, doit effectuer un travail astreignant dont il importe de comprendre l'utilité avant de se lancer dans l'aventure. Si un générateur d'application, c'est-à-dire un outil de génération de programme à partir de "macro-commandes" est ou doit être utilisé, veillez aux réutilisations possibles.

Il existe deux conceptions d'outils :

une conception "mono-enregistrement" ou données où un outil sert à la modification, la création et la suppression d'une occurrence d'un même enregistrement et des chemins alentour. Cette première conception est simple à programmer et demande une adaptation de l'utilisateur. Celui-ci pourra comprendre toutes les applications.

Dans ce cas, il existe 5 outils par individu (création, modification, suppression, consultation et recherche à partir des informations de l'individu) et un certain nombre d'outil de recherche d'occurrence d'individu dont le maximum est le nombre de chemins, donc le nombre de pattes de relation. Les outils sont alors créés à partir des MOD. Certains pourraient parler de conception orientée "objet" ou individu.

Si l'outil précédemment décrit sert à la création des fils, de l'état création du père, un enchaînement est possible vers l'outil création du fils. Cette conception est mono-enregistrement : un seul enregistrement "Père" ou "fils" est mis à jour.

 

Création des Fils

 

une conception "multi-enregistrements" ou traitements où un état sert à plusieurs enregistrements et évite à l'utilisateur de paginer plusieurs états avant de consulter ou de saisir l'information souhaitée. Cette deuxième conception est plus courante pour les utilisateurs (approche traitements). Les outils sont créés à partir des MOT.

 

Exemple de l'état saisie du père et des fils : les occurrences des fils peuvent être créées à partir de l'état création du père.

2.4 Outil en traitement différé.

Rappelons que les applications de ce type d'outil sont les enclenchements automatiques tels que les éditions ou les longs calculs à effectuer la nuit quand l'ordinateur "n'est pas chargé". Ces outils sont très difficiles à identifier par une approche des outils du type MOD.

Dans ce type d'outil, l'utilisateur final n'attend pas de réponse im-médiate de l'informatique. L'outil est lancé automatiquement et exé-cute les calculs, les mises à jour des données ou les impressions demandées.



911