Study Note

태스크 관리 도구 본문

아키텍처/소프트웨어 개발과 테스트

태스크 관리 도구

moreLearn 2020. 2. 18. 11:39

도구를 사용하는 이유

  • 멀리 떨어져 있어도 쉽게 공유가 가능하다.
  • 검색 등을 이용하여 지난 이슈애 대한 내용 추적이 좋다.
  • 업무 프로세스에 맞춰 플로 등을 커스터 마이징 할 수 있다.

다음과 같이 태스크 관리에 많은 효율성을 부여 하지만 중요한건 프로세스와 조직 문화 자체임을 인지해야 한다.

도구 선택시 고려 사항

워크플로 사용자 정의(Workflow Customization) [필수]

태스크는 처리과정에 따라 상태 값을 가진다. 상태 값의 변화는 일종의 흐름인 워크플로를 가진다.

워크플로는 개발 조직의 업무 프로세스에 맞추어서 다시 정의되기 때문에 워크플로를 커스터마이징해야 한다.

계층(Hierachy) [필수]

태스크의 종류별로 상하, 평행의 관계를 설정해야 한다. 일반적인 링크 기능은 연결성만 제공하지만 계층을 명시적으로 보장하는 시스템은 상하 연결성을 제공한다. 때문에 계층은 추적성을 보장한다.

대시보드 [권장]

프로젝트 진행 현황을 요약한 표이다. 진행 상황, 위험요소, 팀원들의 워크폴로들을 확인 할 수 있다.

  • 위험 태스크 관리
    우선순위, 위험도가 높은 태스크는 요약한 화면에 별도로 표시해 상위 매니저들이 관리 할 수 있다.
  • 번 다운 차트(Burn Down Chart)
    진행 중인 스프린트의 [마감된 태스크수/전체 태스크수]를 그래프 형태로 나타내어 프로젝트 진행 상황과 개발 속도를 보여준다.
  • 스프린트별 징행 현황
    스프린트의 완료율을 %로 출력
  • 스프린트별 버그 발생 수
    진행 완료/진행 중인 스프린트의 버그 수를 출력하여 품질 관리 지표로 사용한다. 보통 진행 될수록 버그의 출몰 빈도수는 줄어든다.
  • 개발자별 태스크 처리량
    업무 부하를 판단하고 업무 재분배를 할수 있으며 개발자의 생산정을 확인할 수 있다.

경우에 따라 대시보드를 여러개 만들어서 사용한다. 예로 다음과 같이 대시보드를 재공한다

  • 개발자 : 자신의 개발 내용, 할당된 태스크 수
  • 프로젝트 리더 : 프로젝트 진행 현황
  • 임원급 : 전체 프로젝트의 진행 현황과 위혐요인

외부 시스템 연동 [권장]

외부 시스템과 연동하여 시너지 효과를 만든다.

  • 인증 체계 연동
    이메일 주소 인증과 같은 전산적인 개정 시스템이 있을경우 신규 입사자나 퇴사자에 대한 계정 관리가 편하다.
  • 형상 관리 시스템 연동
    구현으로 정의된 태스크의 내용이 어떻게 코드상에 반영되었는지 추적이 가능하다.
  • 위키 등의 외부 시스템 연동
    공통 문서나 API문서, 설계문서 요구사항 분석서와 같이 태스크 처리에 기반이 되는 근거 자료들을 링크를 통해 태스크와 연결하여 태스크가 어떻게 구현되었고, 어떤 근거로 개발되었는지 알 수 있다.

리포팅 [권장]

여러 조건에 따라 질의한 결과를 엑셀과 같은 형태로 출력하는 기능이다. 다양한 메트릭스를 이용하여 프로젝트를 관리할 수 있고, 또한 회의와 같이 별도 문서가 필요한 경우 출력된 리포트를 사용하면 엽무 효율성을 증가 시킬 수 있다.

이슈 트래킹 도구

태스크 관리 시스탬(Task Management System) 또는 이슈 트래킹 시스탬(Issue Tracking System)을 태스크 기반의 소프트웨어 개발 프로세스 관리 도구라고 한다.

클라우드 서비스 형태인 trello나 JIRA On Demand 서비스등 이 있다.

설치형 오픈소스는 Trac, RedMine, JIRA, IBM Jazz/ RTC등이 있다.

Trac

태스크[이슈 관리], 소스 코드[형상관리(SCM : Source Code Management)], 문서 [Wiki]관리를 통합 지원한다.

형상 관리 도구인 Subversion과 연동되어 이슈에 대한 구현 내용, 결함에 대한 처리 내용이 소스코드에 어디에 반영되어 있는지 확인할 수 있다. 하지만 Trac의 경우 하나의 프로젝트만 관리할 수 잇다.

RedMine

Trac과 비슷하지만 Trac으 단점을 보안한 제품이다. 태스크/소스 코드/문서 관리를 통합하고 다수의 프로젝트를 하나의 RedMine으로 관리할 수 있다.

간트차트, 달력 연동, 형상관리 서버[SVN, CVS, Git, Bazaar]등을 지원한다.

JIRA

JIRA는 순수 이슈 트래킹을 위해서 개발 되었지만 버그 관리 용도로 사용 가능하다. 아틀라시안의 다른 제품과 연동하여 Trac, RedMine 이상의 기능을 제공한다.

다양한 유/무료 플러그인을 제공하고 있어 용도나 프로세스에 맞게 수정할 수 잇다.

IBM Jazz/ RTC (Rational Team concert)

IBM에서 인수한 레이셔널사에서 만든 도구이다. Jazz는 소프트웨어 개발의 전 과정[이슈관리, 요구사항 관리, 품질관리, 필드관리 등]을 자동화 할 수 있는 도구 이다.

RCT는 태스크 관리 모듈이다. 폭 넓은 기능을 제공하지만 무겁기 때문에 응답 속도가 느리다. 기능이 많고 복잡하다.

그 외

  • VersionOne
    스크럼 방법론 지원이 잘된다.
  • Raly Enterprise
    SaaS형태로 제공되며 애자일 방법론이 잘 적용되어 있다.
  • Senera
    소프트 웨어 개발 전체 프로세스를지원 한다. 고도화된 개발 프로세스를 시스템화할 수 있다.
  • MyLyn
    IDE개발 환경인 이클립스에서 MyLyn 플러그인을 사용하면 이클립스에서 태크스 목록을 나타나게 할 수 있다.

이 글은 저: 조대협님의 "대용량 아키텍처와 성능 튜닝"을 읽고 공부한 내용입니다.

이 글은 코드프레소 DevOps Roasting 코스를 수강하면서 작성한 글입니다.

 

2020/02/18 - [아키텍처/소프트웨어 개발과 테스트] - 태스크

 

태스크

태스크란 상세 요구 사항을 구현하기 위해 디자인, 문서 작성, 코딩, 테스트 과정에서 발견된 버그들을 처리하는 행위를 태스크라고 한다. 태스크는 1~2일 단위로 처리할 수 있도록 분리한다. 요구사항 ~ 태스크까..

more-learn.tistory.com

2020/02/18 - [아키텍처/소프트웨어 개발과 테스트] - 태스크와 요구사항

 

태스크와 요구사항

요구 사항 저장 요구 사항이 지족성으로 변경된다. 변경된 요구 사항을 일관된 하나의 문서로 관리한다. 만약 그렇지 않고 워드, 파워포인트 같은 문서로 저장하면 요구 사항이 변경될때 마다 문서를 수정하고 재..

more-learn.tistory.com

 

'아키텍처 > 소프트웨어 개발과 테스트' 카테고리의 다른 글

Technical Debt  (0) 2020.02.18
태스크와 요구사항  (0) 2020.02.18
태스크  (0) 2020.02.18