Instructor: | Tom Dean |
Location: | WLH 722 |
Times: | Monday 2:30-4:30 |
Wed 3:30-4:30 | |
Text: | None. The course will be based on readings from the literature |
The first class will be on Wed Jan 8 because of a seminar on Monday
There will be about 5 weeks of lectures followed by a midterm. The remaining 6 weeks will be seminar format where students will survey literature and prepare reports. Students will take turns leading class discussions on the literature. Students will also do a project singley or in pairs, including a class presentation of the project. The marking scheme is:
Midterm | 25% |
Reports | 30% |
Class Participation | 15% |
Project | 30% |
Course Outline
This is a very general outline of topics for the first 5 weeks. The content of the remainder of the course depends on the papers chosen by the students.
This week will focus on Design Recovery as a topic, Design Models Organization and General Terminology
Slides: wed
Singer, J., Lethbridge, T., Vinson, N. and Anquetil, N., "An Examination of Software Engineering Work Practices", CASCON '97, Toronto, October, pp. 209-223.
Lethbridge, T. and Singer, J. (1997), "Understanding Software Maintenance Tools: Some Empirical Research", Workshop on Empirical Studies of Software Maintenance (WESS 97), Bari Italy, October, pp. 157-162.
R. Ferenc, S. Sim, R. Holt , R. Koschke, T. Gyimothy, "Towards a Standard Schema for C/C++", 8th Working Conference On Reverse Engineering (WCRE'01) , Stuttgart, Germany, October, pp. 49-58.
T. Lethbridge, E. Plödereder, S. Techelaar, C. Riva, P. Linos, S. Marchenko, “The Dagstuhl Middle Model” [here]
H. Fahmy, R.C. Holt and J.R. Cordy, "Wins and Losses of Algebraic Transformations of Software Architectures", Proc. ASE'2001, IEEE 16th International Conference on Automated Software Engineering, San Diego, November 2001, pp. 51-62. [here]
Monday: C Program, Java
Program. Pic 1, Pic2,
Pic3, Pic4,
Pic 5, Java
example DMM
Slides: Wed
Programs: grok for Mac grok for Linux
Grok for linux has been successfuly run on Mohave and on Ubuntu 16.04 LTS and 18.04 LTS, but not extensively tested in 64 bit code.Michael L. Van De Vanter, "The Documentary Structure of Source Code" Journal of Information and Software Technology, Elsevier, Volume 44, No 13, pp. 767-782
Queen's has a subscription to the Elsevier Journals. You must be on a Queen's Computer or using the secure proxy server in order to download the paper. Go to the Elsevier website. In the Journal or Book title search box, type "Information and Software Technology", then select Volume 44, Issue 13. You can then download the Van de Vanter Paper.
Vaclav Rajlich, N. Wilde, "The role of Concepts in Program Comprehension" Proc. 2002 International Workshop on Program Comprehension (IWPC'02), June 2002, Paris, 271-278.
I.T. Bowman, R. Holt, N.V. Brewster, "Linux as a Case Study: It's Extracted Software Architecture", Proc. 21st International Conference on Software Engineering (ICSE'99), May 1999, Los Angeles, pp. 555-563
Available from IEEE Xplore.
Bull, R.I.; Trevors, A.; Malton, A.J.; Godfrey, M.W. Semantic grep: regular expressions + relational abstraction 9th Working Conference on Reverse Engineering(WCRE 2002), October, 2002, Richmond, Virginia, pp. 267- 276.
Wed will be more 'Txl, with a talk based on the paper Txl Cookbook.Please do not distribute the slides, since they are from a third party source, and I only have permission to give them to the class.
Week 6
Monday is an advanced TXL class and organization for rest of term
Wed is exam.
|
Monday 1 |
Monday 2 |
Monday 3 |
Wed |
Week 7 |
MA&CC |
NM&AHS |
IJ&M |
AG&JDC |
Week 8 |
PP&XT |
AA&KP&AB |
MA&CC |
NM&AHS |
Week 9 |
IJ&M |
AG&JDC |
PP&XT |
AA&KP&AB |
Week 10 |
MA&CC |
NM&AHS |
IJ&M |
AG&JDC |
Week 11 |
PP&XT |
AA&KP&AB |
MA&CC |
AA&NM&AHS |
Week 12 |
IJ&M |
AG&JDC |
PP&XT |
AA&KP&AB |
Monday
MA&CC: Li, H., Li, S., Sun, J., Xing, Z., Peng, X., Liu, M. and Zhao, X., Improving API caveats accessibility by mining API caveats knowledge graph. In 2018 IEEE International Conference on Software Maintenance and Evolution (ICSME) (pp. 183-193).
NM&AHS: Bogner, J. Fritzsch, J. Wagner, J., Zimmerman, A., "Assuring the Evolvability of Microservices: Insights into Industry Practices and Challenges", International Conference on Software Maintenance and Reengineering, 2019
IJ&M: Lung, C.H., "Agile software architecture recovery through existing solutions and design patterns", Presented at the 6th IASTED International Conference on Software Engineering and Applications, SEA 2002
Wednesday
AG&JDC: Adams, B. Tromp, H. de Schutter, W., "Design recovery and maintenance of build systems", International Conference on Software Maintenance, 2007., pp 114-123.
Monday
PP&XT: Cordy, James R. "Comprehending reality-practical barriers to industrial adoption of software maintenance automation." 11th IEEE International Workshop on Program Comprehension, 2003.. IEEE, 2003.
AA&KP&AB: Hassan, A., Holt, R. "Architecture Recovery of Web Applications", 24th International Conference on Software Engineering (ICSE) Pages (349–359)
MA&CC:DiPenta, M, Cerulo, L.,Aversano,L., The Evolution and Decay of
Statically Detected Source Code Vulnerabilities, SCAM 2008 pp 101-110
Wednesday
NM&AHS: Pantiuchina, J., Lanza, M., Bavota, G., "Improving Code: The (Mis)perception of Quality Metrics", 2018 IEEE International Conference on Software Maintenance and Evolution.
Monday
IJ&M:Su, CT, Downming Y, Software Architecture Recovery and Re- documentation Tool of a Hospital Information System,International Conference on Computer and Communication Engineering (ICCCE 2012), 3-5 July 2012, Kuala Lumpur, Malaysia
AG&JDC: Fernandez, A., Bergel A., "A domain-specific language to visualize software evolution", Information and Software Technology, 98(2018), pp 118-130
PP&XT: Chan, Brian, Lionel Marks, and Ying Zou. "An approach for estimating code changes in e-commerce applications." 2008 10th International Symposium on Web Site Evolution. IEEE, 2008.
Wednesday
AA&KP&AB: Tobias Roehm, Rebecca Tiarks “How Do Professional Developers Comprehend Software?” Proceedings of the 34th International Conference on Software Engineering June 2012 Pages 255–265.
Monday
AHS & NM: Arcelli, D., Cortellessa, V., DiPompeo D., Earmo, R., Tucci, M., Exploiting Architecture/Runtime Model-Driven Traceability for Performance Improvement, 2019 IEEE International Conference on Software Architecture (ICSA)
IJ&M: Carey M. Gannod, G., "Recovering Concepts from Source Code with Automated Concept Identification", 15th IEEE International Conference on Program Comprehension (ICPC'07)
MA&CC: Kalliamvakou, Eirini, Georgios Gousios, Kelly Blincoe, Leif Singer, Daniel M. German, and Daniela Damian. "The promises and perils of mining GitHub." In Proceedings of the 11th working conference on mining software repositories (MSR), pp. 92-101. 2014.
Wednesday
AG&JDC: Hill, E, Pollock L, Vijay-Shanker, K. "Exploring the Neighborhood with Dora to Expedite Software Maintenance", ASE 07, pp 14-23.
Monday
AA&KP&AB: Beat Fluri “Do Code and Comments Co-Evolve? On the Relation between Source Code and Comment Changes” 14th Working Conference on Reverse Engineering · WCRE 2007
PP&XT: Basit, Hamid Abdul, and Stan Jarzabek. "Detecting higher-level similarity patterns in programs." ACM Sigsoft Software engineering notes 30.5 (2005): 156-165.
MA&CC:Gonzalez et al., Automated Characterization of Software Vulnerabilities, 2019 IEEE International Conference on Software Maintenance and Evolution (ICSME)
Wednesday
NM&AHS: Zimmermann et al. Impact of switching bug trackers: a case study on a medium-sized open source project, 2019 IEEE International Conference on Software Maintenance and Evolution (ICSME)
Monday
IJ&M: Sadiq, J., Waheed, T., "Reverse Engineering & Design Recovery: An Evaluation of Design Recovery Techniques", International Conference on Computer Networks and Information Technology.
AG&JDC: Costagliola, G, De Lucia, A, Deufemia, V, Gravino, C, Risi, M, "Design Pattern Recovery by Visual Language Parsing", Proceedings of the Ninth European Conference on Software Maintenance and Reengineering, CSMR 05.
PP&XT: De Lucia, Andrea, et al. "Migrating legacy systems towards object-oriented platforms." 1997 Proceedings International Conference on Software Maintenance. IEEE, 1997.
Wednesday
AA&KP&AB: Tobias Roehm, Rebecca Tiarks “How Do Professional Developers Comprehend Software?” 2012 34th International Conference on Software Engineering (ICSE). (From Week 9)
AA&KP&AB: Andrian Marcus, Andrey Sergeyev, “An Information Retrieval Approach to Concept Location in Source Code” 11th Working Conference on Reverse Engineering.