콘텐츠로 바로가기

Maintenance & Tech Debt

1. **Stage 1: Fundamentals (Weight: 1)** * Maintenance Types and Software Evolution Laws. 2. **Stage 2: Quantification (Weight: 2)** * Tech Debt Me...

sys.entry
M

Me

hyunyoun's Blog

posts2 min read

Segments: MTD Mechanics

Segment 1: Software Evolution & Maintenance

  • Lehman’s Laws of Software Evolution
  • Maintenance Types: Corrective, Adaptive, Perfective, Preventive
  • The Software Aging Process

Segment 2: Technical Debt Fundamentals

  • The Ward Cunningham Metaphor
  • Debt Types: Deliberate vs. Inadvertent
  • Interest, Principal, and the Cost of Delay

Segment 3: Tech Debt Quantification

  • Static Analysis and Complexity Metrics
  • SQALE Method and Technical Debt Ratio
  • Impact Analysis on Velocity and Quality

Segment 4: Legacy System Modernization

  • Strategies: Rewrite, Re-architect, Encapsulate
  • The Strangler Fig Pattern
  • Migration Risk Management

Segment 5: Refactoring Mechanics

  • Code Smells and Antipatterns
  • Boy Scout Rule & Continuous Refactoring
  • Automated Refactoring Tools and Techniques

Segment segmental 6: Testing in Maintenance

  • Retaining Invariants during Restoration
  • Characterization Testing (Golden Master)
  • Regression Suite Optimization

Segment 7: Maintenance Management

  • Managing Stakeholder Expectations
  • Balancing Feature Work vs. Debt Repayment
  • Documentation Recovery and Knowledge Transfer

Segment 8: Advanced Evolution

  • Evolutionary Architecture Dynamics
  • Fitness Functions for Structural Integrity
  • System Archeology and Impact Mapping

Segment 9: Case Studies

  • Decomposing Monolithic Enterprise Systems
  • Refactoring High-Scale Legacy Platforms
  • Modernizing Mission-Critical Real-time Systems

Learning Map: Evolution Progression

  1. Stage 1: Fundamentals (Weight: 1)
    • Maintenance Types and Software Evolution Laws.
  2. Stage 2: Quantification (Weight: 2)
    • Tech Debt Metrics and Impact Assessment.
  3. Stage 3: Strategy (Weight: 3)
    • Modernization Patterns (Strangler Fig).
  4. Stage 4: Tactics (Weight: 4)
    • Refactoring Mechanics and Testing Invariants.
  5. Stage 5: Optimization (Weight: 5)
    • Evolutionary Architecture and Long-term Health.

In-Scope / Out-of-Scope

  • In-Scope: Evolution theory, debt metrics, refactoring patterns, and modernization strategies.
  • Out-of-Scope: Pure DevOps automation (Pillar 05), new system architecture (Pillar 03).

Technical Pointers

  • Pillar SE (09-03): Design patterns for extensibility.
  • Pillar SRE (07-05): Reliability constraints during migration.