Sie sind auf Seite 1von 20

D41.

2 DEVELOPPEMENT CORRIGE JUIN 2010

Premire partie : QCM


1. La fonction "simplexml_load_file" permet de :
a. b. c. d. parser un document XML dans une structure PHP ouvrir et charger un document XML charger en mmoire un fichier XML ouvrir un fichier xml

2. XPath :
a. b. c. d. est un langage non XML pour localiser une portion d'un document XML est un langage XML pour localiser une portion d'un document XML est une variable contenant le chemin d'un document XML est une fonction pour localiser un document XML

3.

En PHP-XML, le parseur fait appel des handlers :


a. b. c. d. pour chaque dbut de balise pour chaque fin de balise pour chaque dbut ou fin de balise pour chaque balise

4. Un flux RSS :
a. b. c. d. est constitu d'un canal et d'un ou plusieurs items, correspondant des articles est constitu juste d'un seul canal est constitu d'un seul item, correspondant un seul article est constitu de plusieurs canaux et d'un ou plusieurs items, correspondant des articles

5.

En langage PHP, l'appel du constructeur de la classe mre partir de la classe drive se fait :
a. b. c. d. super:: construct() super::__construct() parent:: construct() parent::__construct()

6. Les attributs d'une classe abstraite :


a. b. c. d. doivent tre private ou protected doivent tre null ne peuvent tre modifis que par les mthodes des classes drives peuvent tre "static" ou "public"

7. Laquelle de ces fonctions extraie le channel et appelle RSS_Channel ?


a. b. c. d. RSS_Retrieve RSS_Channel RSS_RetrieveLink RSS_Tags

Fdration Europenne Des Ecoles European Federation of Schools Juin 2010 QCM UC D41.2 MASTER Europen dInformatique Corrig

8. Le troisime paramtre de RSS_Display(url, nombre, true) permet en option d'afficher ou non :


a. b. c. d. le nom du serveur du site le titre du site la description du site le titre et la description du site

9. Utiliser PHP pour afficher un flux RSS :


a. b. c. d. est un avantage car celui-ci sera visible par les moteurs de recherche est un inconvnient car celui-ci sera visible par les moteurs de recherche est un avantage car celui-ci ne sera pas visible par les moteurs de recherche est un inconvnient car celui-ci ne sera pas visible par les moteurs de recherche

10. Le processeur XSLT est cr :


a. b. c. d. partir d'une instanciation de la classe XSLTProcessor; partir de la commande XSLTProcessor create partir de la commande XSLT_ create partir de la fonction XSLT()

11. Quel est le rsultat de <? $str1 = "Fdration europenne des Ecoles" ; print_r(explode(" ", $str1, 2) ?> ?
a. b. c. d. Array ( [1] =>Fdration] [2] => europenne des Ecoles) Array ( [0] => Fdration [1] => europenne des Ecoles) Array ([1] =>Fdration] [2] => europenne [3] => des [4] => Ecoles) Array ([0] =>Fdration] [1] => europenne [2] => des [3] => Ecoles)

12. En langage PHP, laquelle des assertions suivantes est vraie ?


a. b. c. d. une classe abstraite est introduite par : abstracted class une classe qui a toutes ses mthodes abstraites doit tre dclare comme interface il est strictement interdit d'instancier une classe abstraite une classe abstraite doit tre implmente

13. Lappel systme fork() permet de :


a. b. c. d. crer un processus par duplication du mme fichier crer un processus partir d'une structure gnrale de processus du noyau crer un processus par recopie d'un autre crer un processus nouveau

14. Comment sait-on que le parent d'un processus est mort ?


a. b. c. d. getppid() retourne 0 getppid() retourne -1 getppid() retourne 1 getpid() retourne -1

15. Dans bind(int sock, struct sockaddr * adresse, socklen_t longueur), quelle proposition est vraie ?
a. b. c. d. longueur est la taille du pointeur sockaddr est le descripteur de la socket sock est un integer qui identifie la socket struct sockaddr est passe par pointeur et ne sert qu'aux sockets TCP

Fdration Europenne Des Ecoles European Federation of Schools Juin 2010 QCM UC D41.2 MASTER Europen dInformatique Corrig

2/20

16. Que fait la fonction accept() ?


a. b. c. d. elle accepte un client qui vient d'en faire la demande elle accepte un client qui vient de se connecter et cre une socket pour communiquer avec ce client elle rcupre seulement les informations du client (adresse IP,) elle accepte le message arrivant et le stocke dans la structure passe en argument

17. Pour raliser une communication non temporaire bidirectionnelle inter processus, il est conseill dutiliser :
a. b. c. d. un tube nomm un seul tube anonyme deux tubes anonymes indpendants deux tubes nomms indpendants

18. La cration des descripteurs peut tre ralise par :


a. b. c. d. fork() fop write pipe()

19. A quoi sert l'appel bind() ?


a. b. c. d. il permet d'identifier/reconnatre extrieurement la socket cre prcdemment dans le code il fait un appel de rsolution DNS sur le rseau bind() n'intervient pas sur les sockets il ouvre la socket un processus condition qu'elle est t cre par l'appel socket()

20. L'ordre CREATE SESSION permet de :


a. b. c. d. se connecter une base crer une session crer une base interroger le dictionnaire des donnes

21. L'ordre ROLLBACK permet de :


a. b. c. d. valider une transaction insrer des donnes supprimer des donnes annuler une transaction

22. L'option WITH GRANT OPTION permet de :


a. b. c. d. transmettre des privilges reus modifier la taille de la base augmenter la taille de la base ajouter des privilges un utilisateur

23. Un ROLE permet de :


a. b. c. d. regrouper des utilisateurs regrouper des privilges faire du cinma aucune des trois rponses prcdentes

24. Sous un SGBD, si on dsire dvelopper avec de la programmation vnementielle, on utilisera :


a. une vue b. un trigger c. Visual Basic
Fdration Europenne Des Ecoles European Federation of Schools Juin 2010 QCM UC D41.2 MASTER Europen dInformatique Corrig

3/20

d. un index

25. Une validation de transaction est effectue par :


a. b. c. d. un ordre accept un ordre rollback un ordre commit un ordre validate

26. Un index permet d'amliorer les temps de rponse :


a. b. c. d. des requtes simples des requtes avec jointure des requtes de slection des requtes

27. Quel contrle de transaction interdit deux utilisateurs de mettre jour les donnes en mme temps ?
a. b. c. d. COMMIT ROLLBACK SAVEPOINT LOCK

28. Comment sappelle la mmoire partage par les processus Oracle ?


a. b. c. d. la PGA la SGA la BUFPOOL la MGA

29. Mettez dans l'ordre, suivant la rgle contient ou gre :


a. b. c. d. Instance - Tablespace - Database - Table - Rows Instance - Database - Tablespace - Table - Rows Instance - Database - Table - Tablespace - Rows Database - Instance - Tablespace - Table Rows

30. Une instance Oracle, cest :


a. b. c. d. les processus et les zones mmoires utiles au fonctionnement dune base de donnes lensemble des fichiers utiles au fonctionnement dune base de donnes Oracle la phase d'installation du logiciel Oracle une base de donnes qui ne veut plus dmarrer

31. A propos dun tablespace, indiquez quelle proposition est vraie :


a. b. c. d. un tablespace ne peut pas contenir plus d'une table un tablespace contient soit des tables, soit des index un tablespace peut en mme temps contenir des tables et des index un tablespace a une taille fixe et ne peut pas tre agrandi

32. En tant que simple utilisateur, quelles sont les tables du catalogue que je ne peux pas consulter ?
a. b. c. d. user_tables v$datafile all_tables cat

Fdration Europenne Des Ecoles European Federation of Schools Juin 2010 QCM UC D41.2 MASTER Europen dInformatique Corrig

4/20

33. Dans la phase de conception dune base de donnes relationnelle, au niveau conceptuel, on ne doit pas :
a. b. c. d. dgager les entits et leur identifiant dgager les relations et leur identifiant dterminer les cardinalit des relations attacher les proprits aux relations et aux objets

34. La "normalisation" dun modle de donnes permet de :


a. b. c. d. vrifier que le modle est normalis ISO vrifier que le modle respecte les normes de lentreprise minimiser la redondance de linformation et assurer la cohrence de la base sassurer que le modle sera assez normalis pour pouvoir tre valid par les utilisateurs

35. Pour nafficher que les villes dont le rsultat du count(*) est suprieur 10.000 dans linstruction suivante en SQL SELECT ville, count(*) FROM table_ville GROUP BY ville, on doit ajouter :
a. b. c. d. la clause where count(id_ville)>10000 la clause HAVING count(*)>10.000 aprs de GROUP BY la clause WHERE count(*)>10.000 aprs le GROUP BY la clause count(*)>10.000 aprs le WHERE

36. Lors de l'utilisation des servlets JSP :


a. b. c. d. il peut y avoir plusieurs directives page dans une JSP il ne peut y avoir quune seule directive page dans une JSP il ne peut pas y avoir de directive page dans une JSP la directive page nexiste pas en JSP

37. Combien dinstances de la classe A cre le code suivant ? A x, u, v; x=new A(); A y=x; A z=new A();
a. b. c. d. une deux trois aucune

38. En Java, quelle assertion est vraie?


a. b. c. d. une classe peut implmenter plusieurs interfaces, mais doit tendre une seule classe une classe peut implmenter plusieurs classes, mais doit tendre une seule interface une classe peut implmenter plusieurs classes et peut tendre plusieurs interfaces une classe doit implmenter une seule interface et tendre une seule classe

39. La liaison tardive est essentielle pour assurer :


a. b. c. d. lencapsulation le polymorphisme lhritage la marginalisation

40. UML est :


a. b. c. d. un langage Objet un langage orient Objet un langage de modlisation oriente Objet une mthode pour la programmation oriente Objet
5/20

Fdration Europenne Des Ecoles European Federation of Schools Juin 2010 QCM UC D41.2 MASTER Europen dInformatique Corrig

41. OCL est :


a. b. c. d. un langage Objet un langage orient Objet un langage de contrainte. une mthode pour la programmation oriente Objet

42. RUP est :


a. b. c. d. un langage Objet un langage orient Objet un langage de contrainte. une mthode pour la programmation oriente Objet

43. En utilisant UML, quelle sont les possibilits pour des paramtres dopration ?
a. b. c. d. in out in, out in, out, in/out

44. Un attribut statique est :


a. b. c. d. un attribut qui nest pas hrit par les classes filles un attribut constant un attribut normal un attribut pass par rfrence

45. Une interface est :


a. b. c. d. une classe abstraite une classe abstraite qui interagit avec lutilisateur une classe dont toutes les mthodes sont abstraites une classe imaginaire

46. Une agrgation est :


a. b. c. d. un ensemble dattributs une composition faible une composition forte un ensemble de classes

47. Le symbole ~ reprsente (UML)


a. b. c. d. un lment non visible un lment visible par tous un lment visible seulement par les sous-classes un lment visible seulement par les classes du mme paquetage

48. MDA signifie :


a. b. c. d. que larchitecture est guide par les modles que larchitecture est guide par le code que larchitecture est dcompose en blocs que larchitecture est dcompose en paquetages

Fdration Europenne Des Ecoles European Federation of Schools Juin 2010 QCM UC D41.2 MASTER Europen dInformatique Corrig

6/20

49. En UML, quelle cardinalit nexiste pas ?


a. b. c. d. 0..1 1 N..1 M..N

50. Une relation "extends" pour les use case signifie :


a. b. c. d. peut tre complt par doit tre complt par nest pas complt par est complt par

Fdration Europenne Des Ecoles European Federation of Schools Juin 2010 QCM UC D41.2 MASTER Europen dInformatique Corrig

7/20

Deuxime partie : Exercices


Dossier 1 - UML 2 Modlisation dun suivi de commande et de fret de marchandises

Question 1 Ralisez le diagramme de classe.


1 point par classe 3 points pour les multiplicits

Fdration Europenne Des Ecoles European Federation of Schools Juin 2010 QCM UC D41.2 MASTER Europen dInformatique Corrig

8/20

Dossier 1 - UML 2 Modlisation dun logiciel

Question 2 Proposez un diagramme de cas dutilisation correspondant aux besoins dcrits ci-dessus.

Question 3 Proposez un diagramme de squence correspondant lajout dune fiche produit.

Fdration Europenne Des Ecoles European Federation of Schools Juin 2010 QCM UC D41.2 MASTER Europen dInformatique Corrig

9/20

Dossier 2 - ORACLE et PL/SQL

Question 1 Ralisez une fonction en langage pl/sql nomme Qtable(PC$Table, PC$ClauseWhere ) - dynamique et totalement gnrique qui permet dinterroger nimporte quelle table (paramtre PC$Table), - avec une clause where passe elle aussi en paramtre (PC$ClauseWhere), - qui renvoie un integer LN$Total donnant le nombre doccurrences correspondantes a cette clause. Donnez un exemple dutilisation.
FUNCTION Qtable ( PC$Table IN VARCHAR2, PC$ClauseWhere IN VARCHAR2 ) RETURN PLS_INTEGER IS LC$Requete VARCHAR2(512) ; LN$Total PLS_INTEGER ; BEGIN LC$Requete := Select count(*) From || PC$Table || where || PC$ClauseWhere ; EXECUTE IMMEDIATE LC$Requete INTO LN$Total ; return LN$Total ; END ;

NombreDept := Qtable( Departement, deptno between 1 and 13 ) ;

Fdration Europenne Des Ecoles European Federation of Schools Juin 2010 QCM UC D41.2 MASTER Europen dInformatique Corrig

10/20

Question 2 Soit la Procdure NDS ci-dessous, rcrivez-la en utilisant le package DBMS_SQL CREATE PROCEDURE insert_into_table ( table_name VARCHAR2, deptnumber NUMBER, deptname VARCHAR2, location VARCHAR2) IS stmt_str VARCHAR2(200); BEGIN stmt_str := 'INSERT INTO ' || table_name || ' values (:deptno, :dname, :loc)'; EXECUTE IMMEDIATE stmt_str USING deptnumber, deptname, location; END;)
CREATE PROCEDURE insert_into_table ( table_name VARCHAR2, deptnumber NUMBER, deptname VARCHAR2, location VARCHAR2) IS cur_hdl INTEGER; stmt_str VARCHAR2(200); rows_processed BINARY_INTEGER; BEGIN stmt_str := 'INSERT INTO ' || table_name || ' VALUES (:deptno, :dname, :loc)'; -- open cursor cur_hdl := dbms_sql.open_cursor; -- parse cursor dbms_sql.parse(cur_hdl, stmt_str, dbms_sql.native); -- supply binds dbms_sql.bind_variable (cur_hdl, ':deptno', deptnumber); dbms_sql.bind_variable (cur_hdl, ':dname', deptname); dbms_sql.bind_variable (cur_hdl, ':loc', location); -- execute cursor rows_processed := dbms_sql.execute(cur_hdl); -- close cursor dbms_sql.close_cursor(cur_hdl);
Fdration Europenne Des Ecoles European Federation of Schools Juin 2010 QCM UC D41.2 MASTER Europen dInformatique Corrig

11/20

END;

Question 3 Donnez les avantages et inconvnients du NDS par rapport au package DBMS_SQL.
NDS : - Plus grande rapidit dexcution. En moyenne, le SQL dynamique natif sexcute de 1.5 3 fois plus rapidement. - Support des types dfinis, le SQL dynamique natif supporte tous les types dfinis par lutilisateur, Objets, collections, etc - Support des types RECORD pour les ordres Select. - Le SQL dynamique natif permet dutiliser un objet de type RECORD dans une clause INTO. Package DBMS_SQL : - Support par le client, les fonctions du package DBMS_SQL sont supportes par les applications clientes linverse du SQL dynamique natif. - Supporte la procdure DESCRIBE_COLUMNS qui permet de connaitre les informations relatives aux colonnes dun curseur ouvert au travers de DBMS_SQL. - Support de la clause RETURNING pour les oprations UPDATE et DELETE. D BMS_SQL supporte la clause RETURNING pour des oprations UPDATE ou DELETE effectues sur plusieurs lignes. Le SQL dynamique natif ne supporte une clause RETURNING que sur les oprations ne retournant quune seule ligne

Question 4 Dfinissez OFA , son objectif et ses avantages.


Oracle Optimal Flexible Architecture, que l'on pourrait traduire par meilleure architecture volutive, est un ensemble de convention de nommage et de rpartition de fichiers sur les diffrents disques dur du serveur. On peut aussi dfinir OFA comme un ensemble de bonnes habitudes prendre pour la cration d'une base. Bien qu'OFA ne soit pas indispensable la cration d'une base, Oracle recommande son utilisation si vous prvoyez une augmentation du nombre d'utilisateurs ou encore si vous souhaitez mettre en place d'autres bases de donnes dans votre environnement. Son objectif est de prvenir tout un ensemble de problmes qui pourraient survenir si vous utilisiez plusieurs versions d'Oracle, plusieurs bases de donnes, ou des bases de donnes fort taux d'utilisation. La norme OFA a t ralise afin d'offrir des avantages non ngligeables, notamment dans les cas suivants : - Facilit de maintenance des bases de donnes travers une organisation de fichiers standardise. - Fiabilit grce des donnes rparties sur plusieurs disques. - Performance accrue par des rductions de conflits d'entre/sortie sur les disques. Oracle Universal Installer spare les fichiers excutables des fichiers de base de donnes. Cette opration prend tout son sens lorsque vous souhaitez mettre jour votre version d'Oracle Ses avantages sont : - indpendance des sous-rpertoires, - les oprations sur un fichier d'une certaine catgorie ne sont pas rpercutes sur un fichier d'une autre catgorie, - convention de nommage pour les fichiers de donnes, on peut ainsi identifier les fichiers plus facilement, - sparation des diffrents types de tablespace pour obtenir les avantages d'I/O, mais aussi rduire la fragmentation.

Fdration Europenne Des Ecoles European Federation of Schools Juin 2010 QCM UC D41.2 MASTER Europen dInformatique Corrig

12/20

Question 5 Vous disposez dun serveur de base de donnes avec 4 disques durs, reprsentez, sur un schma, larchitecture logicielle recommande pour respecter les points dfinis ci-dessus (question 4).

Question 6 Le schma ci-dessous reprsente un architecture web 3 tiers utilisant ORACLE comme base de donnes, indiquez sur ce schma les vulnrabilits dun tel systme.

Fdration Europenne Des Ecoles European Federation of Schools Juin 2010 QCM UC D41.2 MASTER Europen dInformatique Corrig

13/20

Dossier 3 - JAVA et IHM

Question 1
Larchitecture des tches est donne en figure 1 o le dtail des classes TacheElementaire et TacheComplexe nest pas donn. Une tche est caractrise par un nom et un cot. Une tche est soit une tche lmentaire, soit une tche complexe qui est alors compose de sous-tches. Il est ainsi possible dajouter une sous-tche une tche complexe, ajouter(Tache) ou de supprimer une sous-tche, supprimer(Tache). Le cot dune tche complexe est la somme des cots des tches qui la composent.

Indiquez le ou les patrons de conception utiliss dans cette architecture.


7.5 points La tche complexe est le composite, Tache est le composant et TacheElementaire est la feuille. Notons que les objets ajouter et supprimer ne sont ici que sur le composite et pas sur le composant.

Le listing 1 donne le code de linterface Tache. crivez en Java la classe Tache Elementaire qui est une ralisation de linterface Tache : Tache { String getNom(); int getCout(); }
7.5 points

Rponse :
public class TacheElementaire implements Tache { private String nom; private int cout; public TacheElementaire(String nom, int cout) { this.nom = nom; this.cout = cout;} public String getNom() { return this.nom; } public int getCout() { return this.cout; } }

Fdration Europenne Des Ecoles European Federation of Schools Juin 2010 QCM UC D41.2 MASTER Europen dInformatique Corrig

14/20

Question 2
Nous nous intressons maintenant la classe TacheComplexe, en particulier sa relation avec linterface Tache. Une tche complexe est compose dun nombre quelconque de tches. On dcide dutiliser linterface java.util.Collection pour stocker les sous-tches. On lutilisera bien entendu, dans sa version gnrique. Comme on souhaite pouvoir parcourir toutes les sous-tches dune tche complexe, la Classe TacheComplexe ralise linterface java.lang.Iterable.

Indiquez quel est le principal intrt de la gnricit.


6 points Le contrle de type ralis par le compilateur.

Indiquez quel est le cot de la tche tA construite comme indiqu dans le listing suivant :
public class TestTache1 { public static void main(String[] args) { TacheComplexe tA = new TacheComplexe("A"); tA.ajouter(new TacheElementaire("A1", 10)); tA.ajouter(new TacheElementaire("A2", 20)); System.out.println("Cout de tA = " + tA.getCout()); }} 6 points Le cot de la tche tA est de 30.

Fdration Europenne Des Ecoles European Federation of Schools Juin 2010 QCM UC D41.2 MASTER Europen dInformatique Corrig

15/20

crivez en Java la classe TacheComplexe.


6 points Interface graphique pour dfinir une tche complexe Nous dfinissons maintenant une interface graphique en Swing minimale qui permet dajouter de nouvelles soustches une tche complexe. Le code partiel de cette classe est donn au listing 3. import java.util.Collection; import java.util.ArrayList; import java.util.Iterator;

public class TacheComplexe implements Tache, Iterable<Tache> { private Collection<Tache> sousTaches; private String nom;

public TacheComplexe(String nom) {

this.nom = nom; this.sousTaches = new ArrayList<Tache>(); } public void ajouter(Tache tache) { this.sousTaches.add(tache); } public void supprimer(Tache tache) { this.sousTaches.remove(tache); }

public String getNom() { return this.nom; }

public int getCout() { int result = 0; for (Tache t : sousTaches) { result += t.getCout(); } return result;}

public Iterator<Tache> iterator() {


Fdration Europenne Des Ecoles European Federation of Schools Juin 2010 QCM UC D41.2 MASTER Europen dInformatique Corrig

16/20

return this.sousTaches.iterator(); } }

Dessinez la fentre (et les composants graphiques quelle contient) telle quelle est affiche quand cette classe est excute.
6 points

Compltez cette classe pour que les boutons Ajouter et Quitter deviennent actifs.
Le bouton Quitter ferme la fentre. Le bouton Ajouter ajoute une nouvelle sous-tche la tche complexe passe en paramtre du constructeur de cette classe. Le nom et le cot de cette sous tche sont, bien entendu, saisis par lutilisateur dans les zones de saisie prvues, valeurNom et valeurCout. Dans le cas o lutilisateur saisit une information qui nest pas un entier pour saisir le cot, on signalera lerreur en mettant la couleur de fond de la zone de saisie correspondante en rouge (setBackground(Color.RED)). On rappelle que la mthode Integer.parseInt(String) renvoie lentier correspondant la chane de caractre pass en paramtre. Cette mthode lve lexception NumberFormatException si la chane ne correspond pas un entier. 10 points Listing 3 La classe TacheComplexeSwing import javax.swing.*; import java.awt.*; import java.awt.event.*; public class TacheComplexeSwing { private TacheComplexe tache; final JFrame fenetre = new JFrame("Nouvelle tche"); final private JTextField valeurNom = new JTextField(10); final private JTextField valeurCout = new JTextField(10); final private JButton boutonAjouter = new JButton("Ajouter"); final private JButton boutonQuitter = new JButton("Quitter"); public TacheComplexeSwing(TacheComplexe tache) { this.tache = tache;

Container c = fenetre.getContentPane(); c.setLayout(new BorderLayout());

Fdration Europenne Des Ecoles European Federation of Schools Juin 2010 QCM UC D41.2 MASTER Europen dInformatique Corrig

17/20

JPanel informations = new JPanel(new GridLayout(2,2)); informations.add(new JLabel("Nom : ", SwingConstants.RIGHT)); informations.add(valeurNom); informations.add(new JLabel("Cot : ", SwingConstants.RIGHT)); informations.add(valeurCout); c.add(informations, BorderLayout.CENTER);

JPanel boutons = new JPanel(new FlowLayout()); boutons.add(boutonAjouter); boutons.add(boutonQuitter); c.add(boutons, BorderLayout.SOUTH); boutonQuitter.addActionListener(new ActionQuitter()); boutonAjouter.addActionListener(new ActionAjouter()); fenetre.pack(); fenetre.setVisible(true);}} private class ActionAjouter implements ActionListener { public void actionPerformed(ActionEvent ev) { try { String nom = valeurNom.getText(); int cout = Integer.parseInt(valeurCout.getText()); tache.ajouter(new TacheElementaire(nom, cout)); System.out.println("cout total = " + tache.getCout()); } catch (NumberFormatException e) { valeurCout.setBackground(Color.RED); } } } private class ActionQuitter implements ActionListener { public void actionPerformed(ActionEvent ev) { System.out.println("Appui sur Quitter..."); fenetre.dispose(); } } public static void main(String[] args) { new TacheComplexeSwing(new TacheComplexe("Test TacheComplexeSwing")); } }

Fdration Europenne Des Ecoles European Federation of Schools Juin 2010 QCM UC D41.2 MASTER Europen dInformatique Corrig

18/20

Sauvegarde dune tche en XML Soit la DTD pour reprsenter une tche : 1 <?xml version="1.0" encoding="UTF-8"?> 2 3 <!ELEMENT taches (tache*)> 4 <!ELEMENT tache (attribut*, tache*)> 5 <!ELEMENT attribut EMPTY> 6 <!ATTLIST attribut 7 nom CDATA #REQUIRED 8 valeur CDATA #REQUIRED>

Donnez le contenu du fichier XML qui correspond la tche tA.


6 points <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE taches SYSTEM "taches.dtd"> <taches> <tache> <attribut nom="nom" valeur="A" /> <attribut nom="cout" valeur="30" /> <tache> <attribut nom="nom" valeur="A1" /> <attribut nom="cout" valeur="10" /> </tache> <tache> <attribut nom="nom" valeur="A2" /> <attribut nom="cout" valeur="20" /> </tache> </tache> </taches>

Fdration Europenne Des Ecoles European Federation of Schools Juin 2010 QCM UC D41.2 MASTER Europen dInformatique Corrig

19/20

Grille de notation Exercices


NOM__________________________________ Prnom___________________________________ N____________ Dossier 1 - UML 2 Question 1 Question 2 Question 3 Dossier 2 - ORACLE et PL/SQL Question 1 Question 2 Question 3 Question 4 Question 5 Question 6 Dossier 3 - JAVA et IHM Question 1 Question 2 Orthographe et prsenation TOTAL 30 points /10 /10 /10 55 points /6 /12 /7 /12 /6 /12 55 points /15 /40 /10 /150

Apprciation gnrale :

Fdration Europenne Des Ecoles European Federation of Schools Juin 2010 QCM UC D41.2 MASTER Europen dInformatique Corrig

20/20

Das könnte Ihnen auch gefallen