기출문제/정보처리기사

2016년 3회 정보처리기사 기출문제 70번

엉클지니 2025. 7. 10. 22:43

70. Software Reengineering의 필요성이 대두된 가장 주된 이유는?

    구현의 문제                        설계의 문제

    요구사항 분석의 문제          유지보수의 문제

 

300x250

**소프트웨어 리엔지니어링(Software Reengineering)**의 필요성은 주로 유지보수 문제로부터 발생합니다. 소프트웨어 리엔지니어링은 기존 시스템을 재설계, 재구성, 개선하여 시스템의 품질과 효율성을 높이는 과정입니다.

각 선택지 분석

  1. ① 구현의 문제:
    • 구현 문제는 소프트웨어 개발 초기에 발생하는 문제로, 코드의 품질이나 구현 방법에 관한 문제입니다. 그러나 소프트웨어 리엔지니어링기존 시스템을 개선하는 과정이므로 구현 문제보다는 유지보수 문제가 주요 원인입니다.
  2. ② 설계의 문제:
    • 설계 문제는 초기 개발 단계에서 시스템 구조나 아키텍처를 잘못 설계한 경우 발생합니다. 설계가 잘못되었을 경우 리엔지니어링을 통해 재설계구조 개선을 할 수 있지만, 설계의 문제는 유지보수 문제와 관련이 더 깊습니다.
  3. ③ 요구사항 분석의 문제:
    • 요구사항 분석 문제는 시스템 개발 초기에 발생할 수 있는 문제입니다. 시스템이 잘못된 요구사항을 기반으로 개발되었을 때 리엔지니어링을 통해 요구사항 재정의시스템 개선을 할 수 있습니다. 그러나 소프트웨어 리엔지니어링의 가장 큰 필요성은 유지보수 문제입니다.
  4. ❹ 유지보수의 문제:
    • 유지보수의 문제소프트웨어 리엔지니어링의 가장 큰 이유입니다. 시스템이 시간이 지나면서 기술이 낡고, 코드가 복잡해지고, 유지보수가 어려워지며 점점 비효율적이 됩니다. 이때 리엔지니어링을 통해 시스템을 개선, 최적화하고 효율적으로 유지보수할 수 있도록 만드는 것이 주요 목표입니다.
    • 유지보수 문제소프트웨어 리엔지니어링주로 해결하고자 하는 핵심 문제입니다.

결론

소프트웨어 리엔지니어링의 필요성이 대두된 가장 주된 이유는 유지보수의 문제입니다.

정답

❹ 유지보수의 문제

요약 표

선택지설명정답 여부
구현의 문제 틀림
설계의 문제 틀림
요구사항 분석의 문제 틀림
유지보수의 문제 맞음
 

해설

소프트웨어 리엔지니어링은 기존 시스템의 유지보수 문제를 해결하기 위해 필요한 작업입니다. 시스템의 구조가 오래되고 복잡해지면 유지보수가 어려워지므로, 리엔지니어링을 통해 이를 개선하고, 더 효율적이고 관리하기 쉬운 형태로 시스템을 재구성하는 것이 중요합니다.