소프트웨어 개발과 프로젝트 관리

익스트림 프로그래밍(XP) 등의 애자일 개발에서 수행되는, 프로그램의 외부에서 본 동작을 바꾸지 않고 내부 구조를 알기 쉽고 변경하기 쉬운 형태로 정리하는 작업은?

  1. A페어 프로그래밍
  2. B리버스 엔지니어링
  3. C리팩터링
정답과 해설 보기

정답: C. 리팩터링

리팩터링은 중복된 코드를 합치고, 긴 함수를 나누고, 이름을 알기 쉽게 하는 등으로 기능을 바꾸지 않고 코드의 구조를 개선하는 작업입니다. 동작이 바뀌지 않았음을 확인하기 위해 자동화된 테스트를 준비하고, 조금씩 변경하면서 테스트를 실행합니다. 페어 프로그래밍은 두 사람이 한 대의 컴퓨터로 함께 프로그램을 작성하는 XP의 실천 방법입니다. 리버스 엔지니어링은 기존 프로그램을 분석하여 사양이나 설계를 밝혀내는 것입니다.

이 분야 연습하기 분야로 돌아가기

소프트웨어 개발과 프로젝트 관리의 다른 문제

  1. 테스트 주도 개발(TDD)의 진행 방법으로 적절한 것은?
  2. 지속적 통합(CI)의 설명으로 적절한 것은?
  3. 지속적 전달과 지속적 배포의 차이에 대한 설명으로 적절한 것은?
  4. 어떤 업무 시스템의 요구사항 중 비기능 요구사항에 해당하는 것은?
  5. UML에서 전기밥솥의 제어 소프트웨어처럼 이벤트(버튼 누름, 타이머 만료, 온도 도달 등)에 의해 객체의 상태가 어떻게 바뀌는지를 나타내는 데 적합한 다이어그램은?