기출문제/정보처리기사

2019년 1회 정보처리기사 기출문제 67번

엉클지니 2025. 5. 11. 23:24

67. 소프트웨어 재공학은 어떤 유지보수 측면에서 소프트웨어 위기를 해결하기 위한 방법인가?

    Preventive maintenance

    ② Corrective maintenance

    Perfective maintenance

    ④ Adaptive maintenance

 

 

 


✅ 정답: ❶ Preventive maintenance (예방적 유지보수)


🧠 개념 설명

소프트웨어 재공학 (Software Reengineering)

  • 소프트웨어 재공학은 기존 소프트웨어의 품질을 개선하거나 구조를 새롭게 재구성하는 작업입니다.
  • 주로 소프트웨어 위기를 해결하기 위해 낡고 비효율적인 시스템을 개선하는 데 중점을 둡니다.

유지보수 유형

  1. Preventive Maintenance (예방적 유지보수)
    • 소프트웨어 시스템이 문제를 일으키기 전에 시스템을 개선하고, 오류를 방지하기 위한 유지보수입니다.
    • 소프트웨어 재공학은 기존 시스템의 구조적 문제를 개선하고, 향후 문제 발생을 예방하는 과정이기 때문에 예방적 유지보수에 해당합니다.
    • 기존 시스템을 개선하고, 미래의 유지보수를 쉽게 할 수 있도록 준비하는 작업이므로 예방적 성격이 강합니다.
  2. Corrective Maintenance (수정적 유지보수)
    • 실제로 발생한 오류나 버그를 수정하는 작업입니다.
    • 재공학은 주로 오류 수정보다 구조적 개선에 초점을 맞추기 때문에 이와는 다릅니다.
  3. Perfective Maintenance (완전화 유지보수)
    • 기능을 향상하거나 성능을 최적화하기 위한 작업입니다.
    • 재공학은 기능이나 성능 향상보다는 구조적인 개선에 더 중점을 두므로 완전화 유지보수보다는 예방적 유지보수에 가깝습니다.
  4. Adaptive Maintenance (적응적 유지보수)
    • 환경 변화에 맞춰 시스템을 변경하는 작업입니다.
    • 재공학은 환경에 적응하는 작업보다는 소프트웨어의 품질구조 개선에 초점을 맞추므로, 적응적 유지보수와는 다릅니다.

✅ 결론

정답: ❶ Preventive Maintenance
→ 소프트웨어 재공학은 미래의 문제를 예방하기 위해 기존 시스템을 구조적으로 개선하는 작업이므로 예방적 유지보수에 해당합니다.