Former Lectures
Chapter: Introduction
Suggested Reading:
- S. Demeyer, S.Ducasse, O.Nierstrasz – Object-Oriented Reengineering Patterns, Chapter 1 (pg. 1-14)
- M.M Lehman – Laws of Software Evolution Revisited (Section 1 and 2)
Chapter: Reverse Engineering
Suggested Reading:
- S. Demeyer, S.Ducasse, O.Nierstrasz – Object-Oriented Reengineering Patterns, Chapter 2-5 (pg. 17-117)
- M.Lanza, R.Marinescu - Object-Oriented Metrics in Practice, Chapter 3 (pg. 23-44)
- M.Lanza - The Evolution Matrix: Recovering Software Evolution using Software Visualization Techniques
Chapter: Detection of Design Problems
Suggested Reading:
- M.Lanza, R.Marinescu - Object-Oriented Metrics in Practice, Chapter 4 (pg. 45-72)
- M. Fowler – Refactorings, Chapter 3 (pg. 75-87)
Chapter: History Analysis - 1
Suggested Reading:
- T.Girba - Modeling History to Understand Software Evolution, Chapter 3 (Section 3.5); 4 (Sect. 4.1-4.3) ; 5 (Section 5.3.1, 5.4.1, 5.5) ; 7 (Section 7.3)
- M.Balint, T.Girba, R.Marinescu – How Developers Copy
- R.Marinescu, C.Marinescu – Are the clients of flawed classes (also) defect prone?
Chapter: History Analysis - 2
Suggested Reading:
Chapter: JavaScript Programming
Chapter: Towards the art of readable code
Non-mandatory chapter:
Chapter: Restructuring
Suggested Reading:
- S. Demeyer, S.Ducasse, O.Nierstrasz – Object-Oriented Reengineering Patterns, Chapter 9 & Chapter 10
- M. Fowler – Refactorings, Chapter 10 -Rename Method (pg. 273-274)
Non-mandatory materials:
Chapter: Empirical Software Engineering
Chapter: Empirical Software Engineering (Ownership)
Chapter: Genetic Programming
The old SQA lectures can be found here.
Chapter: Introduction
Suggested Reading:
- S. Demeyer, S.Ducasse, O.Nierstrasz – Object-Oriented Reengineering Patterns, Chapter 1 (pg. 1-14)
- M.M Lehman – Laws of Software Evolution Revisited (Section 1 and 2)
Chapter: Model Capture
Suggested Reading:
- S. Demeyer, S.Ducasse, O.Nierstrasz – Object-Oriented Reengineering Patterns, Chapter 2-5 (pg. 17-117)
- M.Lanza, R.Marinescu - Object-Oriented Metrics in Practice, Chapter 3 (pg. 23-44)
- M.Lanza - The Evolution Matrix: Recovering Software Evolution using Software Visualization Techniques
Chapter: Design Extraction
Suggested Reading:
- M.Fowler – Analysis Patterns, Appendix A.1-A.4 (pg. 313-323)
- M.Fowler - UML Distilled: A Brief Guide to the Standard Object Modeling Language, 3rd Edition: Chapter 3 ("Class Diagrams: The Essentials"), Chapter 4 ("Sequence Diagrams")
Chapter: Detection of Design Problems
Suggested Reading:
- M.Lanza, R.Marinescu - Object-Oriented Metrics in Practice, Chapter 4 (pg. 45-72)
- M. Fowler – Refactorings, Chapter 3 (pg. 75-87)
Chapter: Restructuring
Suggested Reading:
- S. Demeyer, S.Ducasse, O.Nierstrasz – Object-Oriented Reengineering Patterns, Chapter 10 (Forces and Overview (pg.215-217 + Pattern 10.1-10.4)
- M. Fowler – Refactorings, Chapter 10 -Rename Method (pg. 273-274)