기출 하자보증(Warranty)과 유지보수(Maintenance)를 구분하고, 소프트웨어 유지보수 유형(긴급, 수정, 적응, 완전 유지보수)과 보고 및 행정 절차에 대해 설명

agnusdei·2025년 6월 24일

Software Engineering

목록 보기
37/59

하자보증(Warranty)과 유지보수(Maintenance)

문제

하자보증(Warranty)과 유지보수(Maintenance)를 구분하고, 소프트웨어 유지보수 유형(긴급, 수정, 적응, 완전 유지보수)과 보고 및 행정 절차에 대해 설명하시오.

답변

1. 하자보증(Warranty)과 유지보수(Maintenance)의 구분

하자보증(Warranty)

  • 개념: 소프트웨어 개발 완료 후 인도 시점부터 일정 기간 동안 소프트웨어의 결함이나 오류에 대해 무상으로 수정해주는 서비스
  • 특징:
    • 계약에 명시된 일정 기간 동안만 제공 (일반적으로 6개월~1년)
    • 개발자의 책임 하에 무상으로 제공되는 서비스
    • 시스템 인도 시 명세된 기능에 대한 오류에만 해당
    • 사용자 요구사항 미충족이나 설계 및 구현 오류에 따른 결함 해소가 주 목적

유지보수(Maintenance)

  • 개념: 소프트웨어를 정상적으로 사용할 수 있도록 하자보증 기간 이후에 지속적으로 관리하고 개선하는 활동
  • 특징:
    • 하자보증 기간 이후 별도 계약에 의해 유상으로 제공
    • 오류 수정뿐만 아니라 기능 개선, 환경 변화 대응, 성능 향상 등 포함
    • 소프트웨어 수명 주기 전체에 걸쳐 지속적으로 수행
    • 소프트웨어 가치와 품질을 유지·향상시키는 활동

2. 소프트웨어 유지보수 유형

유형주요 내용특징발생 비율
긴급 유지보수(Emergency)예상치 못한 심각한 오류 발생 시 즉시 대응하는 유지보수- 시스템 다운, 보안 취약점 등 긴급 상황
- 정상적인 업무 진행 불가 시 최우선 처리
- 임시 해결책(workaround) 먼저 제공 후 근본 원인 해결
약 5%
수정 유지보수(Corrective)소프트웨어의 오류나 결함을 발견하고 수정하는 유지보수- 논리적 오류, 계산 오류 등 기능적 결함 해결
- 발견된 버그 수정 및 처리
- 정기적인 패치 또는 핫픽스 형태로 제공
약 20%
적응 유지보수(Adaptive)변화하는 환경에 맞게 소프트웨어를 조정하는 유지보수- OS, 하드웨어, 네트워크 환경 변화 대응
- 법규 및 규제 변화에 따른 수정
- 새로운 플랫폼 지원을 위한 조정
약 25%
완전 유지보수(Perfective)소프트웨어의 성능과 기능을 개선하는 유지보수- 사용자 요구에 따른 새로운 기능 추가
- 성능 최적화 및 코드 리팩토링
- 사용성 개선 및 인터페이스 향상
- 문서화 개선
약 50%

3. 유지보수 보고 및 행정 절차

유지보수 보고 및 행정 절차의 주요 단계

  1. 요청 접수 및 분류

    • 사용자로부터 유지보수 요청 접수 (헬프데스크, 이슈 트래커 활용)
    • 요청 내용에 따른 유지보수 유형 분류 (긴급/수정/적응/완전)
    • 우선순위 및 심각도 평가 (영향 범위, 업무 중요도 고려)
  2. 영향 분석 및 계획 수립

    • 요청된 변경사항의 기술적 영향도 분석
    • 소요 자원(인력, 시간, 비용) 산정
    • 작업 일정 및 담당자 지정
  3. 승인 절차

    • 변경관리위원회(CCB: Change Control Board) 검토
    • 비용 대비 효과 분석 및 우선순위 결정
    • 유지보수 작업 공식 승인
  4. 유지보수 작업 수행

    • 코드 수정 및 개발 작업 진행
    • 단위 테스트 및 통합 테스트 수행
    • 품질 보증 활동 진행
  5. 적용 및 배포

    • 변경사항 적용 계획 수립 (일정, 방법)
    • 사용자 공지 및 교육 자료 준비
    • 변경사항 배포 및 설치
  6. 문서화 및 보고

    • 변경된 내용에 대한 기술 문서 업데이트
    • 소프트웨어 버전 관리 및 이력 기록
    • 작업 완료 보고서 작성 및 제출

유지보수 관리를 위한 주요 문서

  • 유지보수 계획서: 유지보수 범위, 일정, 자원 배분, 절차 등을 정의
  • 변경 요청서(CR: Change Request): 사용자가 요청한 변경 내용과 사유를 기록
  • 변경 이력서: 시스템에 적용된 모든 변경사항의 이력을 관리
  • 장애 보고서: 발생한 문제와 그 해결 과정을 기록
  • 성능 측정 보고서: 시스템 성능 모니터링 결과를 기록
  • 유지보수 결과 보고서: 유지보수 활동의 결과와 평가를 정리

4. 요약

하자보증은 소프트웨어 인도 후 일정 기간 내 발생하는 결함을 무상으로 수정하는 계약 의무인 반면, 유지보수는 하자보증 기간 이후 소프트웨어의 가치를 지속적으로 유지·향상시키기 위한 포괄적 활동입니다. 유지보수는 긴급, 수정, 적응, 완전 유지보수로 구분되며, 각 유형별 특성에 맞는 체계적인 보고 및 행정 절차를 통해 효율적인 소프트웨어 관리가 이루어집니다. 이러한 유지보수 활동은 소프트웨어의 수명을 연장하고 사용자 만족도를 높이는 데 필수적인 요소입니다.

어린이 버전 요약

소프트웨어는 처음 만들어진 후에도 계속 관리가 필요해요. '하자보증'은 소프트웨어를 처음 받았을 때 생기는 문제를 무료로 고쳐주는 약속이고, '유지보수'는 그 이후에도 계속해서 소프트웨어가 잘 작동하도록 관리하고 개선하는 활동이에요. 유지보수에는 급한 문제를 해결하는 '긴급 유지보수', 오류를 고치는 '수정 유지보수', 새로운 환경에 맞추는 '적응 유지보수', 그리고 더 좋게 만드는 '완전 유지보수'가 있어요. 이런 관리를 체계적으로 하기 위해 요청을 받고, 계획을 세우고, 승인을 받고, 작업을 하고, 적용한 뒤, 기록하는 과정이 필요해요.

profile
DevSecOps Pentest🚩

0개의 댓글