11 juil. 2011

Examens Fin Formation - TDI - Pratique 2011 - Variante 5


Examens Fin Formation  - TDI - Pratique 2011 - Variante 5



Dossier 1  BASE DE DONNEES

Une calèche est une voiture à traction animale. Elle sert essentiellement à la promenade.
Les calèches prolifèrent dans plusieurs villes marocaines (Taroudant, Marrakech, Meknès, Fès …) et offrent aux touristes des tournées intra-ville à travers des circuits touristiques permettant de découvrir la ville et son histoire, ses monuments ou tout simplement ses paysages.
La base de données comprendra tous les circuits touristiques assurés par les calèches de chaque ville du pays. Un circuit est définit par un certain nombre de places ou lieux d’escale pouvant susciter un intérêt plus ou moins particulier de la part des visiteurs. Par exemple la place « Jamaa Elfna » à Marrakech ou la place « Lahdim » à Meknès  représentent des attractions touristiques incontournables.
Un circuit comprendra une liste ordonnée des lieux à visiter. Cet ordonnancement est représenté par la propriété « numero_ordre » de l’association « Englobe ». 
Les concepteurs de la base de données ont élaboré le modèle logique de données suivant :
       Caleche(code_caleche, description_caleche, #login, #code_ville)
       Image(code_image, chemin_image, description_image, #code_caleche)
       Personne(login, nom_personne, prenom_personne, passe, email)
       Ville( code_ville, nom_ville)
       Circuit( code_circuit, description_circuit, prix_moyen, #code_ville)
       Lieu( code_lieu, description_lieu)
       Englobe(code_circuit, code_lieu, numero_ordre)
Les champs en gras et soulignés représentent les clés primaires des tables. ceux marqués par un # représentent les clés étrangères


 EFF - Examens Fin Formation  -   TDI - Pratique 2011 - V4-V5-V6
EFF - Examens Fin Formation - TDI - Pratique 2011 - -V5



EFF - Examens Fin Formation  -   TDI - Pratique 2011 - V4-V5-V6
EFF - Examens Fin Formation - TDI - Pratique 2011 - V5


Travail à faire : A chaque question vous devez fournir une requêtes SQL que vous devez sauvegarder dans un fichier appelé dossier1.txt :
1) Fournir toutes les requetes SQL permettant de créer  et remplir par un jeu d’enregistrement la totalité des tables du schéma relationnel présenté ci-dessus. (4 pts)
2) Ajouter une contrainte qui permet de vérifier que le mot de passe contient au moins six caractères. (1 pt)
3) Développer un déclencheur (trigger) qui permet d’annuler chaque tentative de suppression d’une Personne. (3 pts)
4) Créer la fonction qui permet de calculer le nombre de personne ayant un mot de passe de longueur égale à N. N étant le paramètre de la fonction. (4 pts)
5) Créer la procédure stockée qui permet de supprimer toutes les calèches qui n’ont aucune image. (4 pts)
6) Développer la procédure stockée « ps_liste_ circuits»   qui crée une table nommée « Liste_circuits » et l’alimenter par la liste des circuits d’une ville dont le code est transmis en paramètre. Au démarrage de l’exécution de la procédure il faut prévoir la suppression de la table « Liste_circuits » lorsqu’elle existe. (4 pts)

Dossier 2  PROGRAMMATION CLIENT/SERVEUR

Le même schéma relationnel des dossiers 1 sera repris au niveau du présent dossier.
Développer une application « client/serveur » qui intègre les fonctionnalités suivantes :
1) Ajouter un menu et une barre d’outils à votre application en rapport avec les opérations demandées dans les questions ci-dessous. (3 pts)
2) Développer le formulaire de mise à jour des personnes. Le mot de passe ne doit pas être visible. Le formulaire doit comporter les éléments suivants : (3pts)
      • Les boutons ajouter, supprimer et enregistrer.
      • Les boutons de navigation.
3) Développer le formulaire de consultation des circuits correspondant à une ville sélectionnée par l’utilisateur sur une liste déroulante. La liste à produire sous forme d’une grille doit comporter les descriptions et prix de tous les circuits de la ville sélectionnée. (4 pts)
4) Ajouter au formulaire précédent un bouton qui permet d’afficher un état de sortie des circuits trouvés. (4 pts)
5) Créer un état qui affiche l’histogramme du nombre de lieux à visiter par ville. (4 pts)
6) Développer un formulaire contenant un bouton qui sur clic permet de générer un fichier texte contenant les caractéristiques de tous les propriétaires des calèches séparés par des virgules, propriétaire par ligne. (2 pts)

Dossier 3  DEVELOPPEMENT WEB

Le même schéma relationnel des dossiers 1 et 2 sera repris au niveau du présent dossier.
L’application web permettra aux propriétaires de calèches, entre autres, de s’inscrire, d’ajouter leurs calèches …
Il s’agit de développer une application Web qui intègre les fonctionnalités suivantes :
1) Recherche des calèches par ville :
      a. Prévoir une liste déroulante permettant de sélectionner une ville. (1 pt)
      b. Sur sélection d’une ville, vous devez rechercher toutes les calèches correspondant à la ville sélectionnée. (3 pts)
      c. Afficher toutes les images d’une calèche. (3 pts)
2) Ajouter la page d’inscription des propriétaires des calèches. Cette page permet au propriétaire de s’inscrire en choisissant un login et un mot de passe et en précisant son nom, son prénom et son adresse de messagerie (voir bases de données du dossier 1). Insérer un bouton de commande à côté de la zone de texte du login, permettant de vérifier si le login choisi n’a pas déjà été choisi par un autre propriétaire de calèche. (3 pts)
3) Développer le formulaire de connexion au site web. L’utilisateur doit spécifier son login et son mot de passe. Un message d’erreur doit être affiché dans le cas où ces informations ne sont pas correctes. (2 pts)
4) Créer un formulaire permettant à un propriétaire de modifier les informations de description de ses calèches. Une fois authentifié, l’utilisateur peut accéder à toutes les informations de ses calèches et peut en modifier la description. (4pts)
5) Développer un service Web qui fournit la liste de toutes les calèches. Créer une application cliente qui permet de tester l’utilisation de votre service Web. (4 pts)

Aucun commentaire:

Enregistrer un commentaire