나무위키:이슈 트래커를 찾아오셨나요?
- 상위항목: 컴퓨터 관련 정보
1 개요
주로 소프트웨어 개발 업계에서 사용하는 도구. 작게는 제품의 기능 추가 혹은 버그 관리부터 프로젝트 관리까지 다양한 기능을 제공한다. 흔히 웹 기반의 인터페이스를 제공한다.
2 이슈란?
버그, 기능 구현 등을 포함한 업무의 단위이다. 이슈는 담당자 한사람이 맡아서 해결할 수 있는 구체적인 것으로 하는 것이 좋다. 나무위키를 예로 들자면 "모든 버그를 고친다" 혹은 "관리자를 대체할 인공지능을 만든다"(...) 등은 너무 광범위하거나 담당자 한명이 적당한 시간 안에 완료할 수 있는 일이 아니므로 좋은 이슈가 아니다. 반면 "아무개 문서의 아무개 문법 렌더링 이슈를 고친다"는 적절한 이슈로 볼 수 있다.
이슈는 다양한 추가 정보를 가진다. 이 정보들을 다양한 주체가 업데이트 하면서 이슈들을 관리하는 것이 이슈 트래커의 주된 기능이다. 어떤 정보들이 있는지는 이슈 트래커의 종류에 따라 차이가 있다.
- 담당자 : 이슈를 해결할 사람이다.
- 우선순위 : 이슈의 우선순위. 담당자는 우선순위가 높은 이슈부터 해결하는 것이 원칙이다.
- 마감일 : 이슈가 반드시 이 날짜까지는 해결되어야 하는 경우 집어넣기도 한다.
- 상태 : 기본적으로 열림/닫힘으로 구분하고 그 외 세부적인 상태(작업 시작, 고쳐짐, 재현 불가 등)를 가지고 있기도 한다. 열린 이슈는 분석, 검토, 해결이 끝나지 않은 이슈, 닫힌 이슈는 해결되었거나 모종의 이유(재현 불가, 기술적으로 불가능, 중복 등)로 더 이상 검토할 필요가 없는 이슈이다.
그 밖에 글에 댓글을 다는 것처럼 내용을 추가하거나 사진을 업로드하는 등의 기능을 넣기도 한다.
3 특징
- 변경 이력이 다 남는다. 제 때 완료하지 못한 이슈에 대해 지워버리거나 축소/은폐하기 어렵다.
- 이슈의 추가 정보로 필터링해서 깔끔하게 볼 수 있다. 내가 담당자인 이슈, 오랫동안 처리되지 않은 이슈 등을 필터링해서 볼 수 있기에 프로젝트 진행 상황을 파악하기 쉽다.
4 사용 흐름
이슈 트래커 종류와 개발 문화에 따라 차이가 있을 수 있다. 여기서는 대략적인 흐름을 적는다.
- 이슈 등록 : 사용자 혹은 품질관리팀이 발견한 버그 혹은 신규 기능을 추가한다. 담당자가 명확한 경우 지정하기도 하나 공란으로 남겨두는 일도 흔하다.
- 이슈 검토/분류 : 등록된 이슈는 개발팀이 검토한다. 중복, 재현 불가, 해결 불가능한 이슈의 경우 이 단계에서 이슈를 닫는다. 개발팀에서 해결할 이슈의 경우 담당자, 우선순위, 마감일 등을 지정한다.
- 이슈 해결 : 이슈가 해결되면 이슈를 닫는다. 담당자와 별개로 검증 담당자를 따로 두어 진짜로 이슈가 해결되었는지 검증하는 경우도 있다.
5 종류
- bugzilla: 모질라 재단에서 만든 이슈 트래커.
- Phabricator: 나무위키:이슈 트래커가 이것을 사용했었다. 페이스북에서 내부용으로 사용하던 툴을 공개한 것.
- Redmine: Ruby 기반의 무료 이슈 트래커. 나무위키의 구 이슈트래커가 여기에 해당된다.
- JIRA: Atlassian사에서 개발한 유료 이슈 트래커.
- Microsoft Team Foundation Server: Visual Studio와
크고아름답게 연동된다. 이슈 트래커, 버전 관리 시스템, 프로젝트 관리 등을 한번에 제공하는 일종의 턴키 솔루션이다. - Trello: 웹 인터페이스 뿐만 아니라 안드로이드, iOS용, Windows 8.1용 네이티브 앱을 제공하는 것이 특징이다.
- mantis: 현재 나무위키:이슈 트래커가 사용하고 있다. 사마귀 캐릭터가 그려진 로고가 특징이다.