▼결함 관리
★결함
소프트웨어의 에러, 결함, 결점, 버그, 실패와 같은 용어가 사용되며, 이러한 결합으로 인하여 설계와 다른게 동작하거나 다른 결과가 발생하는 것을 의미한다.
심각도별 분류 : 치명적 결함, 주요 결함, 보통 결함, 경미한 경함, 단순 경함 등으로 분류할 수 있다.
결함 우선순위 : 결정적 높은, 보통, 낮은 또는 즉시 해결, 주의 요망, 대기, 개선 권고 순으로 표시하며 결함의 심각도가 높다고 해서 반드시 우선 순위가 높은 것은 아니다.
★결함 유입별 분류
기획 시 유입되는 결함, 실제 시 유입되는 결함, 코딩시 유입되는 결함, 테스트 부족으로 유입되는 결함 등으로 분류한다.
★ 결함 분류
시스템 결함 : 주로 애플리케이션이나 데이터베이스 처리에서 발생되는 결함이다.
기능 결함 : 애플리케이션의 기획, 설계, 업무 시나리오 등의 단계에서 유입된 결함이다.
GUI 결함 : 화면 설계에서 발생된 결함이다.
문서 결함 : 기획자, 사용자, 개발자 간 의사소통 및 기록이 원활하지 않아 발생된 결함이다.
★결함 관리 프로세스
결함 관리 계획 | 결함 관리에 대한 일정, 인력, 업무 프로세스를 확보하여 계획을 수립. |
결함 기록 | 테스터는 발견된 결함에 대한 정보를 결함 관리 DB에 기록. |
결함 검토 | 등록된 결함에 있어서 주요 내용을 검토하고, 결함을 수정할 개발자에게 전달. |
결함 수정 | 개발자는 할당된 결함 프로그램 수정. |
결함 재확인 | 테스터는 개발자가 수정한 내용을 확인하고 다시 테스트 수행 |
결함 상태 추적 및 모니터링 | 결함 관리 팀장은 결함 관리 DB를 이용하여 대시보드 또는 계시판 형태의 서비스를 제공. |
최종 결함 분석 및 보고서 작성 |
발견된 결함과 관련된 내용과 이해관계자들의 의견이 반영된 보고서를 작성하고 결함관리를 종료 |
★결함 관리 프로세스
애플리케이션 테스트에서 발견된 결함을 처리하는 과정은
결함 관리계획 -> 결함기록 -> 결함 검토 -> 결함수정 <-> 결함 재확인 -> 최종 결함 분석 및 보고서 작성
★ 결함 추적 순서
결함 추적은 결함이 발견된 때부터 결함이 해결될 때까지 전 과정을 추적하는 것으로 순서는 다음과 같다.
결함 등록(Open) : 테스터와 품질 관리 담당자에 의해 발견된 결함이 등록된 상태
결함 검토(Reviewed) : 등록된 결함을 테스터, 품질 관리 담당자, 프로그램 리더, 담당 모듈 개발자에 의해 검토된 상태
결함 할당(Assigned) : 결함을 수정하기 위해 개발자와 문제 해결 담당자에게 결함이 할당된 상태
결함 수정(Resolved) : 개발자가 결함 수정 완료한 상태
결함 조치 보류(Deferred) : 결함의 수정이 불가능해 연기된 상태로, 우선순위, 일정 등에 따라 재오픈을 준비중인 상태
결함 종료(Closed) : 결함이 해결되어 테스터와 품질 관리 담당자가 종료를 승인한 상태
결함 해제(Clarified) : 테스터, 프로그램 리더, 품질 관리 담당자가 종료 승인한 결함을 검토하여 결함이 아니라고 판명한 상태
▼결함 관리 도구 및 용어
★결함 관리 도구
Manis : 소프트웨어 설꼐 시 단위별 작업 내용을 기록할 수 있어 결함 및 이슈관리, 추적을 지원하는 오픈소스 도구
Bugzilla: 결함을 지속적으로 관리하고 심각도와 우선순위를 지정할 수 있는 오픈소스 도구
Redmine : 프로젝트 관리 및 결합 추적 도구
JIRA : 아틀래시안에서 제작한 PHP로 개발된 결함 상태 관리 도구
Test Collab: 테스트 케이스를 관리하기 위한 간단하고 쉬운 인터페이스를 제공하며 Jira, Redmine, Asana, Mantis 등과 같은 버그 추적 도구와의 완벽한 통합 지원
★결함관련 용어
에러: 소프트웨어 개발 또는 유지보수 수행 중 발생한 부정확한 결과로, 개발자의 실수로 발생한 오타, 개발 명세서의 잘못된 이래, 서브루틴의 기능 오해등이 있다.
오류: 프로그램 코드상에 존재하는 것으로 비정상적인 프로그램과 정상적인 프로그램 버전간의 차이로 인하여 발생되어, 잘못된 연산자가 사용된 경우에 프로그램이 서브루틴으로부터의 에러 리턴을 점검하는 코드가 누락된 것을 말한다.
실패: 정상적인프로그램과 비정상적인 프로그램의 실행결과의 차이를 의미하며, 프로그램 실행중에 프로그램의 실제 실행 결과를 개발 명세서에 정의된 예상 결과와 비교함으로서 발견한다.
결함: 버그,에러,오류,실패, 프로그램 실행에 대한 문제점, 프로그램 개선사항 등의 전체를 포괄하는 용어이다.
★결함 내성
시스템을 구성하는 부품의 일부에서 결함 또는 고장이 발생하여도 정상적 혹은 부분적으로 기능을 수행할 수 있는 내성을 의미한다. 고장허용성이라고도 한다.
'백엔드 개발자 기록 일람 > 정보처리기사 준비 기록' 카테고리의 다른 글
소스 코드 최적화 (0) | 2024.05.22 |
---|---|
애플리케이션 성능 개선 (0) | 2024.05.16 |
통합 테스트 (0) | 2024.05.09 |
테스트 커버리지 (0) | 2024.05.06 |
테스트 시나리오와 테스트 기법 (0) | 2024.05.03 |