User Tools

Site Tools


teaching:reverse:2016

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
teaching:reverse:2016 [2017/01/09 14:07]
blay [Evaluation du module]
teaching:reverse:2016 [2017/06/10 15:40]
blay [Références]
Line 1: Line 1:
  
-====== Maintenance du logiciel ​ : de l'​analyse à la mise en oeuvre ​ ​====== ​+====== Maintenance du logiciel ​ : Focus sur la rétro-ingénierie ​ ​====== ​
 ((SOFTWARE MAINTENANCE : From Analysis to Implementation)) ((SOFTWARE MAINTENANCE : From Analysis to Implementation))
  
Line 14: Line 14:
  
 Un sondage auquel ont répondu 217 personnes a permis d'​établir quelques éléments factuels relativement aux pratiques et besoins des entreprises,​ Un sondage auquel ont répondu 217 personnes a permis d'​établir quelques éléments factuels relativement aux pratiques et besoins des entreprises,​
-voir les résultats ​butes [[https://​docs.google.com/​forms/​d/​1QdWKLSHfhliOv5K9gbpIoflu5BgiuBsSpxvNzrB6r6A/​viewanalytics|ici]]. ​+voir les résultats ​brutes ​[[https://​docs.google.com/​forms/​d/​1QdWKLSHfhliOv5K9gbpIoflu5BgiuBsSpxvNzrB6r6A/​viewanalytics|ici]]. ​
  
  
 **Objectifs de ce cours** **Objectifs de ce cours**
  
-Cette année, l'​ambition de ce module est de donner aux étudiants une nouvelle vision sur le code, et de fait de leur permettre d'​être de meilleurs développeurs et en fonction des questions posées de meilleurs chefs de projets ou architectes.+Cette année, l'​ambition de ce module est de donner aux étudiants une nouvelle vision sur le code, et de fait de leur permettre d'​être de meilleurs développeurs eten fonction des questions poséesde meilleurs chefs de projets ou architectes.
  
 Par exemple, ​ Par exemple, ​
Line 29: Line 29:
 Pour cela, la démarche globale du cours s'​appuiera sur de l'​auto-apprentissage et du partage de connaissances :  Pour cela, la démarche globale du cours s'​appuiera sur de l'​auto-apprentissage et du partage de connaissances : 
    - Les interventions visent à partager aux étudiants des outils et problématiques différentes de ce dont ils ont l'​habitude,​    - Les interventions visent à partager aux étudiants des outils et problématiques différentes de ce dont ils ont l'​habitude,​
-   - les TDs visent à permettre aux étudiants de se mettre en situation de (i) se poser des questions, (ii) de mettre en place des méthodes pour répondre à ces questions, (iii) d'​utiliser des outils ​ pour répondre à ces questions avec quelques fois, des approches très différentes d'une démarche de développement. ​+   - les TDs visent à permettre aux étudiants de se mettre en situation de (i) se poser des questions, (ii) de mettre en place des méthodes pour répondre à ces questions, (iii) d'​utiliser des outils ​ pour répondre à ces questions avec quelquefois, des approches très différentes d'une démarche de développement. ​
  
 ====== Planning ====== ====== Planning ======
Line 45: Line 45:
                   * Analyse de codes                   * Analyse de codes
         -** 10 janvier**         -** 10 janvier**
-                  * Comprendre un logiciel en regardant son "​histoire"​ par Xavier Blanc+                  *{{:​teaching:​reverse:​coursxavierblanc.pdf| ​Comprendre un logiciel en regardant son "​histoire"​}} par Xavier Blanc
                   *  Analyse de codes <color green> rendu L.2. </​color>​                   *  Analyse de codes <color green> rendu L.2. </​color>​
         - **17 janvier**         - **17 janvier**
-                   * Présentation étudiants ​ +                   * de 8h à 10h la séance sera utilisée pour que chaque groupe avance. 
-                               * <color green> E.1. </​color>​+                   * Présentation étudiants ​de 10h15 à 12h15 
 +                               * <color green>Exposé  ​E.1. </​color>​
         - **24 janvier**         - **24 janvier**
                    * A la recherche des failles de sécurités : de la la réalité à la théorie (Yves Roudier)                    * A la recherche des failles de sécurités : de la la réalité à la théorie (Yves Roudier)
Line 167: Line 168:
  
  
-===== Patron par chapitre =====+===== Patron par chapitre ​ ===== 
 +<​note>​On abandonne la notion de chapitre </​note>​
 **Toute partie du livre comprend ses auteurs.** **Toute partie du livre comprend ses auteurs.**
  
Line 236: Line 238:
                                               * le 17/1 chaque groupe a 5mn d'​exposé sur la base des transparents envoyés la veille au plus tard, et la salle a  5mn de questions par exposés, pour poser des questions et demander des éclaircissements. ​                                               * le 17/1 chaque groupe a 5mn d'​exposé sur la base des transparents envoyés la veille au plus tard, et la salle a  5mn de questions par exposés, pour poser des questions et demander des éclaircissements. ​
                                                          * L'​exposé est évalué. ​                                                          * L'​exposé est évalué. ​
-                                             * Chaque groupe élabore un ensemble de questions à destination de chaque autre sous-groupe,​ qu'il envoie par mail à blay@unice.fr. ​+                                             * Chaque groupe élabore un ensemble de questions à destination de chaque autre sous-groupe,​ qu'il envoie par [[blay@unice.fr.|mail]]
                                                         * Ces questions seront évaluées.                                                         * Ces questions seront évaluées.
-                                                        * Elles seront postées sur Piazza.+                                                        * Elles seront ​ensuite ​postées sur Piazza.
   *  <alert info> ​ Exposé E.2 : Bilan de compétences.</​alert> ​   *  <alert info> ​ Exposé E.2 : Bilan de compétences.</​alert> ​
                      - Exposé organisé à la convenance des Chapitres ​                      - Exposé organisé à la convenance des Chapitres ​
                      - Ouvert à un pannel d'​experts précisés ultérieurement                      - Ouvert à un pannel d'​experts précisés ultérieurement
-                     ​-  ​Chaque étudiant doit auparavant préciser en quoi il est expert+                     ​-  ​10mn d'​exposé,​ 10mn de questions par groupe : 20mn par groupe. 
 +                     ​- ​ ** Date : 7 février de 8 à 10h30 **
   *  <alert info> ​ Rendu L.3.1 :  Contenu du livre </​alert> ​   *  <alert info> ​ Rendu L.3.1 :  Contenu du livre </​alert> ​
               * Evaluation par  plusieurs relecteurs extérieurs               * Evaluation par  plusieurs relecteurs extérieurs
Line 250: Line 253:
                      * Résultats                      * Résultats
                       * Recul et Pertinence des remarques                       * Recul et Pertinence des remarques
 +                      *** Date limite : 14 février à 23h59**
   *  <alert info> ​ Rendu L.3.2 :  Codes/​Resultats Brutes/</​alert> ​   *  <alert info> ​ Rendu L.3.2 :  Codes/​Resultats Brutes/</​alert> ​
-                         * Livrable en fonction des artefacts utilisés, ​le support sera déterminé ultérieurement.+                         * Livrable en fonction des artefacts utilisés, ​l'​objectif est de rendre l'​expérimentation reproductible. 
 +                         *** Date limite : 14 février à 23h59**
  
 ====== Références ====== ====== Références ======
 +
 +Pour 2018 => beaucoup d'​articles dans ASE 2016
 +
  
 Les rubriques sont données à titre indicatif, mais plusieurs des articles peuvent être utilisés dans plusieurs rubriques. Les rubriques sont données à titre indicatif, mais plusieurs des articles peuvent être utilisés dans plusieurs rubriques.
Line 264: Line 272:
  
    - "​Généralités"​    - "​Généralités"​
 +                    - Demeyer S, Ducasse S, Nierstrasz O (2002) Object Oriented Reengineering Patterns. Morgan Kaufmann Publishers Inc., San Francisco, CA, USA
                     - {{:​teaching:​reverse:​swebokv3_-_chap5_-_code_maintenance.pdf|SWEBOK,​ Chap 5 Maintenance}}  ​                     - {{:​teaching:​reverse:​swebokv3_-_chap5_-_code_maintenance.pdf|SWEBOK,​ Chap 5 Maintenance}}  ​
                     -  {{:​teaching:​reverse:​10.1109_ieeestd.2006.235774.pdf|IEEE Std. 14764-2006 (a.k.a. ISO/​IEC ​ 14764:​2006)}} Standard for Software ​ Engineering—Software Life Cycle  Processes—Maintenance,​ IEEE, 2006.                     -  {{:​teaching:​reverse:​10.1109_ieeestd.2006.235774.pdf|IEEE Std. 14764-2006 (a.k.a. ISO/​IEC ​ 14764:​2006)}} Standard for Software ​ Engineering—Software Life Cycle  Processes—Maintenance,​ IEEE, 2006.
Line 282: Line 291:
                    - Keisuke Hotta, Yui Sasaki, Yukiko Sano, Yoshiki Higo, and Shinji Kusumoto, “[[http://​downloads.hindawi.com/​journals/​ase/​2012/​938296.pdf|An Empirical Study on the Impact of Duplicate Code]],” Advances in Software Engineering,​ vol. 2012, Article ID 938296, 22 pages, 2012. doi:​10.1155/​2012/​938296 ​                    - Keisuke Hotta, Yui Sasaki, Yukiko Sano, Yoshiki Higo, and Shinji Kusumoto, “[[http://​downloads.hindawi.com/​journals/​ase/​2012/​938296.pdf|An Empirical Study on the Impact of Duplicate Code]],” Advances in Software Engineering,​ vol. 2012, Article ID 938296, 22 pages, 2012. doi:​10.1155/​2012/​938296 ​
                    - {{:​teaching:​reverse:​10.1.1.142.4190.pdf|A survey and taxonomy of approaches for mining software repositories in the context of software evolution}}                    - {{:​teaching:​reverse:​10.1.1.142.4190.pdf|A survey and taxonomy of approaches for mining software repositories in the context of software evolution}}
-                   ​- ​+                   ​- ​Nachiappan Nagappan, Thomas Ball, and Andreas Zeller. 2006. [[https://​www.st.cs.uni-saarland.de/​publications/​files/​nagappan-icse-2006.pdf|Mining metrics to predict component failures]]. In Proceedings of the 28th international conference on Software engineering (ICSE '06). ACM, New York, NY, USA, 452-461. DOI=http://​dx.doi.org/​10.1145/​1134285.1134349 
 +                   - [[http://​research.cs.queensu.ca/​home/​ahmed/​home/​teaching/​CISC880/​F11/​papers/​DontTouchMyCode_FSE2011.pdf|Don'​t touch my code!: examining the effects of ownership on software quality]] C Bird, N Nagappan, B Murphy, H Gall, P Devanbu - Proceedings of the 19th ACM SIGSOFT symposium …, 2011
    ​- ​ **Evaluer**    ​- ​ **Evaluer**
                    - Foucault M, Palyart M, Blanc X, Murphy GC, Falleri J-R (2015) [[http://​www.cs.ubc.ca/​~mpalyart/​paper/​2015_FSE_Impact_Turnover_Quality.pdf|Impact of Developer Turnover on Quality in Open-source Software.]] Proc. 2015 10th Jt. Meet. Found. Softw. Eng. ACM, New York, NY, USA, pp 829–841 ​                    - Foucault M, Palyart M, Blanc X, Murphy GC, Falleri J-R (2015) [[http://​www.cs.ubc.ca/​~mpalyart/​paper/​2015_FSE_Impact_Turnover_Quality.pdf|Impact of Developer Turnover on Quality in Open-source Software.]] Proc. 2015 10th Jt. Meet. Found. Softw. Eng. ACM, New York, NY, USA, pp 829–841 ​
Line 302: Line 312:
         - [[http://​www.foo.be/​cours/​dess-20122013/​b/​Eldad_Eilam-Reversing__Secrets_of_Reverse_Engineering-Wiley(2005).pdf|Eldad Eilam Reversing - Secrets of Reverse Engineering,​ Wiley, 2005.]] /* http://​se.inf.ethz.ch/​old/​teaching/​ss2007/​252-0204-00/​lecture.html (un ou deux chapitres au choix) ​ A VERIFIER */         - [[http://​www.foo.be/​cours/​dess-20122013/​b/​Eldad_Eilam-Reversing__Secrets_of_Reverse_Engineering-Wiley(2005).pdf|Eldad Eilam Reversing - Secrets of Reverse Engineering,​ Wiley, 2005.]] /* http://​se.inf.ethz.ch/​old/​teaching/​ss2007/​252-0204-00/​lecture.html (un ou deux chapitres au choix) ​ A VERIFIER */
  
 +
 +- Avelino G, Passos LT, Hora AC, Valente MT (2017) [[https://​arxiv.org/​pdf/​1703.02925.pdf|Assessing Code Authorship: The Case of the Linux Kernel.]] CoRR abs/1703.0:
  
 ====== Outils ====== ====== Outils ======
teaching/reverse/2016.txt · Last modified: 2017/06/10 19:07 by blay