Seminal Papers¶
This page is a starting bibliography. Add semester-specific recent papers to match the research themes selected by the class.
Modularity and architecture¶
- David L. Parnas. On the Criteria To Be Used in Decomposing Systems into Modules. Communications of the ACM, 1972.
- Philippe Kruchten. The 4+1 View Model of Architecture. IEEE Software, 1995.
- Brian Foote and Joseph Yoder. Big Ball of Mud. Pattern Languages of Program Design, 1997.
Refactoring¶
- William F. Opdyke. Refactoring Object-Oriented Frameworks. PhD dissertation, 1992.
- Early and subsequent work on automated refactoring preconditions, refactoring engines, and refactoring correctness.
Search-based software engineering¶
- Mark Harman and Bryan F. Jones. Search-Based Software Engineering. Information and Software Technology, 2001.
- Follow-up literature on multi-objective automated refactoring and software remodularization.
Smells and pattern detection¶
Select a mixture of:
- foundational metric/rule-based smell detection;
- empirical validation of smell effects;
- architecture-smell detection;
- structural/graph-based design-pattern detection;
- learned and hybrid pattern-detection methods.
Reading requirement for recent papers¶
For automation topics, each semester should include recent papers from venues such as ICSE, FSE, ASE, ICSME, SANER, TSE, TOSEM, EMSE, JSS, IST, and SCP, chosen to reflect the latest techniques and benchmarks.