La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Lécole dingénieurs des sciences et technologies de linformation et de la communication JNEWS ( J ava N ew E valuation W eb S ervice) Une plate-forme de.

Présentations similaires


Présentation au sujet: "Lécole dingénieurs des sciences et technologies de linformation et de la communication JNEWS ( J ava N ew E valuation W eb S ervice) Une plate-forme de."— Transcription de la présentation:

1 Lécole dingénieurs des sciences et technologies de linformation et de la communication JNEWS ( J ava N ew E valuation W eb S ervice) Une plate-forme de dépôt, test fonctionnel, et analyse de code source pour Travaux Pratiques en programmation Le Conservatoire National des Arts et Métiers ESIEE,

2 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 2 / 46 Présentation et plan Jean-Michel DOUIN (CNAM Paris) & Denis BUREAU (ESIEE) I. Introduction II. Loutil JNEWS III. Technique et outils IV. Bilan au CNAM V. Bilan à lESIEE VI. Perspectives & conclusion Questions ?

3 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 3 / 46 Contenu de la partie I. I. Introduction I.1 Présentation des intervenants I.2 Historique de JNEWS à lESIEE I.3 Démonstration pour étudiant pour enseignant

4 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 4 / 46 I.1 Présentation des intervenants Jean-Michel Douin : Enseignant au CNAM Paris(Cedric) concepteur et implémenteur de JNEWS Denis Bureau : Enseignant permanent à ESIEE Paris (A2SI) Spécialisé en langages de programmation (M. OO)

5 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 5 / 46 I.2 Historique de JNEWS à lESIEE 1998/1999 et 1999/2000 : rendu par mail ! 2005/2006 et 2006/2007 : autoévaluation et dépôt junit3 : sur serveur a2si depot : sources par php (pas BdD) sur serveur a2si 2004/2005 : dépôt page web avec applettes et sources sur serveur cnam 2002/2003 et 2003/2004 : dépôt lien vers page web avec applettes et sources (serveur cnam, mais consultation étudiants) - risque de copie sauvage dénoncé par les étudiants - risque d inaccessibilité des pages web par les enseignants 2000/2001 et 2001/2002 : dépôt balbutiements : Brazil, requêtes SQL par les enseignants !

6 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 6 / 46 Démonstration depuis Bluej, outil submitter

7 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 7 / 46 Soumettre ses travaux

8 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 8 / 46 Le résultat des tests unitaires

9 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 9 / 46 Accès aux sources des tests « référents »

10 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 10 / 46 Bravo !!

11 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 11 / 46 Bonne documentation ?

12 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 12 / 46 Métriques de Berkeley PMD (http://pmd.sourceforge.net/), etc…http://pmd.sourceforge.net/

13 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 13 / 46 Se situer …

14 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 14 / 46 Dépôt des sources et du rapport En fonction dun agenda

15 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 15 / 46 I.3 Démonstration 2007/2008 : junit3 et depot à lESIEE (serveur a2si) En résumé (étudiant / enseignant) : Compilateur : erreurs de syntaxe Tests locaux : fournis, ou pensés par létudiant Tests distants : pensés par les enseignants Consultations : historique, et résultats des autres Visualisations : erreurs, assertion, source Analyses des sources : outils pointilleux, verbeux Dépôt des sources : TP rendu !

16 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 16 / 46 Contenu de la partie II. II. Loutil JNEWS II.1 Objectifs & Principe II.2 Côté enseignant : gains II.3 Quelques statistiques II.4 Quelques interrogations

17 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 17 / 46 II.1 Objectifs Enseignement de la programmation … Cours magistral et éventuellement des Exercices Dirigés Travaux Pratiques (pour de futurs professionnels) Quels types dapplications ? Combien de classes ? de lignes ? Complexité ? Qualité des programmes ? Tests fonctionnels, analyse des sources, documentation, preuves ? Comment encourager les étudiants ? Comment vérifier le travail fourni ? Étudiants comme enseignants

18 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 18 / 46 II.1 Principe Principe initial de JNEWS Auto-évaluation Pour les étudiants : une aide à la réponse attendue Pour les enseignants : mesures et statistiques Enseignant/correcteur : mise en place de tests, dassertions JNEWS maintenant Une analyse des sources et du code par des outils existants Un dépôt des travaux effectués avec un échéancier

19 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 19 / 46 II.2 Enseignants : gains escomptés Identifier les échecs/réussites rencontrés afin de : Reprendre une partie du cours, Vérifier les acquisitions Ajouter d'autres questions, Retirer les questions triviales, Ajouter de nouveaux tests, Retirer certaines ambiguïtés de lénoncé...

20 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 20 / 46 II.2 Quelles mesures ? Statistiques pendant et après la remise du TP Le nombre d'auditeurs et leurs tentatives, Les échecs et leur occurrence, Le nombre d'auditeurs ayant réussi, en une seule soumission, Les échecs les plus fréquents pour un TP donné, Des ratios comme le nombre d'échecs sur le nombre de réussites, Le source des assertions ayant engendré un échec, Le nombre de réussites ou déchecs pour chaque assertion …

21 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 21 / 46 II.3 Ratio échecs/succès : taux de complexité ? Un exemple dinterrogation tp7 et tp8 tp9 en cours

22 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 22 / 46 II.3 Aide à la correction dun TP (1/2) Par tp, le tp8 était facile

23 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 23 / 46 II.3 Aide à la correction dun TP (2/2) * Traces sur la console détectées System.out.print indésirables ? Le tp7 était moins facile …

24 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 24 / 46 II.3 Tous les résultats par étudiant Un bilan En détail ou une mesure de leffort ?

25 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 25 / 46 II.3 Assertions référentes du correcteur Quels échecs rencontrés ? Quelles mesures ?

26 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 26 / 46 II.3 Assertions en clair et statistiques Soit pour cette assertion du tp7 :

27 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 27 / 46 II.4 Accès aux échecs rencontrés pendant le TP En temps-réel, un poste/portable dédié Moniteurs de TP, vacataires Accès aux sources des tests établis par le correcteur Réponse immédiate Aux doutes, aux questions de létudiant : « expected: "az" but was: "bz" » mais à quel test ?

28 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 28 / 46 II.4 Interface administrateur

29 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 29 / 46 II.4 Interface administrateur : agenda et outils Interface extensible

30 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 30 / 46 Contenu de la partie III. III. Objectifs, technique et outils III.1 Brazil et HSQLDB III.2 Java, IDE, plugin : JDK6, BlueJ, Submitter III.3 Tests et java : junit III.4 Dépôt III.5 Autres outils distants (pmd, findbugs, jass, esc/java, prolog, …) III.6 Ajouter un nouvel outil III.7 Sécurité, permissions

31 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 31 / 46 III.1 Objectifs Accessible depuis internet Étudiants et enseignants, correcteurs et administrateurs Assurer un couplage faible JNEWS / Outils Nimporte quel outil, nimporte quel exécutable ? Quel que soit le système dexploitation ? Sécurité, permissions ?

32 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 32 / 46 III.1 Brazil et HSQLDB Technologies utilisées Serveur Brazil de Sun, 100% Java (Sun Public License) Choix historique Boîte à outils pour la construction de serveurs Web Modulaire, léger, simple BSL langage de script associé (cf. PHP, …) HSQLDB, 100% Java (BSD License) Base de données éprouvée (OpenOffice 2.0, Hibernate, …) 20 classes développées + une vingtaine de scripts BSL 2 JVM indépendantes

33 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 33 / 46 III.2 IDE, plugin BlueJ : IDE avec Outil submitter intégré, envoi des travaux au protocole HTTP Via un simple formulaire

34 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 34 / 46 III.3 Tests et java Tests fonctionnels en « Boîtes Noires » Outil ou Exemple : void test_ajouter_référent() { liste. ajouter (3); // méthode ajouter de la solution de létudiant assertTrue( " ajouter est en échec ??? ", liste.contient(3)); // le test } ajouter est en échec ??? Cest le commentaire retourné à létudiant

35 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 35 / 46 III.4 Agenda, soumissions et dépôt Échéances gérées par lagenda de JNEWS Échéance rappelée à chaque soumission Dépôt de la solution de létudiant Un document HTML comme rapport de TP (avec ou sans applette) Seul ou en binôme, À temps, en retard …

36 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 36 / 46 III.5 Autres outils distants implémentés Autres tests unitaires (inspirés de jUnit) HttpUnit, jWebUnit, Pour Prolog (swi-prolog), Analyse de sources PMD, checkstyle, findbugs, jlint Programmation par contrats Jass3, ModernJass Aide à la « Preuve » de programme ESC/JAVA2

37 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 37 / 46 III.6 Ajout dun nouvel outil Scénario pour un couplage faible JNEWS / Outil 1.Envoi du travail de létudiant 2.Exécution de loutil côté serveur 3.Analyse de laffichage résultant 4.Transmission des résultats d'évaluation 2. : Exécution de loutil Une balise BSL 3-4. : Analyse de laffichage résultant Une nouvelle balise BSL Déclenche un programme Java danalyse de laffichage et de calcul du résultat

38 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 38 / 46 III.6 Table OUTILS_JNEWS pmd checkstyle findbugs escjava prolog …

39 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 39 / 46 III.7 Sécurité, permissions Exécution dun « Outil » ? À lidentique dune commande effectuée localement Exécution du programme dun étudiant Qui boucle ? délai de garde Qui exécute des appels systèmes ? (fichiers, requêtes, …) SecurityManager en Java, adaptable en fonction du TP ou de la question

40 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 40 / 46 Contenu de la partie IV. IV. Bilan au CNAM IV.1 CNAM Paris (plusieurs unités, plusieurs années) IV.2 Les centres associés CNAM (diffusion, utilisation locale, agrégation) IV.3 Observations - sur étudiants (monôme, à distance) - sur enseignants

41 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 41 / 46 IV.1 CNAM Paris Programmation Avancée (niveau L3) (NFP121) 250 auditeurs/an, 10 TP, plus de soumissions « Il est fortement conseillé de faire les TP » environ 150 auditeurs/an pour plusieurs UE en M1 et M2 20 auditeurs pour une unité M1 totalement à distance (FOD) Écoles dingénieurs notamment lESCPI-CNAM.

42 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 42 / 46 IV.2 Les centres associés CNAM Un site JNEWS par centre associé CNAM Gestion/soumissions autonomes Diplôme national : même contenu et même examen Exemple : NFP121 (Programmation Avancée L3) Collecte des résultats des Centres Cnam, Statistique nationale des tentatives aux mêmes TP, Export en XML des journaux de JNEWS Cf. projet ESIEE/IN4 en 2007 par Aymen Boudrigua et Aymen Bouzouita

43 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 43 / 46 IV.3 Observations NFP121 : Côté auditeur ( cours/ED en présentiel, TP à domicile) + Les tests/JNEWS deviennent lobjet de discussions animées sur le forum « je ne comprend pas, mes tests fonctionnent … à la soumission, jai les problèmes suivants … » + Motivation accrue, + Interactions avec les enseignants en ED ! - Critiques Sur le canevas des classes imposé Sur le nom imposé des méthodes Créativité moindre

44 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 44 / 46 IV.3 Observations Côté correcteur + Un cadre imposé des réponses attendues, + Tests/JNEWS + rapport = correction facilitée (ou bien les tests réussis induisent une lecture plus rapide du rapport … en moyenne 120 TP à corriger par semaine !) - Un test référent se construit sur au moins 2 années + Acquis effectifs pour la poursuite de la formation

45 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 45 / 46 Contenu de la partie V. V. Bilan à lESIEE V.1 IN413 passées (depuis 1999) V.2 IN /2008 (junit3, depot) V.3 OV5-SEJA 2007/2008 (junit3, depot) V.4 Observations

46 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 46 / 46 V.1 IN413 passées Statistiques sur les 4 premiers TP 2006/ soumissions junit3 : réparties entre 9h40 et 19h24, h10 dont 368 avec 0 fautes dont 285 hors créneaux de TP dont 5 le week-end ( => à lESIEE !) 43 soumissions pmd par 17 étudiants 25 soumissions findbugs par 15 étudiants 62, 62, 58, 57 sur 65 ont rendu leur TP 1, 2, 3, 4

47 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 47 / 46 V.2 IN / soumissions (dont 850 succès et 135 exceptions) Seulement 20 findbugs et 14 pmd Et 525 dépôts (dont 450 à temps) 67 (60) étudiants sur 69 ont soumis (déposé) 7 TP groupe1: 456, groupe 2 : 478, groupe 3 : 649 Tests unitaires pour Applettes, graphique, junit Clients et Serveurs Web junit, HttpUnit

48 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 48 / 46 V.3 OV5-SEJA (COSI) 2007/ soumissions (dont 107 succès et 41 exceptions) Et 60 dépôts (dont 38 à temps) Tests unitaires pour Applettes, graphique, junit Clients et serveur RMI, junit Clients et Serveurs Web junit, HttpUnit Dépôt du projet

49 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 49 / 46 V.4 Observations Les étudiants travaillent ! - pendant les 2h de TP : 611 dont pendant les heures scolaires - TP : 1125 dont h30-8h, 12h-13h, 19h-22h : 447 dont h-2h20 : 109 dont 74 donc 2/3 hors des TP et 1/4 hors heures scolaires Les étudiants vont au bout de chaque question et acceptent les remarques … de lordinateur ! - [4, 1, 3, ] nest pas acceptable - [4,1,3] est différent de [4, 1, 3]

50 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 50 / 46 Contenu de la partie VI. VI. Perspectives & conclusion VI.1 Analyse des sources (générale ou particulière) VI.2 Autres développements futurs VI.3 Développement « en cours » VI.4 Utilisations futures (à lESIEE / ailleurs ?)

51 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 51 / 46 VI.1 Analyse des sources Existant : PMD, FindBugs, CheckStyle, … : non adaptés à chaque question Exemple : « Certains attributs ne servent à rien. » A faire : vérifier la méthode employée par létudiant pour résoudre une question, même sil a 0 échec => introspection Java et/ou décompilation Exemple : « Pour résoudre ce problème, une HashMap serait plus appropriée quune ArrayList. »

52 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 52 / 46 VI.2 Autres développements futurs Intégration dautres outils JDepend, JavaNCSS, Dependency finder (métriques de qualité), … JPlag (plagiat) Outil de gestion des versions de fichiers pour développeurs JNEWS :.java : solution, extraits pour énoncé tests : pour jnews, extraits pour énoncé différentes années, essais avec erreurs Nouvel « outil » autour de gcc Tests supplémentaires pour éviter les « erreurs » Formulation des résultats plus claire, en français

53 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 53 / 46 VI.3 Développement « en cours » En 2008 : Julien MEDDAH (étudiant I4) Plug-in de soumissions des travaux Pour les IDE NetBeans et Eclipse Phase préparatoire commencée.

54 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 54 / 46 VI.4 Utilisations futures A lESIEE : IN4A21 (depuis lundi : junit3 et depot) PR3S02 (avant la fin de ce mois : depot) IN101 (de février à mai : junit3 et depot) PR102 (début juin : depot) … Diffusion de JNEWS Centralisée : intégré au site ESIEE ou du Cnam Répartie : site complètement autonome Reste un travail important de mise à disposition, notices, suivi, …

55 17/01/08 - Lécole dingénieurs des sciences et technologies de linformation et de la communication 55 / 46 VI.5 Conclusion Lutilisation de JNEWS est un succès : - fiabilité, performance, apport pratique - travail effectif & à domicile des étudiants - suivi et amélioration de lunité pour les enseignants Il reste beaucoup à faire ! Vos questions ?


Télécharger ppt "Lécole dingénieurs des sciences et technologies de linformation et de la communication JNEWS ( J ava N ew E valuation W eb S ervice) Une plate-forme de."

Présentations similaires


Annonces Google