Outils et Méthodes de Génie Logiciel. IUT A de Lille I, Dept Informatique, G. Grimonprez, J.Marengo



Documents pareils
COMMANDES SQL... 2 COMMANDES DE DEFINITION DE DONNEES... 2

Dossier I Découverte de Base d Open Office

1. LA GESTION DES BASES DE DONNEES RELATIONNELLES

Information utiles. webpage : Google+ : digiusto/

CONCEPTION Support de cours n 3 DE BASES DE DONNEES

Initiation aux bases de données (SGBD) Walter RUDAMETKIN

4. Utilisation d un SGBD : le langage SQL. 5. Normalisation

CREATION WEB DYNAMIQUE

SOMMAIRE. Travailler avec les requêtes... 3

Les bases de données Page 1 / 8

C est quoi le SWAT? Les équipes décrites par James Martin s appellent SWAT : Skilled With Advanced Tools.

LANGAGUE JAVA. Public Développeurs souhaitant étendre leur panel de langages de programmation

Université de Bangui. Modélisons en UML

Les bases de données

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

QUELQUES ÉLÉMENTS DU DÉVELOPPEMENT LOGICIEL

MODE OPERATOIRE OPENOFFICE BASE

Cours Bases de données

INTRODUCTION : Données structurées et accès simplifié

Conception, architecture et urbanisation des systèmes d information

Nom de l application

UE 8 Systèmes d information de gestion Le programme

EVOLUTION 7.1 Déroulement DREAM INFO 1 Dossier 23 Ciel Gestion Commerciale.

Cahier Technique. «Développer une application intranet pour la gestion des stages des étudiants» Antonin AILLET. Remi DEVES

LE MODELE CONCEPTUEL DE DONNEES

Visual Paradigm Contraintes inter-associations

Ingénieur Développement Nouvelles Technologies

THEME PROJET D ELABORATION D UNE BASE DE DONNEES SOUS LE SERVEUR MYSQL

Base élèves : des étiquettes avec OpenOffice 2.0

CQP ADMINISTRATEUR DE BASES DE DONNÉES (ABD)

Conduite de projets informatiques Développement, analyse et pilotage (2ième édition)

NETWORK & SOFTWARE ENGINEERING MANUEL D UTILISATEUR. Logiciel TIJARA. NETWORK AND SOFTWARE ENGINEERING Manuel d'utilisateur "TIJARA" 1

Access 2010 Entraînement 1 Garage Renault Dossier 24 MCD

PROJET DE PORTAIL INTRANET YNNA

PROSPECTION CLIENTS. À Présentation : PROSPECT. 2 Téléchargement. 3 Installation. 6 Ecran d accueil. 7 Paramétrage. 13 Utilitaires

clef primaire ; clef étrangère ; projection ; restriction ; jointure ; SQL ; SELECT ; FROM ; WHERE

Conception. Génie Logiciel. Renaud Marlet. LaBRI / INRIA (d'après A.-M. Hugues) màj 17/04/2007

CONCEPTION ET IMPLANTATION DES SI PROJET : GESTION DU FOYER DE L ENIT

Concevoir un modèle de données Gestion des clients et des visites

SQL Historique

Le cas «BOURSE» annexe

1.2 Genèse. 1.3 Version de Designer utilisée

Sage 100 CRM Guide de l Import Plus avec Talend Version 8. Mise à jour : 2015 version 8

WEB & DÉVELOPPEMENT LES BASES DU WEB LE LANGAGE HTML FEUILLES DE STYLES CSS HISTORIQUE D INTERNET ET DU WEB LES DIFFÉRENTS LANGAGES

Bases de données et interfaces Génie logiciel

Cours Base de données relationnelles. M. Boughanem, IUP STRI

Exemple accessible via une interface Web. Bases de données et systèmes de gestion de bases de données. Généralités. Définitions

Le cas «BOURSE» annexe

Comment Créer une Base de Données Ab Initio

Le Langage SQL version Oracle

Chaîne opératoire de réalisation d une base de données. ANF «Comment concevoir une base de données» (29-30/01/2015)

Langages Standards Web (XSL, XMLDOM, HTML, DHTML, CSS, JavaScript), ASP, C, ESQL-C, Scripts Shell, PL/SQL, C++, C#, ASP.NET

OMGL6 Dossier de Spécifications

Comprendre Merise et la modélisation des données

Cursus Sage ERP X3 Outils & Développement. Le parcours pédagogique Sage ERP X3 Outils et Développement

Analyse,, Conception des Systèmes Informatiques

BUSINESS INTELLIGENCE

Tutoriaux : Faites vos premiers pas avec Microsoft Visio 2010

Christian Soutou UML 2. pour les. bases de données. Avec 20 exercices corrigés. Groupe Eyrolles, 2007, ISBN :

Février Novanet-IS. Suite progicielle WEB pour l Assurance. Description fonctionnelle

Messagerie & Groupeware. augmentez l expertise de votre capital humain

Guide d'utilisation. OpenOffice Calc. AUTEUR INITIAL : VINCENT MEUNIER Publié sous licence Creative Commons

FileMaker 13. Guide ODBC et JDBC

Un logiciel pour aller plus loin dans la gestion de vos espaces. Mémo technique

Une ergonomie intuitive

Cycle de vie du logiciel. Unified Modeling Language UML. UML: définition. Développement Logiciel. Salima Hassas. Unified Modeling Language

THOT - Extraction de données et de schémas d un SGBD

Guide de démarrage rapide

FACTURATION. Menu. Fonctionnement. Allez dans le menu «Gestion» puis «Facturation» 1 Descriptif du dossier (onglet Facturation)

Formation à l utilisation des Systèmes de Gestion de Bases de Données Relationnelles. organisée avec la collaboration du

DEVAKI NEXTOBJET PRESENTATION. Devaki Nextobjects est un projet sous license GNU/Public.

Modélisation des données

UML (Paquetage) Unified Modeling Language

Sage 100 CRM - Guide de la Fusion Avancée Version 8. Mise à jour : 2015 version 8

et Groupe Eyrolles, 2006, ISBN :

Gestion du parc informatique matériel et logiciel de l Ensicaen. Rapport de projet. Spécialité Informatique 2 e année. SAKHI Taoufik SIFAOUI Mohammed

Le modèle de données

COMPTABILITE SAGE LIGNE 30

Logiciel de gestion de caisse et d ardoises

IFT2255 : Génie logiciel

Bases de données relationnelles

Bases de Données Avancées

CQP Développeur Nouvelles Technologies (DNT)

GéoPro. Consulting. Offre de Services. Informatique

Conception d une base de données

Thème : Gestion commerciale

Avertissement. La Gestion Electronique de Documents

Nouveautés Ignition v7.7

RTDS G3. Emmanuel Gaudin

Manuel du gestionnaire

Introduction aux Bases de Données

Cursus Sage ERP X3 Outils & Développement. CURSUS Sage ERP X3 Outils & Développement ADVANCED. Outils avancés. 2 jours X3A-ADM. Développement 1 &2

Langage SQL (1) 4 septembre IUT Orléans. Introduction Le langage SQL : données Le langage SQL : requêtes

FEN FICHE EMPLOIS NUISANCES

Formation : Modélisation avec UML 2.0 et Mise en pratique

MODALITES DE SUIVI DU PROJET ANNUEL DU MASTER 2 SOLUTIONS INFORMATIQUES LIBRES

Réaliser un PUBLIPOSTAGE

Transcription:

OMGL 1 Outils et Méthodes de Génie Logiciel 1

Introduction De l énoncé d un besoin utilisateur à une spécification opérationnelle 2

Les étapes de développement d une application Recensement des besoins Structuration des données Spécification des traitements Implémentation Tests Exploitation Maintenance 3

Analyse Algorithmique Programmation Systèmes Architecture 4

Chapitre 1 Spécifications d une application 5

Les outils Merise : méthode propre à la France ancienne, fortement implantée orientée bases de données et fichiers Langage UML (Unified Modeling Language) : normalisation internationale récente, utilisation en progression orientée objet Etc 6

UML Unified Modeling Language Notation standard pour modéliser des systèmes d information Modélisation visuelle Indépendance vis à vis des langages de programmation 7

Mettre en oeuvre une application Analyse et spécifications des traitements Acteurs, cas d utilisation (UML) Définition des structures de données Entités, Associations (MERISE) Implémentation Programmation (COBOL) Déploiement Mise en service 8

Démarche d une analyse Enquête préalable Cahier des charges Validation par les responsables Spécification des besoins des utilisateurs Validation par les responsables et utilisateurs Structuration des données Spécification des traitements 9

Cahier des charges Deux paragraphes Description du fonctionnement d un sousensemble d une entreprise Mise en évidence des tâches à informatiser Il s agit d un CONTRAT servant de base à la suite de l étude. 10

Spécification des besoins utilisateurs (approche UML) Identifier les acteurs : qui intervient? Déterminer les cas d utilisation : que faire? Définir les scénarios : comment réaliser? 11

Acteur Un acteur est souvent une personne. Comment les déterminer? À partir du cahier des charges. Qui va utiliser l application? Exemple : gestion de la scolarité 12

Identifier les cas d utilisation Un cas d utilisation (Use Case) est une modélisation d un dialogue entre un ou plusieurs acteurs et l application Cas d utilisation 13

Comment déterminer les cas d utilisation Quels sont les rôles possibles d un acteur? Quelles informations l acteur peut-il Consulter? Modifier? Créer? Supprimer? 14

Sémantique d un cas d utilisation L étudiant demande à une secrétaire un bulletin Une secrétaire OU un enseignant imprime un bulletin D où la nécessité de préciser le sens d un cas d utilisation à l aide de scénarios 15

Paquetages (Packages) Regroupement cohérent des différents cas d utilisation autour des divers centres d intérêt. Exemple (au Département): Scolarité des étudiants Planning Budget 16

Notation Uml des paquetages 17

Les scénarios Un scénario est une description normalisée d un cas d utilisation. Un scénario est établi à l aide d un texte que l on place dans une NOTE. La note doit mettre en évidence le dialogue entre un ou des acteurs et l application : Informations à saisir Contrôles Traitements (description succincte) 18

Exemple de notes 19

Rédaction d un scénario Définir le flot d événements principal Traitement «normal» Définir le ou les flots d événements exceptionnels. Erreurs de saisie Recherche d un identifiant non trouvé 20

Scénario Consulter 21

Remarques - Les scénarios des cas d utilisation ne doivent, en aucun cas, décrire des solutions d implémentation. - L objectif fondamental est de structurer et spécifier les besoins des utilisateurs. - L ordre de rédaction est libre (la notion de temps ou de séquence n intervient pas). 22

Le dossier d analyse Cahier des charges Liste des acteurs Paquetage 1 Diagramme des cas d utilisation Les scénarios Scénario 1.. Paquetage 2 23

Utilisation de ACSI 24

Paquetage 25

Génération d un rapport Reprendre le fichier HTML généré pour la mise en page définitive avec votre éditeur HTML favori 26

Références http://uml.free.fr Excellent site en français http://argouml.tigris.org Freeware, en cours de développement! http://www.pragsoft.com Logiciel professionnel (UML Studio) 27

Chapitre 2 Structuration des informations 28

Objectifs A partir du dossier d Analyse (cahier des charges, cas d utilisation et scénarios), déterminer les informations à stocker de façon permanente (disque dur). Regrouper ces informations de façon cohérente. 29

Caractérisation d une information Nom Exemples : N client, Nom client Mémorisation : Oui ou non Nature : alphanumérique (chaîne de caractères quelconques) ou numérique Taille Nombre maximum de caractères (pour les nombres réels, préciser éventuellement le nombre de chiffres après la virgule ou point décimal, ex : 6.2 ). Règle de gestion Formule ou algorithme de calcul 30

Dictionnaire des informations L ensemble des informations traitées par l application constitue le dictionnaire. Dans celui-ci, tous les noms doivent être différents. Pas de synonymes Exemple : Nom Client, Nom du Client 31

Mémorisation Une information du dictionnaire peut être mémorisée (stockée généralement sur disque dur) dans des fichiers ou bases de données. Les règles de gestion permettent, le plus souvent, de déterminer si une information doit être mémorisée. 32

Règles de gestion Formule ou algorithme de calcul : Ex : Montant TTC = Montant HT + TVA En général, une information sans règle de gestion doit être mémorisée. Une information possédant une règle de gestion ne doit pas être mémorisée sauf cas particulier Ces choix sont liés aux scénarios. 33

Dictionnaire 34

Mémorisation des dates Une date d impression figurant sur un état (listing) n est pas systématiquement mémorisée. Tous les systèmes et langages de programmation permettent d obtenir automatiquement la date du jour. 35

La norme postale (particuliers) 36

La norme postale (entreprises) 37

Structuration des informations Structurer (regrouper) les informations pour Modéliser le système d informations : Déterminer les «composants» Individus (exemple : des personnes) Objets (exemple : des produits) Concepts (exemple : des livraisons) Définir les liens entre ces «composants» Le modèle doit être valide dans le temps 38

Modèle Conceptuel de Données 39

Entités 40

Entité Nom de l entité Identifiant (Code ou Numéro) Information Information etc... 41

Association non porteuse d informations 42

Association porteuse d informations 43

Passage du dictionnaire au MCD Démarche par recherche des «liens» entre informations 44

Identifiant Une information «A» a pour identifiant une information «B» si et seulement si Pour une valeur de B, il existe une seule valeur de A Notation : A B ou B A Exemple : Nom étudiant Nom login 45

Identifiants Une information peut avoir plusieurs identifiants. Nom étudiant Nom login Nom étudiant Numéro étudiant de l université Une information «A» a pour identifiants les informations «B» et «C» ssi pour une valeur de B et une valeur de C, il existe une seule valeur de A. Notation : A B, C Exemple : Note Nom login, N contrôle Le nombre d identifiants d une information peut être supérieur ou égal à 0. 46

Démarche Seules les informations à mémoriser doivent être prise en compte. Etape1 : Définir la liste des informations liées par des identifiants (TRES DIFFICILE) Etape 2 : Dessiner le graphe des liens identifiants Etape 3 : Construction du MCD 47

Etape 1 Heuristique - Partir des numéros ou des codes - Un numéro est identifiant (souvent) de plusieurs informations «homogènes» ex: nom, prénom, adresse - une info numérique a souvent plusieurs identifiants 48

Etape 1 : liste des liens identifiants Nom étudiant Nom login Prénom étudiant Nom login Bureau distributeur Code Postal Libellé N contrôle Note Nom login, N contrôle Code Postal Nom login 49

Etape 2 Graphe des liens identifiants Nom login N contrôle Note Nom étudiant Prénom étudiant Libellé Code Postal Italique : feuille Gras : Identifiant Bureau Distributeur 50

Etape 3/1 : Construction du MCD Repérer les entités : identifiant et ses feuilles Nom login N contrôle Note Nom étudiant Prénom étudiant Entité Libellé Code Postal Bureau Distributeur 51

Etape 3/2 : Associations porteuses d informations Nom login N contrôle Note Nom étudiant Prénom étudiant Entité Association porteuse Libellé Code Postal Bureau Distributeur 52

Etape 3/3 : Associations non porteuses d informations Nom login N contrôle Note Nom étudiant Prénom étudiant Libellé Code Postal Entité Bureau Distributeur Association porteuse Association non porteuse, liens entre identifiants 53

Cas particuliers Deux informations sont en correspondance biunivoque n produit libellé produit Libellé produit n produit Éliminer l une d entre d elles (en fonction des traitements) Transitivité Nom login N étudiant universitaire Nom 54

ACSI : Construction du MCD Hypothèse : dictionnaire déjà créé 55

ACSI 1/3 Créer les entités 56

ACSI 1/2 Donner un nom à l entité 57

ACSI 1/3 Propriétés de l entité 58

ACSI 1/4 Sélectionner l identifiant 59

Fin de l étape 1 : entités 60

ACSI : Les associations porteuses d informations 3 1 2 61

ACSI : Les liens de l association 62

ACSI : Les associations non porteuses d informations 63

ACSI : Vérifier Modèle 64

Chapitre 3 - Cardinalités des associations - Compléments AMC :. Cardinalités. Rapport 65

Cardinalités Une cardinalité doit être définie entre toute entité et association. Une personne possède «combien de choses»? PERSONNE N personne Nom? POSSEDE 66

Cardinalités minimale et maximale Une personne possède au moins un lieu de naissance Une personne possède au plus un lieu de naissance PERSONNE N personne Nom 1,1 POSSEDE Cardinalité maximale Cardinalité minimale 67

0,1 Les cardinalités les plus fréquentes Une personne possède 0 ou 1 une carte d identité française 1,1 Une personne possède un et un seul lieu de naissance 0,N Une personne possède 0 ou plusieurs cravates 1,N Un personne possède 1 ou plusieurs prénoms 68

Associations non porteuses d informations ETU D IAN T Essayer de mettre un «VERBE» comme nom d association N omutilisateur N ométudiant Prénométudiant 1,1 PO SSED EU N 0,N C O D ES C odepostal BureauD istributeur 69

Cardinalités maximales Les plus importantes. Exemple : Un étudiant possède un code postal Un même code postal peut être possédé par plusieurs étudiants 70

Cardinalités minimales Existe-t-il une règle logique de bon-sens? Si non, Utiliser 0 de préférence à 1. Le choix définitif sera fait plus tard (lors de l étude des traitements). Les deux cardinalités minimales d une association ne peuvent pas être simultanément égales à 1(problème de mises à jour) 71

Association non porteuse d informations Ne pas oublier que l association est entre deux entités : Min,Max Min, Max 72

Cardinalités usuelles 0 ou 1, 1 0 ou 1, N 0 ou 1, N 0 ou 1, N Cardinalité plus rare 0 ou 1, 1 0 ou 1, 1 73

Association porteuse d informations 0,N 0,N 0,N Information(s) 0,N est le cas général et très fréquent 74

ACSI, Cardinalités Cliquer sur un lien 75

Chapitre 4 Modèles logique et physique de données 76

Notion de fichier logique Un fichier logique est un ensemble d informations relatives à un même objet, concept, Exemple : fichiers Utilisateur, Codes, Fichier = ensemble d enregistrements Enregistrement = ensemble de champs 77

Exemple Fichier Utilisateur <==> Entité Utilisateur 3 champs, 4 enregistrements, une clé d accès : N utilisateur Nom Prénom MARTINJ DUPONDP DURANTH LEFEBVRI Martin Dupond Durant Lefebvre Jean Pierre Hélène Isabelle 78

Fichier logiques : accès direct Connaissant une valeur de clé : Consulter : rechercher l enregistrement Modifier un ou plusieurs champs (sauf la clé) de l enregistrement Supprimer l enregistrement Connaissant toutes les valeurs des champs : Ajouter un enregistrement 79

Fichiers logiques : accès séquentiel Sans connaître les valeurs de clés : accéder et traiter l un après l autre tous les enregistrements du fichier. Exemple : langage Cobol les fichiers séquentiels indexés permettent des accès direct et séquentiel. 80

Passage d un MCD aux fichiers logiques Toute entité se transforme en fichier logique Toute association porteuse d informations devient un fichier logique Toute association non porteuse d informations implique l ajout de clés d accès dans les fichiers ou la création d un fichier logique. 81

Etape 1 : Entités ==> Fichiers Fichier Utilisateur : (N utilisateur, Nom, Prénom) Fichier Codes : (Code postal, Bureau Distributeur) Fichier Contrôle (N contrôle, Libellé) 82

Etape 2 : Association porteuse d informations ==> Fichier Fichier Passe (N utilisateur, N contrôle, Note) 83

Etape 3 : Associations non porteuses d informations Prendre en compte les cardinalités maximales 84

Etape 3 :?,1 <==>?,N Fichier Utilisateur (Fichier Code inchangé): (N utilisateur, Nom, Prénom, Code Postal) Utilisateur N utilisateur Nom Prénom 1,1 0,N Codes Code Postal Bureau distributeur 85

Etape 3 :?,1 <==>?,1 Commande N commande Date de commande Fichier Commande : N commande Date de commande N Livraison 0,1 1,1 Livraison N Livraison Date Livraison Fichier Livraison : N Livraison Date Livraison N commande 86

Etape 3 :?,N <==>?,N Commande N commande Date commande 0,N 0,N Produit N produit Libellé Créer un nouveau fichier logique Fichier Les produits commandés : (N commande, N produit) 87

Etape 4 : simplification du MLD Si un fichier logique F ne comporte qu une seule information (identifiant) et si cet identifiant a été dupliqué dans un autre fichier logique, alors on peut supprimer le fichier logique F. 88

89

ACSI, menu Outils, Générer Modèle physique 90

91

92

Tester le modèle logique Uniquement pour des tests Aucune sauvegarde sur disques des données saisies 93

Générer un script SQL 94

Générer un source Java 95

Chapitre 5 FICHIERS, BASES DE DONNEES 96

Organisations de fichiers Trois types d organisation : Séquentielle Accès direct Séquentiel indexé Primitives ouverture (OPEN) fermeture (CLOSE) lecture d un enregistrement (READ) écriture d un enregistrement (WRITE) 97

Organisation séquentielle Fichier Enregistrement 2 Ouverture en lecture OU Ouverture en écriture 1 Ouverture Lecture ou écriture 98

Organisation accès direct Fichier 1 Enregistrement 2 3 4 5 Lecture ou écriture à partir du numéro d enregistrement 99

Organisation séquentielle indexée Fichier Enregistrement Accès séquentiel Lecture ou écriture à partir de la clé d enregistrement 100

Structure d un enregistrement d un fichier séquentiel indexé Champs Clé d enregistrement Chaîne de caractères 101

Fichiers logiques et fichiers Cobol Si l identifiant du fichier logique est un numéro séquentiel à partir de 1, on peut associer un fichier Cobol à accès direct (RELATIVE) Sinon (chaîne de caractères pour l identifiant), on peut associer un fichier Cobol séquentiel indexé (INDEXED). 102

Facilité Accès direct <==> Séquentiel Indexé Accès direct - Séquentiel Indexé + de programmation Rapidité + - Temps de réponse 103

Utilisation de fichiers à accès direct Problème algorithmique Trouver une fonction ( méthode) de hachage (HashTable) : int hash(string identifiant)????????? Deux identifiants différents doivent donner des numéros différents. Les résultats doivent être dans un intervalle limité [1,Maximum] 104

Bases de données Historiquement, 3 modèles: Hiérarchique Réseaux Relationnelles Un standard : SQL (Structured Query Language) Différentes implantations: Access, Oracle, Informix, Ingres,... 105

Tables Lignes Colonnes Nom d utilisateur Nom DupondJ Dupond DurantP Durant. Prénom Mot de Passe Jean xinofo Pierre pitygu 106

Bdd : primitives Ajouter une ligne en fin de table Modifier UNE ou PLUSIEURS lignes Supprimer UNE ou PLUSIEURS lignes Rechercher UNE ou PLUSIEURS lignes Remarque : possibilité de traitements globaux sur une table 107

Vues Lignes Colonnes Nom d utilisateur Nom DupondJ Dupond DurantP Durant. Prénom Jean Pierre Une vue est une sélection de lignes et/ou de colonnes sur une ou plusieurs tables Seules les tables contiennent réellement des informations 108

BDD : Requêtes Sélectionner les noms d utilisateur dont le nom est égal à «Dupond» et dont le prénom est «Pierre» Select * from Utilisateur where nom="dupond" and prenom="pierre" Avec des fichiers Cobol, il faut programmer la recherche (parcours séquentiel du fichier). 109

BDD : Sécurité Comparable aux «permissions» sous Windows GRANT : donner un ou plusieurs droits sur une table ou une vue à un ou plusieurs utilisateurs. REVOKE : supprimer des droits. 110

BDD : Structuration La description des tables et vues (modèle physique) est stockée dans la BDD. Un programme d application (Exemple Cobol) peut accéder aux structures de données correspondantes. 111

Fichiers, Bdd, langages de programmation Sequential Relative Indexed SQL X X X X COBOL JAVA X X JDBC C X X ODBC Importance de Cobol pour les applications de gestion. 112

BDD et Réseaux Applications Clients-Serveur BDD (tables, vues) partagée en temps réel avec plusieurs clients (utilisateurs simultanés des mêmes informations). Problèmes d accès concurrents aux mêmes données gérés par les BDD. 113

Chapitre 6 Analyse des Traitements 114

Les étapes d une analyse Etude préalable Cahier des Charges,acteurs, cas d'utilisation Recueil des informations Dictionnaires des Données Structuration des informations MCD, MLD Spécification des traitements Prototypage 115

Analyse fonctionnelle des traitements Décomposer les traitements en Unités Fonctionnelles (UF). Une UF est un ensemble de tâches réalisées à un moment quelconque ou une périodicité fixée). Exemples: saisie de commandes, impression de bulletins de paie. de façon interactive ou non; exemple : édition des heures complémentaires mensuelles, état des stocks trimestriel. 116

Description des UF Adopter un formalisme compréhensible par des responsables et/ou utilisateurs non informaticiens. Dossier d analyse fonctionnelle regroupant l ensemble des UF à faire valider par les responsables. 117

Dossier d Analyse fonctionnelle Plan : Cahier des charges, Modèle Logique des Données (MLD) Description des UF 118

Plan d une UF But : objectif, usage et résultat fourni à l utilisateur Périodicité Utilisateur(s) Dessin d UF Descriptif des traitements 119

UF1 Gestion des commandes But Saisie et traitement des commandes Périodicité Conversationnelle chaque jour ouvrable de 9 h à 18 h Utilisateurs (acteurs autorisés) personnel du service commercial 120

UF1 Gestion des commandes Dessin d UF Clients UF3 Gestion des commandes Produits Factures Commandes en attente 121

Symboles des dessins d UF Station de travail (UF interactive) Unité Fonctionnelle Fichier Logique Fichier imprimante 122

Accès aux fichiers logiques Consultation Création Mise à jour 123

UF1 Gestion des Commandes Descriptif de traitement Saisie d une commande Contrôler le n de Client et les n de produits Mise à jour du fichier Produit Si un produit n est pas disponible, mettre la commande en attente Sinon mettre à jour la quantité en stock dans le fichier Produit Créer le fichier d impression Factures en 2 exemplaires 124

Démarche pour définir les UF En général, pour chaque fichier logique ayant un identifiant composé d une seule information, définir une UF interactive de mise à jour (ajout, modification, suppression et consultation) Clients UF4 Mise à jour Clients Ne pas oublier les fichiers en consultation pour les contrôles d intégrité 125

Utilisation du MLD pour définir les UF Mise à jour classique (souvent!) 126

Utilisation du MLD pour définir les UF Traitement à spécifier 127

Pour terminer les UF Valider ce qui a été fait en relisant le cahier des charges et les scénarios. Compléter si nécessaire. Ne pas oublier les UF à traitement différé : En général, il s'agit de traitements SEQUENTIELS quelque soit le mode d'organisation des fichiers Produits UF 6 Gestion des stocks Etat des Stocks mensuel 128

Traitements différés : Contrôles Fichier à contrôler UF de Contrôle Fichier sans erreur Fichier des erreurs 129

Traitements différés : Tri Fichier trié ou non trié UF de Tri Nouveau fichier trié Fichier trié ou non trié Fichier De Travail Fichier De Travail UF de Tri INSTRUCTION SORT COBOL 130

Traitements différés : Fusion Fichier 1 Fichier 2 Fichier n UF de Fusion Fichier Résultat TOUS les fichiers ont la même structure d'enregistrement, et classés sur le même critère Instruction MERGE COBOL 131

Traitements différés : Mise à jour de fichiers séquentiels Fichier Permanent Fichier Mouvement UF de mise à jour séquentielle Mêmes critères de classement Nouveau fichier permanent 132