Professional Documents
Culture Documents
Ralis par :
Manel BOUZID Mohamed Anis BACHTOBJI
Encadr par :
Pr. Mohamed Salah GOUIDER
Polyclinique Taoufik
Manel.
Mohamed Anis.
Avant-propos
yant atteint la quatrime anne de matrise en Informatique applique la Gestion, un projet de fin dtude nous est demand daccomplir. Notre choix sest rapport concevoir et raliser un produit logiciel.
Aprs de nombreuses recherches et demandes de stages, nous avons russi obtenir laccord des responsables de la polyclinique Taoufik grce Mr. Guider, notre professeur et encadreur. Nous nous sommes trouvs dans un groupe de huit personnes, amens raliser un logiciel de facturation, de gestion de pharmacie et de personnel : tous les besoins informatiques dune polyclinique part la comptabilit. La rpartition des tches de chaque binme sest faite par module, c--d que chaque binme doit raliser un module. Ceci dit, les modules doivent tre
intgrs au sein dun mme systme et raliss avec les mmes mthodes et outils. Nous avons plusieurs dcisions prendre en groupe surtout lorsquil sagira de mettre en place la base de donnes et de concevoir les interfaces utilisateurs. Nous avons choisi nos outils dune manire cohrente avec notre philosophie de travail. En effet, nous voulons que notre systme soit ouvert, extensible, volutif et ergonomique tout en gardant son efficacit. Lobjectif de la direction, aprs notre dpart, tant la mise en place du systme en intranet et internet.
Sommaire
Introduction gnrale ....................................................................................... 1 Prsentation de la polyclinique Taoufik .................................... ..5 Chapitre I : La phase dinception .................................................................................. ..8 I.1 - Contexte du systme : ........................................................................................................ 8 I.1.1- Circuit du dossier patient : ........................................................................................ 9 I.1.2- La facture :.............................................................................................................. 10 I.1.3 - Les conventions : .................................................................................................... 11 I.2 - Besoins fonctionnels et besoins non fonctionnels :.......................................................... 11 I.3- Cas dutilisation initiaux : ............................................................................................... 13
-I-
I.3.1- Diagramme de cas dutilisation initial: ................................................................... 14 I.3.2- Description dtaille des cas dutilisation :............................................................. 14 I.3.3- Priorit des cas dutilisation :.................................................................................. 17 I.4- Risques critiques : ............................................................................................................. 17 I.5- Les interfaces utilisateurs : .............................................................................................. 18 I.6 Analyse des cas dutilisation prioritaires : ..................................................................... 20 I.6.1- Analyse du cas dutilisation Crer un dossier patient : ...................................... 20 I.6.2- Analyse du cas dutilisation Crer un patient :.................................................. 23 I.6.3- Analyse du cas dutilisation Rechercher un patient :......................................... 25 Conclusion : ............................................................................................................................. 27 Chapitre II : La phase delaboration ........................................................................... ..28 II.1 Capture des besoins :..................................................................................................... 29 II.1.1- Modle final de cas dutilisation : ......................................................................... 29 II.1.2- Description des cas dutilisation :.......................................................................... 31 II.2 Analyse : ....................................................................................................................... 32 II.2.1- Analyse des cas dutilisation secondaires :............................................................. 32 II.2.1.1- Analyse du cas dutilisation Modifier un patient : .............................. 32 II.2.1.2- Analyse du cas dutilisation Supprimer un patient :............................ 34 II.2.1.3- Analyse du cas dutilisation Modifier un dossier patient : .................. 36 II.2.1.4- Analyse du cas dutilisation Annuler un dossier patient : ................... 38 II.2.1.5- Analyse du cas dutilisation Rechercher un dossier patient : ............... 40 II.2.1.6- Analyse du cas dutilisation Passer une prestation une facture patient :.................................................................................................................. 43 II.2.1.7- Analyse du cas dutilisation passer un produit une facture patient :.................................................................................................................. 45 II.2.1.8- Analyse du cas dutilisation Editer facture patient :......................... 48 II.2.2- Analyse des nouveaux cas dutilisation identifis : ............................................... 50
-II-
II.2.2.1- Analyse du cas dutilisation Sidentifier : ............................................ 50 II.2.2.2- Analyse du cas dutilisation Paramtrer mdecins : ............................. 52 II.2.2.3 Analyse du cas dutilisation Paramtrer chambres : .............................. 54 II.2.2.4- Analyse du cas dutilisation Paramtrer cuisine : ................................ 56 II.2.2.5- Analyse du cas dutilisation Paramtrer prestations :.......................... 58 II.2.2.6- Analyse du cas dutilisation Paramtrer conventions : ........................ 60 II.2.2.7- Analyse du cas dutilisation Paramtrer fluides et appareillage : ........ 62 II.2.2.8- Analyse du cas dutilisation Paramtrer tarifs accompagnant :........... 63 II.2.2.9- Analyse du cas dutilisation Enregistrer rglement :............................ 65 II.2.2.10- Analyse du cas dutilisation Passer un produit alimentaire une facture patient :.................................................................................................................. 67 II.2.2.11- Analyse du cas dutilisation Enregistrer accompagnant : .................. 69 II.2.2.12- Analyse du cas dutilisation Passer un fluide ou appareillage une facture patient : ..................................................................................................... 71 II.3 Conception : .................................................................................................................. 73 II.3.1-Conception des cas dutilisation prioritaires :......................................................... 73 II.3.1.1- Conception du cas dutilisation Crer un dossier patient : ................... 73 II.3.1.2- Conception du cas dutilisation Crer un patient : ............................... 76 II.3.1.3- Conception du cas dutilisation Rechercher un patient : ...................... 76 II.3.2-Conception des cas dutilisation secondaires : ........................................................ 83 II.3.2.1- Conception du cas dutilisation Modifier un patient : ......................... 83 II.3.2.2- Conception du cas dutilisation Supprimer un patient :....................... 85 II.3.2.3- Conception du cas dutilisation Modifier un dossier patient : ........... 87 II.3.2.4- Conception du cas dutilisation Annuler un dossier patient : ........... 89 II.3.2.5- Conception du cas dutilisation Rechercher un dossier patient : .......... 91 II.3.2.6- Conception du cas dutilisation Passer une prestation une facture patient :.................................................................................................................. 94
-III-
II.3.2.7- Conception du cas dutilisation Passer un produit une facture patient : .................................................................................................................................. 96 II.3.2.8- Conception du cas dutilisation Editer facture patient :...................... 99 II.4 Implmentation: ......................................................................................................... 102 II.4.1-Construction dun schma initial de la base de donnes : .....................................102 II.4.1.1- Description et diagrammes des classes entits prioritaires:......................102 II.4.1.2- Rgles de passage dun diagramme de classes une base de donnes relationnelle: ...........................................................................................................104 II.4.1.3- Schma initial de la base de donnes :......................................................104 II.4.2-Implmentation des cas dutilisation prioritaires : ...............................................106 II.5 Test : ...........................................................................................................................109 II.5.1-Test du cas dutilisation Crer patient : ..........................................................109 II.5.2-Test du cas dutilisation Rechercher patient : .................................................110 II.5.3-Test du cas dutilisation Crer dossier : ...........................................................110 Conclusion : ...........................................................................................................................110 Chapitre III : La phase de construction.......................................................................111 III.1 Conception des nouveaux cas dutilisation : .............................................................137 III.1.1- Conception de cas dutilisation Sidentifier :................................................112 III.1.2- Conception de cas dutilisation Paramtrer mdecins :.................................114 III.1.3- Conception de cas dutilisation Paramtrer chambres : ................................116 III.1.4- Conception de cas dutilisation Paramtrer cuisine : ....................................118 III.1.5- Conception de cas dutilisation Paramtrer prestations : .............................120 III.1.6- Conception de cas dutilisation Paramtrer conventions :............................122 III.1.7- Conception de cas dutilisation Paramtrer fluides et appareillage :...........124 III.1.8- Conception de cas dutilisation Paramtrer tarifs accompagnant : ..............126 III.1.9- Conception de cas dutilisation Enregistrer rglement : ...............................128
-IV-
III.1.10- Conception de cas dutilisation Passer un produit alimentaire une facture patient :.........................................................................................................................130 III.1.11- Conception de cas dutilisation Enregistrer accompagnant :......................133 III.1.12- Conception de cas dutilisation Passer un fluide ou un appareillage une facture patient : ............................................................................................................ 135 III.2 Implmentation :....................................................................................................... 137 III.2.1- Construction du schma final de la base de donnes :........................................137 III.2.1.1-Description et diagramme des classes entits importantes : ....................137 III.2.1.2-Schma final de la base de donnes : .......................................................144 III.2.2- Architecture matrielle mise en place : ...............................................................150 III.2.3- Implmentation des cas dutilisation secondaires et nouveaux: ........................152 III.3 Test :..........................................................................................................................154 III.3.1-Test du cas dutilisation Modifier un patient : .............................................154 III.3.2-Test du cas dutilisation Supprimer un patient : ...........................................155 III.3.3-Test du cas dutilisation Editer facture patient : ..........................................155 III.3.4-Test du cas dutilisation Sidentifier : ...........................................................155 III.3.5-Test des cas dutilisation de paramtrage : .........................................................155 III.3.6-Test des cas dutilisation de passations des biens et des services : ......................156 III.3.7-Test du cas dutilisation Enregistrer accompagnant : ...................................156 Conclusion : ...........................................................................................................................157 Chapitre IV : La phase de transition ..........................................................................158 Conclusion gnrale .......................................................................................160 Annexe (A) : Le processus unifi et UML ...................................................................163 I - Unified Modeling Language :..........................................................................................164 I.1 Lapproche Oriente Objet :....................................................................................164 I.2 La notation UML :................................................................................................168
-V-
II Le processus unifi :.......................................................................................................171 Annexe (B) : Rational Rose, Java et Oracle.................................................................175 I Rational Rose 98i :..........................................................................................................174 II Oracle JDeveloper :........................................................................................................175 III Oracle 9i :.....................................................................................................................180 Annexe (C) : Les interfaces utilisateurs.......................................................................184 Glossaire .....................................................................................................................193
-VI-
Introduction Gnrale
ette introduction fera lobjet dune brve prsentation de lapplication que nous allons concevoir et raliser, des outils et des mthodes choisis, suivi du plan gnral du processus de dveloppement.
Notre tche consiste raliser le module de facturation, intgr dans la totalit du systme de gestion de la polyclinique. Bien que lapplication semble un peu classique, nous ferons face plusieurs difficults surtout que les outils dimplmentation utiliss ne sont pas faciles manipuler. Limplmentation nest pas la seule difficult surmonter, il faut savoir que la facturation au sein dune polyclinique est beaucoup plus complexe et diffrente que celle dans une entreprise commerciale ou industrielle. En effet, dans ces
Introduction Gnrale
types dentreprises, il sagit toujours de passer un produit dans une facture client. Informatiquement parlant, on ne fait pas la distinction entre deux produits ou services dune mme entreprise, en loccurrence entre un cran, une imprimante et un graveur sil sagit dune entreprise de vente de matriel informatique, ou entre un carburateur, un amortisseur et des patins de freins, sil sagit dune entreprise de vente de pices auto. Dans un systme de gestion dune polyclinique, il faut distinguer entre produits : prestations, mdicaments, usages uniques car ils nont pas du tout les mmes caractristiques (attributs). En plus de cette ambigut, il faut grer les conventions tablies avec diffrentes organisations. Ces conventions agissent directement sur la facturation et le rglement. En fait, les deux clauses les plus importantes dune convention portent sur la remise et la prise en charge. La remise agira sur la facturation puisque elle affectera les montants payer, le taux de prise en charge touchera le dispatching du rglement, entre patient (employ) et organisation (employeur). Ceci dit, ce stade du processus de conception, tout nous semble difficile et dur raliser. Cest pour cela que notre choix sest port sur le
Processus
Unifi.
En effet, le processus unifi est une solution de dveloppement logiciel adapt tous types de projets. Ses traits distinctifs tiennent en trois notions : pilot par les cas dutilisation, centr sur larchitecture et itratif et incrmental (voir Annexe (A)). Le processus unifi rpte un certain nombre de fois, une srie de cycles constituant la construction dune gnration du systme. Tout cycle se termine par la livraison dune version du produit aux clients et se droule suivant quatre phases : lincubation, llaboration, la construction et la transition. Chacune de ces phases peut se drouler en une ou plusieurs itrations. Il faut noter que loutil
Introduction Gnrale
JDeveloper,
un outil
puissant, complet et intgr avec Oracle, notre systme de gestion de bases de donnes. JDeveloper nest pas le seul outil dimplmentation intgr avec Oracle, mais nous avons choisi de dvelopper avec Java cause de ses points forts : Portabilit. Appropriation au WEB. Interfaces graphiques avances (avec les bibliothques graphiques Swing, AWT) etc. Quant au systme de gestion de base de donnes, nous avons eu recours
Inception ,
comprendre le contexte du systme, dterminer les principaux cas dutilisation, numrer les besoins fonctionnels et les besoins non fonctionnels, et dgager les risques critiques, pouvant nuire au bon droulement du projet. Puis, au sein de
Llaboration ,
tenterons dapprofondir la comprhension du systme par un processus continu de collecte dinformations auprs des experts du domaine et darriver, la fin de la phase, obtenir une spcification, une analyse et une conception dtailles des cas dutilisation. Nous avons jug que cette phase est la plus importante car nous devons passer dune architecture candidate, construite lors de la phase dincubation, une architecture stable.
Introduction Gnrale
le produit sapparente alors lapplication, satisfaisant les exigences des utilisateurs. Finalement, dans le dernier chapitre de ce mmoire :
la transition ,
nous
<< La vie humaine mrite quon lui accorde plus de prix >>.
HABIB BOURGUIBA
(SFAX, le 4 juin 1961)
e projet de construction dune clinique polyvalente Tunis a t soumis au Conseil dAdministration de la socit Taoufik au mois de Janvier 1974. La concrtisation de lide eut lieu aprs six ans. Les
Prsentation de la polyclinique
1- Participer, par lmulation et la ralisation, lamlioration des techniques, mthodes et services hospitaliers et cliniques dans le pays. 2- Offrir aux mdecins hospitalo-universitaires, dans le respect de la rglementation en vigueur, un instrument et une ambiance de travail en quipe, comparables aux meilleurs standards internationaux. 3- Rpondre aux nouveaux besoins de la sant ns du dveloppement touristique que connat la Tunisie. Actuellement, la polyclinique Taoufik comporte sept niveaux : Sous-Sol : principales installations domestiques, services gnraux, chaufferie, unit de physiothrapie, unit de Radio-isotope. Rez-de-chausse : principales units cliniques, moyens opratoires, salles de consultations, services de diagnostics, service de rception. Les services administratifs regroupent les bureaux affects aux personnes suivantes : ladministrateur, le directeur administratif et financier, le caissier, lconome, trois employs de bureau. Premier tage : Maternit. Deuxime tage : psychiatre. Troisime tage : Chirurgie gnrale, Hpital du jour, ranimation. Quatrime tage : Cardiologie. Cinquime tage : appartements de fonction et bureaux.
Dans ce qui suit, nous prsentons une description brve des diffrents services et laboratoires de cette institution.
Urgences :
En principe, les cas considrs comme urgences sont les suivants : Les maternits anticipes. Les accidents du travail. Les accidents de la route. Les malades coronaires.
Unit de radiologie :
Cette unit comporte : Un bureau.
Prsentation de la polyclinique
Une salle dattente pour les clients externes. Une salle dattente pour les malades internes. Une salle de radiologie gnrale. Une salle de radiologie spcialise, radiographie incluse. Un cabinet de dveloppement des radios.
Laboratoire dHmatologie :
Rserve rfrigre de sang. Emplacement dattente des donneurs de sang. Un bureau pour le technicien. Deux salles avec lits de repos.
Chapitre
(I)
La phase dinception
a phase dinception consiste comprendre le contexte du systme. Il sagit de dterminer les fonctionnalits et les acteurs les plus pertinents, de prciser les risques les plus critiques et didentifier les
cas dutilisation initiaux. Ceci dit, notre description va sembler trop dtaille pour une premire phase du processus, mais il faut signaler quun systme prexiste, contenant les principales fonctionnalits.
La phase dinception
Aprs avoir structur les informations collectes, nous avons remarqu que presque tout, se droule autour du dossier patient. Ainsi nous allons prsenter le parcours du dossier depuis ladmission jusqu la sortie du patient, les composants dune facture et les clauses dune convention
3-Edition de la facture :
Lorsque le patient est prt quitter la polyclinique, il se prsente la caisse avec un bon de sortie sign par son mdecin. Notre caissier (ou facturier) doit son tour tamponner le bon (il signe que le rglement va tre effectu), puis saisit le numro de dossier de ce patient, et lance
Cest un service ou un bien offert par la polyclinique, une prestation peut tre une analyse, une imagerie, une intervention chirurgicale, une exploration fonctionnelle, un repas.
La phase dinception
10
ldition de sa facture. Le montant de la facture est compos des montants des types de prestations consommes ainsi que du montant de sjour.
4-Rglement :
Un patient peut tre pris en charge ou ne pas ltre. Il peut tre pris en charge 100%, et payer uniquement les extras, une facture est gnre automatiquement lorganisation qui le prend en charge. Il peut tre galement pris en charge un pourcentage infrieur 100%. Dans ce cas, un dispatching aura lieu pour une facture patient et une facture organisation. Il faut noter que des remises sont possibles. Ces remises font les termes de conventions entre la polyclinique et plusieurs organisations.
I.1.2- La facture :
Une facture est une note dtaille des marchandises vendues, des services excuts Bibliorom Larousse.
Cette dfinition ne nous met pas tout de suite dans le contexte, mais ds que nous remplaons les mots marchandises et services , par respectivement, mdicaments et usages uniques et prestations , la dfinition sclaircit. En effet, la facture est compose des lignes suivantes : Sjour : cest le prix unitaire dune nuite, multipli par le nombre de jours que le patient a pass dans la clinique. On ajoute ceci, le montant dun ventuel accompagnement. Bloc opratoire. Analyse. Imagerie. Ranimation. ECG : Electrocardiogramme. Pharmacie : lensemble des mdicaments et usages uniques que le patient a consomms.
La phase dinception
11
Fluide et appareillage : reprsente les fluides 1 consomms et les appareils utiliss par notre patient.
(Documents et papiers ncessaires) ainsi que ses droits. Prise en charge : cette clause cite que les dtails de la PEC2 doivent tre indiqus dans la lettre de PEC que le patient doit prsenter. Ce document doit indiquer la nature des soins avec le taux de participation du patient aux frais, except les extras, les taxes et les droits de timbres. Frais dhospitalisation : cette clause prcise ce que comporte le prix dune prestation. Par exemple, le prix dune journe comprend le logement, lclairage, la climatisation, la tlvision, le blanchissage du linge, la pension (trois repas et un goter) et le service infirmier. Rglement : cette clause rappelle que le patient et lorganisation doivent respecter les taux de PEC, que le patient doit payer avant de quitter la polyclinique et que lorganisation doit rgler sa facture dans un dlai dtermin.
Se dit dun corps (liquide ou gaz) dont les molcules sont faiblement lies, et qui peut ainsi prendre la forme du vase qui le contient, Exemple : O2. Dans la polyclinique, on facture les fluides par jour ou par heure. 2 PEC : Prise en charge.
La phase dinception
12
Pour ceci, le systme raliser doit satisfaire les exigences de la totalit des utilisateurs. Nous prsentons dans ce qui suit tous les besoins fonctionnels classs par acteur ainsi que les besoins non fonctionnels communs tous ces acteurs.
Besoins fonctionnels :
Un acteur est une personne, un matriel ou un logiciel qui interagit avec le systme dans le but de raliser une plus value. Les acteurs en interaction avec notre systme sont : Le Responsable admission (rceptionniste). La Secrtaire dtage. Le Facturier (caissier).
La secrtaire dtage :
Passer une prestation (analyse, radio, mdicament, acte opratoire) une facture patient. Passer un produit (mdicament ou usage unique) une facture patient.
Le facturier :
Calcul automatique du nombre de jours du sjour du patient. Gnration de la facture patient - clinique. Gnration de la facture patient - mdecin. Editer la facture patient - clinique.
La phase dinception
13
La performance : Un logiciel doit tre avant tout performant c'est-dire travers ses fonctionnalits, rpond toutes les exigences des usagers dune manire optimale.
La phase dinception
14
Crer un patient
Caissier
Rechercher un patient
<<include>>
<<include>>
Modifier un patient
Rceptionniste
Supprimer un patient
<<include>>
RECEPTIONNISTE :
Crer un dossier patient :
La phase dinception
15
Cette opration est ralise chaque fois quun nouveau patient se prsente (avec les documents ncessaires) la rception pour tre hospitalis. Lagent saisit un ensemble dinformations concernant le patient (par exemple le nom, le prnom, lge, ladresse, la nationalit etc.). Il faut noter quune fois le dossier patient cr, une facture est gnre automatiquement avec des rubriques (sjour, analyse, imagerie etc.) nulles (cest tout fait normal, car le patient na rien consomm pour linstant). Dornavant, le montant dune prestation, mdicament, fluide... pass, sera ajout automatiquement dans la rubrique convenable de la facture patient. Lintrt est le fait que : Lutilisateur peut consulter dune manire rapide la facture lheure actuelle, sans lancer une opration de calcul et de jointure coteuse. Le temps de rponse dune dition dune facture sera rapide.
Crer un patient :
La phase dinception
16
Lorsquun patient se prsente la clinique pour tre hospitalis, la rceptionniste doit vrifier tout dabord sil vient pour la premire fois ou non. Dans le cas positif, elle doit crer un nouveau patient puis un nouveau dossier. Ceci dit, un patient peut avoir plusieurs dossiers patient et chaque sortie du patient saccompagne dun archivage de son dossier.
Modifier un patient :
Notre futur systme doit garantir la possibilit de modifier les informations relatives un patient quelconque.
Supprimer un patient :
Un patient peut se prsenter la rception avec les pices ncessaires pour son hospitalisation, mais annule sa demande au dernier moment. Dans ce cas, le patient doit tre supprim de la base de donnes car rellement, il na jamais consomm de prestations dans la polyclinique, il ne doit pas figurer dans notre systme.
Rechercher un patient :
Il sagit dune opration fondamentale au sein de notre futur systme. En effet, la rceptionniste pourra rechercher un patient quelconque nimporte quel moment aussi bien pour effectuer une mise jour que pour lui crer un nouveau dossier.
SECRETAIRE DETAGE :
Passer une prestation une facture patient :
La secrtaire dtage enregistre les bons de prestations que les infirmiers lui transmettent, pour la facture du patient concern. Cest lopration la plus frquente dans notre futur systme.
La phase dinception
17
CAISSIER :
Editer la facture patient :
Lorsque le patient est prt sortir de la clinique, la facture qui lui correspond doit tre dite par un simple clic du caissier (facturier).
La phase dinception
18
En effet les employs de la polyclinique nacceptent pas souvent de nous livrer des informations. Lextraction de la bonne information nous semble une tche assez dlicate.
Risques techniques :
o La
non
matrise
du
langage
de
programmation :
Limplmentation avec un langage que nous ne matrisons pas, est un risque technique critique, surtout que le dlai de livraison est relativement court. o Lambigut du processus unifi : En effet, le point fort du processus unifi rside dans son ambigut car sil est adaptable divers types de projets, cest parce que sa dmarche est gnrique. Pour cela, nous sommes amens bien adapter le processus notre projet.
La phase dinception
19
La phase dinception
20
Modle danalyse
Crer un dossier
Dossier
Facture
C_dossier
Interface dossier
FigI.4 : Traabilit entre le modle de cas dutilisation et le modle danalyse pour le cas dutilisation Crer un dossier patient .
I.6.1.2- : Diagramme de classes du modle danalyse pour le cas dutilisation Crer un dossier patient :
La phase dinception
21
Rceptonniste
Interface dossier
Dossier
C_dossier
Facture
FigI.5 : Diagramme de classes du modle danalyse pour le cas dutilisation Crer un dossier patient .
I.6.1.3- : Diagramme de collaboration du modle danalyse pour le cas dutilisation Crer un dossier patient :
La phase dinception
22
: Rceptonniste
3: clique_ bouton_Crer
: Interface dossier
5: saisir_ informations()
9: afficher _message_rsultat ()
7: crer_ dossier ()
: Dossier
8: crer_ facture ()
: C_dossier
: Facture
FigI.6 : Diagramme de collaboration du modle danalyse pour le cas dutilisation Crer un dossier patient .
Le cas dutilisation crer un dossier patient se droule comme suit : La rceptionniste demande la visualisation de son interface dossier (1), cette interface donnera cet agent la possibilit de choisir entre ces trois oprations : cration , modification ou annulation (2). Dans notre cas, la rceptionniste clique sur le bouton Crer (3). Ce clic entranera laffichage dun formulaire de saisie (4) et lui permettra de saisir la masse dinformations ncessaires pour crer un nouveau dossier patient (5). La cration de ce dossier (7) est accompagne dune cration de la facture patient correspondante (8). Jusque l, cette facture est vierge, et sa cration est compltement transparente la rceptionniste.
La phase dinception
23
Cet agent est inform du succs ou non de cette opration travers un message affich sur son terminal (10).
Rceptonniste
Crer un patient
Crer un patient
Patient
C_patient
Interface patient
FigI.7 : Traabilit entre le modle de cas dutilisation et le modle danalyse pour le cas dutilisation Crer un patient .
I.6.2.2- : Diagramme de classes du modle danalyse pour le cas dutilisation Crer un patient :
Rceptonniste
Interface patient
Patient
C_patient
FigI.8 : Diagramme de classes du modle danalyse pour le cas dutilisation Crer un patient .
La phase dinception
24
I.6.2.3- : Diagramme de collaboration du modle danalyse pour le cas dutilisation Crer un patient :
2: interface_ affiche
: Rceptonniste
3: clique__bouton_Crer
5: saisir_ informations()
: Patient
: C_patient
FigI.9 : Diagramme de collaboration du modle danalyse pour le cas dutilisation Crer un patient .
Lorsque le patient se prsente avec une autorisation dhospitalisation sign par son mdecin, la rceptionniste lui demande tout dabord sil vient pour la premire fois ou non. Sil sagit dun nouveau patient, elle ajoute ce nouveau patient puis cre son dossier. Sinon, elle le cherche dans la base de donnes, et lui cre un nouveau dossier. Afin de pouvoir crer un nouveau patient, la rceptionniste choisit lopration crer dans son interface patient (2). Elle procde ensuite la saisie des informations relatives ce nouveau patient (5). Un message visualis sur son terminal lui informe de la russite ou non de lopration (9).
La phase dinception
25
Patient
C_patient
Interface patient
FigI.10 : Traabilit entre le modle de cas dutilisation et le modle danalyse pour le cas dutilisation Rechercher un patient .
I.6.3.2- : Diagramme de classes du modle danalyse pour le cas dutilisation Rechercher un patient :
Rceptonniste
Interface patient
Patient
C_patient
FigI.11 : Diagramme de classes du modle danalyse pour le cas dutilisation Rechercher un patient .
La phase dinception
26
I.6.3.3- : Diagramme de collaboration du modle danalyse pour le cas dutilisation Rechercher un patient : - Scnario 1 : Recherche fructueuse.
2: interface _affiche
: Rceptonniste
: Patient
: C_patient
FigI.12 : Diagramme de collaboration du modle danalyse pour le cas dutilisation Rechercher un patient .
-Scnario1-
: Rceptonniste
: Patient
: C_patient
FigI.13 : Diagramme de collaboration du modle danalyse pour le cas dutilisation Rechercher un patient .
-Scnario2-
La phase dinception
27
Lors de la cration du dossier patient, si le patient en question figure dj dans notre base de donnes, la rceptionniste procde tout dabord sa recherche. Plusieurs critres de recherche sont possibles : code patient, nom, prnom, date de naissance Elle doit choisir un critre de recherche (5) puis saisir la variable de recherche correspondante (6). On entend par variable de recherche, le code du patient recherch si le critre de recherche est le code patient, le nom du patient recherch si le critre est le nom . Deux cas sont alors possibles : la recherche est soit fructueuse, soit dfaillante. Un formulaire correspondant au patient recherch est alors visualis sur lcran de la rceptionniste (10) lors dune recherche fructueuse (scnario1) sinon, un message derreur est alors affich sur cet cran (10) (scnario2) .
Conclusion :
Ayant ralis cette phase, nous avons russi rpondre aux questions suivantes : Le projet vaut-il la peine dtre entrepris ? Quels sont les principaux utilisateurs de notre futur systme ? Quelles fonctionnalits notre futur systme doit-il offrir pour satisfaire les besoins des diffrents acteurs ? Ce qui nous a permis de passer la phase dlaboration, dans laquelle nous entamerons la capture de nouveaux besoins, lanalyse des cas dutilisation secondaires et nouveaux, la conception des cas dutilisation prioritaires et secondaires, limplmentation des cas dutilisation prioritaires et enfin leurs tests respectifs.
Chapitre
(II)
La phase dlaboration
yant compris le contexte de notre systme lors de la prcdente phase, lobjectif maintenant est dapprofondir notre comprhension. En fait, nous sommes appels prsenter :
une spcification des nouveaux besoins identifis. un diagramme final de cas dutilisation. une analyse des cas dutilisation secondaires ainsi que des nouveaux cas identifis. une conception des cas dutilisation prioritaires et des cas dutilisation secondaires.
La phase dlaboration
29
La phase dlaboration
30
<<extend>>
Paramtrer mdecins Crer un dossier patient <<extend>> Paramtrer chambres Rechercher un patient Crer un patient
<<include>>
<<include>> Paramtrer cuisine <<include>> <<include>> paramtrer prestations <<include>> <<include>> <<include>> Paramtrer conventions <<include>>
Administrateur
Rceptionniste
Modifier un patient
Supprimer un patient
Rechercher un dossier patient <<include>> S'identifier <<include>> <<include>> Paramtrer tarif accompagnant <<include>>
Annuler un dossier patient Passer un produit alimentaire une facture patient Secrtaire d'tage
Caissier
Enregistrer rglement
La phase dlaboration
31
CAISSIER :
Une autre fonctionnalit sajoute pour le caissier, cest lenregistrement du rglement. Une fois le paiement de la facture patient est effectu, le caissier doit le signaler informatiquement.
ADMINISTRATEUR:
Il est responsable de : la saisie des conventions avec les diverses organisations. La saisie des prestations (les tarifs des K - Opratoires, radiographie, bilans, explorations, ambulance) avec une possibilit de mise jour. La saisie des paramtres de la cuisine. La saisie des informations propres chaque chambre (type, tarification) ainsi quune possibilit de modification et/ou de suppression. La saisie des fluides et appareillages, ainsi que leurs tarifs. La saisie du tarif accompagnant.
SECRETAIRE DETAGE :
En plus des fonctionnalits cites au cours de la phase antrieure, cet agent doit pouvoir : Passer un produit alimentaire une facture patient. Enregistrer accompagnant.
La phase dlaboration
32
II.2 Analyse :
II.2.1- Analyse des cas dutilisation secondaires :
II.2.1.1- Analyse du cas dutilisation Modifier un patient :
II.2.1.1.1-Traabilit entre le modle de cas dutilisation et le modle danalyse pour le cas dutilisation Modifier un patient : Modle du cas dutilisation Modle danalyse
trace
Rceptonniste Modifier un patient Modifier un patient
Patient
C_patient
Interface patient
FigII.2 : Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Modifier un patient . II.2.1.1.2- Diagramme de classes du modle danalyse pour le cas dutilisation Modifier un patient :
La phase dlaboration
33
Rceptonniste
Interface patient
Patient
C_patient
FigII.3 : Diagramme de classes du modle danalyse pour le cas dutilisation Modifier un patient . II.2.1.1.3- Diagramme de collaboration du modle danalyse pour le cas dutilisation Modifier un patient :
2: interface_ affiche
: Rceptonniste
: Patient
: C_patient
FigII.4 : Diagramme de collaboration du modle danalyse pour le cas dutilisation Modifier un patient .
NB :
navons pas intgr cette tche dans le cas dutilisation Modifier un patient . Cependant, il est important de signaler que la rceptionniste ne pourrait
La phase dlaboration
34
recherche. Cette remarque est galement valable pour la suppression. Ce cas dutilisation se droule ainsi : La rceptionniste clique sur le bouton Modifier (3), puis, effectue les corrections adquates (5). Un message visualis sur son cran lui informe de droulement ou non de cette opration (9). II.2.1.2- Analyse du cas dutilisation Supprimer un patient :
II.2.1.2.1-Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Supprimer un patient : Modle du cas dutilisation
trace
Rceptonniste Supprimer un patient Supprimer un patient
Modle danalyse
Patient
C_patient
Interface patient
FigII.5 : Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Supprimer un patient . II.2.1.2.2- Diagramme de classes du modle danalyse pour le cas dutilisation Supprimer un patient :
La phase dlaboration
35
Rceptonniste
Interface patient
Patient
C_patient
FigII.6 : Diagramme de classes du modle danalyse pour le cas dutilisation Supprimer un patient . II.2.1.2.3- Diagramme de collaboration du modle danalyse pour le cas dutilisation Supprimer un patient :
2: interface_ affiche
: Rceptonniste
3: clique_bouton_Supprimer
: Interface patient
5: confirmer_suppression ()
9: message_ visualis
6: suppression ()
: Patient
: C_patient
FigII.7 : Diagramme de collaboration du modle danalyse pour le cas dutilisation Supprimer un patient .
La phase dlaboration
36
Lorsque la rceptionniste clique sur le bouton Supprimer (3), une bote de dialogue saffiche lui permettant de rechercher tout dabord le patient supprimer. Une fois ce dernier a t trouv, elle confirme sa demande de suppression (5).
II.2.1.3- Analyse du cas dutilisation Modifier un dossier patient :
II.2.1.3.1-Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Modifier un dossier patient :
Modle danalyse
Dossier
C_dossier
Interface dossier
FigII.8 : Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Modifier un dossier patient . II.2.1.3.2- Diagramme de classes du modle danalyse pour le cas dutilisation Modifier un dossier patient :
La phase dlaboration
37
Rceptonniste
Interface dossier
Dossier
C_dossier
FigII.9 : Diagramme de classes du modle danalyse pour le cas dutilisation Modifier un dossier patient . II.2.1.3.3- Diagramme de collaboration du modle danalyse pour le cas dutilisation Modifier un dossier patient :
: Rceptonniste
: Interface dossier
6: modification ()
: Dossier
: C_dossier
La phase dlaboration
38
NB :
navons pas intgr cette tche dans le cas dutilisation Modifier un dossier patient . Cependant, il est important de signaler que la rceptionniste ne pourrait modifier les donnes dun dossier patient quaprs avoir procd sa recherche. Cette remarque est galement valable pour la suppression.
Pour que la rceptionniste puisse modifier des informations auparavant saisies, elle doit visualiser son interface dossier (1). Ensuite, elle clique sur le bouton Modifier (3). Le formulaire rempli correspondant au numro de dossier modifier, est visualis sur le poste de la rceptionniste (4). Cette dernire procde aux changements adquats (5). Et elle sera informe du bon accomplissement ou non de cette opration travers un message (9).
II.2.1.4.1- Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Annuler un dossier patient : Modle du cas dutilisation Modle danalyse
trace
Rceptonniste
Dossier
C_dossier
Interface dossier
FigII.11 : Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Annuler un dossier patient .
La phase dlaboration
39
II.2.1.4.2 -Diagramme de classes du modle danalyse pour le cas dutilisation Annuler un dossier patient :
Rceptonniste
Interface dossier
Dossier
C_dossier
FigII.12 : Diagramme de classes du modle danalyse pour le cas dutilisation Annuler un dossier patient . II.2.1.4.3 -Diagramme de collaboration du modle danalyse pour le cas dutilisation Annuler un dossier patient :
: Rceptonniste
3: clique_bouton_Annuler
: Interface dossier
5: comfirmer_ annulation ()
: Dossier
: C_dossier
FigII.13 : Diagramme de collaboration du modle danalyse pour le cas dutilisation Annuler un dossier patient .
La phase dlaboration
40
Aprs avoir visualis son interface dossier (1), la rceptionniste clique sur le bouton Annuler (3). Une bote de dialogue saffiche lui permettant de rechercher
tout dabord le dossier patient annuler. Une fois ce dernier a t trouv, elle confirme sa demande dannulation (5).
Lagent sera inform du bon droulement ou non de cette opration travers un message visualis sur son cran (9). II.2.1.5- Analyse du cas dutilisation Rechercher un dossier patient :
II.2.1.5.1- Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Rechercher un dossier patient :
Modle du cas dutilisation Modle danalyse
trace
Rceptonniste Rechercher un dossier patient Rechercher un dossier patient
Dossier
C_dossier
Interface dossier
FigII.14 : Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Rechercher un dossier patient .
La phase dlaboration
41
II.2.1.5.2-Diagramme de classes du modle danalyse pour le cas dutilisation Rechercher un dossier patient :
Rceptonniste
Interface dossier
Dossier
C_dossier
FigII.15 : Diagramme de classes du modle danalyse pour le cas dutilisation Rechercher un dossier patient . II.2.1.5.3-Diagramme de collaboration du modle danalyse pour le cas dutilisation Rechercher un dossier patient :
- Scnario 1 : Recherche fructueuse.
1: afficher_ interface_ dossier () 2: interface_ affiche
: Rceptonniste
7: recherche ()
: Dossier
: C_dossier
FigII.16 : Diagramme de collaboration du modle danalyse pour le cas dutilisation Rechercher un dossier patient .
-Scnario1-
La phase dlaboration
42
: Rceptonniste
7: recherche ()
: Dossier
: C_dossier
FigII.17 : Diagramme de collaboration du modle danalyse pour le cas dutilisation Rechercher un dossier patient .
-Scnario2Pour que la rceptionniste puisse rechercher un dossier patient, elle devra cliquer sur le bouton Rechercher (3), prciser le critre de recherche (5) ainsi que la variable de recherche (6). Dans notre cas le critre de recherche est soit le numro du dossier, le nom du patient, son prnom. Nous entendons par la variable de recherche le numro du dossier du patient recherch, son nom . Deux possibilits sont alors envisageables : Le succs de la recherche : dans ce cas le formulaire correspondant au dossier patient recherch est visualis sur lcran de la rceptionniste (10) (scnario1).
La phase dlaboration
43
II.2.1.6- Analyse du cas dutilisation Passer une prestation une facture patient :
II.2.1.6.1- Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Passer une prestation une facture patient : Modle du cas dutilisation Modle danalyse
trace
Secrtaire d'tage Passer une prestation une facture patient Passer une prestation une facture patient
Tarif
Facture Ligne_prestation
C_facture
FigII.18: Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Passer une prestation une facture patient .
II.2.1.6.2-Diagramme de classes du modle danalyse pour le cas dutilisation Passer une prestation une facture patient :
La phase dlaboration
44
Secrtaire d'tage
Ligne_prestation
C_facture
Facture
Tarif
FigII.18 Bis : Diagramme de classes du modle danalyse pour le cas dutilisation Passer une prestation une facture patient . II.2.1.6.3-Diagramme de collaboration du modle danalyse pour le cas dutilisation Passer une prestation une facture patient :
La phase dlaboration
45
2: interface_affiche 1: afficher_interface_facturation_prestation ()
: Secrtaire d'tage
3: ajouter_prestation ()
9: message_visualis
4: ajout ()
: C_facture
: Facture Tarif
FigII.19: Diagramme de collaboration du modle danalyse pour le cas dutilisation Passer une prestation une facture patient .
La secrtaire dtage demande la visualisation de linterface facturation prestation (1). Linterface affiche lui permettra dajouter la prestation adquate la facture du patient (3). Cette opration induit la mise jour de lentit Ligne_prestation . Sachant le nombre de la prestation, nous devons connatre le prix unitaire du coefficient de la prestation facture (6). La rubrique (type de la prestation) doit tre mise jour dans la facture (7) Un message signalant le droulement ou non de lopration est visualis sur le poste de cet agent (9). II.2.1.7- Analyse du cas dutilisation passer un produit une facture patient :
La phase dlaboration
46
II.2.1.7.1 -Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Passer un produit une facture patient : Modle du cas dutilisation Modle danalyse
trace
Secrtaire d'tage Passer un produit une facture patient Passer un produit une facture patient
Facture
Ligne_produit
FigII.20 : Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Passer un produit une facture patient . II.2.1.7.2-Diagramme de classes du modle danalyse pour le cas dutilisation Passer un produit une facture patient :
La phase dlaboration
47
Secrtaire d'tage
Ligne_produit
C_facture
Facture
FigII.21 : Diagramme de classes du modle danalyse pour le cas dutilisation Passer un produit une facture patient . II.2.1.7.3-Diagramme de collaboration du modle danalyse pour le cas dutilisation Passer un produit une facture patient :
1: afficher_interface_facturation_produit () 2: interface_affiche
: Secrtaire d'tage
3: ajouter_produit ()
8: message_visualis
4: ajout () 7: afficher_message_rsultat ()
5: ajouter_ produit ()
: Ligne_produit 6: mise__jour ()
: C_facture
: Facture
FigII.22: Diagramme de collaboration du modle danalyse pour le cas dutilisation Passer un produit une facture patient .
La phase dlaboration
48
Il est important de signaler quun produit peut tre un mdicament ou un usage unique. Ce cas dutilisation se droule comme suit : La secrtaire dtage demande laffichage de linterface facturation produit (1) lui permettant denregistrer la consommation dun ou de plusieurs produits une facture patient(3). Cette fonctionnalit saccompagne dune mise jour de lentit Ligne_Produit , ainsi que le montant du type de la prestation en question dans lentit Facture . II.2.1.8- Analyse du cas dutilisation Editer facture patient :
II.2.1.8.1-Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Editer facture patient : Modle du cas dutilisation
trace
Caissier Editer la facture patient Editer la facture patient
Modle danalyse
Dossier
Catgorie_CH
Sjour
Facture
C_facture
Interface dition
FigII.23 : Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Editer facture patient . II.2.1.8.2-Diagramme de classes du modle danalyse pour le cas dutilisation Editer facture patient :
La phase dlaboration
49
Caissier
Interface dition
Facture
C_facture
FigII.24 : Diagramme de classes du modle danalyse pour le cas dutilisation Editer facture patient . II.2.1.8.3-Diagramme de collaboration du modle danalyse pour le cas dutilisation Editer facture patient :
2: interface_dition_ affich
: Caissier
3: clique_bouton_Editer_facture
: Interface dition
4: saisir_numro_facture__imprimer () 5: imprimer_facture ()
:Catgorie_CH :Dossier
9: gnrer_ facture () 7: extraire_prix () 8: extraire_date_entre ()
6: extraire_sejour ()
:Sjour
FigII.25: Diagramme de collaboration du modle danalyse pour le cas dutilisation Editer facture patient .
Le cas dutilisation Editer facture patient se droule ainsi :
La phase dlaboration
50
Le caissier demande la visualisation de son interface dition (1), puis clique sur le bouton Editer facture (3). Une bote de dialogue saffiche lui demandant de saisir le numro de facture imprimer (4). Mais avant limpression, la facture doit tre gnre (5). En effet, toutes les rubriques sont dj mises jour sauf la rubrique Sjour . Alors on doit extraire le sjour du patient (6). Ensuite, les prix des chambres o a rsid le patient (7). Sachant la date de sortie (celle de ldition de la facture), nous devons connatre la date dentre du patient (8) pour enfin calculer le montant du sjour du patient et donc gnrer la facture (9). Enfin, on extrait la facture (10) pour limprimer.
II.2.2.1.1- Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Sidentifier :
La phase dlaboration
51
Modle danalyse
S'identifier
Accs
FigII.26 : Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Sidentifier . II.2.2.1.2- Diagramme de classes du modle danalyse pour le cas dutilisation Sidentifier :
Utilisateur
Interface identification
Accs
C_identification
La phase dlaboration
52
1: afficher_interface_identification ()
2: interface_affiche
: Utilisateur
3: saisir_nom_user ()
8: message_visualis 5: identification ()
: Interface identification
4: saisir_mot_de_passe ()
7: afficher_message_rsultat () 6: identifier_utilisateur ()
: Accs
: C_identification
II.2.2.2.1- Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Paramtrer mdecins :
La phase dlaboration
53
Modle danalyse
Paramtrer mdecins
Mdecin
C_param
Interface paramtrage
FigII.29 : Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Paramtrer mdecins . II.2.2.2.2- Diagramme de classes du modle danalyse pour le cas dutilisation Paramtrer mdecins :
Administrateur
Interface paramtrage
Mdecin
C_param
FigII.30 : Diagramme de classes du modle danalyse pour le cas dutilisation Paramtrer mdecins .
La phase dlaboration
54
II.2.2.2.3- Diagramme de collaboration du modle danalyse pour le cas dutilisation Paramtrer mdecins :
1: afficher_interface_paramtrage () 2: interface_affiche
: Administrateur
4: interface_mdecin_affiche 9: message_visualis
: Interface paramtrage
5: paramtrer_mdecins () 6: pramtrage_mdecins ()
7: paramtrer_mdecins ()
8: afficher_message_rsultat ()
: Mdecin
: C_param
FigII.31: Diagramme de collaboration du modle danalyse pour le cas dutilisation Paramtrer mdecins .
II.2.2.3.1- Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Paramtrer chambres : Modle du cas dutilisation
trace
Administrateur Paramtrer chambres
Modle danalyse
Paramtrer chambres
Chambre
C_param
Interface paramtrage
FigII.32 : Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Paramtrer chambres .
La phase dlaboration
55
II.2.2.3.2- Diagramme de classes du modle danalyse pour le cas dutilisation Paramtrer chambres :
Administrateur
Interface paramtrage
Chambre
C_param
FigII.33 : Diagramme de classes du modle danalyse pour le cas dutilisation Paramtrer chambres .
II.2.2.3.3- Diagramme de collaboration du modle danalyse pour le cas dutilisation Paramtrer chambres :
1: afficher_interface_paramtrage () 2: interface_affiche
: Administrateur
4: interface_chambre_affiche 9: message_visualis
: Interface paramtrage
5: paramtrer_chambres () 6: pramtrage_chambres ()
7: paramtrer_chambres ()
8: afficher_message_rsultat ()
: Chambre
: C_param
FigII.34: Diagramme de collaboration du modle danalyse pour le cas dutilisation Paramtrer chambres .
Le cas dutilisation Paramtrer chambres se droule ainsi :
La phase dlaboration
56
Ladministrateur demande la visualisation de son interface de paramtrage (1), choisit ensuite lopration paramtrer_chambres (3). Aprs avoir effectuer les transformations convenables (5), notre agent sera inform du droulement ou non de cette opration travers un message_rsultat (9).
II.2.2.4- Analyse du cas dutilisation Paramtrer cuisine :
II.2.2.4.1- Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Paramtrer cuisine : Modle du cas dutilisation
trace
Administrateur Paramtrer cuisine Paramtrer cuisine
Modle danalyse
cuisine
C_param
Interface paramtrage
FigII.35 : Traabilit entre le modle de cas dutilisation et le modle danalyse pour le cas dutilisation Paramtrer cuisine . II.2.2.4.2- Diagramme de classes du modle danalyse pour le cas dutilisation Paramtrer cuisine :
La phase dlaboration
57
Administrateur
Interface paramtrage
cuisine
C_param
FigII.36 : Diagramme de classes du modle danalyse pour le cas dutilisation Paramtrer cuisine . II.2.2.4.3- Diagramme de collaboration du modle danalyse pour le cas dutilisation Paramtrer cuisine :
1: afficher_interface_paramtrage ()
2: interface_affiche
: Administrateur
3: clique_bouton_paramtrer_cuisine 5: paramtrer_cuisine ()
4: interface_cuisine_affiche 9: message_visualis
: Interface paramtrage
6: paramtrage_cuisine ()
8: afficher_message_rsultat () 7: paramtrer_cuisine ()
: Cuisine
: C_param
FigII.37: Diagramme de collaboration du modle danalyse pour le cas dutilisation Paramtrer cuisine .
Pour pouvoir paramtrer les produits alimentaires et leurs tarifs,
La phase dlaboration
58
le bouton paramtrer_cuisine (3), puis effectue les modifications adquates (5). II.2.2.5- Analyse du cas dutilisation Paramtrer prestations :
II.2.2.5.1- Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Paramtrer prestations :
Modle danalyse
Paramtrer prestations
Prestation
C_param
Interface paramtrage
FigII.38 : Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Paramtrer prestations .
II.2.2.5.2- Diagramme de classes du modle danalyse pour le cas dutilisation Paramtrer prestations :
La phase dlaboration
59
Administrateur
Interface paramtrage
Prestation
C_param
FigII.39 : Diagramme de classes du modle danalyse pour le cas dutilisation Paramtrer prestations . II.2.2.5.3- Diagramme de collaboration du modle danalyse pour le cas dutilisation Paramtrer prestations :
1: afficher_interface_paramtrage () 2: interface_affiche
: Administrateur
3: clique_bouton_Paramtrer_prestations
5: paramtrer_prestations ()
8: afficher_message_rsultat () 7: paramtrer_prestations ()
: Prestation
: C_param
FigII.40: Diagramme de collaboration du modle danalyse pour le cas dutilisation Paramtrer prestations .
La phase dlaboration
60
Aprs avoir choisi lopration Paramtrer prestations (3), notre agent procde une saisie ou modification des paramtres propres aux prestations en question (5). II.2.2.6- Analyse du cas dutilisation Paramtrer conventions :
II.2.2.6.1- Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Paramtrer conventions :
Modle danalyse
Paramtrer conventions
Convention
C_param
Interface paramtrage
FigII.41 : Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Paramtrer conventions . II.2.2.6.2- Diagramme de classes du modle danalyse pour le cas dutilisation Paramtrer conventions :
La phase dlaboration
61
Administrateur
Interface paramtrage
Convention
C_param
FigII.42 : Diagramme de classes du modle danalyse pour le cas dutilisation Paramtrer conventions . II.2.2.6.3- Diagramme de collaboration du modle danalyse pour le cas dutilisation Paramtrer conventions :
1: afficher_interface_paramtrage () 2: interface_affiche
: Administrateur 3: clique_bouton_Paramtrer_conventions
5: paramtrer_conventions ()
9: message_visualis 6: paramtrage_conventions ()
8: afficher_message_rsultat () 7: paramtrer_conventions ()
: Convention
: C_param
FigII.43: Diagramme de collaboration du modle danalyse pour le cas dutilisation Paramtrer conventions .
Pour pouvoir raliser cette fonctionnalit, ladministrateur doit afficher linterface de paramtrage (1), cliquer sur le bouton Paramtrer conventions (3) puis effectuer les transformations adquates (5).
La phase dlaboration
62
II.2.2.7.1- Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Paramtrer fluides et appareillage :
Modle danalyse
Fluid_app
C_param
Interface paramtrage
FigII.44 : Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Paramtrer fluides et appareillage .1 II.2.2.7.2- Diagramme de classes du modle danalyse pour le cas dutilisation Paramtrer fluides et appareillage :
La phase dlaboration
63
Administrateur
Interface paramtrage
FigII.45 : Diagramme de classes du modle danalyse pour le cas dutilisation paramtrer fluides et
appareillage .
Fluid_app
C_param
II.2.2.7.3- Diagramme de collaboration du modle danalyse pour le cas dutilisation Paramtrer fluides et appareillage :
1: afficher_interface-paramtrage ()
2: interface_affiche
: Administrateur
3: clique_bouton-Paramtrer_fluides et appareillage
5: paramtrer_fluides_et_appareillage ()
8: afficher_message_rsultat () 7: paramtrer_fluides_et_appareillage ()
: Fluid_app
: C_param
FigII.46: Diagramme de collaboration du modle danalyse pour le cas dutilisation Paramtrer fluides et appareillage .
Ladministrateur demande la visualisation de linterface paramtrage (1), clique ensuite sur le bouton Paramtrer fluides et appareillage (3). Ce clic entrane laffichage de linterface fluides et appareillage (4) lui permettant de raliser les transformations adquates (5).
La phase dlaboration
64
II.2.2.8.1- Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Paramtrer tarifs accompagnant : Modle du cas dutilisation Modle danalyse
trace
Administrateur Paramtrer tarifs accompagnant Paramtrer tarifs accompagnant
Accompagnant
C_param
Interface paramtrage
FigII.47 : Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Paramtrer tarifs accompagnant . II.2.2.8.2- Diagramme de classes du modle danalyse pour le cas dutilisation Paramtrer tarifs accompagnant :
La phase dlaboration
65
II.2.2.8.3- Diagramme de collaboration du modle danalyse pour le cas dutilisation Paramtrer tarifs accompagnant :
1: afficher_interface_paramtrage ()
2: interface_affiche
8: afficher_message_rsultat () 7: paramtrer_tarifs_acc ()
: Accompagnant
: C_param
FigII.49: Diagramme de collaboration du modle danalyse pour le cas dutilisation Paramtrer tarifs accompagnant .
Aprs avoir affich linterface accompagnant (4), ladministrateur procde un paramtrage des tarifs (5). Un message visualis sur son cran lui informe du succs ou de lchec de cette opration (9). II.2.2.9- Analyse du cas dutilisation Enregistrer rglement :
II.2.2.9.1- Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Enregistrer rglement :
La phase dlaboration
66
Modle danalyse
Enregistrer rglement
Rglement
C_rglement
Interface dition
FigII.50 : Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Enregistrer rglement . II.2.2.9.2- Diagramme de classes du modle danalyse pour le cas dutilisation Enregistrer rglement :
Caissier
Interface dition
Rglement
C_rglement
La phase dlaboration
67
II.2.2.9.3- Diagramme de collaboration du modle danalyse pour le cas dutilisation Enregistrer rglement :
1: afficher_interface_dition () 2: interface_affiche
: Caissier
3: clique_bouton_Enregistrer_rglement 5: enregistrer_rglement ()
7: enregistrer_rglement ()
: Rglement
: C_rglement
FigII.52: Diagramme de collaboration du modle danalyse pour le cas dutilisation Enregistrer rglement.
Une fois, la facture patient est paye, un rglement informatique doit avoir lieu. Le caissier charg de cette tche choisit alors lopration Enregistrer rglement de linterface dition (3). Ce choix aboutissant laffichage de linterface rglement (4), lui permet denregistrer ce paiement (5). II.2.2.10- Analyse du cas dutilisation Passer un produit alimentaire une facture patient :
II.2.2.10.1- Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Passer un produit alimentaire une facture patient :
La phase dlaboration
68
Modle danalyse
trace
Secrtaire d'tage
Facture
Ligne_prodalim C_facture
FigII.53 : Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Passer un produit alimentaire une facture patient .2 II.2.2.10.2- Diagramme de classes du modle danalyse pour le cas dutilisation Passer un produit alimentaire une facture patient :
Secrtaire d'tage
Ligne_prodalim
C_facture
Facture
FigII.54 : Diagramme de classes du modle danalyse pour le cas dutilisation Passer un produit alimentaire une facture patient .
2
La phase dlaboration
69
II.2.2.10.3- Diagramme de collaboration du modle danalyse pour le cas dutilisation Passer un produit alimentaire une facture patient :
1: afficher_interface_facturation_prodalim () 2: interface_affiche
: Secrtaire d'tage
3: ajouter_prodalim ()
8: message_visualis ()
: Ligne_prodalim
6: mise__jour ()
: C_facture
: Facture
FigII.55: Diagramme de collaboration du modle danalyse pour le cas dutilisation Passer un produit alimentaire une facture patient.
Pour pouvoir passer un produit alimentaire une facture patient, la secrtaire dtage doit visualiser tout dabord linterface facturation prodalim (1). Cette interface lui permettra denregistrer ce mouvement (3) tout en mettre jour lentit Facture (6). II.2.2.11- Analyse du cas dutilisation Enregistrer accompagnant :
II.2.2.11.1-Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Enregistrer accompagnant :
La phase dlaboration
70
Modle danalyse
trace
Secrtaire d'tage
Enregistrer accompagnant
Enregistrer accompagnant
Accompagnant
FigII.56 : Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Enregistrer accompagnant . II.2.2.11.2- Diagramme de classes du modle danalyse pour le cas dutilisation Enregistrer accompagnant :
Secrtaire d'tage
Interface accompagnant
Accompagnant
C_accompagnant
FigII.57 : Diagramme de classes du modle danalyse pour le cas dutilisation Enregistrer accompagnant .
La phase dlaboration
71
II.2.2.11.3- Diagramme de collaboration du modle danalyse pour le cas dutilisation Enregistrer accompagnant :
1: afficher_interface-accompagnant ()
2: interface_affiche
: Secrtaire d'tage
3: enregistrer_acc ()
7: message_affiche
: Interface accompagnant
4: enregistrement_acc ()
5: enregistrer_acc ()
6: afficher_message_rsultat ()
: Accompagnant
: C_accompagnant
FigII.58: Diagramme de collaboration du modle danalyse pour le cas dutilisation Enregistrer accompagnant.
A la fin de chaque journe, la secrtaire dtage parcourt toutes les chambres et enregistre la liste des accompagnants. Pour accomplir cette fonctionnalit informatiquement, notre agent demande la visualisation de linterface accompagnant (1) lui permettant denregistrer ce mouvement (3). II.2.2.12Analyse du cas dutilisation Passer un fluide ou
II.2.2.12.1-Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Passer un fluide ou appareillage une facture patient :
La phase dlaboration
72
Modle danalyse
trace
Secrtaire d'tage
Facture
Ligne_fluid_app C_facture
FigII.59 : Traabilit entre le modle du cas dutilisation et le modle danalyse pour le cas dutilisation Passer un fluide ou appareillage une facture patient . II.2.2.12.2- Diagramme de classes du modle danalyse pour le cas dutilisation Passer un fluide ou appareillage une facture patient :
Secrtaire d'tage
Ligne_fluid_app
C_facture
Facture
FigII.60 : Diagramme de classes du modle danalyse pour le cas dutilisation Passer un fluide ou appareillage une facture patient .
La phase dlaboration
73
II.2.2.12.3- Diagramme de collaboration du modle danalyse pour le cas dutilisation Passer un fluide ou appareillage une facture patient :
1: afficher_interface_facturation_fluid_app ()
2: interface_affiche
7: afficher_message_rsultat () 5: ajouter_fluid_app ()
: Ligne_fluid_app
6: mise__jour ()
: C_facture
: Facture
FigII.61: Diagramme de collaboration du modle danalyse pour le cas dutilisation Passer un fluide ou appareillage une facture patient .
Pour ajouter un fluide ou appareillage une facture patient, la secrtaire dtage demande la visualisation de linterface facturation fluid_app (1), puis enregistre le mouvement effectu (3). Cet ajout est accompagn dune mise jour de lentit Facture (6). Un message informant lagent du succs ou de lchec de cette opration, est visualis sur son cran (8).
II.3 Conception :
II.3.1-Conception des cas dutilisation prioritaires :
II.3.1.1- Conception du cas dutilisation Crer un dossier patient :
II.3.1.1.1-Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Crer un dossier patient :
La phase dlaboration
74
Interface dossier
(from Use Case View)
C_dossier
(from Use Case View)
Dossier
(from Use Case View)
Facture
(from Use Case View)
Modle danalyse
trace
<<control>> C_dossier
(from Use Case View)
trace
<<entity>> Dossier
(from Use Case View)
<<boundary>> souris
<<boundary>> ecran
<<entity>> Facture
(from Use Case View)
Modle de conception
<<boundary>> clavier
FigII.62 : Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Crer un dossier patient .
II.3.1.1.2-Diagramme de classes du modle de conception pour le cas dutilisation Crer un dossier patient :
La phase dlaboration
75
<<control>> C_dossier
(from Use Case View)
<<boundary>> ecran
<<entity>> Facture
(from Use Case View)
II.3.1.1.3 -Diagramme de squence du modle de conception pour le cas dutilisation Crer un dossier patient :
La phase dlaboration
76
: ecran
: Rceptonniste
: clavier
: souris
:Interface dossier
: C_dossier
: Dossier
: Facture
afficher_interface_dossier ()
afficher_interface ()
interface_affiche
clique_bouton_Crer
afficher_formulaire_vierge ()
afficher_formulaire_vierge ()
formulaire_affich
saisir_informations (dos)
cration (dos)
crer_dossier (dos)
afficher_message_rsultat ( )
crer_facture (num_dos)
message_affich
II.3.1.2.1-Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Crer un patient :
dos : nouvelle instance de la classe entit Dossier cre par la secrtaire dtage. Les attributs de cette classe seront prsents lors de limplmentation. num_dos : numro de dossier permettant didentifier la facture crer.
La phase dlaboration
77
Patient
trace
<<boundary>> ecran <<boundary>> souris <<control>> C_patient
trace
<<entity>> Patient
(from Use Case View)
<<boundary>> clavier
FigII.65 : Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Crer un patient . II.3.1.2.2-Diagramme de classes du modle de conception pour le cas dutilisation Crer un patient :
La phase dlaboration
78
<<boundary>> souris
Rceptonniste
(from Use Case View)
<<boundary>> clavier
<<control>> C_patient
(from Use Case View)
<<boundary>> ecran
<<entity>> Patient
(from Use Case View)
II.3.1.2.3 -Diagramme de squence du modle de conception pour le cas dutilisation Crer un patient :
La phase dlaboration
79
: ecran : Rceptonniste
:clavier
:souris
: Interface patient
:C_patient
: Patient
afficher_interface_patient ()
interface affiche
afficher_message_rsultat () message_visualis
II.3.1.3.1-Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Rechercher un patient :
La phase dlaboration
80
Interface patient
(from Use Case View)
C_patient
(from Use Case View)
Patient
(from Use Case View)
trace
<<control>> C_patient
trace
<<entity>> Patient
(from Use Case View)
<<boundary>> souris
<<boundary>> ecran
<<boundary>> clavier
FigII.68 : Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Rechercher un patient . II.3.1.3.2-Diagramme de classes du modle de conception pour le cas dutilisation Rechercher un patient :
La phase dlaboration
81
Rceptonniste
(f rom Use Case View)
<<entity>> Patient
<<boundary>> ecran
(f rom Use Case View)
II.3.1.3.3 -Diagramme de squence du modle de conception pour le cas dutilisation Rechercher un patient :
- Scnario 1 : Recherche fructueuse.
La phase dlaboration
82
:ecran : Rceptonniste
:clavier
:souris
:Interface patient
:C_patient
:patient
Recherche (var)
La phase dlaboration
83
:ecran : Rceptonniste
:clavier
:souris
:Interface patient
:C_patient
:patient
recherche (var)
rechercher_patient (var)
II.3.2.1.1-Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Modifier un patient :
La phase dlaboration
84
Interface patient
(from Use Case View)
C_patient
(from Use Case View)
Patient
trace
<<control>> C_patient
(from Use Case View)
trace
<<boundary>> souris
<<boundary>> ecran
<<entity>> Patient
(from Use Case View)
<<boundary>> clavier
FigII.72 : Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Modifier un patient . II.3.2.1.2-Diagramme de classes du modle de conception pour le cas dutilisation Modifier un patient :
<<boundary>> souris
Rceptonniste
(from Use Case Vi ew)
<<boundary>> clavier
<<control>> C_patient
(from Use Case Vi ew)
<<boundary>> ecran
<<entity>> Patient
(from Use Case Vi ew)
La phase dlaboration
85
II.3.2.1.3 -Diagramme de squence du modle de conception pour le cas dutilisation Modifier un patient :
:ecran : Rceptonniste
:clavier
:souris
:Interface patient
C_patient
:Patient
II.3.2.2.1-Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Supprimer un patient :
La phase dlaboration
86
Interface patient
(from Use Case View)
C_patient
Patient
trace
Modle danalyse
trace
<<boundary>> souris
<<boundary>> ecran
<<control>> C_patient
(from Use Case View)
<<entity>> Patient
(from Use Case View)
Modle de conception
<<boundary>> clavier
FigII.75 : Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Supprimer un patient . II.3.2.2.2-Diagramme de classes du modle de conception pour le cas dutilisation Supprimer un patient :
<<boundary>> souris
<<boundary>> Interface patient
(from Use Case Vi ew)
Rceptonniste
(from Use Case Vi ew)
<<boundary>> clavier
<<control>> C_patient
(from Use Case View)
<<boundary>> ecran
<<entity>> Patient
(from Use Case Vi ew)
La phase dlaboration
87
II.3.2.2.3 -Diagramme de squence du modle de conception pour le cas dutilisation Supprimer un patient :
:ecran : Rceptonniste
:clavier
:souris
:Interface patient
C_patient
:Patient
FigII.77 : Diagramme de squence du modle de conception pour le cas dutilisation Supprimer un patient . 6
II.3.2.3- Conception du cas dutilisation Modifier un dossier patient :
II.3.2.3.1-Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Modifier un dossier patient :
La phase dlaboration
88
Interface dossier
(from Use Case View)
C_dossier
(from Use Case View)
Dossier
(from Use Case View)
Modle danalyse
trace
trace
<<boundary>> souris
<<boundary>> ecran
<<control>> C_dossier
(from Use Case View)
<<entity>> Dossier
(from Use Case View)
Modle de conception
<<boundary>> clavier
FigII.78 : Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Modifier un dossier patient . II.3.2.3.2-Diagramme de classes du modle de conception pour le cas dutilisation Modifier un dossier patient :
<<boundary>> souris Rceptonniste
(from Use Case Vi ew)
<<control>> C_dossier
(from Use Case View)
<<boundary>> ecran
La phase dlaboration
89
II.3.2.3.3 -Diagramme de squence du modle de conception pour le cas dutilisation Modifier un dossier patient :
:ecran : Rceptonniste
:clavier
:souris
:Interface dossier
:C_dossier
:dossier
FigII.80 : Diagramme de squence du modle de conception pour le cas dutilisation Modifier un dossier patient . 7
II.3.2.4- Conception du cas dutilisation Annuler un dossier patient :
II.3.2.4.1-Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Annuler un dossier patient :
La phase dlaboration
90
Interface dossier
(from Use Case View)
C_dossier
(from Use Case View)
Dossier
(from Use Case View)
Modle danalyse
trace
trace
<<boundary>> souris
<<boundary>> ecran
<<control>> C_dossier
(from Use Case View)
<<entity>> Dossier
(from Use Case View)
Modle de conception
<<boundary>> clavier
FigII.81 : Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Annuler un dossier patient . II.3.2.4.2-Diagramme de classes du modle de conception pour le cas dutilisation Annuler un dossier patient :
<<boundary>> souris
Rceptonniste
(from Use Case View)
<<control>> C_dossier
(from Use Case View)
<<boundary>> clavier
<<entity>> Dossier
(from Use Case View)
<<boundary>> ecran
La phase dlaboration
91
II.3.2.4.3 -Diagramme de squence du modle de conception pour le cas dutilisation Annuler un dossier patient :
:ecran : Rceptonniste
:clavier
:souris
:Interface dossier
:C_dossier
:Dossier
afficher_interface_dossier ()
afficher_interface_dossier () interface_affiche
confirmer_annulation ( num_dos )
afficher_message_rsultat () message_visualis
FigII.83 : Diagramme de squence du modle de conception pour le cas dutilisation Annuler un dossier patient .
II.3.2.5- Conception du cas dutilisation Rechercher un dossier patient :
II.3.2.5.1-Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Rechercher un dossier patient :
La phase dlaboration
92
Interface dossier
(from Use Case View)
C_dossier
(from Use Case View)
Dossier
(from Use Case View)
Modle danalyse
trace
trace
<<boundary>> souris
<<boundary>> ecran
<<control>> C_dossier
(from Use Case View)
<<entity>> Dossier
(from Use Case View)
Modle de conception
<<boundary>> clavier
FigII.84 : Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Rechercher un dossier patient . II.3.2.5.2-Diagramme de classes du modle de conception pour le cas dutilisation Rechercher un dossier patient :
<<boundary>> souris
Rceptonniste
(from Use Case View)
<<control>> C_dossier
(from Use Case View)
<<boundary>> clavier
<<entity>> Dossier
(from Use Case View)
<<boundary>> ecran
La phase dlaboration
93
II.3.2.5.3 -Diagramme de squence du modle de conception pour le cas dutilisation Rechercher un dossier patient :
- Scnario 1 : Recherche fructueuse.
:ecran : Rceptonniste
:clavier
:souris
:Interface dossier
:C_dossier
:Dossier
afficher_zone_de_recherche ()
La phase dlaboration
94
:ecran : Rceptonniste
:clavier
:souris
:Interface dossier
:C_dossier
:Dossier
afficher_zone_de_recherche ()
II.3.2.6.1-Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Passer une prestation une facture patient :
La phase dlaboration
95
Tarif
Ligne_prestation
(from Use Case View)
Facture
Modle danalyse
trace
trace
<<boundary>> souris
<<boundary>> ecran
<<control>> C_facture
(from Use Case View)
<<entity>> Tarif
(from Use Case View)
<<entity>> Ligne_prestation
(from Use Case View)
<<entity>> Facture
(from Use Case View)
Modle de conception
<<boundary>> clavier
FigII.88 : Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Passer une prestation une facture patient . II.3.2.6.2-Diagramme de classes du modle de conception pour le cas dutilisation Passer une prestation une facture patient :
<<boundary>> Interface facturation prestation
(from Use Case View)
<<boundary>> souris
Secrtaire d'tage
(from Use Case View)
<<boundary>> clavier
<<control>> C_facture
(from Use Case View)
<<boundary>> ecran
<<entity>> Facture
(from Use Case View)
<<entity>> Ligne_prestation
(from Use Case View)
<<entity>> Tarif
(from Use Case View)
FigII.89 : Diagramme de classes du modle de conception pour le cas dutilisation Passer une prestation
une facture patient .
<<entity>> Classe persistante
La phase dlaboration
96
II.3.2.6.3 -Diagramme de squence du modle de conception pour le cas dutilisation Passer une prestation une facture patient :
:ecran
:clavier
;souris
: Secrtaire d'tage
:C_facture
:Ligne_prestation
:Facture
:Tarif
afficher_interface_facturation_prestation ()
afficher_interface_facturation_prestation ()
interface_affiche
extraire_prix_u ( coef)
afficher_message_rsultat ()
message_visualis
II.3.2.7.1-Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Passer un produit une facture patient :
cp : code prestation. mtpre : montant de la prestation ajouter. rubrique : cest la rubrique de la facture o doit figurer le produit en question. coef : coefficient de la prestation.
La phase dlaboration
97
C_facture
(from Use Case View)
Ligne_facture
(from Use Case View)
Facture
(from Use Case View)
Modle danalyse
trace
<<boundary>> souris <<boundary>> ecran <<control>> C_facture
(from Use Case View)
trace
<<entity>> Ligne_produit
(from Use Case View)
<<entity>> Facture
(from Use Case View)
Modle de conception
<<boundary>> clavier
FigII.91 : Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Passer un produit une facture patient . II.3.2.7.2-Diagramme de classes du modle de conception pour le cas dutilisation Passer un produit une facture patient :
La phase dlaboration
98
<<boundary>> souris
Secrtaire d'tage
(from Use Case View)
<<boundary>> clavier
<<control>> C_facture
(from Use Case View)
FigII.92 : Diagramme de classes du modle de conception pour le cas dutilisation Passer un produit une
facture patient .
II.3.2.7.3 -Diagramme de squence du modle de conception pour le cas dutilisation Passer un produit une facture patient :
La phase dlaboration
99
:clavier
:souris
:C_facture
:Ligne_produit
:Facture
ajouter_produit ( cpd, num_dos, quantit) ajout ( cpd, num_dos, quantit) ajouter_produit ( cpd, num_dos, quantit)
II.3.2.8.1-Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Editer facture patient :
cpd : code produit. mtpd : montant du produit ajouter. rubrique : cest la rubrique de la facture o doit figurer le produit en question.
La phase dlaboration
100
Catgorie_CH
Dossier
Sjour
(from Use Case View)
Facture
trace
<<boundary>> souris <<boundary>> ecran
trace
<<control>> C_facture
(from Use Case View)
trace
<<entity>> Dossier
(from Use Case View)
Modle danalyse
<<entity>> Sjour
(from Use Case View)
<<entity>> Facture
(from Use Case View)
<<boundary>> clavier
<<entity>> Catgorie_CH
(from Use Case View)
<<boundary>> imprimante
Modle de conception
FigII.94 : Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Editer facture patient . II.3.2.8.2-Diagramme de classes du modle de conception pour le cas dutilisation Editer facture patient :
<<boundary>> souris <<boundary>> Interface dition
(from Use Case View)
<<control>> C_facture
(from Use Case View)
<<boundary>> ecran
<<entity>> Dossier
(from Use Case View)
<<entity>> Sjour
(from Use Case View)
<<entity>> Facture
(from Use Case View)
<<entity>> Catgorie_CH
(from Use Case View)
10
:ecran
:clavier
:imprimante
:souris
:Interface dition
:C_facture
:Facture
:Sjour
:Catgorie_CH
:Dossier
: Caissier
afficher_interface_dition ()
interface_affiche
afficher_interface_dition ()
clique_bouton_Editer_facture
saisir_numro_facture__imprimer (num_dos)
imprimer_facture (num_dos)
extraire_sjour (num_dos)
extraire_facture (num_dos)
afficher_rsultat_impression ()
message_visualis
afficher_message_rsultat ()
La phase dlaboration
message_visualis
101
La phase dlaboration
102
II.4 Implmentation:
Dans la phase courante, cette activit se dcompose de deux grandes parties ; la construction dun schma initial de la base de donnes et limplmentation des cas dutilisation prioritaires. La premire partie est ralise en trois tches ; la description et la ralisation du diagramme des classes entits dgages de lactivit de conception des cas dutilisations prioritaires, la prsentation des rgles de passage dun diagramme de classes une base de donnes relationnelle et enfin le schma initial de la base de donnes. La deuxime partie est labore sur deux tapes ; les traabilits entre modles de conception et modles dimplmentation et ensuite les diagrammes de composants.
La phase dlaboration
103
Patient Attributs
CPAT NOM PRENOM ADRESSE TELEPHONE DATE_NAISSANCE NATIONALITE GENRE_ID Nom Prnom Adresse Tlphone Date de naissance Nationalit Genre didentification (Passeport, CIN...) Numro de la pice didentification
Libell
Code Patient
Type
VARCHAR VARCHAR VARCHAR VARCHAR VARCHAR DATE VARCHAR VARCHAR
Contraintes
Cl primaire
NPIECE_ID
VARCHAR
Mthodes
crer_patient rechercher_patient
Type retourn
boolen Patient
paramtres
Patient pat String critre, String var
Libell
Code Dossier String Date dentre du Date patient Personne responsable String du patient Tlphone du String responsable Adresse du responsable String Code patient String Code mdecin String Code convention String
Type
Mthodes
crer_dossier
Type retourn
boolen
paramtres
Dossier dos
La phase dlaboration
104
Attributs
ND DATE MONTANTHT MONTANTTTC
FACTURE Libell
String Date Float Float Float Float Float Float Float Float Float
Type
Code Dossier Date de facturation Montant hors taxes Montant tous taxes compris SEJOUR Montant du sjour ANALYSE Montant des analyses RADIO Montant des radios ACTE_OPERATOIRE Montant des actes opratoires USAGE_UNIQUE Montant des usages uniques ECG Montant des ECG FLUIDE Montant des fluides et appareillages
Mthodes
crer_facture
Type retourn
boolen
paramtres
String num_dos
Le diagramme de classes dcrit un ensemble dobjets qui partagent les mmes attributs, mthodes et relations. <<entity>> Patient
(from Use Case View)
possde
1 1..*
<<entity>> Dossier
(from Use Case View)
correspond
1
<<entity>> Facture
(from Use Case View)
II.4.1.2- Rgles de passage dun diagramme de classes une base de donnes relationnelle:
La phase dlaboration
105
Une association plusieurs plusieurs est reprsente par une table ayant pour cl primaire la concatnation des cls primaires des deux tables associes.
Colonne
CPAT NOM PRENOM ADRESSE TELEPHONE DATE_NAISSANCE NATIONALITE GENRE_ID NPIECE_ID
PATIENT Libell
Code Patient Nom Prnom Adresse Tlphone Date de naissance Nationalit Genre didentification (Passeport, CIN...) Numro de la pice didentification La table : Dossier
Type
VARCHAR VARCHAR VARCHAR VARCHAR VARCHAR DATE VARCHAR VARCHAR VARCHAR
Contraintes
Cl primaire
Colonne
ND DATE_ENTREE RESPONSABLE TEL_RESP ADR_RESP CPAT CM CC
DOSSIER Libell
Type
Contraintes
Cl primaire
Code Dossier VARCHAR Date dentre du DATE patient Personne responsable VARCHAR du patient Tlphone du VARCHAR responsable Adresse du responsable VARCHAR Code patient VARCHAR Code mdecin VARCHAR Code convention VARCHAR La table : Facture
Colonne
ND DATE MONTANTHT MONTANTTTC
FACTURE Libell
Code Dossier Date de facturation Montant hors taxes Montant tous taxes
Type
Contraintes
La phase dlaboration
106
compris Montant du sjour Montant des analyses Montant des radios Montant des actes opratoires Montant des usages uniques Montant des ECG Montant des fluides et appareillages
La phase dlaboration
107
Java. Toutes nos futures classes interfaces hriteront de lune delles : JFrame de la bibliothque Swing et Frame de la bibliothque AWT .
trace
"file" Patient.java
[Patient inexistant]
Interface Patient
[Patient existant]
Interface dossier patient
trace
"file" Dossier.java
trace
contrle, les classes de contrle utilisent les classes entits, et les classes entits hritent de la classe persistante qui extrait (et met jour) les donnes des tables de la base de donnes. Cet enchanement sera clair dans lexemple suivant : Nous allons prsenter les consquences dun clic sur le bouton crer de linterface DOSSIER . Linterface est en coute de lutilisateur grce ces lignes de code : bouton.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(ActionEvent e) { bouton_actionPerformed(e);
La phase dlaboration
108
"import"
"file" C_dossier.java
"import"
"file" Dossier.java
"import"
"table" DOSSIER
"table" PATIENT
"file" Fichier.Java
"compile"
"file" Fichier.class
La phase dlaboration
109
II.5 Test :
Cette activit consiste tester les rsultats de limplmentation pour sassurer du bon droulement des fonctionnalits du systme. Lors de lvaluation des tests effectus, si nous dtectons une anomalie quelconque, nous devrions la corriger. Les tches excuter sont alors : La conception des tests. La ralisation des tests. Lvaluation des tests. La correction dventuelles anomalies. Les cas dutilisation implments jusque l sont les cas dutilisation prioritaires, voici leurs tests.
Le formulaire vierge tant affich, nous avons saisi les informations ci-dessus. En validant, le patient doit figurer dans notre base de donnes.
La phase dlaboration
110
Nous avons vrifi lexistence dune ligne patient dont le code est 0257803 travers Oracle Entreprise Manager (application oracle dtaille dans lannexe (B). la vrification est russie.
Conclusion :
Dans cette phase, nous avons termin de capturer tous les besoins des utilisateurs, analys tous les cas dutilisation et conu la plupart dentre eux. Le produit principal de cette phase est lincrment cration dun dossier patient . Ainsi, grce lactivit de conception de cette phase, nous pensons maintenant que larchitecture est suffisamment stable pour quelle puisse guider les deux prochaines phases : la construction et la transition.
Chapitre
(III)
La phase de construction
objectif de la phase de construction est daboutir un produit final, exploitable par les utilisateurs. Dans cette phase nous allons prsenter larchitecture matrielle mise en
place, construire le schma final de la base de donnes et implmenter les cas dutilisation nouveaux et secondaires et les tester.
III.1 Conception des nouveaux cas dutilisation identifis lors de la phase antrieure :
La phase de construction
112
Interface identification
(from Use Case View)
C_identification
(from Use Case Vi ew)
Accs
Modle danalyse
trace
trace
<<boundary>> souris
<<boundary>> ecran
<<entity>> Accs
(from Use Case View)
Modle de conception
<<boundary>> clavier
FigIII.1 : Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Sidentifier .
III.1.1.2- Diagramme de classes du modle de conception pour le cas dutilisation Sidentifier :
La phase de construction
113
<<boundary>> souris
Utilisateur
(from Use Case View)
<<boundary>> clavier
<<control>> C_identification
(from Use Case View)
<<boundary>> ecran
<<entity>> Accs
(from Use Case View)
La phase de construction
114
:ecran : Utilisateur
:clavier
:souris
:Interface identification
:C_identification
:Accs
afficher_interface_identification ()
afficher_interface_identification () interface_affiche
saisir_nom_usager (nu) saisir_mot_de_passe ( mp) identification (nu, mp) identifier_utilisateur (nu, mp) afficher_message_rsultat () message_visualis
La phase de construction
115
Interface paramtrage
(from Use Case View)
C_param
(from Use Case View)
Mdecin
Modle danalyse
trace
<<c ontrol>> C_param
trace
Mdecin
(from Use Case View)
<<boundary>> souris
<<boundary>> ecran
Modle de conception
<<boundary>> clavier
FigIII.4: Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Paramtrer mdecins .
III.1.2.2- Diagramme de classes du modle de conception pour le cas dutilisation Paramtrer mdecins :
<<boundary>> souris
<<control>> C_param
(from Use Case View)
Administrateur
(from Use Case View)
FigIII.5 : Diagramme de classes du modle de conception pour le cas dutilisation Paramtrer mdecins .
La phase de construction
116
III.1.2.3 - Diagramme de squence du modle de conception pour le cas dutilisation Paramtrer mdecins :
:ecran : Administrateur
:clavier
:souris
:Interface paramtrage
C_param
:Mdecin
afficher_interface_paramtrage ()
afficher_interface_paramtrage () interface_affiche
clique_bouton_Paramtrer_mdecins afficher_interface_mdecin () afficher_interface_mdecin () interface_affiche paramtrer_mdecins ( med) paramtrage_mdecins ( med) paramtrer_mdecins ( med)
afficher_message_rsultat () message_visualis
La phase de construction
117
Modle danalyse
Interface paramtrage
(from Use Case Vi ew)
C_param
(from Use Case Vi ew)
Chambre
(from Use Case Vi ew)
trace
<<boundary> > souris
trace
<<c ontrol>> C_param
(from Use Case Vi ew)
<<boundary>> ecran
Modle de conception
<<boundary>> clavier
FigIII.7 : Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Paramtrer chambres .
III.1.3.2- Diagramme de classes du modle de conception pour le cas dutilisation Paramtrer chambres :
<<boundary>> souris
<<boundary>> clavier
Administrateur
(from Use Case Vi ew)
<<control>> C_param
(from Use Case Vi ew)
<<boundary>> ecran
<<entity>> Chambre
(from Use Case Vi ew)
La phase de construction
118
III.1.3.3 - Diagramme de squence du modle de conception pour le cas dutilisation Paramtrer chambres :
:ecran : Administrateur
:clavier
:souris
:Interface paramtrage
C_param
:Chambre
clique_bouton_Paramtrer_chambres afficher_interface_chambres () afficher_interface_chambres () interface_affiche paramtrer_chambres ( ch) paramtrage_chambres ( ch) paramtrer_chambres ( ch) afficher_message_rsultat () message_visualis
La phase de construction
119
Interface paramtrage
(from Use Case View)
C_param
(from Use Case View)
Modle danalyse
Cuisine
trace
<<boundary>> souris
<< boundary>> ecran
trace
<<control>> C_param
(from Use Case View)
<<entity>> Cuisine
(from Use Case V iew)
Modle de conception
<<boundary>> clavier
FigIII.10 : Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Paramtrer cuisine .
III.1.4.2- Diagramme de classes du modle de conception pour le cas dutilisation paramtrer cuisine :
<<boundary>> souris
Administrateur
(from Use Case View)
<<boundary>> clavier
<<control>> C_param
(from Use Case View)
<<boundary>> ecran
<<entity>> Cuisine
(from Use Case View)
La phase de construction
120
III.1.4.3 - Diagramme de squence du modle de conception pour le cas dutilisation Paramtrer cuisine :
:ecran : Administrateur
:clavier
:souris
:Interface paramtrage
C_param
:Cuisine
clique_bouton_Paramtrer_cuisine afficher_interface_cuisine () afficher_interface_cuisine () interface_affiche paramtrer_cuisine ( cui) paramtrage_cuisine ( cui) paramtrer_cuisine ( cui)
afficher_message_rsultat () message_visualis
La phase de construction
121
Interface paramtrage
(from Use Case View)
C_param
Prestation
Modle danalyse
trace
trace
<<boundary>> souris
<<boundary>> ecran
<<control>> C_param
(from Use Case View)
<<entity>> Prestation
(from Use Case View)
Modle de conception
<<boundary>> clavier
FigIII.13 : Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Paramtrer prestations .
III.1.5.2- Diagramme de classes du modle de conception pour le cas dutilisation paramtrer prestations :
<<boundary>> souris
Administrateur
(from Use Case View)
<<boundary>> clavier
<<control>> C_param
(from Use Case View)
<<boundary>> ecran
<<entity>> Prestation
(from Use Case View)
La phase de construction
122
III.1.5.3 - Diagramme de squence du modle de conception pour le cas dutilisation Paramtrer prestations :
:ecran : Administrateur
:clavier
:souris
:Interface paramtrage
C_param
:Prestation
clique_bouton_Paramtrer_prestations afficher_interface_prestations() afficher_interface_prestations () interface_affiche paramtrer_prestations ( pre) paramtrage_prestations ( pre) paramtrer_prestations ( pre)
afficher_message_rsultat () message_visualis
La phase de construction
123
Interface paramtrage
(fro m Use Ca se Vie w)
C_param
(from Use Case View)
Convention
Modle danalyse
trace
<<boundary>> souris
<<boundary>> ecran
trace
<< c ontrol>> C_param
(from Use Case View)
<<entity>> Convention
(from Use Case View)
Modle de conception
<<boundary>> clavier
FigIII.16 : Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Paramtrer conventions .
III.1.6.2- Diagramme de classes du modle de conception pour le cas dutilisation paramtrer conventions :
<<boundary>> Interface paramtrage
(from Use Case View)
<<boundary>> souris
Administrateur
(from Use Case View)
<<boundary>> clavier
<<control>> C_param
(from Use Case View)
<<boundary>> ecran
<<entity>> Convention
(from Use Case View)
La phase de construction
124
III.1.6.3 - Diagramme de squence du modle de conception pour le cas dutilisation Paramtrer conventions :
:ecran : Administrateur
:clavier
:souris
:Interface paramtrage
C_param
:Convention
afficher_interface_paramtrage ()
afficher_interface_paramtrage () interface_affiche
clique_bouton_Paramtrer_conventions afficher_interface_conventions () afficher_interface_conventions () interface_affiche paramtrer_conventions ( co) paramtrage_conventions ( co) paramtrer_conventions ( co)
afficher_message_rsultat () message_visualis
La phase de construction
125
Interface paramtrage
(from Use Case Vi ew)
C_param
(from Use Case Vi ew)
Fluid_app
Modle danalyse
trace
<<boundary>> souris <<boundary>> ecran <<control>> C_param
trace
<<entity>> Fluid_app
(from Use Case Vi ew)
Modle de conception
<<boundary>> clavier
FigIII.19 : Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Paramtrer fluides et appareillage .
III.1.7.2- Diagramme de classes du modle de conception pour le cas dutilisation paramtrer fluides et appareillage :
<<boundary>> souris
Administrateur
(from Use Case View)
<<boundary>> clavier
<<control>> C_param
(from Use Case View)
La phase de construction
126
III.1.7.3 - Diagramme de squence du modle de conception pour le cas dutilisation Paramtrer fluides et appareillage :
:ecran : Administrateur
:clavier
:souris
:Interface paramtrage
C_param
:Fluid_app
afficher_interface_paramtrage ()
afficher_interface_paramtrage () interface_affiche
clique_bouton_Paramtrer_fluides_et appareillage afficher_interface_fluides_et appareillage () afficher_interface_fluides_et appareillage () interface_affiche paramtrer_fluides_et appareillage ( fa) paramtrage_fluides_et appareillage ( fa) paramtrer_fluides_et appareillage ( fa) afficher_message_rsultat () message_visualis
La phase de construction
127
Interface paramtrage
(from Use Case Vi ew)
C_param
(from Use Case Vi ew)
Accompagnant
(from Use Case Vi ew)
Modle danalyse
trace
<<boundary>> souris
<<boundary>> ecran
trace
<<control>> C_param
(from Use Case Vi ew)
<<entity>> Accompagnant
(from Use Case Vi ew)
Modle de conception
<<boundary>> clavier
FigIII.22 : Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Paramtrer tarifs accompagnant .
III.1.8.2- Diagramme de classes du modle de conception pour le cas dutilisation paramtrer tarifs accompagnant :
<<boundary>> souris
Administrateur
(from Use Case Vi ew)
<<boundary>> clavier
<<control>> C_param
(from Use Case Vi ew)
<<boundary>> ecran
<<entity>> Accompagnant
(from Use Case Vi ew)
La phase de construction
128
III.1.8.3 - Diagramme de squence du modle de conception pour le cas dutilisation Paramtrer tarifs accompagnant :
:ecran : Administrateur
:clavier
:souris
:Interface paramtrage
C_param
:Accompagnant
clique_bouton_Paramtrer_tarifs_accompagnant afficher_interface_accompagnant () afficher_interface_accompagnant () interface_affiche paramtrer_tarifs_acc ( acc) paramtrage_tarifs_acc ( acc) paramtrer_tarifs_acc (acc) afficher_message_rsultat () message_visualis
FigIII.24 : Diagramme de squence du modle de conception pour le cas dutilisation Paramtrer tarifs accompagnant .8
La phase de construction
129
Interface rglement
(from Use Case View)
C_rglement
(from Use Case View)
Rglement
Modle danalyse
trace
<<boundary>> souris <<boundary>> ecran <<control>> C_rglement
trace
<<entity>> Rglement
(from Use Case View)
Modle de conception
<<boundary>> clavier
FigIII.25 : Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Enregistrer rglement .
III.1.9.2- Diagramme de classes du modle de conception pour le cas dutilisation Enregistrer rglement :
<<boundary>> souris <<boundary>> Interface rglement
(from Use Case View)
<<control>> C_rglement
(from Use Case View)
Caissier
(from Use Case View)
<<boundary>> clavier
<<boundary>> ecran
<<entity>> Rglement
(from Use Case View)
FigIII.26 : Diagramme de classes du modle de conception pour le cas dutilisation Enregistrer rglement .
La phase de construction
130
III.1.9.3 - Diagramme de squence du modle de conception pour le cas dutilisation Enregistrer rglement :
:ecran : Caissier
:clavier
:souris
:Interface rglement
:C_rglement
:Rglement
FigIII.27 : Diagramme de squence du modle de conception pour le cas dutilisation Enregistrer rglement .9
III.1.10- Conception de cas dutilisation Passer un produit alimentaire une facture patient :
III.1.10.1- Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Passer un produit alimentaire une facture patient :
La phase de construction
131
C_facture
(from Use Case View)
Ligne_prodalim
(from Use Case View)
Facture
(from Use Case View)
trace
<<control>> C_facture
(from Use Case View)
trace
<<entity>> Ligne_prodalim
(from Use Case View)
<<boundary>> souris
<<boundary>> ecran
<<entity>> Facture
(from Use Case View)
<<boundary>> clavier
FigIII.28 : Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Passer un produit alimentaire une facture patient .
III.1.10.2- Diagramme de classes du modle de conception pour le cas dutilisation Passer un produit alimentaire une facture patient :
La phase de construction
132
<<boundary>> souris
Secrtaire d'tage
(from Use Case View)
<<boundary>> clavier
<<control>> C_facture
(from Use Case View)
III.1.10.3 - Diagramme de squence du modle de conception pour le cas dutilisation Passer un produit alimentaire une facture patient :
La phase de construction
133
:clavier
:souris
:C_facture
:Ligne_prodalim
:Facture
ajouter_prodalim ( cpa, num_dos, quantit) ajout ( cpa, num_dos, quantit) ajouter_prodalim ( cpa, num_dos, quantit)
10
cpa : code produit alimentaire. mtpa : montant du produit alimentaire ajouter. rubrique : cest la rubrique de la facture o doit figurer le produit alimentaire en question.
La phase de construction
134
Interface accompagnant
(f rom Use Case Vi ew)
C_accompagnant
(from Use Case View)
Accompagnant
(from Use Case Vi ew)
Modle danalyse
trace
<<boundary>> souris <<boundary>> ecran
trace
<<c ontrol>> C_accompagnant
(from Use Case View)
<<entity>> Accompagnant
(from Use Case Vi ew)
Modle de conception
<<boundary>> clavier
FigIII.31 : Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Enregistrer accompagnant .
III.1.11.2- Diagramme de classes du modle de conception pour le cas dutilisation Enregistrer accompagnant :
<<boundary>> souris
<<control>> C_accompagnant
Secrtaire d'tage
(from Use Case View)
<<boundary>> clavier
<<entity>> Accompagnant
<<boundary>> ecran
La phase de construction
135
III.1.11.3 - Diagramme de squence du modle de conception pour le cas dutilisation Enregistrer accompagnant :
:ecran :clavier :souris : Interface accompagnant :C_accompagnant :Accompagnant
: Secrtaire d'tage
afficher_interface_accompagnant ()
afficher_interface_accompagnant () interface_affiche
enregistrer_acc ( num_dos, nbr) enregistrement_acc ( num_dos, nbr) afficher_message_rsultat () message_visualis enregistrer_acc ( num_dos, nbr)
FigIII.33 : Diagramme de squence du modle de conception pour le cas dutilisation Enregistrer accompagnant .11
III.1.12- Conception de cas dutilisation Passer un fluide ou un appareillage une facture patient :
III.1.12.1- Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Passer un fluide ou appareillage une facture patient :
nbr : nombre daccompagnants . Il est important de signaler que les noms daccompagnants nont aucune utilit pour notre systme et cest uniquement leur nombre qui nous importe.
11
La phase de construction
136
Interface facturation
(from Use Case View)
C_facture
(from Use Case View)
Ligne_fluid_app
(from Use Case View)
Facture
Modle danalyse
trace
<<control>> C_facture
(from Use Case View)
trace
<<entity>> Ligne_fluid_app
(from Use Case View)
<<boundary>> souris
<<boundary>> ecran
<<entity>> Facture
(from Use Case View)
Modle de conception
<<boundary>> clavier
FigIII.34 : Traabilit entre le modle danalyse et le modle de conception pour le cas dutilisation Passer un fluide ou appareillage une facture patient .
III.1.12.2- Diagramme de classes du modle de conception pour le cas dutilisation Passer un fluide ou appareillage une facture patient :
<<boundary>> souris
Secrtaire d'tage
(from Use Case View)
<<boundary>> clavier
<<control>> C_facture
(from Use Case View)
La phase de construction
137
III.1.12.3 - Diagramme de squence du modle de conception pour le cas dutilisation Passer un fluide ou appareillage une facture patient :
:clavier
:souris
:C_facture
:Ligne_fluid_app
:Facture
ajouter_fluid_app( cfa, num_dos, quantit) ajout ( cfa, num_dos, quantit) ajouter_fluid_app ( cfa, num_dos, quantit)
III.2 Implmentation :
Au cours de cette phase, nous poursuivons la construction du schma de la base de donnes et limplmentation des cas dutilisation restants.
cfa : code du fluide ou appareillage. mtfa : montant du fluide ou appareillage ajouter . rubrique : cest la rubrique o doit figurer le fluide ou appareillage en question.
La phase de construction
138
anticip la construction de la base de donnes en mentionnant les entits Ligne_prestation , Ligne_prodalim , Ligne_produit , Ligne_fluid_app . Ces entits sont en fait des classes-associations entre la classe entit Facture et chacune des entits Prestation , Cuisine , produit et Fluide_app .
Mthodes
modifier_patient supprimer_patient
Type retourn
boolen boolen
paramtres
Patient pat String codep
Type retourn
boolen boolen Dossier
paramtres
Dossier dos String num_dos String critre, String var
Type retourn
boolen void Facture
paramtres
String mt, String rubrique, String num_dos String num_dos, Float mtsjour String num_dos
La phase de construction
139
Accs Attributs
NP MP
Libell
Nom dutilisateur Mot de passe String String
Type
Mthodes
identifier_utilis ateur
Type retourn
boolen
paramtres
string nu, string mp
Libell
Code mdecin Nom du mdecin Prnom du mdecin Adresse du mdecin Tlphone du mdecin Spcialit du mdecin String String String String String String
Type
Mthodes
paramtrer_mdeci ns
Type retourn
boolen
paramtres
Mdecin med
Libell
Code de la chambre Etat doccupation String String
Type
Mthodes
paramtrer_chambr es
Type retourn
boolen
paramtres
Chambre ch
La phase de construction
140
Cuisine Attributs
CCS DESIGNATION PRIX
Libell
code produit alimentaire Dsignation du code produit alimentaire prix du produit alimentaire String String String
Type
Mthodes
paramtrer_cuisine
Type retourn
boolen
paramtres
Cuisine cui
Prestation Attributs
CP DESIGNATION COEFFICIENT NOMBRE
Libell
Code prestation Dsignation du code prstation Coefficient de la prestation Nombre String String String String
Type
Mthodes
paramtrer_presta tions
Type retourn
boolen
paramtres
Prestation pre
La phase de construction
141
Convention Attributs
CC ORGANISATION CONVENTION R_SEJOUR R_ANALYSE R_RADIO
Libell
Code convention Organisation Convention Remise sur sjour Remise sur analyse Remise sur radio String String String Float Float Float
Type
Mthodes
paramtrer_conven tions
Type retourn
boolen
paramtres
Convention co
Libell
Code fluide/appareil Dsignation fluide/appareill. Unit de mesure du fluide/appaeill. Prix du fluide/appareill. String String String Float
Type
Mthodes
paramtrer_fluid _app
Type retourn
boolen
Paramtres
fluide_app fa
La phase de construction
142
Accompagnant Attributs
ND DATE_E NOMBRE
Libell
Code du dossier du patient accompagn date dentre de/des (l) accompagnant(s) Nombre des accompagnants String Date Integer
Type
Mthodes
paramtrer_tarifs _acc enregistrer_acc
Type retourn
boolen boolen
Paramtres
Accompagnant acc string num_dos, integer nbr
Libell
Code dossier Montant TTC rgler Mode du payement String Float String
Type
Mthodes
enregistrer_rgle ment
Type retourn
boolen
Paramtres
Rglement reg
Libell
Catgorie de chambres Prix de la nuite String Float
Type
Mthodes
extraire_prix Float
Type retourn
Paramtres
String categorie
La phase de construction
143
Libell
Coefficient dun type de prestation Designation du type prestation TVA du type prstation Prix du coefficient String String Float Float
Type
Mthodes
extraire_prix Float
Type retourn
Paramtres
String coefficient
NB :
lentit tarif est lentit des types de prestations , les types de prestation sont
analyses , radios et oprations de coefficients respectivement B , R et K . Ces coefficients ont chacun un prix unitaire. Lintrt de cette entit est dassigner chaque coefficient (type de prestation) un prix unitaire. Ensuite pour dterminer le prix dune prestation, on multiplie son nombre par le prix unitaire de son coefficient.
Le diagramme de classes suivant reprsente les associations entre toutes les classes entits du systme, dcrites lors de la phase courante et la phase antrieure.
La phase de construction
144
<<entity>> Accompagnant
(from Use Case View)
entity Tarif
(from Use Case View)
<<entity>> Rglement
(from Use Case View)
<<entity>> Convention
(from Use Case View)
<<entity>> Patient
(from Use Case View)
1 0..n 1 1 1..n
<<entity>> Tarif
0..1
1 1..n
<<entity>> Dossier
(from Use Case View)
1..n 1..n 1
1..n
<<entity>> Prestation
<<entity>> Mdecin
(from Use Case View)
0..n
Ligne_prestation
<<entity>> Cuisine
(from Use Case View)
1 0..n
Ligne_prodalim
0..n
<<entity>> Facture
(from Use Case View)
1..n
1 Catgorie_CH
(from Use Case View)
<<entity>>
0..n
0..n
Sejour
0..n 0..n
<<entity>> Produit
(from Use Case View)
Ligne_produit
Ligne_fluid_app
<<entity>> Fluid_app
(from Use Case View)
<<entity>> Accs
(from Use Case View)
Les rgles de passage du diagramme de classes vers la base de donnes, ainsi que les rgles de normalisation tant dj prsents dans la phase dlaboration, lors de lactivit dimplmentation, nous allons tablir alors le schma final de la base de donnes travers le diagramme de classes cidessus.
La phase de construction
145
Libell
Nom dutilisateur Mot de passe
Type
VARCHAR VARCHAR
Contraintes
Cl primaire Cl primaire
Libell
Code mdecin Nom du mdecin Prnom du mdecin Adresse du mdecin Tlphone du mdecin Spcialit du mdecin
Type
VARCHAR VARCHAR VARCHAR VARCHAR VARCHAR VARCHAR
Contraintes
Cl primaire
Libell
Code de la chambre Catgorie de la chambre Etat doccupation
Type
VARCHAR VARCHAR VARCHAR
Contraintes
Cl primaire
La phase de construction
146
Cuisine Colonne
CCS DESIGNATION PRIX
Libell
code produit cuisine Dsignation du code produit alimentaire prix du produit alimentaire
Type
VARCHAR VARCHAR VARCHAR
Contraintes
Cl primaire
Libell
Code prestation Dsignation du code prestation Coefficient de la prestation Nombre
Type
VARCHAR VARCHAR VARCHAR VARCHAR
Contraintes
Cl primaire
Libell
Code convention Organisation Dsignation Remise sur sjour Remise sur analyse Remise sur radio
Type
VARCHAR VARCHAR VARCHAR FLOAT FLOAT FLOAT
Contraintes
Cl primaire
La phase de construction
147
Fluide-app Colonne
CF DESIGNATION UNITE PRIX
Libell
Code fluide/appareil Dsignation fluide/appareill. Unit de mesure du fluide/appaeill. Prix du fluide/appareill.
Type
VARCHAR VARCHAR VARCHAR FLOAT
Contraintes
Cl primaire
Libell
Code du dossier du patient accompagn date dentre de/des (l) accompagnant(s) Nombre des accompagnants
Type
VARCHAR DATE NUMBER
Contraintes
Cl trangre
Cl primaire
Libell
Code dossier Montant TTC rgler Mode du payement
Type
VARCHAR FLOAT VARCHAR
Contraintes
Cl primaire
La phase de construction
148
Colonne
ND CP DATEF HEURE QUANTITE PRIX NB
Ligne_prestation Libell
Code Dossier Code prestation Date de facturation Heure de facturation Quantit de prestation Prix unitaire prestation Numro du bon
Type
VARCHAR VARCHAR DATE VARCHAR NUMBER FLOAT VARCHAR
Contraintes
Cl trangre Cl trangre Cl primaire Cl primaire
Unique
Libell
Code Dossier Code produit Date de facturation Heure de facturation Quantit de produit Prix unitaire dun produit Numro du bon
Type
VARCHAR VARCHAR DATE VARCHAR NUMBER FLOAT VARCHAR
Contraintes
Cl trangre Cl trangre Cl primaire Cl primaire
Unique
La phase de construction
149
Ligne_prodalim Colonne
ND CCS DATE_F HEURE_F QUANTITE NB
Libell
Code dossier Code du produit alimentaire
Type
VARCHAR VARCHAR DATE VARCHAR NUMBER VARCHAR
Contraintes
Cl trangre Cl trangre Cl primaire Cl primaire Unique
Libell
Code dossier Code du produit alimentaire
Type
VARCHAR VARCHAR DATE VARCHAR
Contraintes
Cl trangre Cl trangre Cl primaire
Libell
Catgorie de chambres Prix de la nuite
Type
VARCHAR FLOAT
Contraintes
Cl primaire
La phase de construction
150
Tarif Colonnes
COEFFICIENT TYPE_PRESTATION TVA PRIX
Libell
Coefficient dun type de prestation Dsignation du type prestation TVA du type prestation Prix du coefficient
Type
VARCHAR VARCHAR FLOAT FLOAT
Contraintes
Cl primaire
La phase de construction
151
Voici le diagramme de dploiement qui reprsente la rpartition physique des micro-ordinateurs clients, contenant chacun une copie de lapplication, et le serveur de donnes.
La phase de construction
152
PC Etage 1
PC Etage 4
PC Etage 2
PC Etage 3
La phase de construction
153
Une seule classe de contrle. Une classe entit ou plus. Limplmentation de tous les cas dutilisation du systme passent par ces tapes : Implmentation de la classe persistante : il sagit dcrire les lignes de code qui permettent, par hritage, toutes les classes entit daccder la base de donnes. Trois sous-tapes nous faut pour le russir ; lenregistrement du driver de connexion (pour notre un cas objet sun.jdbc.odbc.JdbcOdbcDriver()), ensuite laffectation
connection de la connexion au pilote ODBC adquat et enfin la dfinition dun objet Statement qui nous permettra de manipuler les donnes. Implmentation des classes entit : les classes entit hritent de la classe persistante, on doit le mentionner dans la spcification de la classe (public class Xxxxxx extends Persistent {-------}). Ces classes, comme nous les avons dj dcrites, ont des attributs et des mthodes. Ces proprits doivent tre implmentes suivant leurs conceptions. Implmentation des classes de contrle : les classes contrles instancient les classes entit pour manipuler les donnes. Ce sont les classes importantes, car ils reprsentent une intermdiaire entre lutilisateur (linterface utilisateur) et les donnes dont ce dernier a besoin. Implmentation des classes interfaces utilisateurs : Les classes interfaces ncessite un double travail ; un travail graphique o il sagit de dessiner les contrles qui dclenchent divers vnements, et un travail textuel o il sagit dcrire le code relatif. Pour ce dernier travail, on doit instancier la classe de contrle convenable pour, gnralement, utiliser ses mthodes dans les vnements des contrles de la classe. Exemple : un clic sur le bouton rechercher dclenche la mthode rechercher (param) de la classe de contrle, dj instancie dans la classe interface. Voici un diagramme de composants gnrique, qui clarifie ce que nous venons dexpliquer : on suppose que la conception dun cas dutilisation nomm paramtrage a dgag la classe interface Interface
La phase de construction
154
paramtrage , la classe de contrle contrle paramtrage et les deux classes entits Chambre et Catgorie .
"import"
"import"
"import"
"file" Chambre.java
"table" CATEGORIE
"file" Catgorie.java
"hrite"
"hrite"
"table" CHAMBRE
Paramtrage
III.3 Test :
Prsentons maintenant les tests effectus sur le reste des cas dutilisation dj implments pour pouvoir les valuer.
NB :
dossier patient puisquil est identique celui du cas dutilisation Rechercher un patient effectu lors de la phase antrieure.
La phase de construction
155
indpendamment, nous supposons que cette recherche soit fructueuse (le patient a t trouv) et que la modification est possible. Une fois le formulaire du patient est rempli, nous procdons la modification de tous les champs, ensuite nous vrifions la russite ou non de la mise jour directement partir de la base de donnes.
La phase de construction
156
Les cas dutilisation de paramtrage sont presque tous implments de la mme faon. Nous avons dcid alors, de dcrire un seul test qui sera valable pour tous. Le paramtrage consiste en la mise jour dune ou de plusieurs valeurs. Prenons lexemple de la mise jour dun coefficient. Il sagit gnralement de la mise jour du prix unitaire. Par exemple un B cotait deux cents millimes, aprs la mise jour il cote deux cents vingt millimes. Pour tester la russite ou non de cette opration, nous devons visualiser le changement du prix dans la base de donnes. Si le test est ngatif, la rpercussion sera un peu lourde, car dans ce cas, toutes les prestations analyses auront un prix erron.
La phase de construction
157
Conclusion :
Dans la phase de construction, nous avons achev limplmentation et les tests de tous les cas dutilisation, tout en respectant la conception labore. En dautres termes, nous dtenons la version finale du logiciel, installe dans notre environnement de dveloppement. La phase prochaine consistera installer le systme dans lenvironnement des utilisateurs.
Chapitre
(IV)
La phase de transition
En effet, le fait que nous avons dvelopp lapplication au mme endroit o se trouvaient les utilisateurs, nous a permis de tester lapplication au fur et mesure de sa construction. Les tests de lapplication sont de deux sortes, la vrification et la validation. La vrification consiste vrifier que le rsultat correspond la spcification. La validation consiste vrifier que le rsultat correspond vraiment ce que voulait lutilisateur.
e produit logiciel construit au terme de la phase antrieure tant valid et vrifi, La phase de transition consistera tout simplement installer lapplication dans lenvironnement des utilisateurs.
La phase de transition
159
Comme nous lavons signal dans lavant-propos, notre application de facturation est en fait un module dun logiciel de gestion de polyclinique. Ce systme comprend deux autres modules qui sont ; la gestion de la pharmacie et la gestion du personnel. Pour mettre en place lapplication, il faut que tous les modules soient prts, ce qui nest sincrement pas le cas jusqu ce moment. Cependant nous avons planifi ds le dbut que larchitecture du rseau sera de type clients-serveur. Le serveur contient seulement les donnes, nous y installerons donc Oracle 9i Server, ensuite nous exporterons la base de donnes de lenvironnement de dveloppement (nos micro-ordinateurs), lenvironnement des utilisateurs (le serveur). Chacun des micro-ordinateurs clients doit squiper dune copie de lapplication dveloppe. Lapplication tant teste par les responsables informatiques de la polyclinique, tous les risques sont carts et il sagira ensuite, de migrer les donnes du systme actuel de la polyclinique (application sur AS/400 dveloppe avec le GAP) vers la nouvelle base de donnes. Pour conclure cette phase, nous signalons que les ambitions des responsables informatiques ne sarrtent pas l, car ils envisagent plus tard, de passer une architecture trois-niveaux avec un serveur de donnes, un serveur dapplication et des micro-ordinateurs lgers , quips simplement dun navigateur WEB.
Conclusion Gnrale
a phase de conception du projet a dur plus que nous lavions prvue. En effet, il lui a fallu deux mois et demi, pour analyser le contexte auquel sattache notre travail et concevoir le futur systme. La tche
qui nous a embarrass le plus, consistait lapplication conforme du cycle de vie du processus unifi. La libert que nous a accorde ce processus (un processus gnrique) sest convertie en lourde responsabilit, la responsabilit daccomplir les bons choix. Si nous laborons un rsum global du mmoire, nous parlerons de quatre grandes phases :
Conclusion Gnrale
161
Linception, appele aussi incubation, a dur un mois. Pendant ce mois, il nous tait demand dassimiler le contexte du travail accomplir. La direction de la polyclinique nous a permis dexplorer le systme existant pendant une semaine. Accompagns par un agent de saisie informatique, nous avons russi dgager les points forts et faibles du systme. Ses points forts rsidaient tout simplement dans le fait quil rpond efficacement aux besoins des utilisateurs. Ses points faibles consistaient en la saisie de la mme information plusieurs fois, et en lutilisation excessive et exagre des codes. En effet les agents de saisie doivent tre en mesure dapprendre tous les codes dont ils ont besoin, sinon ils seront gns de les vrifier chaque opration. En plus de a, un nouvel employ doit passer une bonne priode, au cours de laquelle il doit apprendre plusieurs codes, avant de pouvoir utiliser aisment le systme actuel. Le dgagement des grandes fonctionnalits du systme existant na pas suffi pour aborder la phase de conception, il fallait dgager plus de besoins. Alors, il nous a fallu parler avec les acteurs du systme dinformations de la polyclinique pour enrichir notre modle initial de cas dutilisation. Et l nous nous tions confronts un problme dlicat : la dissimulation de linformation. La solution rside dans le processus unifi lui mme, et consiste au prototypage. Il fallait construire des interfaces prototypes et les prsenter aux personnes utilisant le systme actuel. Quatre jours taient indispensables pour construire des interfaces prototypes avec VB6 (Visual Basic 6.0 le langage que nous matrisons le plus). La solution tait merveilleusement brillante puisque ds que les acteurs ont vu les prototypes, toutes nos questions taient devenues moins difficiles quauparavant. Les lments livrer au terme de la phase dinception (acteurs, besoins et risques) tant dtermins, nous pouvions passer la phase suivante. La phase dlaboration a dur un mois, au cours duquel nous avons essay de stabiliser larchitecture du systme en enchanant les cinq activits gnriques. En effet, il sagissait de formuler, daffiner et danalyser la plupart des cas dutilisations, den concevoir une grande partie et dimplmenter les cas dutilisations prioritaires qui ont t dtermins lors de la premire phase.
Conclusion Gnrale
162
Ensuite nous avons entam la phase de construction. Dans cette phase, nous avions dj un modle final de cas dutilisations. Tous les cas dutilisation sont analyss et la plupart conus. Il sagissait alors de concevoir, dimplmenter et de tester le reste des cas dutilisation. Llment principal livrer au terme de cette phase est la premire version excutable du systme. Enfin nous tions arrivs la dernire phase du processus unifi, la phase de transition, o il sagissait dajuster des dtails mineurs du logiciel afin davoir la version finale et prte lutilisation. Une fois cette version est prte, nous avons install la base de donnes et lapplication dans lenvironnement des utilisateurs. Nous souhaitons que lapplication dveloppe sera aussi utile la polyclinique quelle fut pour nous, En fait, la fin de la ralisation de ce mmoire, nous avions accumul une masse importante de connaissances aussi bien sur le plan thorique que sur le plan pratique et que nous jugeons trs utile pour lavenir dune carrire professionnelle.
Annexe
(A)
endant plusieurs dcennies, le monde informatique a toujours rv dun processus qui puisse garantir le dveloppement efficace de logiciels de qualit, valable quelque soit la grandeur et la complexit du projet, et
prsentant de bonnes pratiques adaptes la mthode en question, surtout que, de nos jours, les logiciels demands sont de plus en plus imposants et exigeants quauparavant. Le processus unifi semble tre la solution idale pour remdier lternel problme des dveloppeurs. En effet, il regroupe les activits mener pour transformer les besoins dun utilisateur en un systme logiciel quelque soit la classe, la taille et le domaine dapplication de ce systme.
Annexe (A)
164
Le systme logiciel, selon notre processus, est un ensemble de composants, relis les uns aux autres par des interfaces dfinies. Le processus unifi utilise le langage UML (Unified Modeling Language). Ce langage de modlisation est une partie intgrante du processus unifi, ils ont t dailleurs dvelopps de concert. Essayons tout dabord de prsenter UML, car ses diagrammes sont utiliss dans chaque phase et activit du processus unifi, ensuite nous reviendrons sur la prsentation du processus unifi.
La notion dobjet
On ne peut pas parler dUML sans parler de lapproche oriente objet. Dans la plupart des langages traditionnels (structurs), les traitements ont une vue limite sur les donnes sur lesquelles ils sappliquent. Alors que dans les langages de POO, un objet encapsule des informations et des comportements : Les informations sont les donnes portes par lobjet, on les nomme attributs. Les comportements sont les traitements applicables cet objet, on les nomme mthodes [1]. Prenons lexemple de lobjet voiture , cet objet peut avoir les attributs suivants : Immatriculation Marque
Annexe (A)
165
Couleur Propritaire Une voiture peut changer de couleur ou de propritaire, cet objet peut alors avoir les mthodes suivantes changerCouleur(couleur) et changerProprietaire(personne).
La notion de classe
Pour grer lencapsulation, tous les objets ayant les mmes proprits (attributs et mthodes) sont rassembls dans une famille. Une famille est une classe, les objets quelles rassemblent sont les instances. Les objets dune mme classe portent tous les attributs de leur classe, ces attributs peuvent avoir des valeurs diffrentes suivant les instances. En revanche, toutes les instances partagent les comportements dfinis dans la classe [1].
Instance 1 : Immatriculation : RHJ 233 Marque : Volvo Couleur : Bleu fonc Propritaire : Mr XXXX
Classe Voiture Attributs : - Immatriculation - Marque - Couleur - Propritaire Mthodes : - changerCouleur(c) - changerPropritaire(p)
Instance 2 : Immatriculation : BHD 735 Marque : Audi Couleur : Gris mtallis Propritaire : Mme YYYY
Lhritage :
Annexe (A)
166
Cest un mcanisme par lequel on dfinit une classe comme tant le cas particulier dune classe plus gnrale. En plus des mthodes et des attributs dont elles hritent, les sous-classes peuvent dfinir leurs propres mthodes et attributs. Hritage simple : une classe hrite les attributs et les mthodes dune seule classe mre.
Compte bancaire
Compte courant
Hritage multiple : une classe hrite les attributs et les mthodes de plusieurs classes mres. Mammifre
Herbivore
Carnivore
Le polymorphisme :
Cest la possibilit pour un mme message de dclencher des traitements diffrents, suivant les objets auxquelles il est adress. Le mcanisme de polymorphisme permet donc de donner le mme nom des traitements diffrents [1].
Annexe (A)
167
Prenons lexemple simple de la mthode Min qui retourne un boolen. Cette mthode peut avoir comme paramtres deux entiers comme elle peut avoir deux chanes de caractres. On peut galement surcharger une mthode, c d ne pas fixer le nombre de ses paramtres. Exemple : la mthode somme qui retourne la somme dentiers peut tre appele de cette manire : somme(11,7) ou somme(15,2,9).
Labstraction :
Un objet est caractris par des donnes et des traitements, mais il est aussi caractris par une partie prive, une partie publique et une partie protge. Labstraction dfinit la visibilit et laccessibilit des attributs et mthodes : Publique : accessibilit toutes les classes. Protge : accessibilit limite la classe et ses ventuelles sousclasses. Prive : accessibilit limite seulement la classe [1]. Ceci dit, une classe abstraite est une classe qui ne peut avoir aucune instance directe, elle permet dorganiser un ensemble de classes de mme nature. Son rle est de factoriser un certain nombre de caractristiques dans le but de les spcialiser par la suite. La classe abstraite doit avoir des sous-classes concrtes ou abstraites. Uniquement les sous-classes concrtes peuvent tre instancies.
Lagrgation :
Cest une forme spciale dassociation qui relie deux classes, et qui permet de montrer quune classe est une partie intgrante dune autre classe. Cest une relation compos-composant. Il existe deux types dagrgations :
Annexe (A)
168
Agrgation par valeur : la dure de vie de la classe compose et celles des classes composantes sont dpendantes c d que si la classe compose est supprime, les classes composantes doivent tre supprimes. Agrgation par rfrence : la dure de vie de la classe compose et celles des classes composantes sont indpendantes.
Annexe (A)
169
Cas dutilisation : un cas dutilisation est une suite dvnements souvent initie par un acteur, qui correspond une utilisation particulire (fonctionnalit) du systme. Exemple dun diagramme de cas dutilisation :
retrait argent Guichetier dpt argent Fig. A.4 : Diagramme de cas dutilisation. bilan Directeur
Le diagramme de classes :
Le diagramme de classes se prsente sous forme de rseau de classes et dassociations. Ce rseau modlise la structure de chaque objet, son rle au sein du systme ainsi que ses relations avec les autres objets [1]. Exemple dun diagramme de classes :
Socit
Division
Departement
1 *
Salari
Fig. A.5 : Diagramme de classes. Lassociation qui existe entre Socit et Dpartement est une association dagrgation, Socit est la classe composante, Dpartement est la classe compose. Celle qui relie Socit Salari est une association un plusieurs.
Annexe (A)
170
Le diagramme de collaboration :
Il illustre les liens et les messages qui circulent entre des objets probablement types diffrents (Interface, contrle et entit). Exemple :
1: clic() 3: saisir_montant() : Interface 2: interface_affiche() : Client 6: succs() 4: retrait()
: Compte 5: retrait()
: C_retrait
Le diagramme de composants :
Il montre lorganisation et la dpendance entre les diffrents composants dun systme. Il permet de spcifier larchitecture logicielle dans un environnement de dveloppement donn. Il illustre la dcomposition du systme en lments physiques Exemple :
Identification.java
qui
peuvent
tre
des
excutables,
des
bibliothques,
des
documents
import
Abonn.java
UML prsente dautres diagrammes nous en citons le diagramme dtats transitions, de squence, dactivit et de dploiement. Ces diagrammes ne sont
Annexe (A)
171
pas dtaills dans ce mmoire, cependant les titres de quelques ouvrages qui en parlent se trouvent dans la partie bibliographie.
II Le processus unifi :
Pour dfinir le processus unifi, nous allons simplement dfinir les deux termes qui le composent : Processus : suite continue d'oprations constituant la manire de fabriquer1. En dautres termes, cest une succession de tches dans le but daccomplir un travail, un projet. Unifi : participe pass du verbe unifier, tre amen l'unit, se fondre en un tout2. En fait, les mthodes danalyse et de conception orientes objet, taient varies jusqu ce que Rambaugh, Jackobson et Boosh eut lide de les unifier. Le processus unifi sappuie sur les principes suivants :
Annexe (A)
172
caractristiques
essentielles
en
laissant
de
ct
les
dtails
secondaires. Il faut noter que tout produit est la fois forme et fonction. Lune ou lautre isolment ne saurait suffire. Les cas dutilisation et larchitecture doivent squilibrer pour crer un produit russi [2].
Annexe (A)
173
Elaboration
Construction
Transition
Iter n-1
Iter n
Inception (Incubation):
cest
la
premire
phase
du
processus unifi. Il sagit de dlimiter la porte du systme, c d tracer ce qui doit figurer lintrieur du systme et ce qui doit rester lextrieur, identifier les acteurs, lever les ambiguts sur les besoins et les exigences ncessaires dans cette phase. Il sagit aussi dtablir une architecture
candidate, c d que pour une premire phase, on doit essayer de
construire une architecture capable de fonctionner. Dans cette phase, il faut identifier les risques critiques susceptibles de faire obstacles au bon droulement du projet.
Annexe (A)
174
Annexe
(B)
ans cette annexe, nous allons prsenter les diffrents outils dont nous avons eu besoin pour accomplir le projet. Pour dessiner les modles danalyse et de conception, nous avons utilis le logiciel Rational Rose
98i. Quant au langage de programmation, il nous a t impos de travailler avec Oracle JDeveloper bas sur la technologie Java, et Oracle comme SGBD.
Annexe (B)
176
Ces modles contiennent des classes, des cas dutilisation, des objets, des packages, des composants et des relations entre eux. Ces lments, reprsents par des icnes, traitent les proprits du modle et le caractrisent. La mthode de lapplication recommande lutilisation de deux vues pour chaque modle, une vue statique et une vue dynamique. Vue statique : cette vue permet de dcrire les objets et les relations qui interviennent dans le cadre de la problmatique. Il sagit dune description de la structure des objets et de leurs caractristiques, et aussi dune description des associations qui existent entre les diffrents objets. Vue dynamique : cette vue vise dcrire les relations temporelles et vnementielles entre les objets dcrits dans la vue statique, les tats des objets (modifications internes au cours du droulement de lapplication), les actions effectues par les objets dans un contexte donn etc. Ceci dit, Rational Rose 98i nest pas un simple outil de dessin de diagrammes UML, car il permet aussi de gnrer limplmentation des classes conues, et de gnrer le schma de la base de donnes partir du diagramme de classes aprs avoir prciser le langage de programmation et le SGBD.
II Oracle JDeveloper :
Oracle JDeveloper est un environnement complet et intgr de dveloppement et de cration dapplication Java multi-tiers. Il permet de dvelopper, dboguer et dployer des applications clients Java, HTML dynamique, applications serveurs et procdures stockes. Le produit de la compagnie Borland International utilise le fameux langage de programmation orient objet Java. Dans ce qui suit, nous prsentons les caractristiques de ce langage de programmation. Java devait tre un langage multi plate-forme qui permettrait, selon le concept propos par Sun Microsystems, son concepteur, d'crire une seule fois pour toutes, des applications capables de fonctionner dans tous les environnements. L'objectif tait de taille, puisqu'il impliquait la dfinition d'une machine virtuelle
Annexe (B)
177
Java (JVM) sur laquelle les programmes crits devaient fonctionner, ainsi que la ralisation de cette machine virtuelle dans tous les environnements concerns. Sun Microsystems se chargeait par ailleurs de la ralisation d'une machine virtuelle dans les environnements Solaris et Windows, laissant d'autres le soin d'en faire autant pour les autres environnements (et en particulier MacOS, le systme d'exploitation des Macintosh). Afin que le langage devienne un standard, Sun Microsystems promettait d'en publier les spcifications et de permettre tous d'utiliser gratuitement son compilateur. Ds l'annonce de Java, le monde de l'informatique se divisait en quatre camps: ceux qui pensaient, pour des raisons varies, que cela ne marcherait jamais, ceux qui pensaient, pour des raisons tout aussi varies, qu'il fallait absolument que a marche, ceux qui ne voulaient absolument pas que cela marche, et ceux qui trouvaient qu'il tait urgent d'attendre pour voir. Ceux qui pensaient que a ne marcherait jamais considraient essentiellement qu'une machine virtuelle interprtant un langage intermdiaire (appel bytecode) ne serait jamais suffisamment performante. Il faut dire que les exemples prcdents avaient laiss des traces. D'autres considraient qu'il serait impossible d'imposer un standard ouvert dans le monde des PC vou l'hgmonie d'un seul diteur dtenant le quasi-monopole des systmes d'exploitation. Java apparaissait effectivement comme une tentative de casser le monopole de Windows. En effet, ce monopole reposait (et repose encore !) sur un cercle vicieux : tous les PC (ou presque) doivent utiliser Windows parce que toutes les applications importantes sont dveloppes pour cet environnement. Pour que cela change, il faudrait que les diteurs portent leurs produits sous un environnement diffrent : cela ne serait pas du tout rentable, puisque trs peu de PC utilisent un autre environnement que Windows. En revanche, une application dveloppe en Java pourrait fonctionner (sans aucune modification, pas mme une recompilation) dans n'importe quel environnement disposant d'une JVM. Pour cette raison, un certain nombre d'diteurs et d'utilisateurs voulaient absolument que cela fonctionne et imaginaient voir l, la fin de la domination
Annexe (B)
178
de Microsoft!. Un diteur important (Corel) annona mme qu'il allait rcrire toutes ses applications en Java. La mme raison entranait Microsoft prendre immdiatement le contre-pied de Java en proposant une technologie concurrente. Les concepteurs de Windows, en effet, arguaient qu'il tait inefficace et inutile de dvelopper des applications pour une machine virtuelle et qu'il suffisait de dvelopper une interface commune pouvant tre adapte sous diffrents environnements. Ainsi, les dveloppeurs n'taient pas tenus d'utiliser un nouveau langage. Il leur suffisait de programmer en fonction d'une nouvelle interface de programmation: ActiveX. Bien sr, cette API ne serait ni ouverte (ce qui permettrait certains de prtendre que Microsoft se rserve des fonctions pour son usage personnel afin d'avantager ses propres applications) ni gratuite. La quatrime catgorie d'utilisateurs pensait probablement que les promesses de Java taient tout fait allchantes, mais qu'on n'a jamais crit des applications avec des promesses, et qu'il fallait donc rester l'coute pour voir ce que cela donnerait. En effet, la compagnie a pu tenir ses promesses, car la dernire version de Java est si performante, que pas mal de dveloppeurs ont choisi de ladopter pour construire des applications performantes, avec des interfaces de haute qualit (bibliothques Swing et AWT) et pouvant fonctionner sur plusieurs platesformes (write once, run everywhere).
Java est extensible linfini : Java est crit en Java. Toutes les
classes existant en Java devraient tre dfinies par extension dautres classes, en partant de la classe de base la plus gnrale : la classe Object.
Annexe (B)
179
Pour tendre Java, il suffit de dvelopper de nouvelles classes. Ainsi tous les composants crits pour traiter un problme particulier, peuvent tre ajouts au langage et utiliss pour rsoudre dautres problmes.
Annexe (B)
180
particulier pour les applications temps rel ncessitant de nombreux calculs comme la simulation 3D anime [3].
Annexe (B)
181
Driver ODBC
Oracle Net8
Oracle Net8
Rseau TCP/IP
III Oracle 9i :
Oracle 9i est un SGBD qui offre plusieurs services, gnralement exploitables partir de Oracle Enterprise Manager. OEM est une structure de gestion comprenant trois niveaux : 1. La console et ses outils intgrs offrent aux administrateurs une interface graphique permettant de grer la totalit de l'environnement Oracle. 2. Des serveurs Management Server et un rfrentiel de base de donnes offrent un niveau intermdiaire volutif servant au traitement des tches de gestion du systme. 3. Des agents Intelligent Agent, sont installs sur chaque noeud du rseau pour surveiller les services offerts par le noeud et pour excuter des tches lies au serveur Management Server. Il faut noter quon peut galement lancer la console en mode autonome lorsquon souhaite administrer des bases de donnes, mais quon na pas besoin de surveiller les vnements ni les travaux programms.
Annexe (B)
182
2 3
Fig. B.2 : Structure de gestion de lOEM LOEM offre plusieurs services dont voici les plus importants : Administration de la totalit de l'environnement Oracle, y compris les bases de donnes, les applications et les services. Diagnostic, modification et rglage de plusieurs bases de donnes. Programmation de tches sur plusieurs systmes diffrents intervalles. Surveillance de conditions de base de donnes sur tout le rseau. Administration de plusieurs noeuds et services rseau depuis de nombreux emplacements. Partage de tches avec d'autres administrateurs. Regroupement des services connexes pour faciliter les tches d'administration. Lancement d'outils Oracle et d'outils tiers intgrs. Instance Management permet d'effectuer les oprations suivantes : Dmarrage et arrt d'une base de donnes. Affichage et dition des valeurs des paramtres d'instance. Gestion des sessions utilisateur, et affichage du code SQL en cours d'excution et de son plan d'excution.
Annexe (B)
183
Gestion des transactions en suspens. Gestion des oprations excution longue. Contrle des ressources de traitement via des plans de ressource. Gestion de configurations stockes. Administration des verrous externes et des sessions consommant la plus grande quantit de ressources (si Diagnostics Pack est install). Schema Manager permet d'administrer des objets de schma comme les tables, les index et les objets Oracle8. Schema Manager permet d'effectuer les oprations suivantes : Cration d'objets de schma. Modification d'objets de schma. Suppression d'objets de schma. Affichage des dpendances portant sur les objets de schma Security Manager permet d'effectuer les oprations suivantes : Cration d'utilisateurs, de rles et de profils. Modification des utilisateurs, des rles et des profils. Suppression d'utilisateurs, de rles et de profils. Attribution de privilges et de rles aux utilisateurs de base de donnes. Storage Manager permet d'administrer les objets de stockage tels que les espaces disque logiques (Tablespace), les segments d'annulation, les fichiers de donnes et les fichiers de journalisation. Vous pouvez effectuer les oprations suivantes : Cration d'objets de stockage. Ajout de fichiers de donnes et de segments d'annulation un espace disque logique. Suppression d'objets de stockage. Mise en ligne ou hors ligne d'objets. Affichage des dpendances des objets. Oracle9i offre des fonctionnalits intgres de prise en charge de Data Warehouse via OLAP Services et des mta donnes OLAP stockes dans la base de donnes.
Annexe
(C)
D
gnral.
ans cette annexe, nous prsentons quelques interfaces utilisateurs du logiciel de facturation. Nous avons choisi dexposer les interfaces principales, qui sont : lidentification, la recherche dun patient, la
cration dun patient, la cration dun dossier patient, la facturation de prestations, la facture, le paramtrage des conventions et le paramtrage
Glossaire gnral
Glossaire gnral
194
Acteur : Dv. Cest un lment qui interagit avec le systme dans le but de satisfaire un besoin. Un acteur peut tre une personne, un logiciel ou un matriel. Admission : Cont. Chez une clinique, cest le fait de recevoir (accepter) un patient. Ladmission entrane plusieurs oprations informatiques ralises par la rceptionniste, dont la cration dun dossier patient. AGL : Dv. Atelier de Gnie Logiciel. Les ateliers de gnie logiciel sont apparus dans les annes 80 pour faciliter le travail de dveloppement de logiciels en quipe. API : Dv. Application Programming Interface. L'API est un concept contemporain de la programmation d'applications modulaires (prcurseur de la programmation oriente objet ). En effet, chaque fonction d'un programme est partiellement autonome dans la mesure o elle n'agit sur aucun autre module fonctionnel ou variable " globale " du programme ; on l'appelle en lui fournissant des paramtres en entre et elle s'achve l'aide de paramtres en sortie. Appareillage (ou Appareill.) : Cont. Cest un service offert par la polyclinique. Il consiste en la mise disposition dun appareil mdical pour un patient. Lunit de facturation de ce service est lheure ou la journe. Architecture : Dv. Cest lorganisation dun systme logiciel, elle reprsente la manire dont les dveloppeurs ont slectionn les lments structurels composants le systme, ainsi que leurs interfaces et leurs comportements tel quils sont spcifis dans les collaborations. AWT : Dv. Cest une bibliothque Java qui permet de construire des interfaces graphiques avances.
-A-
Glossaire gnral
195
Besoin : Dv. Etat de privation dun acteur, que le systme doit satisfaire travers lune de ses futures fonctionnalits. On distingue deux types de besoins : besoins fonctionnels, que le systme doit tre capable deffectuer, et besoins non fonctionnels, c d lis aux performances du systmes et aux contraintes de lenvironnement et de limplmentation. Bon de prestation : Cont. Chaque consommation dune prestation doit tre accompagne par un bon justificatif, comportant le code de la prestation, le code du dossier patient et la quantit consomme.
-B-C-
Cas dutilisation : Dv. Cest la description dune squence dactions donnant lieu un rsultat qui satisfait le besoin dun acteur. Ces progiciels disposent d'un ensemble d'outils composant un environnement plus ou moins complet de gestion et d'automatisation de la production de logiciels. Les grandes fonctions assures sont notamment : - la consignation des diffrents besoins. - la ralisation d'organigrammes fonctionnels. - la planification des tches de dveloppement. - la prparation de la documentation. - la programmation des diffrents modules du logiciel. Connection : Dv. Objet Java qui permet la connexion une base de donnes travers un driver JDBC.
Glossaire gnral
196
Convention : Cont. Cest une sorte de contrat tabli entre la polyclinique et une organisation. Ce contrat permet aux employs de lorganisation une hospitalisation moins coteuse (remises sur diffrentes rubriques de la facture) et une probable prise en charge des frais de leurs hospitalisations par lorganisation laquelle ils appartiennent.
ECG : Cont. Electrocardiogramme, cest un examen tout fait indolore qui permet denregistrer les courants lectriques gnrs par le cur. Encapsulation : Dv. Cest le mcanisme de regroupement des donnes et des comportements. Lencapsulation favorise la dissimulation de linformation. Extra : Cont. Cest une prestation que le patient peut sen passer, quil commande sa guise. Exemple : bouteille deau minrale, kinsie
-E-F-
Fluide : Cont. Se dit dun corps (liquide ou gaz) dont les molcules sont faiblement lies, et qui peut ainsi prendre la forme du vase qui le contient, Exemple : O2. Dans la polyclinique, on facture les fluides par jour ou par heure.
Glossaire gnral
197
Hritage : Dv. Cest un mcanisme par lequel on dfinit une classe comme tant le cas particulier dune classe plus gnrale. En plus des mthodes et des attributs dont elles hritent, les sous-classes peuvent dfinir leurs propres mthodes et attributs.
-H-J-K-
JDBC : Dv. Java DataBase Connectivity, cest une API qui dfinit laccs une base de donnes.
K opratoire : Cont. Coefficient opratoire, le nombre de K mesure l'importance de l'intervention chirurgicale et sert tablir sa tarification. Exemple : une appendicite est cote K 50.
Message : Dv. Spcification dune communication entre objets vhiculant des informations, donnant lieu en principe une activit.
-M-
Glossaire gnral
198
ODBC : Dv. ODBC signifie Open DataBase Connectivity. Il s'agit d'un format dfini par Microsoft permettant la communication entre des clients bases de donnes fonctionnant sous Windows et les SGBD du march. On distingue trois grandes familles de prestations : analyse, imagerie (radio), acte opratoire. Ces types de prestations possdent chacun, un coefficient (analyse => B, radio=> R, acte opratoire=> K). Ceci dit il y a une prestation qui nappartient aucune famille, et qui figure dans la facture comme tant une rubrique : cest lECG. Organisation : Cont. Cest une socit conomique ou politique qui est susceptible dtablir une ou plusieurs conventions avec la polyclinique.
-O-P-
Polymorphisme : Dv. Cest la possibilit pour un mme message de dclencher des traitements diffrents, suivant les objets auxquelles il est adress. POO : Dv. Programmation Orient Objet. Un langage de programmation orient objet doit tre fond sur trois notions indispensables : lencapsulation, le polymorphisme et lhritage. Prestation : Cont. Cest un service offert par la polyclinique travers des infirmiers (bilan, radio), des mdecins (oprations chirurgicales) etc. Prise en charge : Cont. Une organisation, en convention avec la polyclinique, peut offrir ces employs le privilge de payer leur place, une partie du montant de leurs factures. Cette partie est dtermine par un taux appel taux de prise en charge. Ce taux constitue un article de la convention tablie. Exemple : si le taux
Glossaire gnral
199
de prise en charge est de 75%, le patient paye 25% du montant de la facture et lorganisation paye le reste. Il faut noter que ce taux est appliqu au montant de la facture aprs en avoir soustraire les extras, qui seront pays par le patient. Produit : Cont. Cest un bien offert par la polyclinique. On distingue quatre grandes familles de produits : les mdicaments, les usages uniques, les fluides et les produits alimentaires. Prototype : Dv. Cest le premier exemplaire construit dun logiciel, destin en exprimenter les qualits en vue de la construction.
-RRemise sur rubrique : Cont. Une remise accorde par la polyclinique ne sapplique pas sur le montant total de la facture, mais sur les montants des rubriques qui la constituent, car gnralement, on applique une remise diffrente dune rubrique une autre. Cette diffrenciation est due aux marges de bnfices diffrentes des rubriques. Par exemple : on napplique pas de remise suprieur 15% sur les usages uniques, car la marge de bnfice nest pas grande, par contre, la remise sur le sjour peut aller jusqu 50%. ResultSet : Dv. Objet Java sous forme de matrice, servant stocker et manipuler le rsultat dune requte SQL select . Risque non technique : Dv. Risque li des aspects de gestion tel les ressources disponibles (individus, temps) Risque technique : Dv. Risque li des aspects techniques telles que la mthode de conception, les technologies dimplmentation
Glossaire gnral
200
-SStatement : Dv. Objet Java qui permet la manipulation des donnes dune base partir dune instance Connection . Swing : Dv. Cest une bibliothque Java qui permet de construire des interfaces graphiques avances.
-UUsage unique : Cont. Cest un produit offert par la clinique, qui ne peut tre utilis quune seule fois. Exemple : seringue etc. NB : Dv. est labrviation de Dveloppement , a veut dire que le terme dfinir est li au dveloppement de lapplication. Cont. est labrviation de Contexte du systme , a veut dire le terme dfinir est li au contexte du systme logiciel.
Bibliographie
[1] : Nathalie Lopez, Jorge Migueis et Emmanuel Pichon, Intgrer UML dans vos projets, Editions Eyrolles, 2000. [2] : Ivar Jackobson, Grady Boosh, James Rambaugh, Le processus unifi de dveloppement logiciel, Editions Eyrolles, 1999. [3] : Antoine Mirecourt, Pierre-Yves Saumont, Le dveloppeur Java 2, Editions Eyrolles, 1999.
[4] : Frdric Berqu, Serge Frezefond, Ludovic Sorriaux, Java-XML et Oracle, Editions Eyrolles, 2001. [5] : Ivar Jackobson, Manus Cristerson, Patrick Jonsson, Gunar Overgaard, Le gnie logiciel orient objet, Editions Addison Wesley.