
Le laboratoire Galaxy Swiss Bourdin (GSB) est issu de la fusion entre le géant américain Galaxy (spécialisé
dans le secteur des maladies virales dont le SIDA et les hépatites) et le conglomérat européen Swiss
Bourdin (travaillant sur des médicaments plus conventionnels), lui-même déjà union de trois petits
laboratoires.
La mise en place des équipements et des applications pour 450 visiteurs chez le Laboratoire GSB va entraîner une inévitable demande d'assistance de la part du personnel.
La DSI désire mettre en place une solution de gestion des incidents permettant :
• de prendre en compte une demande (création d'un ticket d'incident)
• de l'affecter à un technicien
• d'enregistrer la solution apportée (création d'une base de connaissance)
• d'informer l'utilisateur de la prise en charge de sa demande
Vous êtes chargé de développer une application C# à destination des visiteurs médicaux, afin qu'ils puissent gérer des tickets d'incidents.
• Rédaction du modèle Entités Associations (MCD) de la base de données.
• Création de la base de données sous MySQL.
• Création des classes nécessaires au traitement.
• Réalisation de l'application C# qui provoquera la mise à jour de la base de données.
• Rédaction de la documentation technique de l'application contenant le diagramme des classes que vous aurez développées.
• Rédaction d'un guide d'utilisation de cette application à destination des visiteurs médicaux.
CREATE TABLE 'Equipement' 'Id_Equip' int(11) NOT NULL COMENT 'Identifiant', 'Serial' varchar(50) NOT NULL COMMENT 'Numero de serie, 'Marque' varchar(100) DEFAULT NULL, 'Modele' varchar(100) DEFAULT NULL, 'Systeme' varchar(100) DEFAULT NULL, 'Id_User' int(11) NOT NULL CONNIENT 'Cle primaire ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; CREATE TABLE 'Etat' 'Id_Stat' int(11) NOT NULL, 'num' int(11) NOT NULL COMMENT 'Numero unique ON ticket et identifiant', 'annee' int(11) NOT NULL COMMENT 'Annee de creation et identifiant', 'Date' date NOT NULL, 'Annotation' varchar(250) DEFAULT NULL COMMENT 'Details supp Explique non realise, ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; CREATE TABLE 'Niveau' 'Id_Niv' int(11) NOT NULL, 'Libelle' varchar(50) NOT NULL COMMENT 'Niveau importance du ticket' ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; CREATE TABLE 'ObjetTicket' 'Id_OT' int(11) NOT NULL, 'Libelle' varchar(50) NOT NULL COMMENT 'Titre du ticket' ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; CREATE TABLE 'Prise_En_Charge' 'num' int(11) NOT NULL COMMENT 'Numero unique ON ticket et identifiant', 'annee' int(11) NOT NULL COMMENT 'Annee de creation et identifiant', int(11) NOT NULL COMMENT 'Cle primaire', 'Dat- e_Prise_En_Charge' date NOT NULL COMMENT 'Date ou un tech Arend en charge' ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; CREATE TABLE 'Statut' 'Id_Stat' int(11) NOT NULL, 'statut' varchar(50) NOT NULL, 'Description' varchar(100) DEFAULT NULL COMMENT 'Description du statut Facultatif. ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; CREATE TABLE 'Ticket' 'num' int(11) NOT NULL COMENT 'Numero unique ON ticket et identifiant', 'annee' int(11) NOT NULL COMIENT 'Annee de creation et identifiant', 'description' varchar(500) NOT NULL COMMENT 'Detail ON ticket', 'Creation' date NOT NULL COMMENT 'Date ouverture', 'Cloture' date DEFAULT NULL COMMENT 'Date de fermeture Realiser ou non', int(11) NOT NULL CONVENT 'Cle primaire', 'Id_O- T' int(11) NOT NULL, 'Id_Niv' int(11) NOT NULL, 'Id_Equip' int(11) DEFAULT NULL COMMENT 'Identifiant' ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; CREATE TABLE 'Type_Utilisateur' 'Id_TU' int(11) NOT NULL, 'Libelle' varchar(50) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; CREATE TABLE 'Utilisateur' 'Id_User' int(11) NOT NULL COMMENT .Cle primaire., 'Nom' varchar(100) NOT NULL, 'Prenom' varchar(100) NOT NULL, 'Login' varchar(100) NOT NULL CUVENT .Identifiant de connexion., 'Password' varchar(100) NOT NULL COMENT 'Mot de passe., 'Password' varchar(100) NOT NULL COMENT 'Mot de passe., 'Id_TU' int(11) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; ALTER TABLE 'Equipement' ADD PRIMARY KEY ('Id_Equip'), ADD KEY 'Equipement_Utilisateur_FK' ('Id_User'); ALTER TABLE 'Etat' ADD PRIMARY KEY ('Id_Stat','num",'annee'), ADD KEY 'Etat_TicketO_FK' ('num','annee'); ALTER TABLE 'Niveau' ADD PRIMARY KEY ('Id_Niv'); ALTER TABLE 'ObjetTicket' ADD PRIMARY KEY ('Id_OT'); ALTER TABLE 'Prise_En_Charge' ADD PRIMARY KEY ("num",'annee','Id_User'), ADD KEY 'Prise_En_Charge_Utilisateure_FK' ('Id_User'); ALTER TABLE 'Statut' ADD PRIMARY KEY ('Id_Stat'); ALTER TABLE 'Ticket' ADD PRIMARY KEY ('num','annee'), ADD KEY 'Ticket_Utilisateur_FK' ('Id_User'), ADD KEY 'Ticket_ObjetTicketO_FK' ('Id_OT"), ADD KEY 'Ticket_Niveau1_FK' ('Id_Niv'), ADD KEY 'Ticket_Equipement2_FK' ('Id_Equip'); ALTER TABLE 'Type_Utilisateur' ADD PRIMARY KEY ('Id_TU'); ALTER TABLE 'Utilisateur' ADD PRIMARY KEY ('Id_User'), ADD KEY 'Utilisateur_Type_Utilisateur_FK' ('Id_TU'); ALTER TABLE 'Ticket' MODIFY 'num' int(11) NOT NULL AUTO_INCREMENT COMMENT 'Cle primaire, AUTO_INCREMENT=12; ALTER TABLE 'Equipement' MODIFY 'Id_Equip' int(11) NOT NULL AUTO_INCREMENT COMMENT •Identifiant., AUTO_INCREMENT=29; ALTER TABLE -Niveau- MODIFY "Id_Niv. int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=6; ALTER TABLE 'ObjetTicket' MODIFY "Id_Or 011(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=8; ALTER TABLE 'Statut' MODIFY 'Id_Stat' int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=5; ALTER TABLE 'Type_Utilisateur' MODIFY sId_TU. int(11) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT-8; ALTER TABLE "Utilisateur. MODIFY "Id_User' int(11) NOT NULL AUTO_INCREMENT COMMENT 'Cle primaire, AUTO_INCREMENT-11; ALTER TABLE 'Equipement' ADD CONSTRAINT 'Equipement_Utilisateur_Fr FOREIGN KEY ("Id_User') REFERENCES "Utilisateur. ("Id_User"); ALTER TABLE 'Etat' QDD CONSTRAINT 'Etat_Statut_Fr FOREIGN KEY ('Id_Stat-) REFERENCES -Statut- ('Id_Stat"), ADD CONSTRAINT 'Etat_Tickete_Fr FOREIGN KEY ('num','annee') REFERENCES 'Ticket' ( num , annee ); ALTER TABLE -Prise_En_Charge- ADD CONSTRAINT 'Prise En Charge Ticket Fr FOREIGN KEY ('nue,"annee.) REFERENCES 'Ticket' ("num', "annee"), ADD CONSTRAINT 'Prise_En_Charge_Utilisateure_Fr FOREIGN KEY ('Id_User-) REFERENCES 'Utilisateur, ('Id_User'); ALTER TABLE 'Ticket' ADD CONSTRAINT 'Ticket_Equipement2_Fr FOREIGN KEY ('Id_Equip') REFERENCES 'Equipement" ADD CONSTRAINT -Ticket_Niveau1_Fr FOREIGN KEY ('Id_Niv.) REFERENCES 'Niveau' (-Id_Niv"), ADD CONSTRAINT 'Ticket_ObjetTicketO_Fr FOREIGN KEY ('Id_OT.) REFERENCES 'ObjetTicket' ("Id_OT"), ADD CONSTRAINT 'Ticket_Utilisateur_Fr FOREIGN KEY ('Id_User-) REFERENCES 'Utilisateur' ('Id_User"); ALTER TABLE 'Utilisateur. ADD CONSTRAINT -Utilisateur_Type_Utilisateur_Fr FOREIGN KEY ("Id_TU') REFERENCES 'Type_Utilisateur- (-Id_TU");
L'utilisateur rentre sont identifiant et sont mot de passe.
Lorsqu’un utilisateur se connecte, le type de l'utilisateur est systématiquement vérifié (Visiteur, Responsable, Technicien, Technicien Supérieur, Gestionnaire).
Quant l'utilisateur clique sur le bouton, la Forms suivante apparaît en haut à droite de l'écran. C'est elle qui vérifie et autorise ou non l’accès. Grace à un timer cette forms ne reste que 5 secondes à l'écran
Cette page (Forms) est l'accueil et la page principale de l'application pour l'utilisateur'.
En cliquant sur le bouton correspond il peut saisir un incidents ou consulter ses incidents.
Cet onglet permet à l'utilisateur de créer un incident, pour ce faire il doit :
• Séléctionner l'objet du ticket
• L'equipement concernés
• Mettre une description (facultatif)
• Enregistrer
Cet onglet affiche la liste des tickets de l'utilisateur connecté de deux manière différentes.
En cliquand sur l'oeil l'utilisateur pourra changer l'affichage de ses tickets.
Il lui est aussi possible de supprimer sont ticket en cliquant sur l'icone 'poubelle' (première vue), ou en double cliquant sur la ligne (deuxième vue).
Cette page (Forms) est l'accueil et la page principale de l'application pour le technicien.
En cliquant sur le bouton correspond il peut créer un incident, affecter un incident ou suivre les tickets.
Cet onglet permet au technicien de créer un incident, pour ce faire il doit :
• Séléctionner l'utilisateur concernés
• Séléctionner l'objet du ticket
• L'equipement concernés
• Mettre une description (facultatif)
• Enregistrer
Cette page permet au technicien de voir tout les tickets en attente créer par l'utilisateur. En cliquant sur l'oeil, changer l'affichage.
Le technicien peut affecter ou supprimer un ticket.
Cette page permet au Technicien de voir tout les tickets créer par l'ensemble des utilisateurs. En cliquant sur l'oeil l'affichage change.
Le technicien peut trier les tickets en fonction de l'etat de l'incident. Il peut aussi supprimer un ticket
Cette page (Forms) est l'accueil et la page principale de l'application pour le technicien supérieur.
En cliquant sur le bouton correspond il peut affecter un incident, valider un incident ou suivre les tickets.
Cette page permet au technicien supérieur de voir tout les tickets en attente créer par l'utilisateur.
En cliquant sur l'oeil, le technicien supérieur peux changer l'affichage.
Le technicien supérieur peut affecter ou supprimer un ticket.
Cette page permet au technicien superieur de voir tout les tickets en attente déja affecter.
En cliquant sur l'oeil, le responsable peux alterner l'affichage.
Le responsable a la possibilité de valider un ticket
Cette page permet au technicien supérieur de voir tout les tickets créer par l'ensemble des utilisateurs. En cliquant sur l'oeil, il peut changer l'affichage.
Le technicien peut trier les tickets en fonction de l'etat de l'incident et aussi supprimer un ticket.
Cette page (Forms) est l'accueil et la page principale de l'application pour le gestionnaire.
Le Gestionnaire peut utiliser toutes les fonctionnalité de l'application.
En cliquant sur le bouton correspond il peut créer un incident, affecter un incident, valider un incident ou suivre les tickets.
Cet onglet permet au gestionnaire de créer un incident, pour ce faire il doit :
• Séléctionner l'utilisateur concernés
• Séléctionner l'objet du ticket
• L'equipement concernés
• Mettre une description (facultatif)
• Enregistrer
Cette page permet au gestionnaire de voir tout les tickets en attente créer par l'utilisateur.
En cliquant sur l'oeil, le gestionnaire peux changer l'affichage.
Le gestionnaire peut affecter ou supprimer un ticket.
Cette page permet au gestionnaire de voir tout les tickets en attente déja affecter.
En cliquant sur l'oeil, le gestionnaire peux alterner l'affichage.
Le gestionnaire à la possibilité de valider un ticket
Cette page permet au gestionnaire de voir tout les tickets créer par l'ensemble des utilisateurs. En cliquant sur l'oeil, il peut changer l'affichage.
Le gestionnaire peut trier les tickets en fonction de l'etat de l'incident et aussi supprimer un ticket.