Please enable JavaScript to access this page. Recherche :: Examens Fin Formation - Corrigés :: - Techniques de Développement Informatique
Showing posts with label Examens Fin Formation - Corrigés. Show all posts
Showing posts with label Examens Fin Formation - Corrigés. Show all posts

EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3 - (Vb.net, Csharp), (ADO.Net, LINQ), (Sql server, Oracle)


EFF - Examen de Fin de Formation TDI Pratique 2012 Variante 1 (Vb.net, Csharp), (ADO.Net, LINQ), (Sql server, Oracle)

Dossier 1 (6 pts)
Les élections législatives au Maroc se déroulent selon un découpage en circonscriptions électorales.  Une province ou préfecture contient une ou

plusieurs  circonscriptions électorales ; une région contient plusieurs provinces et/ ou préfectures. Un candidat  appartient à un seul Parti politique  et

représente une seule  circonscription électorale. Les électeurs votent dans la circonscription électorale ouu ils sont inscrits. Une application de gestion

des élections législatives utilise la base de données suivante:
N.B.  les champs marqués en gras et soulignés représentent les clés primaires des tables et les champs marqués par # représentent les clés étrangères.
      Region (idRegion, nomRegion)
      ProvincePrefecture (idProvPref,  nomProvPref, #idRegion)
      Circonscription (idCirconscription, nomCir,  NombreSiege, #idProvPref)
      Parti (idParti, nomParti)
      Candidat  (CINcandidat, nomCandidat, prenomCandidat, DateNC, adrCandidat, #idCirconscription, #idParti)
      Electeur (CINelecteur, nomElecteur, dateNE,adrElecteur, #idCirconscription)

-Structure des tables :

EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3
EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3



EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3
EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3



EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3
EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3



EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3
EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3



EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3
EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3



EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3
EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3


Travail à faire :

Enregistrer sur un fichier texte qui porte le nom « dossier1.txt » les requêtes SQL qui répondent aux questions suivantes.
Donner les requêtes qui permettent de :
1) Créer la base de données et remplir les tables par un jeu  d’essai.   (1 pt)
2) Créer une procédure stockée qui affiche la liste des candidats qui représentent une circonscription donnée comme paramètre et appartenant à un parti donné comme paramétre. (1 pt) (Le code de la procédure doit être sauvegardé dans le fichier dossier1.txt)
3) Créer une procédure stockée qui affiche le nombre d'électeur inscrits dans chaque province d'une région donnée (idRegion transmis en paramètre).  (1 pt)
4) Créer une procédure stockée qui affiche les partis politiques qui ne participent pas dans une circonscription donnée.  (1 pt)
5) Créer un trigger qui empêche l’ajout d’une circonscription avec une valeur de la colonne NombreSiege inférieure à 0 ou supérieure à 6.  (1 pt)
6) Créer un trigger, qui lors de l'ajout d'un candidat à la table candidat, ajoute également ce candidat à la table Electeur : en effet un candidat est aussi un électeur qui va voter dans la même circonscription. (1 pt)

Dossier 2   (7 pts)
Créer une application « client/serveur » qui se base sur la base de données du dossier 1 permettant d’assurer les fonctionnalités suivantes :
1. Créer un menu pour cette application permettant de réaliser les opérations demandées par les questions qui suivent.  (0,25 pt)
2. Créer un formulaire de mise à jour des circonscription avec les éléments suivants : (1,25 pt)
     • Des boutons de navigation.
     • Les boutons Ajouter, Modifier, Supprimer et Enregistrer.
     • La province est choisie dans une liste déroulante.
3.
     a- Créer un formulaire contenant une grille qui affiche la liste des partis d'une circonscription avec, pour chaque parti, le nombre total de candidats enregistrés; la circonscription est choisie dans une liste déroulante. (1 pt)
     b- Ajouter à côté de chaque parti une case à cocher. Ajouter en bas de la grille, un bouton de commande qui permet de supprimer le ou les partis sélectionnés avec tous les enregistrements connexes. (1 pt)
4. Créer un formulaire permettant d'afficher la liste des candidats d'une circonscription pour un parti donné; la circonscription ainsi que le parti sont choisis dans deux listes déroulantes. (1,5 pt)
5. Créer un état  qui imprime les circonscriptions de la région « GRAND-CASABLANCA » avec les informations : nom de la circonscription, nombre de sièges affectés.  (1 pt)
6. Créer un état graphique de type secteur montrant pour chaque région, le nombre d'électeurs. (1 pt)

Dossier 3  (7 pts)
On souhaite développer un site web dynamique permettant aux utilisateurs d’effectuer des recherches et afficher des statistiques relatives aux élections législatives marocaines. On utilise la base de données du dossier 1.
1. Créer la page web d’accueil avec un menu de navigation entre les pages demandées dans les questions qui suivent.  (0,5 pt)
2. Créer une page web qui affiche la liste des électeurs inscrits dans une circonscription donnée. La circonscription  doit être sélectionnée dans une liste. L'affichage comprend le nom, le prénom et la date de naissance des électeurs classés par nom en ordre croissant. (1 pt)
3.
    a- Créer une page web contenant une grille à deux colonnes qui affiche dans la 1er colonne, le nom de chaque parti et dans la 2ème colonne, le nombre total de candidats par parti au niveau national. en bas de la page, on affiche le nombre total de condidats. (1 pt)
    b- Insérer à gauche de chaque parti une case à cocher, et en bas de la pages web, un lien hypertexte nommé "générer" qui permet, lorsqu'on clique dessus, de générer un fichier texte contenant le ou les partis sélectionnés ainsi que leurs candidats dans l’ordre de leur apparition sur la page. (1 pt)
4. Créer une page web de mise à jour des électeurs avec :
    a) Des boutons permettant d’ajouter, modifier et supprimer des électeurs.  (0,5 pt)
    b) Ajouter des validateurs : les champs de saisi ne doivent pas être vides.  (0,5 pt)
    c) Une grille affichant les électeurs.  (0,5 pt)
5. On veut effectuer  une recherche plus fine d’une circonscription afin d’afficher des statistiques sur les candidats et les électeurs.
Créer une page web  avec les fonctionnalités suivantes :
a) Pour le choix d’une circonscription, on affiche en haut de la page une ligne contenant les lettres qui sont les initiales des circonscriptions (uniquement pour celles existantes dans la base de données) sous forme de liens hypertextes : (1 pt)
A      B     E    F    G    H    J  …..
b) Lorsque l’utilisateur clique sur une lettre, la page affiche le nom de toutes les circonscriptions qui commencent par cette lettre sous forme de liens hypertextes. (0,5pt)
c)    Un clic sur une circonscription affiche le nombre total de candidats de cette circonscription ainsi que le nombre total d'électeur et le poucentage de candidats par rapport aux électeurs. (0,5 pt)

EFF - Examen de Fin de Formation TDI Pratique 2012 Variante 2 (Vb.net, Csharp), (ADO.Net, LINQ), (Sql server, Oracle)

Dossier 1 (6 pts)
Les élections législatives au Maroc se déroulent selon un découpage en circonscriptions électorales.  Une province ou préfecture contient une ou plusieurs  circonscriptions électorales ; une région contient plusieurs provinces et/ ou préfectures. Un candidat  appartient à un seul Parti politique  et représente une seule  circonscription électorale. Un candidat appartient à une tranche d’âge (« moins de 35 ans », « entre 35 et 45 ans » …). Un candidat possède un numéro d’ordre  (un classement) parmi les candidats du même parti de la même circonscription (liste électorale). Un candidat possède un niveau scolaire (« primaire », « secondaire » « supérieur »…).
Une application de gestion des élections législatives utilise la base de données suivante :
N.B.  les champs marqués en gras et soulignés représentent les clés primaires des tables et les champs marqués par # représentent les clés étrangères.
     Region (idRegion, nomRegion)
     ProvincePrefecture (idProvPref,  nomProvPref, #idRegion)
     Circonscription (idCirconscription, nomCir,  NombreSiege, #idProvPref)
     Parti (idParti, nomParti)
     TrancheAge (idTranche, tranche)
     Candidat  (CINcandidat, nomCandidat, prenomCandidat, DateNC, niveauScolaire, NumOrdreListe, adrCandidat, #idCirconscription,# idParti, #idTrancheAge)

-Structure des tables :

EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3
EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3



EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3
EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3



EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3
EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3



EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3
EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3



EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3
EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3



EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3
EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3


Travail à faire :
Enregistrer sur un fichier texte qui porte le nom « dossier1.txt » les requêtes SQL qui répondent aux questions suivantes.
Donner les requêtes qui permettent de :
1) Créer la base de données et remplir les tables par un jeu  d’essai.   (1 pt)
2) Créer une procédure stockée qui affiche le nombre de candidats par province pour une  région donnée comme paramètre. (1 pt) (Le code de la procédure doit être sauvegardé dans le fichier dossier1.txt)
3) Créer une fonction qui retourne le nombre total de sièges affectés à une région donnée (idRegion transmis en paramètre).  (1 pt)
4) Créer une procédure stockée qui affiche le parti politique qui a enregistré le plus grand nombre de candidat  dans une circonscription donnée.  (1 pt)
5) Créer un trigger  qui empêche l’ajout d’une circonscription avec une valeur de la colonne NombreSiege inférieure à 0 ou supérieure à 6.  (1 pt)
6) Créer un trigger, qui après suppression d’un candidat qui est 1er dans la liste (ayant  la colonne numOrdreListe=1),   le 2ème  candidat prend sa place  ie : son numOrdreListe est modifié en prenant la valeur 1. (1 pt)

Dossier 2   (7 pts)
Créer une application « client/serveur » qui se base sur la base de données du dossier 1 permettant d’assurer les fonctionnalités suivantes :
1. Créer un menu pour cette application permettant de réaliser les opérations demandées par les questions qui suivent.  (0,25 pt)
2. Créer un formulaire de mise à jour des candidats  avec les éléments suivants : (1,25 pt)
     • Des boutons de navigation.
     • Les boutons Ajouter, Modifier, Supprimer et Enregistrer.
     • La circonscription, le parti et la tranche d’âge  sont choisis dans des listes déroulantes.
3. Créer un formulaire contenant une grille qui affiche le pourcentage des candidats par tranche d’âge pour une circonscription choisie dans une liste déroulante. La 1ère colonne de la grille affiche la tranche d’âge et la 2ème colonne affiche le pourcentage. (1 pt)
4.
     a- Créer un formulaire permettant d’afficher la liste des candidats d’une circonscription pour un parti donné ; la circonscription ainsi que le parti sont choisis dans une  liste déroulante. L’affichage est trié selon la colonne numOrdreListe en ordre croissant. (1,5 pt)
     b- Ajouter à côté de chaque candidat une case à cocher. Ajouter en bas de la grille, un bouton de commande qui permet de supprimer le ou les candidats sélectionnés. (1 pt)
5. Créer un état  qui imprime les circonscriptions de la région « DOUKKALA-ABDA » avec les informations : nom de la circonscription, nombre de sièges affectés.  (1 pt)
6. Créer un état graphique de type histogramme montrant pour chaque niveau scolaire, le nombre de candidats. (1 pt)

Dossier 3  (7 pts)
On souhaite développer un site web dynamique permettant aux utilisateurs d’effectuer des recherches et afficher des statistiques relatives aux élections législatives marocaines. On utilise la base de données du dossier 1.
1. Créer la page web d’accueil avec un menu de navigation entre les pages demandées dans les questions qui suivent.  (0,5 pt)
2. Créer une page web qui affiche la liste des candidats qui ont le niveau scolaire « supérieur ». L’affichage comprend le nom, le prénom et la date de naissance des candidats  classés par nom en ordre croissant.  (1 pt)
3.
     a- Créer une page web permettant d’afficher tous les  candidats d’une circonscription donnée qui sont en tête des listes électorales de cette circonscription (ayant numOrdreListe=1) ; la circonscription est choisie dans une liste déroulante. (1 pt)
     b- Insérer à côté de chaque candidat une case à cocher, et en bas de la page web, un lien hypertexte nommé « produire » qui permet, lorsqu’on clique dessus, de produire un fichier texte contenant le ou les candidats sélectionnés ainsi que leurs niveaux scolaires dans l’ordre de leur apparition sur la page. (1 pt)
4. Créer une page web de mise à jour des circonscriptions avec :
     a) Des boutons permettant d’ajouter, modifier et supprimer des circonscriptions.  (0,5 pt)
     b) Ajouter des validateurs : les champs de saisi ne doivent pas être vides.  (0,5 pt)
     c) Une grille affichant les circonscriptions.  (0,5 pt)
5. On veut effectuer  une recherche plus fine d’une circonscription afin d’en afficher les partis.
Créer une page web  avec les fonctionnalités suivantes :
     a) Pour le choix d’une circonscription, on affiche en haut de la page une ligne contenant les lettres qui sont les initiales des circonscriptions (uniquement pour celles existantes dans la base de données) sous forme de liens hypertextes : (1 pt)
A      B     E    F    G    H    J  …..
     b) Lorsque l’utilisateur clique sur une lettre, la page affiche le nom de toutes les circonscriptions qui commencent par cette lettre sous forme de liens hypertextes. (0,5pt)
     c) Un clic sur une circonscription affiche la liste des partis qui représentent cette circonscription ainsi que le nombre total de partis (à la fin de la page). (0,5 pt)

EFF - Examen de Fin de Formation TDI Pratique 2012 Variante 3 (Vb.net, Csharp), (ADO.Net, LINQ), (Sql server, Oracle)

Dossier 1 (6 pts)
Les élections législatives au Maroc se déroulent selon un découpage en circonscriptions électorales.  Une province ou préfecture contient une ou plusieurs  circonscriptions électorales ; une région contient plusieurs provinces et/ ou préfectures. Un candidat  appartient à un seul parti politique  et représente une seule  circonscription électorale. Pour le résultat des élections, on compte le nombre de voix obtenu par les partis dans chaque circonscription électorales.  Les électeurs votent dans la circonscription électorale où ils sont inscrits. Une application de gestion des élections législatives utilise la base de données suivante :
N.B.  Les champs marqués en gras et soulignés représentent les clés primaires des tables et les champs marqués par # représentent les clés étrangères.
      Region (idRegion, nomRegion)
      ProvincePrefecture (idProvPref,  nomProvPref, #idRegion)
      Circonscription (idCirconscription, nomCir,  NombreElecteur, #idProvPref)
      Parti (idParti, nomParti)
      Candidat  (CINcandidat, nomCandidat, prenomCandidat, DateNC, adrCandidat, #idCirconscription,# idParti)
      Resultat (idCirconscription, idParti, nombreVoix)

-Structure des tables :


EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3
EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3



EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3
EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3



EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3
EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3



EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3
EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3



EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3
EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3



EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3
EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3


Travail à faire :
Enregistrer sur un fichier texte qui porte le nom « dossier1.txt » les requêtes SQL qui répondent aux questions suivantes :
Donner les requêtes qui permettent de :
1) Créer la base de données et remplir les tables par un jeu  d’essai.  (1 pt)
2) Créer une procédure stockée qui permet d’ajouter une ligne à la table Resultat en prenant comme paramètres un idCirconscription, un idParti et le nombre de voix. (1 pt) (Le code de la procédure doit être sauvegardé dans le fichier dossier1.txt)
3) Créer une procédure stockée qui affiche le nombre total de voix obtenu par parti  dans chaque province d’une région donnée (idRegion transmis en paramètre).  (1 pt)
4) Créer une procédure stockée qui affiche les partis politiques qui n’ont pas atteint le seuil  de 6% des voix nécessaires pour avoir un siège dans une circonscription donnée (idCirconscription comme paramère). Le test se fait à l’aide du quotient : nombre de voix  obtenu par le parti dans une circonscription, divisé par, le nombre d’électeurs de la circonscription. (1 pt)
5) Créer un trigger  qui empêche l’ajout d’une ligne à table Resultat si la valeur de la colonne  nombreVoix est supérieure à la valeur de la colonne nombreElecteur de la table Circonscription pour la même circonscription.  (1 pt)
6) Créer un trigger, qui refuse l’ajout d’un candidat  si son âge est inférieur à 18 ans ; âge minimum pour être éligible. (1 pt)

Dossier 2   (7 pts)
Créer une application « client/serveur » qui se base sur la base de données du dossier 1 permettant d’assurer les fonctionnalités suivantes :
1. Créer un menu pour cette application permettant de réaliser les opérations demandées par les questions qui suivent.  (0,25 pt)
2. Créer un formulaire de mise à jour de la table Resultat avec les éléments suivants : (1,25 pt)
     • Des boutons de navigation.
     • Les boutons Ajouter, Modifier, Supprimer et Enregistrer.
     • La circonscription et le parti sont choisis dans une liste déroulante.
3.
     a- Créer un formulaire contenant une grille qui affiche la liste des partis d’une circonscription avec, pour chaque parti, le nombre total de voix obtenues classées en ordre décroissant sur le nombre de voix ; la circonscription est choisie dans une liste déroulante.  (1 pt)
     b- Ajouter à côté de chaque parti une case à cocher. Ajouter en bas de la grille, un bouton de commande qui permet de supprimer le ou les partis sélectionnés avec tous les enregistrements connexes. (1 pt)
4. Créer un formulaire contenant une grille qui affiche,  la liste des candidats du parti qui a obtenu le plus grand nombre de voix dans une circonscription donnée ; la circonscription est  choisie dans une liste déroulante. (1,5 pt)
5. Créer un état  qui imprime les circonscriptions de la région « SOUSS » avec les informations : nom de la circonscription, nombre d’électeurs.  (1 pt)
6. Créer un état graphique de type histogramme montrant pour chaque région, le nombre total de voix obtenu par un parti donné. (1 pt)

Dossier 3  (7 pts)
On souhaite développer un site web dynamique permettant aux utilisateurs d’effectuer des recherches et d’afficher des statistiques relatives aux élections législatives marocaines. On utilise la base de données du dossier 1.
1. Créer la page web d’accueil avec un menu de navigation entre les pages demandées dans les questions qui suivent.  (0,5 pt)
2. Créer une page web permettant d’afficher la liste des candidats inscrits dans une circonscription donnée. La circonscription doit être sélectionnée dans une liste. L’affichage comprend le nom, le prénom et la date de naissance des candidats classés par nom en ordre croissant.  (1 pt)
3.
     a- Créer une page web contenant une grille à deux colonnes qui affiche dans la 1ère colonne, le nom de chaque parti et dans la 2ème colonne, le nombre de voix par parti au niveau d’une circonscription choisie dans une liste. En bas de la page, on affiche le nombre total de voix.  (1pt)
     b- Insérer à gauche de chaque parti une case à cocher, et en bas de la page web, un lien hypertexte nommé « engendrer » qui permet, lorsqu’on clique dessus, de créer un fichier texte contenant le ou les partis sélectionnés ainsi que le nombre de voix dans l’ordre de leur apparition sur la page. (1 pt)
     4. Créer une page web de mise à jour des candidats avec :
     a) Des boutons permettant d’ajouter, modifier et supprimer des candidats.  (0,5 pt)
     b) Ajouter des validateurs : les champs de saisi ne doivent pas être vides.  (0,5 pt)
     c) Une grille affichant les candidats.  (0,5 pt)
5. On veut effectuer  une recherche plus fine d’une circonscription afin d’en afficher les résultats des élections.
Créer une page web  avec les fonctionnalités suivantes :
     a) Pour le choix d’une circonscription, on affiche en haut de la page une ligne contenant les lettres qui sont les initiales des circonscriptions (uniquement pour celles existantes dans la base de données) sous forme de liens hypertextes : (1 pt)
A      B     E    F    G    H    J  …..
     b) Lorsque l’utilisateur clique sur une lettre, la page affiche le nom de toutes les circonscriptions qui commencent par cette lettre sous forme de liens hypertextes. (0,5pt)
     c) Un clic sur une circonscription affiche la liste des résultats de vote par parti de cette circonscription : on affiche le nom du parti et le nombre de voix obtenues classées par ordre décroissant par nombre de voix. (0,5 pt)

Télécharger Les EFF - Examen de Fin de Formation TDI Pratique 2012 V1-V2-V3 :
en format .pdf sur le lien suivant :



Lire la suite

Examen de Fin de Formation - Théorique Session Juillet 2012 - TDI

Examen de Fin de Formation - Théorique Session Juillet 2012 - TDI


Dossier 1 : (6 pts)
Les stagiaires d’un établissement de formation désirent développer une application Web genre réseau social appelée netAtlas. L’application permet aux membres inscrits de créer un réseau d’amis et d’échanger des contenus.
Pour devenir membre de netAtlas, un internaute doit s’inscrire lors de sa visite du site web. Lorsque l’administrateur valide  l’inscription, l’internaute devient membre ; il peut alors se connecter pour réaliser les opérations suivantes : chercher un membre, inviter un membre d’être son ami, accepter  un autre membre comme ami, refuser une invitation d’amitié, retirer un ami de sa liste d’amis. Un membre peut également publier des contenus.
Un modérateur consulte les contenus publiés par les membres et peut avertir, par un message, un membre qui publie du contenu non conforme au règlement de netAtlas ;  après 3 avertissements,  l’administrateur supprime le compte de ce membre.
Un membre est identifié par une adresse e-mail, un nom et un prénom. Un membre peut avoir plusieurs amis qui sont aussi membres de netAtlas. Un membre peut effectuer une publication de contenu à une date donnée. une publication concerne une ressource à publier; une ressource possède un nom et peut être soit un message, soit une photo/vidéo soit un lien vers une page web. Une photo/vidéo a en plus du nom, une taille en Mo. Un lien vers une page web a une adresse (URL).
1) Etablir le diagramme des cas d’utilisation.  (1,25 pt)
2) Etablir le diagramme de séquence du cas d’utilisation « Publier contenu ».  (1 pt)
3) Etablir le diagramme de classes.   (1,25 pt)
4) On veut ajouter aux fonctionnements de netAtlas le fait que les amis d’un membre soient organisés en types d’amis : les amis peuvent être de type « Ami normal », « Amis proches », « connaissances » ou « Famille ». Une publication d’une ressource par un membre est autorisée à être consultée seulement  par un type d’amis donné ; par exemples une photo est partagée uniquement avec le type d’amis « Amis proches ». Modifier le diagramme de classes pour tenir compte de ce changement.   (1 pt)
5) Etablir le modèle conceptuel de données (1 pt). Traduire ce MCD en schéma relationnel.    (0,5 pt) 

Dossier 2 : (5 pts)
Une application de gestion des résultats des matchs de football de la saison 2011-2012 utilise la base de données suivante :


Examen de Fin de Formation - Théorique Session Juillet 2012 - TDI
Examen de Fin de Formation - Théorique Session Juillet 2012 - TDI


Les clés primaires sont en gras et soulignées ; les clés étrangères sont marquées par un #.
Un match se joue entre une équipe locale et une équipe visiteur dans un stade donné et pour une journée du championnat national (journée 1, 2 , …). La table Match enregistre également le nombre de buts marqués par l’équipe des locaux et le nombre de buts marqués par l’équipe des visiteurs.
1) Ecrire une requête qui affiche le nombre de matchs joués dans la journée n°12.  (0,5 pt)
2) Ecrire une requête qui affiche le nombre de matchs joués par journée.  (0,5 pt)
3) Ecrire une requête qui affiche le match qui a compté le plus grand nombre de spectateurs.  (1pt)
4) Ecrire une requête qui affiche le nombre de points de l’équipe de code 112 ; le nombre de points se calcule de la façon suivante : une victoire donne 3 points, une égalité donne 1 point et une défaite donne 0 point.  (1 pt)
5) Ecrire une procédure stockée qui affiche les équipes qui ont gagné leur match dans une  journée dont le numéro est donné comme paramètre. (1 pt)
6) Ecrire un trigger qui refuse l’ajout d’une ligne à la table Match pour laquelle la colonne codeEquipeLocaux est égale à la colonne codeEquipeVisiteurs. (1 pt)

Dossier 3 : (5 pts)
Dans une  grande surface commerciale, on utilise  des caméras de surveillance contre le vol d’articles. Une caméra peut tourner pour changer d’orientation selon 4 sens nord, est, sud et ouest. Une application orientée objet est créée pour la gestion des caméras.
La classe Camera contient les membres suivants :
      - le champ code de type entier : désigne le code de la  Camera
      - le champ type de type string : désigne la marque de la Camera
      - le champ orientation  de type entier : désigne l’orientation de la  Camera  (1 = Nord, 2 = Est, 3 = Sud, 4 = Ouest)
      - La méthode tourner (sens : entier) qui permet de changer l’orientation du Camera selon le paramètre sens.
      - La méthode afficher() qui permet d’afficher le code et l’orientation d’une caméra
1) Ecrire la classe Camera, avec les constructeurs ; (0,5 pt)
2) Ecrire les méthodes tourner et afficher ;  (1 pt)
Certaines caméras sont des caméras mobiles qui peuvent se déplacer par télécommandes ; on utilise une classe CameraMobile qui hérite de la classe Camera et ayant en plus les attributs entiers privés abs et ord : ce sont les attributs qui définissent la positon de CameraMobile (abscisse et ordonné) ainsi qu’une méthode avancer(d : entier) qui permet d’avancer la Caméra selon son orientation d’une valeur exprimée par le paramètre d :
      - si on avance de d vers l’Est,  l’abscisse augmente de d,
      - si on avance de d vers l’Ouest,  l’abscisse diminue de d,
      - si on avance de d vers le nord,  l’ordonnée augmente de d,
      - si on avance de d vers le Sud,  l’ordonnée diminue de d.
On suppose que le NORD corresponde au sens positif des ordonnées, le SUD au sens négatif des ordonnées, l’EST correspond au sens positif des abscisses et l’OUEST au sens négatif des abscisses :


Examen de Fin de Formation - Théorique Session Juillet 2012 - TDI
Examen de Fin de Formation - Théorique Session Juillet 2012 - TDI


La  méthode afficherPosition()  affiche la position (les attributs abs et ord).
3) Ecrire la classe CameraMobile avec  un constructeur sans argument et un constructeur à quatre arguments (type, code, abs et ord) ;    (0,5 pt)
4) Ecrire la méthode afficherPosition et la méthode avancer ;  (0,5 pt)
5) Redéfinir  la méthode afficher  dans la classe CameraMobile  tout en utilisant celle de la classe mère et la méthode afficherPosition ;    (1 pt)
6) Ecrire une classe de test qui permet de créer un objet CameraMobile, afficher ses attributs et lui appliquer la séquence d’actions suivantes (de a à e) tout en affichant à chaque fois la position de la  Camera ainsi que son orientation :   (1,5 pt)
      a. Tourner vers l’Est ;
      b. Avancer de 10 vers l’Ouest ;
      c. Avancer de 16 vers le Nord ;
      d. Avancer de 5 vers l’Est ;
      e. Reculer de 12 vers le sud.

Dossier 4 : (4 pts)
Exercice 1 : (2 pts)
Pour s’inscrire dans un forum, un utilisateur doit remplir le formulaire suivant :


Examen de Fin de Formation - Théorique Session Juillet 2012 - TDI
Examen de Fin de Formation - Théorique Session Juillet 2012 - TDI


1) Ecrire le code HTML de la page web du formulaire.  (0,5 pt)
2) Ecrire le code permettant de respecter les règles :
a) Tous les champs sont obligatoires.  (0,25 pt)
b) La date de naissance doit être valide : 1<=jour<=31,   1<=mois<=12   et année >=1900.   (0,25 pt)
c) Le champ « Mot de passe » et le champ « Confirmer mot de passe » doivent être égaux.  (0,25 pt)
d) Si la case « J’accepte les conditions » n’est pas cochée, le bouton « Valider » est désactivé.  (0,25 pt)
3) Ajouter le code JavaScript qui permet de fermer automatiquement la  fenêtre du navigateur au bout de 20 secondes. (0,5 pt)

Exercice 2 : (2 pts)

1. Quelle est la signification de 10 base 5 ? Et de 100 base T ? (0,25 pt)

2. Quels sont les types d’adresses MAC auxquels une station doit répondre ?  (0,25 pt)
3. Que se passe-t-il après la détection d’une collision dans un réseau de type Ethernet ? (0,25 pt)
4. Décrivez sous forme synthétique le protocole CSMA/CD.  (0,25 pt)
5. On considère le réseau représenté par la figure ci-dessous :


Examen de Fin de Formation - Théorique Session Juillet 2012 - TDI
Examen de Fin de Formation - Théorique Session Juillet 2012 - TDI


      a. Donner les adresses IP et les masques de chaque machine. (0,25 pt)
      b. Donner le type de câble utilisé pour connecter les équipements entre eux. (0,25 pt)
      c. Donner la commande MSDOS pour tester si la machine 1 est connectée à Internet. (0,25 pt)
      d. On souhaite que la machine 1 joue le rôle d’un serveur Web (IIS ou Apache), donner les étapes d’installation et de configuration de ce serveur. (0,25 pt)

Télécharger L'Examen de Fin de Formation - Théorique Session Juillet 2012 - TDI :
en format .pdf sur le lien suivant :

Examen de Fin de Formation - Théorique Session Juillet 2012 - TDI


Lire la suite

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


EFF - Examens Fin Formation  - TDI - Pratique 2011 - Variante 4

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 - V4-V5-V6



EFF - Examens Fin Formation  - 

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


Travail à faire : Toutes les requêtes à fournir en réponse aux questions qui suivent doivent être sauvegardées dans un fichier appelé dossier1.txt :
1) Donner les ordres SQL pour créer  toutes les tables du schéma relationnel précèdent ainsi pour remplir chaque table par un jeu d’enregistrement. (4 pts)
2) Ajouter une contrainte qui permet de vérifier que le prix moyen du circuit est compris entre 20 et 200. (1 pt)
3) Développer un déclencheur (trigger) qui empêche la suppression d’une ville. (3 pts)
4) Créer la fonction qui renvoie une table des circuits d’une ville dont le nom est transmis en paramètre. (4 pts)
5) Créer la procédure stockée qui renvoie la liste de tous les lieux d’une ville dont le nom est passé en paramètre. (4 pts)
6) Développer la procédure stockée « ps_liste_Caleches» qui crée une table nommée « liste_Caleches» et l’alimente par la liste des personnes possédant plus d’une calèche. Au démarrage de la procédure il faut prévoir le code qui supprime la table « liste_Caleches»  lorsqu’elle existe. (4 pts)

Dossier 2  PROGRAMMATION CLIENT/SERVEUR

Le même schéma relationnel du dossier précédent est repris par le présent dossier.
1) Créer une fenêtre principale à la quelle il faut ajouter des menus et options relatives à chaque réponse aux questions présentées ci-dessous (2 pts)
2) Développer le formulaire de mise à jour des circuits intégrant un sous-formulaire de mise à jour des lieux de ces circuits. Le formulaire doit comporter : (4 pts)
      • Les boutons ajouter, supprimer et enregistrer.
      • un bouton pour chercher les circuits dont la description contient un mot saisi sur une zone de texte.
3) Développer le formulaire de consultation des circuits correspondants à un lieu sélectionné par l’utilisateur sur une liste déroulante. La liste à afficher sous forme d’une grille doit comporter le nom de la ville, la description du circuit et son prix moyen. (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 calèches par ville. (4pts)
6) Développer un formulaire contenant un bouton qui sur clic permet de générer un fichier texte contenant tous les lieux (leurs codes et leurs descriptions séparées par une tabulation, lieu 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 circuits par ville :
      a. Prévoir une liste déroulante permettant de sélectionner une ville. (1 pt)
      b. Sur sélection d’une ville on doit rechercher tous les circuits correspondant à la ville sélectionnée. (3 pts)
      c. Ajouter, en face de chaque circuit, un bouton de commande permettant d’afficher une page détails du circuit comprenant la liste des lieux à visiter. (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 une page 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 une page web permettant à un propriétaire d’ajouter ses calèches. Cette page est accessible uniquement aux utilisateurs authentifiés. Il leur permettra d’insérer une nouvelle calèche. (4 pts)
5) Développer un service Web qui fournit la liste de tous les circuits. Créer une application cliente qui permet de tester l’utilisation de votre service Web. (4pts)

EFF - 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 - V4-V5-V6



EFF - Examens Fin Formation  - 

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


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)

EFF - Examens Fin Formation  - TDI - Pratique 2011 - Variante 6

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 - V4-V5-V6



EFF - Examens Fin Formation  - 

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


Travail à faire : Toutes les requêtes à fournir en réponse aux questions qui suivent doivent être sauvegardées dans un fichier appelé dossier1.txt :
1) Fournir toutes les requetes SQL pour la création et le remplissage par un jeu d’enregistrement de toutes les tables du schéma relationnel précédent. (4 pts)
2) Ajouter une contrainte qui permet de vérifier que l’adresse email contient le caractère ‘@’. (1 pt)
3) Développer un déclencheur (trigger) qui annule toute tentative de suppression d’une image. (3 pts)
4) Créer la fonction qui renvoie une table des calèches d’une ville dont le nom est transmis en paramètre. (4 pts)
5) Créer la procédure stockée qui permet de supprimer tous les circuits qui n’ont aucun lieu à visiter. (4 pts)
6) Ajouter la procédure stockée « ps_liste_caleches » qui crée une table nommée « Liste_calèches » et l’alimente par la liste des calèches d’une ville dont le code est transmis en paramètre. Au lancement de la procédure il faut prévoir la suppression de la table« Liste_calèches »  lorsqu’elle existe. (4 pts)

Dossier 2  PROGRAMMATION CLIENT/SERVEUR

Le même schéma relationnel du dossier précédent est repris par le présent dossier.
Il s’agit de 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 par les questions ci-dessous. (3 pts)
2) Développer le formulaire de mise à jour des calèches. Le formulaire doit comporter : (3 pts)
      • Les boutons ajouter, supprimer et enregistrer.
      • Les boutons de navigation.
3) Développer le formulaire de consultation des calèches correspondantes à une ville sélectionnée par l’utilisateur sur une liste déroulante. La liste sous forme d’une grille, doit comporter toutes les données relatives aux calèches 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 calèches trouvées. L’état doit comporter la date du jour, un titre et un tableau comportant toutes les informations des calèches de la ville sélectionnée sur le formulaire précédent. (4 pts)
5) Créer un état qui affiche l’histogramme du nombre de propriétaires de calèches 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 informations de toutes les villes. On écrira dans le fichier texte les caractéristiques de chaque ville séparées par des tabulations. Ville 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 …
Dans cette partie, il est demandé de développer une application Web qui intègre les fonctionnalités suivantes:
1) Créer une page Web qui permet de rechercher une calèche, pour cela :
      a. Prévoir une zone de texte permettant de saisir un texte représentant une description ou une partie de la description d’une calèche qui sera considérée comme critère de recherche. (1 pt)
      b. Afficher sous forme d’une grille la liste de toutes les calèches ayant une description qui correspondant au texte ou à une partie du texte saisi. (3 pts)
      c. Afficher au dessous de la grille le nombre de calèches recherchées. (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 une page 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. Si l’utilisateur est correctement authentifié, il doit être redirigé vers la page de la question suivante (2 pts).
4) Créer une page web permettant à un propriétaire d’ajouter des images de ses calèches. Cette page est accessible uniquement aux utilisateurs authentifiés. Il leur permettra d’insérer des images de leurs calèches. (4 pts)
5) Développer un service Web qui fournit la liste de tous les propriétaires de calèches d’une ville donnée. Créer une application cliente qui permet de tester l’utilisation de votre service Web. (4 pts)

Télécharger Les EFF - Examens Fin Formation - TDI - Pratique 2011 - V4-V5-V6 :
en format .pdf sur le lien suivant :

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


Lire la suite

EFF - Examens de Fin de Formation Pratique 2011 - TDI - V1-V2-V3


EFF - Examens de Fin de Formation Pratique 2011 - TDI - Variante 1

Dossier 1  BASE DE DONNEES

Une compagnie de transport national de voyageurs entreprend l’informatisation de ses activités. Les travaux de l’équipe chargée de l’analyse et de la conception de la base de données ont aboutit au modèle logique de données suivant :
N.B. les champs marqués en gras et souligné représentent les clés primaires des tables et les champs marqué par # représentent les clés étrangères.
     Voyage( code_voyage, dh_depart_voyage, dh_arrive_voyage, places, compteur_depart, compteur_arrivee, #matricule, #code_car, #code_calendrier)
     Personnel(Matricule, nom, prenom, telephone, passe)
     Autocar(code_car, capacite, date_achat, consommation, #nom_marque)
     Calendrier(code_calendrier, jour_voyage, heure_depart, heur_arrivee, #code_ligne)
     Ligne(code_ligne, distance, #code_ville_depart, #code_ville_arrivee)
     Ville( code_ville, nom_ville )
     Marque( nom_marque )


EFF - Examens de Fin de Formation Pratique 2011 - TDI - V1-V2-V3
EFF - Examens de Fin de Formation Pratique 2011 - TDI - V1-V2-V3



EFF - Examens de Fin de Formation Pratique 2011 - TDI - V1-V2-V3
EFF - Examens de Fin de Formation Pratique 2011 - TDI - V1-V2-V3


La compagnie assure le transport de passagers sur plusieurs lignes nationales. Chaque ligne est définie par un code, ville de départ, ville d’arrivée et la distance kilométrique qui les sépare.
Le calendrier des voyages comprend les horaires des transports assurés pour tous les jours de la semaine.
La base de données permet d’enregistrer pour chaque voyage, les dates et compteurs kilométriques de départ et d’arrivée, le nombre de passagers transportés, l’autocar utilisé et son chauffeur.
Travail à faire :
enregistrer sur un fichier texte qui porte le nom « dossier1.txt » les requêtes SQL qui répondent aux questions suivantes (1 à 7) :
1) Créer la base de données et remplir les tables par un jeu d’essai. Le code voyage est un numéro automatique. (4 pts)
2) Ajouter les contraintes suivantes : (3 pts)
     a. La colonne jour_voyage ne doit accepter que des valeurs comprises entre 1 et 7 (1 pour lundi et 7 pour dimanche).
     b. La date de départ (dh_depart_voyage) doit être inférieure à la date d’arrivée (dh_arrivee_voyage).
     c. La capacité d’un autocar doit être supérieure à zéro.
3) Ajouter à la table « Personnel » une colonne calculée NP correspondant à la concaténation du nom et du prénom. (2 pts)
4) Ajouter un déclencheur (trigger) qui empêche l’ajout d’une ligne de transport lorsqu’il y a déjà une autre ligne avec les mêmes villes de départ et d’arrivée. (2 pts)
5) Créer la fonction qui renvoie le nombre total de passagers transportés sur une ligne dont le code est passé en paramètre. (2 pts)
6) Créer une procédure qui renvoie une table de tous les voyages d’une ligne dont le code est transmis en paramètre. (3 pts)
7) Créer une fonction qui utilise un curseur pour renvoyer tous les noms et prénoms des chauffeurs concaténés dans une seule chaine de caractères pour une ligne dont le code est passé en paramètre. (4 pts)

Dossier 2  PROGRAMMATION CLIENT/SERVEUR

Dans ce dossier, on utilisera la base de données du dossier 1.
Développer une application « client/serveur » qui répond aux fonctionnalités demandées par les questions suivantes :
1) Créer un menu pour votre application en y incluant une option pour chacune des opérations demandées dans les questions qui suivent. (2 pts)
2) Créer un état permettant d’imprimer le calendrier des horaires d’une ligne donnée. L’utilisateur commence par sélectionner une ville de départ et une ville d’arrivée, l’application doit afficher une liste comportant les jours, heures de départ et heure d’arrivée. (4 pts)
3) Ajouter le formulaire de mise à jour des autocars. Le formulaire doit comporter : (4 pts)
     • des boutons de navigation.
     • Les boutons ajouter, supprimer et enregistrer.
     • Une liste déroulante pour sélectionner la marque.
4) Créer le formulaire de saisie du calendrier des voyages par ligne. L’utilisateur commence par sélectionner une ligne dans une liste déroulante, puis il saisit le code calendrier, le jour et les heures de départ et d’arrivée dans une grille prévue à cet effet. (4 pts)
5) Ajouter un formulaire qui affiche, dans une grille, pour un chauffeur dont le nom est sélectionné sur une liste déroulante, la liste des voyages qu’il a assuré. (4 pts)
6) Développer un état de sortie de type histogramme qui comprend pour chaque ligne, le cumul total des kilomètres parcourus. (2 pts)

Dossier 3  DEVELOPPEMENT WEB

Dans ce dossier, on utilisera la base de données du dossier 1.
La compagnie souhaite développer un site web dynamique permettant aux internautes de consulter les horaires des voyages et aux utilisateurs de mettre à jour certaines informations de la base de données.
1) Développer la page d’accueil et le menu du site web qui inclue les opérations demandées par les questions qui suivent. (2 pts)
2) Créer la page de connexion au site. Le login étant le matricule de l’utilisateur (pris de la base de données du dossier 1). L’application vérifie le login et le mot de passe (celui-ci est pris de la table Personnel) de l’utilisateur. Afficher un message d’erreur lorsque le login et/ou le mot de passe sont incorrects. Si l’utilisateur est correctement authentifié, le site doit le rediriger vers la page crée à la question précédente (page d’accueil). (4 pts)
3) Ajouter la page de mise à jour du calendrier des voyages qui doit comporter : (4 pts)
     • Des boutons de navigation pour parcourir les données de la table calendrier.
     • Des boutons de mise à jour permettant d’ajouter, supprimer et enregistrer les données.
4) Créer une page web qui permet d’imprimer un état du calendrier des voyages d’une ligne donnée. La page à développer doit comporter une zone de texte pour saisir le numéro de la ligne et un bouton qui affiche l’état demandé. La liste à produire comportera les jours, heures de départ et heures d’arrivée. (4pts)
5) Ajouter une option qui permet d’enregistrer le code et nom de toutes les villes sur un fichier XML. (2 pts)
6) Développer le fichier XSLT qui permet de transformer le fichier XML que vous avez obtenu  avec la question précédente en un fichier HTML. Le résultat à produire doit comporter un titre (Liste des villes) et un tableau comportant les codes et noms des villes. (4 pts)


EFF - Examens de Fin de Formation Pratique 2011 - TDI - Variante 2

Dossier 1  BASE DE DONNEES

Une compagnie de transport national de voyageurs entreprend l’informatisation de ses activités. Les travaux de l’équipe chargée de l’analyse et de la conception de la base de données ont aboutit au modèle conceptuel de données suivant :
N.     b. les champs marqués en gras et souligné représentent les clés primaires des tables et les champs marqué par # représentent les clés étrangères.
Voyage( code_voyage, dh_depart_voyage, dh_arrive_voyage, places, compteur_depart, compteur_arrivee, #matricule, #code_car, #code_calendrier)
Personnel(Matricule, nom, prenom, telephone, passe)
Autocar(code_car, capacite, date_achat, consommation)
Calendrier(code_calendrier, jour_voyage, heure_depart, heur_arrivee, #code_ligne)
Ligne(code_ligne, distance)
Ville( code_ville, nom_ville )
Passer(code_ligne, code_ville, ordre_passage)


EFF - Examens de Fin de Formation Pratique 2011 - TDI - V1-V2-V3
EFF - Examens de Fin de Formation Pratique 2011 - TDI - V1-V2-V3



EFF - Examens de Fin de Formation Pratique 2011 - TDI - V1-V2-V3
EFF - Examens de Fin de Formation Pratique 2011 - TDI - V1-V2-V3


La compagnie assure le transport de passagers sur plusieurs lignes nationales. Chaque ligne est définie par un code, une distance kilométrique. L’association « Passer » permet d’indiquer toutes les villes desservies par une ligne. Le champ « ordre_passage » exprime un numéro d’ordre séquentiel pour chaque ville desservie.  La ville de départ prend toujours le numéro 1 et la ville d’arrivée le numéro 9.
Le calendrier des voyages comprend les horaires des transports assurés pour tous les jours de la semaine. La colonne jour_voyage contient le numéro d’ordre du jour dans la semaine (1 pour lundi et 7 pour dimanche).
La base de données permet d’enregistrer pour chaque voyage, les dates et compteurs kilométriques de départ et d’arrivée, le nombre de passagers transportés, l’autocar utilisé et son chauffeur.
Travail à faire : enregistrer sur un fichier texte qui porte le nom « dossier1.txt » les requêtes SQL qui répondent aux questions suivantes (1 à 7) :
1) Créer la base de données et remplir les tables par un jeu d’essai. Le code voyage est un numéro automatique. (4 pts)
2) Ajouter les contraintes suivantes : (2 pts)
     a. La colonne ordre_passage ne doit accepter que des valeurs comprises entre 1 et 9.
     b. La consommation (nombre moyen de litres consommés par 100 km) doit être comprise entre 6 et 16.
3) Ajouter à la table « Voyage » une colonne calculée KP correspondant à la différence entre compteur_arrivee et compteur_depart. (2 pts)
4) Ajouter un déclencheur (trigger) qui empêche l’ajout dans la table « Passer » lorsque le numéro d’ordre existe déjà pour la même ligne de transport. (2 pts)
5) Créer la fonction qui renvoie le nom de la ville de destination finale (terminus) d’une ligne dont le code est passé en paramètre. (2 pts)
6) Créer une fonction qui renvoie une table de toutes les villes desservies par une ligne dont le code est transmis en paramètre. (4 pts)
7) Créer une fonction qui utilise un curseur pour renvoyer tous les noms des villes concaténés dans une seule chaine de caractères pour une ligne dont le code est passé en paramètre. (4 pts)

Dossier 2  PROGRAMMATION CLIENT/SERVEUR

Dans ce dossier, on utilisera la base de données du dossier 1.
Développer une application « client/serveur » qui offre les fonctionnalités demandées par les questions suivantes :
1) Créer un menu pour votre application en y incluant une option pour chacune des opérations demandées dans les questions qui suivent. (2 pts)
2) Créer un état qui permet d’afficher les voyages (Code voyage, Date de départ, Date d’arrivée et Nombre de places), auxquels a participé un employé donné. Dans une liste, on choisit le matricule de l’employé. L’état doit être affiché à la suite d’un click sur un bouton. (4 pts)
3) Ajouter le formulaire de mise à jour de la table « Personnel ». Le formulaire doit comporter : (4 pts)
     • des boutons de navigation.
     • Les boutons ajouter, supprimer et enregistrer.
     • Le mot de passe doit être saisi et confirmé et ne doit pas être visible (afficher des astérisques).
4) Créer le formulaire de mise à jour des lignes et y inclure également la mise à jour de la table « Passer » par l’intermédiaire d’un sous formulaire. (4 pts)
5) Ajouter un formulaire qui affiche, dans une grille,  pour chaque autocar, le code autocar, la marque, le nombre de kilomètres parcourus, la consommation moyenne/100km et le nombre total de litres de carburant consommés. (4 pts)
6) Développer un état de sortie de type histogramme qui comprend pour chaque autocar, le nombre de kilomètres parcourus. (2 pts)

Dossier 3  DEVELOPPEMENT WEB

Dans ce dossier, on utilisera la base de données du dossier 1.
La compagnie souhaite développer un site web dynamique permettant aux internautes de consulter les horaires des voyages et aux utilisateurs de mettre à jour certaines informations de la base de données.
1) Développer la page d’accueil et le menu du site web qui inclue les opérations demandées par les questions qui suivent. (2 pts)
2) Créer la page de connexion au site. Le login étant le matricule de l’utilisateur (pris de la base de données du dossier 1).  Afficher un message d’erreur dans le cas où le login et/ou le mot de passe (celui-ci est pris de la table Personnel) sont incorrects. Si l’utilisateur est correctement authentifié, le site doit le rediriger vers la page crée à la question précédente (page d’accueil). (4 pts)
3) Développer une page de mise à jour des autocars qui doit comporter : (4 pts)
     • des boutons de navigation pour parcourir les données de la table Autocar.
     • Des boutons de mise à jour permettant d’ajouter, supprimer et enregistrer les données.
4) Créer une page web qui permet d’imprimer un état du personnel qui a participé à un voyage donné. Le code du voyage doit être sélectionné dans une liste. (4 pts)
5) Ajouter une option qui permet d’enregistrer la liste du Personnel sur un fichier XML. (2 pts)
6) Développer le fichier XSLT qui permet de transformer le fichier XML que vous avez obtenu avec la question précédente en un fichier HTML. Le résultat à produire doit comporter un titre (Liste du personnel) et un tableau comportant toutes les colonnes de la table Personnel. (4 pts)


EFF - Examens de Fin de Formation Pratique 2011 - TDI - Variante 3

Dossier 1  BASE DE DONNEES

Une compagnie de transport national de voyageurs entreprend l’informatisation de ses activités. Les travaux de l’équipe chargée de l’analyse et de la conception de la base de données ont aboutit au modèle conceptuel de données suivant :
N.     b. les champs marqués en gras et souligné représentent les clés primaires des tables et les champs marqué par # représentent les clés étrangères.
Voyage( code_voyage, dh_depart_voyage, dh_arrive_voyage, places, compteur_depart, compteur_arrivee, #matricule, #code_car, #code_calendrier)
Personnel(Matricule, nom, prenom, telephone, passe, #nom_role)
Autocar(code_car, capacite, date_achat, consommation)
Calendrier(code_calendrier, jour_voyage, heure_depart, heur_arrivee, #code_ligne)
Ligne(code_ligne, distance, #code_ville_depart, #code_ville_arrivee)
Ville( code_ville, nom_ville )
Role( nom_role )


EFF - Examens de Fin de Formation Pratique 2011 - TDI - V1-V2-V3
EFF - Examens de Fin de Formation Pratique 2011 - TDI - V1-V2-V3



EFF - Examens de Fin de Formation Pratique 2011 - TDI - V1-V2-V3
EFF - Examens de Fin de Formation Pratique 2011 - TDI - V1-V2-V3


La compagnie assure le transport de passagers sur plusieurs lignes nationales. Chaque ligne est définie par un code, une distance kilométrique, une ville de départ et une ville d’arrivée.
Le calendrier des voyages comprend les horaires des transports assurés pour tous les jours de la semaine. La colonne jour_voyage contient le numéro d’ordre du jour dans la semaine (1 pour lundi et 7 pour dimanche).
La base de données permet d’enregistrer pour chaque voyage, les dates et compteurs kilométriques de départ et d’arrivée, le nombre de passagers transportés, l’autocar utilisé et son chauffeur.
Chaque employé appartient à un rôle qui lui permet d’accéder à certaines fonctions des applications à développer.
Travail à faire : enregistrer sur un fichier texte qui porte le nom « dossier1.txt » les requêtes SQL qui répondent aux questions suivantes (1 à 7) :
1) Créer la base de données et remplir les tables par un jeu d’essai. Le code voyage est un numéro automatique. (4 pts)
2) Ajouter les contraintes suivantes : (2 pts)
     a. Les villes de départ et d’arrivée doivent être différentes pour une même ligne.
     b. La distance (de la table ligne) doit être comprise entre 50 et 500.
3) Ajouter à la table « Voyage » une colonne calculée DUREE de type numérique. (2 pts)
4) Ajouter un déclencheur (trigger) lié à la mise à jour de la table « Voyage » et qui vérifie que le compteur_arrivee est supérieur au compteur_depart. (2 pts)
5) Créer la fonction qui renvoie les noms des villes de départ et d’arrivée, concaténés, d’une ligne dont le code est passé en paramètre. (2 pts)
6) Créer une fonction qui renvoie une table de tous les chauffeurs ayant assuré des voyages sur une ligne dont le code est transmis en paramètre. (4 pts)
7) Créer une fonction qui utilise un curseur pour renvoyer tous les horaires concaténés d’une ligne dont le code est passé en paramètre. (4 pts)

Dossier 2  PROGRAMMATION CLIENT/SERVEUR

Dans ce dossier, on utilisera la base de données du dossier 1.
Développer une application « client/serveur » qui offre les fonctionnalités demandées par les questions suivantes :
1) Créer un menu pour votre application en y incluant une option pour chacune des opérations demandées dans les questions qui suivent. (2 pts)
2) Créer un formulaire d’ouverture de session. Le login étant le matricule du personnel (pris de la base de données du dossier 1). Afficher un message d’erreur dans le cas où le login et/ou le mot de passe sont incorrects. (4 pts)
3) Créer un formulaire permettant à un chauffeur de saisir le compteur de l’autocar à la fin d’un voyage. Le chauffeur se connecte et l’application doit lui afficher uniquement le dernier voyage qu’il a assuré. Il doit avoir la possibilité de modifier uniquement le compteur d’arrivée. (4 pts)
4) Ajouter le formulaire de mise à jour de la table « Personnel » qui doit comporter : (4 pts)
     • des boutons de navigation pour parcourir les données de la table Personnel.
     • Des boutons de mise à jour permettant d’ajouter, de supprimer et d’enregistrer les données.
5) Ajouter un formulaire qui affiche, dans une grille, pour chaque ligne, le nombre total des passagers transportés. (4 pts)
6) Développer un état de sortie de type histogramme qui comprend pour chaque ligne, le nombre total des passagers transportés. (2 pts)

Dossier 3  DEVELOPPEMENT WEB

Dans ce dossier, on utilisera la base de données du dossier 1.
La compagnie souhaite développer un site web dynamique permettant aux internautes de consulter les horaires des voyages et aux utilisateurs de mettre à jour certaines informations de la base de données.
1) Développer la page d’accueil et le menu du site web qui inclue les opérations demandées par les questions qui suivent. (2 pts)
2) Créer la page de connexion au site. Le login étant le matricule de l’utilisateur (pris de la base de données du dossier 1). Afficher un message d’erreur dans le cas où le login et/ou le mot de passe (celui-ci est pris de la table Personnel) sont incorrects. Si l’utilisateur est correctement authentifié, le site doit le rediriger vers la page crée à la question précédente (page d’accueil). (4 pts)
3) Développer une page de mise à jour des lignes en prévoyant les éléments suivants : (4 pts)
     a. des boutons de navigation pour parcourir les données de la table Autocar.
     b. Des boutons de mise à jour permettant d’ajouter, supprimer et enregistrer les données.
4) Créer une page web qui permet d’imprimer l’état du personnel qui n’a jamais participé à aucun voyage. (4 pts)
5) Ajouter une option qui permet d’enregistrer la liste des lignes sur un fichier XML. (2 pts)
6) Développer le fichier XSLT qui permet de transformer le fichier XML que vous avez obtenu avec la question précédente en un fichier HTML. Le résultat à produire doit comporter un titre (Liste des lignes de transport) et un tableau comportant toutes les colonnes de la table Ligne. (4 pts)

Télécharger Les EFF - Examens de Fin de Formation Pratique 2011 - TDI - V1-V2-V3 :
en format .pdf sur le lien suivant :

EFF - Examens de Fin de Formation Pratique 2011 - TDI - V1-V2-V3


Lire la suite
Retrouvez-nous sur Facebook
×Facebook Mouad Ouisse