SDA SE Wiki

Software Engineering for Smart Data Analytics & Smart Data Analytics for Software Engineering

User Tools

Site Tools


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
private:daniel:public:start [2018/05/17 13:11]
Daniel Speicher [Publications]
private:daniel:public:start [2019/06/11 22:11] (current)
Daniel Speicher [Publications]
Line 62: Line 62:
     * Currently a smorgasbord of different code analysis and visualization features.     * Currently a smorgasbord of different code analysis and visualization features.
     * Behind the scenes there is a consistent set of ideas soon to break through.     * Behind the scenes there is a consistent set of ideas soon to break through.
 +
 +  * [[http://​www.b-it-center.de/​b-it-programmes/​teaching-material/​p3ml/​|P3ML]]
 +    * Projektgekoppelter,​ Potentialorientierter und Praxisintegrierter Erwerb von ML Engineering Wissen
 +    * Jupyter Notebooks: https://​p3ml.github.io/​
  
   * [[http://​sam.iai.uni-bonn.de/​projects/​csi/​index.html|Context Sensitive Intelligence]]   * [[http://​sam.iai.uni-bonn.de/​projects/​csi/​index.html|Context Sensitive Intelligence]]
Line 139: Line 143:
  
 The focus of my own work is the definition of statically verifiable statements about desired structures (e.g. design pattern or properties like immutability) or unwanted structures (e.g., so-called "bad smells"​),​ including the evolution of these statements [Speicher [[#2013]], Speicher [[#2016]]]. As our infrastructure [Speicher, Rho, Kniesel [[#2007]]] uses Prolog at its core, we were able to prototypically apply results about update propagation. Based on these we can calculate how analysis results would change in consequence of a code restructuring,​ without having to carry out the restructuring [Tantius, Speicher, Behrend [[#2012]]]. As further elements of static analysis, we used the program dependence graph to identify the similarities and differences in cloned methods [Speicher, Bremm [[#2012]]]. We used type constraints for type generalization analysis [Speicher, Appeltauer, Kniesel, [[#2007]], Speicher, Rho, Kniesel [[#2007]]]. In an existing approach for finding recurring patterns in software using formal concept analysis, we were able to elaborate the aspect of interaction [Heckmann, Speicher [[#2012]]]. In [Speicher, Nonnen, Bremm [[#2012]]] I sketched the proposal to implement tests for static analysis as annotated source code. Our plug-in displays as well the test result in the code. Using this approach, our students wrote significantly more tests than before. In this respect, I envision the integration of elements of prototyping into the process of developing static analyses. The focus of my own work is the definition of statically verifiable statements about desired structures (e.g. design pattern or properties like immutability) or unwanted structures (e.g., so-called "bad smells"​),​ including the evolution of these statements [Speicher [[#2013]], Speicher [[#2016]]]. As our infrastructure [Speicher, Rho, Kniesel [[#2007]]] uses Prolog at its core, we were able to prototypically apply results about update propagation. Based on these we can calculate how analysis results would change in consequence of a code restructuring,​ without having to carry out the restructuring [Tantius, Speicher, Behrend [[#2012]]]. As further elements of static analysis, we used the program dependence graph to identify the similarities and differences in cloned methods [Speicher, Bremm [[#2012]]]. We used type constraints for type generalization analysis [Speicher, Appeltauer, Kniesel, [[#2007]], Speicher, Rho, Kniesel [[#2007]]]. In an existing approach for finding recurring patterns in software using formal concept analysis, we were able to elaborate the aspect of interaction [Heckmann, Speicher [[#2012]]]. In [Speicher, Nonnen, Bremm [[#2012]]] I sketched the proposal to implement tests for static analysis as annotated source code. Our plug-in displays as well the test result in the code. Using this approach, our students wrote significantly more tests than before. In this respect, I envision the integration of elements of prototyping into the process of developing static analyses.
 +
 +== 2019 ==
 +   * Daniel Speicher, Tiansi Dong, Olaf Cremers, Christian Bauckhage, Armin B. Cremers: //Notes on the Code Quality Culture on Jupyter (Notebooks)//,​ [[http://​fg-sre.gi.de/​wsre2019/​|21. Workshop Software-Reengineering & Evolution (WSRE) 2019]], Bad Honnef, Germany ({{:​private:​daniel:​public:​wsre_2019_jupyter_preprint.pdf|preprint}},​ {{:​private:​daniel:​public:​wsre_2019_jupyter_slides.pdf|slides}},​ {{:​private:​daniel:​public:​dlrwawse_2019_jupyter_slides.pdf|improved slides for another workshop}})  ​
 +   * Eingeladener Vortrag bei https://​www.alles-ausser-scrum.de/​ zu unseren [[https://​sewiki.iai.uni-bonn.de/​teaching/​labs/​archive|Praktika]] ({{:​private:​daniel:​public:​alles-ausser-scrum-dsp.pdf|slides}}).
 +   * Didactical computational notebooks at https://​p3ml.github.io/​
  
 == 2018 == == 2018 ==
 +      * Tiansi Dong, Chrisitan Bauckhage, Hailong Jin, Juanzi Li, Olaf Cremers, Daniel Speicher, Armin B. Cremers, Joerg Zimmermann (2019). Imposing Category Trees Onto Word-Embeddings Using A Geometric Construction . ICLR-19 Seventh International Conference on Learning Representations,​ May 6 – 9, New Orleans, Louisiana, USA. ([[https://​www.researchgate.net/​publication/​331319652_Imposing_Category_Trees_Onto_Word-Embeddings_Using_A_Geometric_Construction|Preprint at ResearchGate]])
       * Daniel Speicher, Tiansi Dong, Christian Bauckhage, Armin B. Cremers: //Growing Executable Code-Quality-Knowledge Organically//,​ [[http://​fg-sre.gi.de/​wsre2018/​|20. Workshop Software-Reengineering & Evolution (WSRE) 2018]], Bad Honnef, Germany ({{:​private:​daniel:​public:​wsre_2018_gecqko_preprint.pdf|preprint}}/​* , XXX {{:​private:​daniel:​public:​wsre_2018_polishing_slides.pdf|slides}}XXX */​)  ​       * Daniel Speicher, Tiansi Dong, Christian Bauckhage, Armin B. Cremers: //Growing Executable Code-Quality-Knowledge Organically//,​ [[http://​fg-sre.gi.de/​wsre2018/​|20. Workshop Software-Reengineering & Evolution (WSRE) 2018]], Bad Honnef, Germany ({{:​private:​daniel:​public:​wsre_2018_gecqko_preprint.pdf|preprint}}/​* , XXX {{:​private:​daniel:​public:​wsre_2018_polishing_slides.pdf|slides}}XXX */​)  ​
 == 2016 == == 2016 ==
Line 151: Line 161:
       * Iaakov Exman, Daniel Speicher: //Linear Software Models: Equivalence of Modularity Matrix to Its Modularity Lattice//, ​ International Joint Conference on Software Technologies,​ Colmar, Alsace, France, page 109-116. SciTePress, 2015       * Iaakov Exman, Daniel Speicher: //Linear Software Models: Equivalence of Modularity Matrix to Its Modularity Lattice//, ​ International Joint Conference on Software Technologies,​ Colmar, Alsace, France, page 109-116. SciTePress, 2015
 == 2013 == == 2013 ==
-      * Daniel Speicher, Pascal Bihler, Paul Imhoff, Günter Kniesel, Holger Mügge, Jan Nonnen, Tobias Rho, Mark von Zeschau, Armin B. Cremers: //10 Years of Agile Lab Courses for International Students//, [[http://​www1.hs-bremerhaven.de/​kvosseberg/​sagwas/​|SAG WAS Workshop]], GI-Jahrestagung 2013: 235-237 ​ ({{:​private:​daniel:​public:​sagwas_2013_agile_abstract.pdf|abstract}}, ​[[http://www1.hs-bremerhaven.de/​kvosseberg/​sagwas2013/​gi-workshop-2013-Dateien/​Speicher-Poster.pdf|poster]][[http://​www1.hs-bremerhaven.de/​kvosseberg/​sagwas2013/​gi-workshop-2013-Dateien/​Speicher.pdf|slides]])+      * Daniel Speicher, Pascal Bihler, Paul Imhoff, Günter Kniesel, Holger Mügge, Jan Nonnen, Tobias Rho, Mark von Zeschau, Armin B. Cremers: //10 Years of Agile Lab Courses for International Students//, [[http://​www1.hs-bremerhaven.de/​kvosseberg/​sagwas/​|SAG WAS Workshop]], GI-Jahrestagung 2013: 235-237 ​ ({{:​private:​daniel:​public:​sagwas_2013_agile_abstract.pdf|abstract}}, ​{{:private:​daniel:​public:​speicher-poster.pdf|poster}}{{:private:​daniel:​public:​speicher-folien.pdf |slides}}
       * Daniel Speicher: //Code Quality Cultivation//,​ in A. Fred, J. Dietz, K. Liu, J. Filipe (Eds.): Knowledge Discovery, Knowledge Engineering and Knowledge Management - Communications in Computer and Information Science Volume 348, 2013, pp 334-349 ({{:​private:​daniel:​public:​ccis_348_cultivation_preprint.pdf|preprint}},​ [[ic3k2011|data]])       * Daniel Speicher: //Code Quality Cultivation//,​ in A. Fred, J. Dietz, K. Liu, J. Filipe (Eds.): Knowledge Discovery, Knowledge Engineering and Knowledge Management - Communications in Computer and Information Science Volume 348, 2013, pp 334-349 ({{:​private:​daniel:​public:​ccis_348_cultivation_preprint.pdf|preprint}},​ [[ic3k2011|data]])
       * Paul Heckmann, Daniel Speicher: //​Interactive Exploration of Structural Concepts in Code//, in A. Fred, J. Dietz, K. Liu, J. Filipe (Eds.): Knowledge Discovery, Knowledge Engineering and Knowledge Management - Communications in Computer and Information Science Volume 415, 2013, pp 260-270 ({{:​private:​daniel:​public:​ccis_415_heckmann_speicher_exploration_preprint.pdf|preprint}})       * Paul Heckmann, Daniel Speicher: //​Interactive Exploration of Structural Concepts in Code//, in A. Fred, J. Dietz, K. Liu, J. Filipe (Eds.): Knowledge Discovery, Knowledge Engineering and Knowledge Management - Communications in Computer and Information Science Volume 415, 2013, pp 260-270 ({{:​private:​daniel:​public:​ccis_415_heckmann_speicher_exploration_preprint.pdf|preprint}})
Line 166: Line 176:
       * Jan Nonnen, Daniel Speicher, Paul Imhoff: //Locating the Meaning of Terms in Source Code - Research on ”Term Introduction”//,​ WCRE 2011 ([[:​private:​jannonnen:​public:​start#​publications|See Jan's publication list]])       * Jan Nonnen, Daniel Speicher, Paul Imhoff: //Locating the Meaning of Terms in Source Code - Research on ”Term Introduction”//,​ WCRE 2011 ([[:​private:​jannonnen:​public:​start#​publications|See Jan's publication list]])
       * Jan Nonnen, Daniel Speicher: //Locating Term Introductions to support Code Comprehension//,​ 13. Workshop Software-Reengineering(WSR) 2011, Bad Honnef, Germany ([[:​private:​jannonnen:​public:​start#​publications|See Jan's publication list]])       * Jan Nonnen, Daniel Speicher: //Locating Term Introductions to support Code Comprehension//,​ 13. Workshop Software-Reengineering(WSR) 2011, Bad Honnef, Germany ([[:​private:​jannonnen:​public:​start#​publications|See Jan's publication list]])
 +      * Armin B. Cremers, Daniel Speicher: //Remarks on Agile Labs in Bonn and Nanjing//, Unpublished presentation about the history and state of our collaboration with the NUST in Nanjing and Agile in general, 2011 ({{:​private:​daniel:​public:​remarks_on_agile_labs_in_bonn_and_nanjing_-_slides.pdf|slides}})
 == 2010 == == 2010 ==
       * Daniel Speicher, Jan Nonnen: //​Consistent Considerations of Naming Consistency//,​ 12. Workshop Software-Reengineering(WSR) 2010, Bad Honnef, Germany ({{:​private:​daniel:​public:​wsr_2010_consistency_preprint.pdf|preprint}},​ {{:​private:​daniel:​public:​wsr_2010-consistency_slides.pdf|slides}})       * Daniel Speicher, Jan Nonnen: //​Consistent Considerations of Naming Consistency//,​ 12. Workshop Software-Reengineering(WSR) 2010, Bad Honnef, Germany ({{:​private:​daniel:​public:​wsr_2010_consistency_preprint.pdf|preprint}},​ {{:​private:​daniel:​public:​wsr_2010-consistency_slides.pdf|slides}})
Line 176: Line 187:
       * Holger Mügge, Tobias Rho, Daniel Speicher, Julia Kuck, Armin B. Cremers: //Towards an Infrastructure for Context-Sensitive Intelligence.//​ Workshop Selbstorganisierende,​ Adaptive, Kontextsensitive verteilte Systeme, Kassel, 2006 ([[http://​sam.iai.uni-bonn.de/​projects/​csi/​index.html#​publications|See CSI publications]])       * Holger Mügge, Tobias Rho, Daniel Speicher, Julia Kuck, Armin B. Cremers: //Towards an Infrastructure for Context-Sensitive Intelligence.//​ Workshop Selbstorganisierende,​ Adaptive, Kontextsensitive verteilte Systeme, Kassel, 2006 ([[http://​sam.iai.uni-bonn.de/​projects/​csi/​index.html#​publications|See CSI publications]])
 == 2004 == == 2004 ==
-      * Holger Mügge, Daniel Speicher, Günter Kniesel: //Extreme Programming in der Informatik-Lehre - Ein Erfahrungsbericht//,​ In: Informatik 2004 - Beiträge der 34. Jahrestagung der GI, Lecture Notes in Informatics,​ P-51, ISSN 1617-5468, p. 127-141, 2004. ([[http://roots.iai.uni-bonn.de/research/xp/|See Roots pages]])+      * Holger Mügge, Daniel Speicher, Günter Kniesel: //Extreme Programming in der Informatik-Lehre - Ein Erfahrungsbericht//,​ In: Informatik 2004 - Beiträge der 34. Jahrestagung der GI, Lecture Notes in Informatics,​ P-51, ISSN 1617-5468, p. 127-141, 2004. ([[https://subs.emis.de/LNI/Proceedings/Proceedings51/​GI-Proceedings.51-30.pdf|paper]])
       * Daniel Speicher, {{:​private:​daniel:​public:​poster.pdf|Composition of refactorings for Aspects}}, Poster, AOSD 2004       * Daniel Speicher, {{:​private:​daniel:​public:​poster.pdf|Composition of refactorings for Aspects}}, Poster, AOSD 2004
 == 2002 == == 2002 ==
private/daniel/public/start.1526562713.txt · Last modified: 2018/05/17 13:11 by Daniel Speicher

SEWiki, © 2019