Please enable JavaScript to access this page. Examen Fin Formation - Théorique - 2007 - HTML - Réseaux - ADO.NET - UML - JAVA - Merise - Techniques de Développement Informatique

Examen Fin Formation - Théorique - 2007 - HTML - Réseaux - ADO.NET - UML - JAVA - Merise


Examen de Fin de Formation - Théorique - Session Juin 2007

Dossier 1 – Connaissance générales HTML - Réseaux - ADO.NET - SQL Server: (8Pts)


1. Soit le code HTML suivant :
<html>
<head>
</head>
<body TEXT="#000000" BGCOLOR="#ffffff" LINK="#000020" VLINK="#666666" ALINK="#660000" TOPMARGIN="0" LEFTMARGIN="0" MARGINWIDTH="0" MARGINHEIGHT="0">
     <table align="center" border="0" cellPadding="0" cellSpacing="0" width="75%">
          <tr BGCOLOR="white"  onMouseOver="this.bgColor='red';" onMouseOut="this.bgColor='green';">
          <td align="middle"><font size="3">Ligne 1</FONT></TD></TR>
          <tr><td HEIGHT="2">Ligne 2</TD></TR>
     </TABLE>
</body>
</html>

     a. Interpréter ce code en spécifiant ce que sera affiché dans un navigateur. (0.5Pt)
     b. Que se passe t-il, quand le pointeur survole sur la ligne 1. (1Pt)
     c. Que se passe t-il, quand le pointeur quitte la ligne 1. (1Pt)
     d. Que se passe t-il, quand le pointeur survole sur la ligne 2. (0.5Pt)

2. On veut établir une connexion à une base de données SQL Server sans DSN, alors définir la chaîne de connexion qui permet de faire ce travail. (1Pt)
3. Proposer un schéma qui permet de décrire le fonctionnement du service IIS au moment de la connexion à une page Web ASP qui accède à une base de données SQL Server dans une  Architecture 3-tires. Expliquer le déroulement de ce processus. (1Pt)
4. QCM (0.25Pt/Question) – (3Pts)

Question N° 1
Donnez, parmi les classes d’objets ADO suivantes, celles qui représentent des objets fonctionnant en mode connecté :
a. SQLConnection
b. DataTable
c. SQLCommand
d. DataRow

Question N° 2
Vous souhaitez créer une application en .Net et privilégiez la performance de l’application.
Vous choisissez :
a. Le fournisseur de données géré OLEDB Provider (.NET OLEDB Data Provider)
b. Le fournisseur de données géré SQL Provider (.NET SQL Server Data Provider)
c. De maintenir les connexions à la base de données ouvertes le plus longtemps possible.
d. De minimiser le temps de connexion de l’application à la base de données et de travailler  avec des objets déconnectés.

Question N° 3
Vous souhaitez afficher dans une DataGrid des données filtrées selon un critère exprimé sur la valeur d’une colonne d’un objet DataTable. Quelle solution privilégiez-vous ?
a. Vous modifiez la commande associée à la propriété SelectCommand du DataAdapter et faîtes appel à la méthode Fill de ce dernier.
b. Vous avez recours à la méthode Select de l’objet DataTable
c. Vous créez une DataView en spécifiant le filtre adéquat.
d. Vous parcourez les lignes de la datatable et affectez la propriété false à la propriiété Visible des lignes que vous souhaitez ignorer.

Question N°4
Parmi ces affirmations concernant ADO.Net, une est fausse : Laquelle ?
a. Les objets connectés (Connection, Command, et DataAdapter) sont différenciés en fonction du fournisseur de données qui peut-être un fournisseur OLEDB, un pilote ODBC ou un fournisseur spécialisé pour une base de données particulière (SQL Server, Oracle, …).
b. L’objet DataAdapter est un « pont » qui permet de reporter les mises à jour effectuées sur les objets DataTable dans les tables de la base de données à laquelle il est connecté.
c. Un objet DataTable ne peut être constitué qu’à partir d’une seule table. Il est en effet impossible de créer une DataTable à partir d’une requête portant sur plusieurs tables.
d. La méthode Fill du DataAdapter permet de récupérer la liste des champs de la requête sous-jacente de la commande SelectCommand du DataAdapter et de récupérer les lignes de données renvoyées par cette requête.

Question N° 5
JDBC permet d’accéder aux données présentes dans un SGBDR sans se préoccuper des détails techniques et des spécificités des différents moteurs relationnels
a. VRAI
b. FAUX

Question N°6
Les données d'un ResultSet ne sont pas consultables plusieurs fois
a. VRAI
b. FAUX

Question N° 7
Pour établir une connexion avec un SGBDR, il faut avoir un objet qui réalise l'interface Connexion
a. VRAI
b. FAUX

Question N° 8
Un Serveur IlS 5.0 sur un serveur Windows 2000 comporte comme services:
a. Serveur de vidéo en streaming
b. Serveur Web
c. Serveur de News
d. Serveur Ftp
e. Serveur de fichiers Windows

Question N° 9
IIS signifie
a. Intemet Information Service
b. Information Integral Server
c. Intranet Informatique de Service

Question N°10
Quel est le port par défaut du protocole http:
a. 21
b. 81
c. 80
d. 25

Question N° 11
Quel est le chemin physique du répertoire du site web par défaut
a. C: \Winnt\InetPub\WWWRoot
b. C:\Mes Documents\WWWRoot
c. C :\Program Files\Microsoft IIS\WWWRooot
d. C :\InetPub\WWWRoot
e. C :\Winnt\System32\Web

Question N° 12
Peut-on gérer plusieurs sites Web distinct sur IlS installé sur Windows 2000 pro
a. Qui
b. Non

Dossier 2 – UML (8Pts):

MonAuto est une entreprise qui fait le commerce, l'entretien et les réparations de voitures.
MonAuto désire un logiciel de gestion des réparations; elle dispose déjà d'un logiciel comptable. Les factures de réparations seront imprimées et gérées par le logiciel comptable.
Le logiciel de gestion des réparations devra communiquer avec le logiciel comptable pour lui transmettre les réparations à facturer.
Le logiciel de gestion des réparations est destiné en priorité au Chef d'atelier, il devra lui permettre de saisir les fiches de réparations et le travail effectué par les divers employés de l'atelier.
Pour effectuer leur travail, les mécaniciens et autres employés de l'atelier vont chercher des pièces de rechange au magasin. Lorsque le logiciel sera installé, les magasiniers ne fourniront des pièces que pour les véhicules pour lesquels une fiche de réparation est ouverte; ils saisiront directement les pièces fournies depuis un terminal installé au magasin.
Lorsqu'une réparation est terminée, le Chef d'atelier va essayer la voiture. Si tout est en ordre, il met la voiture sur le parc clientèle et bouclera la fiche de réparation informatisée. Les fiches de réparations bouclées par le Chef d'atelier devront pouvoir être importées par le comptable dans le logiciel comptable.
Une réparation est toujours relative à un véhicule, elle nécessite le travail d'un ou plusieurs employés selon leur qualification et, éventuellement, des pièces de rechange.
La facture est envoyée au propriétaire du véhicule ou à une compagnie d'assurance en cas d'accident; une compagnie d'assurance est un client pour le garage. En cas de réparation en garantie, aucune facture n'est envoyée.
Le modèle doit contenir les renseignements qui permettent de faire la facture, selon les règles suivantes :
     - Un véhicule vendu par MonAuto bénéficie d'une année de garantie à partir de la date de livraison.
     - Le montant de la facture s'obtient en additionnant :
          •    Le nombre d'heure de chacun des employés ayant participé à la réparation * taux horaire de l'employé en fonction de sa qualification (chef, mécanicien, manœuvre...)
          •    Prix unitaire * quantité de chaque pièces utilisées (4 bougies, 1 filtre à air...)
Pour bénéficier d'une réparation sous garantie, le client doit amener son véhicule à l'atelier avant l'expiration du délai de garantie. En fin de période de garantie, l'atelier peut être surchargé et le Chef d'atelier ne pourra pas toujours effectuer la réparation avant la date d'expiration. Pour résoudre ce dilemme et éviter toute réclamation, lorsqu'un client prend un rendez-vous pour effectuer une réparation en garantie le Chef d'atelier prépare une fiche de réparation "garantie" et y indique la date de la demande de rendez-vous du client, en plus des 2 dates de réception et restitution du véhicule pour la réparation; cette date de demande de rendez-vous sera utilisée comme critère de réparation en garantie.
Restrictions
Nous ne gérons pas l'historique des changements de propriétaires des voitures; chaque fois qu'une voiture change de propriétaire, un nouveau véhicule sera créé avec indication de la nouvelle immatriculation, du nouveau propriétaire et de la date de livraison s'il s'agit d'une vente de MonAuto.

Les véhicules qui appartiennent à MonAuto, le parc de voitures neuves et d'occasion, sont traités comme des véhicules sans propriétaire et sans indication d'immatriculation.
Les informations historiques non expressément demandées, comme les prix de pièces de rechanges, les taux horaire, les qualifications des employés, etc. ne doivent pas être traitées.
1. Concevez le diagramme de classe (5Pts).
2. Concevez le modèle de cas d'utilisation de la  gestion des réparations (3Pts)

Dossier 3 - JAVA (6Pts) :

On souhaite traiter des comptes bancaires. Un compte bancaire possède à tout moment une donnée entière, son solde. Il est caractérisé par ailleurs par un code donné sous forme de chaîne de caractères, et un titulaire qui est une personnephysique (nom,prenom). Ce solde peut être positif (compte créditeur) ou négatif (compte débiteur). Au départ, un compte bancaire a un solde nul, un code nul par défaut, et un titulaire inconnu. Il est aussi possible de créer un compte en précisant son solde initial, son titulaire et son code initial.
Utiliser son compte consiste à pouvoir y faire des dépôts et des retraits. Pour ces deux opérations, il faut connaître le montant de l'opération et vérifier que le code proposé est bien le code du compte.
L'utilisateur peut aussi consulter le solde de son compte.
1. Créer une classe PersonnePhysique, avec un constructeur , une méthode d'affichage et une méthode modification. (2Pts)
2. Créer une classe CompteBancaire prenant en compte la description précédente. Cette classe comprendra les méthodes suivantes : (2Pts)
     • Constructeurs
     • Une méthode de modification du code
     • Une méthode de consultation du solde
     • Une méthode de dépôt
     • Une méthode de retrait
3. La banque souhaite autoriser pour certains clients un découvert. Par défaut, ce découvert autorisé est nul. Une méthode decouvertAutorise permettra d'en spécifier la valeur. Un retrait est alors possible tant que le client ne dépasse pas ce découvert autorisé. Le cas échéant, le retrait est refusé. (2Pts)
     • Précisez le(s) attribut(s) à ajouter à la classe comptebancaire et modifiez le(s) constructeur(s).
     • Ecrivez la méthode decouvertautorise.
     • Modifiez la méthode de retrait.

Dossier 4 – Procédures stockées & Triggers ( 10Pts) :

Vous participez à la réalisation d’un logiciel permettant de gérer les comptes bancaires d’un particulier.
Dans un premier temps, l’utilisateur définit les différents comptes à gérer en déclarant pour chacun le numéro de compte, le nom de la banque,  …
L’utilisateur saisit ensuite chacune des opérations réalisées sur l’un de ces comptes. Une opération correspond à un débit (paiement par chèque de la facture de téléphone, retrait d’espèce à l’aide d’une carte bancaire, …) ou à un crédit (dépôt à la banque de chèque reçu par exemple).
Chaque fin de mois, l’utilisateur reçoit un relevé de compte ( un par compte bancaire). Il effectue alors le rapprochement entre les opérations qu’il a saisies et celles constatées par la banque :
     - pointage des opérations saisies apparaissant sur le relevé. Ce pointage consiste à mémoriser le fait qu’une opération a été constatée par la banque. L’opération est dite « pointée » et le numéro du relevé est mémorisé.
     - Ajout des opérations non saisies apparaissent sur le relevé (réception d’un virement correspondant au salaire mensuel par exemple). Ces opérations sont automatiquement pointées puisqu’elles ont été constatées par la banque.
Les opérations permettent de calculer le solde d’un compte, différence entre la somme des opérations de crédit et la somme des opérations de débit. En fait, chaque compte possède deux soldes :
     - le solde réel qui prend en considération toutes les opérations saisies par l’utilisateur, qu’elles aient été constatées ou non par la banque.
     - Le solde en banque qui ne prend en considération que les opérations constatées par la banque, c’est à dire ayant fait l’objet d’un pointage à partir d’un relevé.
Le calcul des soldes des comptes conduit à additionner un grand nombre d’opérations, et ce depuis la mise en service de l’application. Pour éviter ces calculs, il a été décidé de mémoriser les soldes réels et « en banque » dans la table Compte.
Dès lors se pose le problème de la cohérence entre les opérations et le solde des comptes. La solution adoptée est le recours à un ensemble de procédures stockées et de déclancheurs destinés à maintenir à jour les soldes dans la table COMPTE.

Schéma de la base de données :
     Banque (Bid, Bnom)
     Compte ( Cid, Cnuméro, Clibelle, CsoldeReel, CsoldeBanque, #Cbanque)
     Operation (Oid, Odate, Omantant, Osens, #Oreleve, #Ocompte)
     Releve (Rid, Rdate, #Rcompte)

Le MCD correspondant au schéma de la base de données est :
Examen Fin Formation - Théorique - 2007 - HTML - Réseaux - ADO.NET - UML - JAVA - Merise
Examen Fin Formation - Théorique - 2007

Remarques :
- CsoldeReel et CsoldeBanque représentent respectivement le solde réel et le sole en banque du compte.
- Osens est un caractère mémorisant la nature de l’opération (D : Débit, C : Crédit)
- Oreleve contient le numéro de relevé Rid ayant permis de pointer l’opération. Cet attribut contient la valeur NULL si l’opération n’a pas encore été pointée.

Rédiger l’ensemble des procédures stockées et des déclencheurs nécessaires à la gestion des informations calculées CsoldeReel et CsoldeBanque :
- PROCEDURE MAJSOLDEBANQUE (2Pts)
- PROCEDURE MAJSOLDEREEL (2Pts)
- TRIGGER INSERTION OPERATION (2Pts)
- TRIGGER MISE A JOUR OPERATION (2Pts)
- TRIGGER SUPPRESSION OPERATION (2Pts)


Dossier 5 – MERISE ( 8Pts) :

Le service de formation d'une entreprise souhaite gérer ses actions de formation. Afin d'adresser des convocations aux employés,  on enregistre les agents avec leur numéro,  leur nom,  prénom ainsi que l'établissement auquel ils appartiennent (l'entreprise est implantée dans différents lieux géographiques). De cet établissement on connaît le code,  le nom et l'adresse.
Un certain nombre de cours sont offerts aux employés qui peuvent s'y inscrire. Ces cours sont connus dans un catalogue,  où ils figurent avec un code et un intitulé. Tous les cours sont animés par des employés internes à
l'entreprise. On s’assurera des cours que les personnes affectées à l'animation ne sont pas sujettes à une inscription à ce même cours. Personne dans cette entreprise n'ayant le don d'ubiquité.
On désire établir des convocations aussi bien pour le personnel inscrit que pour le personnel enseignant. A ce sujet,  il faut savoir que tout cours ( initiation informatique,  anglais débutant,  espagnol perfectionnement, ...) est planifié plusieurs fois par an et que l'on parle plus volontiers de session. Une session est repérée par un numéro et a un intitulé (printemps, été, ...). La planification consistera à décider quels cours seront offerts dans une session, et pour chacun d’entre eux quelle en sera la date et la durée, puis de les inscrire au catalogue. Les inscriptions ou animations ou convocations se font par référence aux cours et aux sessions.
Lors de la convocations on fait savoir la liste des ouvrages (dont on donne le numéro, la référence et l'intitulé) qu’il est conseillé de consulter pour un cours donné.

1- Construire le modèle conceptuel de données. (4Pts)
2- En déduire :
     a- Le modèle logique de données (2Pts)
     b- Le modèle physique de données (2Pts)

Retrouvez-nous sur Facebook
×Facebook Mouad Ouisse