센로그
[ED] 1. 모든 문제를 이슈 추적 시스템으로 관리하기 본문
이슈 추적이란?
- 이슈란?
- 프로젝트에서 발생할 수 있는 버그, 오류, 개선 요청, 작업 할당 등 다양한 문제와 작업 항목을 의미한다.
- 이런 이슈들을 기록하고, 해결 과정을 관리하는 것을 이슈 추적이라고 한다.
이슈 추적 시스템
- 깃허브, 깃랩... 소스코드 저장소들은 버전관리 기능 뿐만 아니라 이슈 추적 기능도 함께 제공하고 있다.
- 또는 별도의 이슈 추적 시스템을 사용하곤 한다
- 상용 이슈 추적 시스템인 JIRA
- 조직 내부에서 직접 구축 가능
- 오픈소스로는, 버그질라, 론치패드, OTRS, 레드마인, 트랙 등이 있다.
- 상용 이슈 추적 시스템인 JIRA
이슈 추적 시스템을 꾸준히 활용하면 좋은 점
- 디버깅 작업을 명확하게 파악 가능
- 릴리스 일정을 수립하고 추적 가능
- 작업의 우선순위를 정할 수 있음
- 자주 발생하는 이슈나 해결책을 문서로 정리 가능
- 해결해야 할 문제를 실수로 빼먹지 않을 수 있음
- 릴리스 노트를 자동으로 생성할 수 있음
- 결함을 측정하고 되돌아보며 교훈을 얻을 수 있는 저장소로 활용 가능
이슈 작성하는 방법
- 문제를 재현하는 방법도 정확히 기록한다.
- 실제 실행해볼 수 있는 예제 기록하면 좋음
- 버그 리포트의 제목을 정확하게 붙인다.
- 요약 리포트만 봐도 어떤 버그인지 쉽게 알아볼 수 있도록 하는 것
- 나쁜 예: 프로그램이 갑자기 뻗음
- 좋은 예: 저장하는 동안 리프레시 버튼을 누르면 프로그램이 뻗음
- 요약 리포트만 봐도 어떤 버그인지 쉽게 알아볼 수 있도록 하는 것
- 버그의 우선순위, 심각한 정도를 기록한다.
- 심각한 정도에 따라 해결 우선순위가 달라지기 때문이다.
- 이에 기반하여 작업 일정을 짤 수도 있게 된다.
- 해당 버그와 관련된 사람들이나, 버그가 발생한 환경에 대한 정보를 기록한다.
- 쉽게 발생하지 않는 버그를 재현하는 데 도움이 되기 때문이다.
추가
+) 깃허브 이슈 추적 기능
- 레포지토리별 Issues 항목을 통해 이슈 관리가 가능하다.
- 담당자, 라벨, 마일스톤 등을 설정 가능하다.
- 자동으로 이슈 번호가 할당된다.
- 깃 커밋 메시지에 이슈 번호를 작성하여 특정 코드가 어떤 이슈를 해결하는지 명확히 나타낼 수도 있다.
- 이슈가 해결 되면 이슈를 닫을 수 있다.
+) 어느 정도 수준의 버그까지 기록하는 게 좋을까?
- 최종 사용자에게 영향을 미치는 버그
- 프로젝트의 핵심 기능에 영향을 주는 버그
- 반복적으로 발생하는 버그
- 디버깅이나 분석에 유용한 버그
+) 해결이 쉬운 버그라도 기록하는 게 좋을까?
- 해결이 쉬운 버그일지라도 이슈 추적 시스템에 기록하면 좋은 점
- 버그 해결 기록을 추후 참고 가능
- 버그 해결 이력이 쌓이면 코드나 시스템의 취약한 부분을 파악하는 데도 도움이 됨
- 팀 간 정보 공유를 통해 의사소통이 원활해짐
- 시간 관리와 우선순위 설정 가능
'Effective > Effective Debugging' 카테고리의 다른 글
[ED] 6. 소프트웨어에서 제공하는 디버깅 기능 활용하기 (1) | 2024.11.12 |
---|---|
[ED] 5. 정상 시스템과 비정상 시스템의 차이점 분석하기 (0) | 2024.11.11 |
[ED] 4. 문제 발생 지점부터 버그를 추적하거나, 프로그램 시작 지점부터 버그를 찾아나가기 (0) | 2024.11.11 |
[ED] 3. 선행 조건과 후행 조건 만족 여부 확인하기 (0) | 2024.11.11 |
[ED] 2. 해결책을 웹에서 검색할 때 검색어를 구체적으로 표현하기 (0) | 2024.11.11 |
Comments