Dr. Amin Zammouri
Plan du cours
▪ Cycle de vied’unlogiciel
▪ Modèle Conceptuel de Données (MCD)
▪ Modèle Logique de Données (MLD)
▪ Modèle Physique de Données (MPD)
▪ Utilisation de Jmerise
▪ Introduction au Langage des requêtes SQL
2 EPF - Ecole d’Ingénieur-e-s | Majeure Ingénierie et Santé | 4ièmeAnnée
Utilité du logiciel
Adéquation et compatibilité entre les fonctionnalités du logiciel et les attentes des utilisateurs
Utilisabilité Fiabilité
Performance Portabilité
Interopérabilité
Facilité de maintenance
▪ Critères de qualitéd’unlogiciel
▪ Exemple de cycle en V
▪ Modélisation Cycle de vie d’un logiciel
Conception des systèmes d’information Exemple pratique JMerise
Dr. Amin Zammouri EPF - Ecole d’Ingénieur-e-s | Majeure Ingénierie et Santé | 4ièmeAnnée
3
Le cycle de vie (processus d’élaboration) d’un logiciel et sa qualité sont liés par la relation de garantie
La maîtrise du processus d’ élaboration d’ un logiciel assure sa qualité
Plusieurs étapes sont nécessaires pour l’ élaboration d’un logiciel
Le déroulement de ces étapes construit le cycle de vie d’un logiciel
Expression des besoins Cahier des
charges Logiciel
Analyse
Conception
Implémentation Tests unitaires
Tests d’Intégration Recette
Code exécutable
Tests de validation Ce que doit être
fait sur le système
▪ Critères de qualité d’un logiciel
▪ Exemple de cycle en V
▪ Modélisation Cycle de vie d’un logiciel
Conception des systèmes d’information Exemple pratique JMerise
Dr. Amin Zammouri EPF - Ecole d’Ingénieur-e-s | Majeure Ingénierie et Santé | 4ièmeAnnée
4
Expression des besoins Cahier des
charges Logiciel
Analyse
Conception
Implémentation Tests unitaires
Tests d’Intégration Recette
Code exécutable
Tests de validation Comprendre les
besoins et les
décrire
Expression des besoins Cahier des
charges Logiciel
Analyse
Conception
Implémentation Tests unitaires
Tests d’Intégration Recette
Code exécutable
Tests de validation
La manière de construction du
système
▪ Critères de qualité d’un logiciel
▪ Exemple de cycle en V
▪ Modélisation Cycle de vie d’un logiciel
Conception des systèmes d’information Exemple pratique JMerise
Dr. Amin Zammouri EPF - Ecole d’Ingénieur-e-s | Majeure Ingénierie et Santé | 4ièmeAnnée
5
Expression des besoins Cahier des
charges Logiciel
Analyse
Conception
Implémentation Tests unitaires
Tests d’Intégration Recette
Code exécutable
Tests de validation
Codage du résultat
de la conception
Expression des besoins Cahier des
charges Logiciel
Analyse
Conception
Implémentation Tests unitaires
Tests d’Intégration Recette
Code exécutable
Tests de validation
Fonctionnement
fonctionnalité/Objet
▪ Critères de qualité d’un logiciel
▪ Exemple de cycle en V
▪ Modélisation Cycle de vie d’un logiciel
Conception des systèmes d’information Exemple pratique JMerise
Dr. Amin Zammouri EPF - Ecole d’Ingénieur-e-s | Majeure Ingénierie et Santé | 4ièmeAnnée
5
Expression des besoins Cahier des
charges Logiciel
Analyse
Conception
Implémentation Tests unitaires
Tests d’Intégration Recette
Code exécutable
Tests de validation
Fonctionnement de l’ensemble des
parties
Expression des besoins Cahier des
charges Logiciel
Analyse
Conception
Implémentation Tests unitaires
Tests d’Intégration Recette
Code exécutable
Tests de validation
Le système est-il conforme à l’analyse
?
▪ Critères de qualité d’un logiciel
▪ Exemple de cycle en V
▪ Modélisation Cycle de vie d’un logiciel
Conception des systèmes d’information Exemple pratique JMerise
Dr. Amin Zammouri EPF - Ecole d’Ingénieur-e-s | Majeure Ingénierie et Santé | 4ièmeAnnée
5
Expression des besoins Cahier des
charges Logiciel
Analyse
Conception
Implémentation Tests unitaires
Tests d’Intégration Recette
Code exécutable
Tests de validation
Le système est-il
conforme au C.C ?
- Vue humaine du système - Représentations mentales - Connaissances
- Règlements - …
Réalité
- Représentations schématiques - Formulations - …
Modèles Modélisation
Implémentation
▪ Critères de qualité d’un logiciel
▪ Exemple de cycle en V
▪ Modélisation Cycle de vie d’un logiciel
Conception des systèmes d’information Exemple pratique JMerise
Dr. Amin Zammouri EPF - Ecole d’Ingénieur-e-s | Majeure Ingénierie et Santé | 4ièmeAnnée
7
Expression des besoins Cahier des
charges Logiciel
Analyse
Conception
Implémentation Tests unitaires
Tests d’Intégration Recette
Code exécutable
Tests de validation
Modélisation
Une représentation abstraite de la réalité du système et qui exclut certains détails du monde réel
Permettre une réduction de la complexité d’un phénomène dans le système
Permettre une représentation de ce qui est important pour la compréhension et la prédiction du phénomène modélisé
A travers l’élimination de certains détails qui n’influencent pas sur le systèmesignificativement
Objectif du MCD
▪ Décrire les données du Système d’Information (SI), indépendamment de tout choix d’implémentation physique
Figure 2Exemple d’un MCD Figure 1Exemple d’un dictionnaire de données
▪ Modèle Conceptuel de Données
▪ Modèle Logique de Données
▪ Modèle Physique de Données Cycle de vie d’un logiciel
Conception des systèmes d’information Exemple pratique JMerise
Dr. Amin Zammouri EPF - Ecole d’Ingénieur-e-s | Majeure Ingénierie et Santé | 4ièmeAnnée
8
Concepts de base
▪
Entité
Ensemble d’objets concrets ou abstraits ayant une existence propre et conforme aux besoins du système d’information de l’organisation.
Ces objets sont décrits par les mêmes caractéristiques.
Exemple
Dans le système d’information d’un magasin, les clients sont décrits par les mêmes caractéristiques:Code_Client / Nom_Client / Tel_Client / Email_Client etc.
On dit que ces caractéristiques construisent l’entité Client
Concepts de base
▪
Association (relation)
Ensemble de n-uplet d’entités sémantiquement liées.
Une association décrit et précise les rôles existant entre deux ou plusieurs entités.
Dans certains cas, une entité peut être associée à elle-même, on parle d’une association «réflexive»
Exemple
Client Article
Commander
Relation
Entité
Dr. Amin Zammouri EPF - Ecole d’Ingénieur-e-s | Majeure Ingénierie et Santé | 4ièmeAnnée
10
▪ Modèle Conceptuel de Données
▪ Modèle Logique de Données
▪ Modèle Physique de Données Cycle de vie d’un logiciel
Conception des systèmes d’information Exemple pratique JMerise
Concepts de base
▪
Propriété
Donnée élémentaire permettant de caractériser les entités et les associations.
Exemple
Client
Code_Client Nom
Prénom Email Tél
Article
Num_Référence Libellé
Origine Fabriquant
Date_Production Commander
Date_Commande
Concepts de base
▪
Identifiant
Propriété ou groupe de propriétés permettant d’identifier d’une façon unique chaque occurrence de l’entité.
Les identifiants sont en général soulignés Exemple
Client
Code_Client Nom
Prénom Email Tél
Article
Num_Référence Libellé
Origine Fabriquant
Date_Production Commander
Date_Commande
▪ Modèle Conceptuel de Données
▪ Modèle Logique de Données
▪ Modèle Physique de Données Cycle de vie d’un logiciel
Conception des systèmes d’information Exemple pratique JMerise
Dr. Amin Zammouri EPF - Ecole d’Ingénieur-e-s | Majeure Ingénierie et Santé | 4ièmeAnnée
12
Concepts de base
▪
Cardinalités
Des précisions que doit avoir chaque association et qui indiquent le nombre maximum et le nombre minimum d’occurrence de l’association pouvant exister pour une occurrence de l’entité.
La cardinalité minimum est: 0 ou 1 La cardinalité maximum est: 1 ou N Exemple
Client
Code_Client Nom
Prénom Email
Article
Num_Référence Libellé
Origine Fabriquant Commander
Date_Commande
(0,N) (1,1)
Source Destination
Concepts de base
▪
Cardinalités
Les cardinalités possibles sont : - (0,1) c.-à.-d au plus 1
- (1,1) c.-à.-d 1 et 1 seul - (1,N) c.-à.-d au moins 1
- (0,N) c.-à.-d un nombre quelconque
▪ Modèle Conceptuel de Données
▪ Modèle Logique de Données
▪ Modèle Physique de Données Cycle de vie d’un logiciel
Conception des systèmes d’information Exemple pratique JMerise
Dr. Amin Zammouri EPF - Ecole d’Ingénieur-e-s | Majeure Ingénierie et Santé | 4ièmeAnnée
14
Concepts de base
▪
Difficultés de choix entre entité et association
Solution avec association:Dans cette première solution, la commande n’est pas une entité gérée pour elle-même. Elle existe tant que le client et l’articleexistent.
Ce peut être le système d’information du domaine « fabrication » dans lequel on a juste besoin de savoir que les produits sont destinés à des clients
Client
Code_Client Nom
Article
Num_Référence Libellé
Commander
Date_Commande
(0,N) (1,1)
Concepts de base
▪
Difficultés de choix entre entité et association
Solution avec entité:Dans cette solution, les commandes sont identifiées et décrites; on les gère en tant que telles.
Ce peut être le système d’information du domaine « financier ».
Client
Code_Client Nom
Article
Num_Référence Libellé
Passer
(1,N)
(1,1)
Commande
Num_Commande Description
Concerne
(1,N)
(0,N)
▪ Modèle Conceptuel de Données
▪ Modèle Logique de Données
▪ Modèle Physique de Données Cycle de vie d’un logiciel
Conception des systèmes d’information Exemple pratique JMerise
Dr. Amin Zammouri EPF - Ecole d’Ingénieur-e-s | Majeure Ingénierie et Santé | 4ièmeAnnée
16
Concepts de base
▪
A retenir
Pour une situation données, il n’existe pas un modèle conceptuel de données unique.
Un modèle reflète le point de vue du concepteur qui s’adapte avec les besoins du système
d’information concerné.
▪ Modèle Conceptuel de Données
▪ Modèle Logique de Données
▪ Modèle Physique de Données Cycle de vie d’un logiciel
Conception des systèmes d’information Exemple pratique JMerise
Dr. Amin Zammouri EPF - Ecole d’Ingénieur-e-s | Majeure Ingénierie et Santé | 4ièmeAnnée
18
Objectif :
On désire doter un cabinet médical d’un système d’information capable d’automatiser sa gestion.
Règles de gestion :
Lorsque un patient arrive la première fois au cabinet médical, la secrétaire crée une fiche contenant les informations sur le patient (nom, prénom, âge, profession, situation familiale, adresse, affiliation mutuelle, téléphone, etc.)
Si le patient est déjà un client du cabinet, la secrétaire lui demande son nom pour chercher sa fiche.
Si le médecin n’est pas disponible, la secrétaire donne au patient un rendez-vous pour après. Sinon, elle le fait entrer chez le médecin pour la consultation.
Quand le médecin consulte le patient :
▪ Il lui prescrit une ordonnance
▪ Il lui prescrit un parcours de soin, selon la situation
Le médecin remplit la fiche du patient en mentionnant le type de soin.
Suite à la prescription du médecin, la secrétaire détermine les tarifs à payer.
Résultats attendus :
A travers le système d’information à mettre en place, on cherche à stocker et gérer :
▪ Les informations concernant le médecin (nom, spécialité, etc.)
▪ Les informations concernant les patients (nom, prénom, situation familiale,…)
▪ Etat de gestion entre rendez-vous et patient (date, état,…)
▪ Etat de gestion entre patient, médecin, et médecins confrères (parcours de soin)
Utilisation de l’outil JMerise
Télécharger l’outil JMerise sur l’adresse suivante:https://azammouri.com/mis-4a
▪ Modèle Conceptuel de Données
▪ Modèle Logique de Données
▪ Modèle Physique de Données Cycle de vie d’un logiciel
Conception des systèmes d’information Exemple pratique JMerise
Dr. Amin Zammouri EPF - Ecole d’Ingénieur-e-s | Majeure Ingénierie et Santé | 4ièmeAnnée
20
Définitions
▪
Modèle Logique de Données
Une étape intermédiaire pour passer du modèle MCD (Entité/Association) vers une représentation physique des données sur des Systèmes de Gestion de Bases de Données Relationnelles (SGBDR).
On s’intéresse ici au MLD relationnel qui permet le passage de la conception sémantique (MCD) aux SGBDR
Définitions
▪
Modèle Logique de Données: Tables Relationnelles
La table relationnelle correspond à un objet du système d’information (Commande, Article, Client, etc.)
Une table relationnelle est composées d’attributs / colonnes : c-à-d les données élémentaires qui décrivent l’objet (Code_Client / Nom / Tel / Email)
Une table relationnelle possède une Clé Primaire (Primary Key) (sous- ensemble d’attributs) dans la valeur est unique pour chaque ligne de la table
Exemple
Client (Code_Client, Nom, Tel, Email)
▪ Modèle Conceptuel de Données
▪ Modèle Logique de Données
▪ Modèle Physique de Données Définitions
Passage du MCD au MLD
Dr. Amin Zammouri EPF - Ecole d’Ingénieur-e-s | Majeure Ingénierie et Santé | 4ièmeAnnée
22
Définitions
▪
Modèle Logique de Données: Tables Relationnelles & Liens
Les associations / Liens entre objets sont réalisés à l’aide de Clés Etrangères (Foreign Key)
Une clé étrangère est un ensemble d’attributs d’une table source qui est une clé primaire dans une table destination
Exemple
Client (Code_Client, Nom, Tel, Email)
Commande (Num_Commande, Description, Date,#Code_Client)
Définitions
▪
Modèle Logique de Données: Tables Relationnelles & Liens
La clé étrangère doit correspondre à une clé primaire existante. On parle de lacontrainte d’intégrité référentielle.
Les tables doivent vérifiées d’autre contraintes d’intégrité.
▪ Modèle Conceptuel de Données
▪ Modèle Logique de Données
▪ Modèle Physique de Données Définitions
Passage du MCD au MLD
Dr. Amin Zammouri EPF - Ecole d’Ingénieur-e-s | Majeure Ingénierie et Santé | 4ièmeAnnée
24
Passage du MCD au MLD
▪
Entité / Table:
Toute Entité devient une Table dont la clé primaire est l’identifiant de l’Entité.
Exemple
Client
Code_Client Nom
Prénom Email Tél
Se traduit par: Client (Code_Client, Nom, Prenom ,Email, Tel)
Passage du MCD au MLD
▪
Associations:
Toute association du type (1,1) – (X,N) se traduit en ajoutant une clé étrangère à la table provenant de l’entité dont la cardinalité est (1,1) Exemple
▪ Modèle Conceptuel de Données
▪ Modèle Logique de Données
▪ Modèle Physique de Données Définitions
Passage du MCD au MLD
Client
Code_Client Nom
Prénom Email Tél
Client (Code_Client, Nom, Prenom ,Email, Tel) Passer (1,1)
Commande
Num_Commande Description
Date
(0,N)
Commande (Num_Commande, Description, Date, #Code_Client)
Dr. Amin Zammouri EPF - Ecole d’Ingénieur-e-s | Majeure Ingénierie et Santé | 4ièmeAnnée
26
Passage du MCD au MLD
▪
Associations:
Toute association du type (1,1) – (0,1) se traduit en ajoutant une clé étrangère (identifiant de l’entité de cardinalité (0,1)) à la table provenant de l’entité dont la cardinalité est (1,1)
Exemple
Employé
Id_Employe Nom_Emp Prénom_Emp
Employer (Id_Employe, Nom_Emp, Prenom_Emp) Diriger (1,1)
Département
Id_Département Nom_Dep
Description
(0,1)
Département (Id_Département, Nom_Dep, Description, #Id_Employe)
Passage du MCD au MLD
▪
Associations:
Toute association du type (0,1)– (X,N)se traduit par deux solutions
Solution1: idem à l’association du type(1,1) –(X,N)
Solution2: On crée une table ayant pour clé primaire les identifiants des deux entités et pour clés étrangères les identifiants des deux entités. On ajoute les éventuelles propriétés de l’association à la table.
Exemple
▪ Modèle Conceptuel de Données
▪ Modèle Logique de Données
▪ Modèle Physique de Données Définitions
Passage du MCD au MLD
Employé
Id_Employe Nom
Prénom
Affectation Date_Affect
(0,N)
Projet
Id_Projet Libéllé Description
(0,1)
Affectation (#Id_Employe, #Id_Projet, Date_Affect)
Dr. Amin Zammouri EPF - Ecole d’Ingénieur-e-s | Majeure Ingénierie et Santé | 4ièmeAnnée
28
Passage du MCD au MLD
▪
Associations:
Toute association du type (X,N)– (X,N)se traduit par une nouvelle table dont la clé primaire est composée des identifiants des deux entités. Les éventuelles propriétés de l’association deviennent les attributs de cette table.
Exemple
Développeur
Id_Développeur Nom
Prénom
Affectation Date_Liv
(1,N)
Projet
Id_Projet Libéllé Description
(1,N)
Affectation (#Id_Développeur, #Id_Projet, Date_Liv)
Passage du MCD au MLD
▪
Exemple pratique:
▪ Modèle Conceptuel de Données
▪ Modèle Logique de Données
▪ Modèle Physique de Données Définitions
Passage du MCD au MLD
Patient (Id_Patient, Nom_Patient, Prenom_Patient, …, Date_Création_Dossier)
Ordonanace (Id_Ordonnance, Date_Ordonnance, Détail_Ordonnance,#Id_Consultation)
Rendez_Vous (Id_Rendez_Vous, Date_Rendez_Vous, Salle_Rendez_Vous,#Id_Patient,#Id_Médecin)
Consultation (Id_Consultation, Date_Consultation, Compte_Rendu_Consultation,#Id_Patient,#Id_Médecin) Médecin (Id_Médecin, Nom_Médecin, Prénom_Médecin)
Dr. Amin Zammouri EPF - Ecole d’Ingénieur-e-s | Majeure Ingénierie et Santé | 4ièmeAnnée
30
Passage du MCD au MLD
▪