Chapter 05. 애플리케이션 성능 개선
section 01. 결함 관리
1. 결함 관리
1) 결함: 소프트웨어의 에러, 결함, 결점, 버그, 실패. 이로 인하여 설계와 다르게 동작하거나 다른 결과가 발생하는 것
2) 심각도별 분류
결함 등급 | 가중치 | 정의 | 예시 |
치명적(Critical) | 1.6 | 시스템의 기능 중단, 장애, 심각한 보안 취약점 -> 심각한 문제 유발 | 시스템 다운, 데이터 유실, 보안 문제 등 |
주요(Major) | 1.2 | 사용자 경험에 큰 영향/기능 수행에 지장 | 사용자 인터페이스 오류, 기능 수행 불가, 잘못된 출력 등 |
보통(Normal) | 1 | 영향력은 적지만 사용자 불만 초래/기능수행 미세 영향 | 오타, 화면 레이아웃 문제, 다국어 지원 미비 등 |
경미한(Minor) | 0.5 | 주요한 문제 초래 x, 디자인, 레이아웃 문제 | 오타, UI 디자인 문제, 미세한 기능 수행 오류 등 |
단순(Simple) | 0.4 | 기능 수행과 직접적인 연관 x | 오타, 문자열 정렬, 미세한 디자인 오류 등 |
3) 결함 우선순위
결정적, 높음, 보통, 낮거나 즉시 해결, 주의 요망, 대기, 개선 권고 순으로 표시
결함의 심각도가 높다고 해서 반드시 우선순위가 높은 것은 아님
4) 결함 유입 별 분류
기획 시 유입되는 결함, 설계 시 유입되는 결함, 코딩 시 유입되는 결함, 테스트 부족으로 유입되는 결함 등으로 분류
5) 결함 위치별 분류
- 시스템 결함: 애플리케이션, 데이터베이스 처리에서 발생
- 기능 결함: 애플리케이션 기획, 설계, 업무 시나리오 등의 단계에서 유입
- GUI 결함: 화면 설계에서 발생
- 문서 결함: 기확자, 사용자, 개발자 간 의사소통 및 기록이 원활하지 않아 발생
6) 결함 내성(고장 허용성)
시스템을 구성하는 부품 일부에서 결함 또는 고장이 발생하여도 정상적 혹은 부분적으로 기능을 수행할 수 있는 내성
2. 결함 관리 프로세스
결함 관리 계획 | 전체 프로세스에 대한 결함 관리 일정, 인력. 업무 프로세스 등을 확보하여 계획을 수립 |
결함기록 | 테스터는 발견된 결함을 결함 관리 DB에 등록 |
결함 검토 | 테스터. 프로그램 리더. 품질 관리 담당자 등은 등록된 결함을 검토하고 결함을 수정할 개발자 에게 전달 |
결함수정 | 개발자는 전달받은 결함을 수정 |
결함 재확인 | 테스터는 개발자가 수정한 내용을 확인하고 다시 테스트를 수행 |
결함 상태 추적 및 모니터링 활동 | 결함 관리 DB를 이용하여 프로젝트별 결함 유형. 발생률 등을 한눈에 볼 수 있는 대시보드 또 는 게시판 형태의 서비스를 제공 |
최종 결함분석 및 보고서 작성 | 발견된 결함에 대한 정보와 이해관계자들의 의견이 반영된 보고서를 작성하고 결함 관리를 종료 |
3. 결합 추적 프로세스
결함 등록 | 테스터는 발견된 결함에 대한 정보를 결함 관리 DB에 기록 |
결함 검토 | 등록된 결함을 테스터. 품질 관리 담당자. 프로그램 리더, 담당 모듈 개발자가 검토한 상태 |
결함 할당 | 결함을 수정하기 위해 개발자와 문제 해결 담당자에게 결함 할당 |
결함수정 | 개발자는 할당된 결함 프루그램 수정을 완료한 상태 |
결함 조치 보류 | 결함의 수정이 불가능해서 연기된 상태 |
결함 재확인 | 테스터는 개발자가 수정한 내용을 확인하고 다시 테스트 수행 |
결함 종료 | 결함이 해결돼서 테스터와 품질 관리 담당자가 종료를 승인한 상태 |
결함 해제 | 종료 승인한 결함을 검토하여 결함이 아니라고 판명한 상태 |
2. 결함 관리 도구 및 용어
1) 결함 관리 도구
1. 상용 도구
- HP ALM
- IBM Rational Quality Manager
- Microsoft TFS
- Atlassian JIRA
- Test Rail
- Zephyr
- TestLink
- QAComplete
- QMetry
- Test Collab
2. 오픈소스 도구
- Bugzilla
- Manits BT
- Redmine
- Trac
- Test Link
- Kiwi TCMS
- XQual
- Test Disk
- Apache JMeter
2. 결함 관련 용어
에러 (Error) | • 소프트웨어 개발 또는 유지보수 수행 중에 발생한 부정확한 결과이다. • 개발자의 실수로 발생한 오타 • 개발 명세서의 잘못된 이해 • 서브루틴의 기능오해 |
오류(Fault) | • 소프트웨어의 구현이나 설계상의 오류로 시스템이 고장(Failure〉을 일으키게 하며, 오류 (Error)가 있는 경우 프로그램 코드상에 존재하는 것으로 비정상적인 프로그램과 정상적인 프로그램 버전 간의 차이로 인하여 발생한다. • 잘못된 연산자 사용 • 변수 선언 오류 • 데이터 유실 등 |
실패 (Failure) | 정상적인 프로그램과 비정상적인 프로그램의 실행 결과의 차이를 의미하며. 프루그램 실행 중 에 프로그램의 실제 실행 결과를 개발 명세서에 정의된 예상 결과와 비교함으로써 발견된다. |
결함(Defect) | 버그, 에러. 오류. 실패. 프로그램 실행에 대한 문제점. 프로그램 개선사항 등의 전체를 포괄하 는 용어이다. |
'정보처리기사' 카테고리의 다른 글
[정처기] Part 04 - Chapter 04 (1) | 2025.06.05 |
---|---|
[정처기] PART 5 (0) | 2025.05.06 |
[정처기] Part 04 - Chapter 05 (0) | 2025.04.08 |
[정처기] Part 03-Chapter 02 (0) | 2025.04.08 |
[정처기] Part 02-Chapter 01 (0) | 2025.04.08 |