정답: 4번 소프트웨어 재공학(Re-engineering)은 기존 소프트웨어 시스템을 분석하고 수정하여 새로운 소프트웨어로 변환하는 과정입니다. 이 과정에는 주로 분석(analysis), 재구조화(restructuring), 마이그레이션(migration) 등이 포함됩니다. 그러나 소프트웨어 재사용(software reuse)은 기존 소프트웨어를 새로운 용도로 사용하는 것을 의미하며, 재공학의 과정에 직접 포함되지는 않습니다.