JIRA
JIRA?
정의
지라는 아틀라시안이 개발한 사유 이슈 추적 제품이다. 버그 추적, 이슈 추적, 프로젝트 관리 기능을 제공하는 소프트웨어이다.
필요성
- 프로젝트의 진행도 파악
- 팀장의 프로젝트 백트래킹
- TODO List
- 효과적으로 일을 처리할 수 있도록
JIRA의 장점
이슈 트래킹
프로젝트 관리
- 팀 활동 시 프로젝트를 관리하는 것이 필수적이다.
- 커뮤니케이션, 플래닝, 데드라인, 위험요소, 목표 등..
- JIRA를 이용하면 대시보드를 이용해 그래프나 표 등 프로젝트를 관리할 수 있는 다양한 기능을 제공한다.
Agile
에자일 소프트웨어 개발 선언
- 공정과 도구보다 개인과 상호작용을 바람
- 포괄적인 문서보다 작동하는 소프트웨어를 바람
- 계약 협상보다 고객과의 협력을 바람
- 계획을 따르기보다 변화에 대응하기를 바람
Scrum vs Kanban
- Scrum 방법론
- 스프린트(기간)을 두고 할 일을 백로그에 담아둠
- 약 2~3주의 스프린트를 만들고 기간마다 개발을 진행한다.
- 스프린트가 끝나면 이슈를 마무리하고 배포를 진행하고 다음 스프린트를 시작한다.
- Scrum meeting
- 매일 아침에 모여서, 한 명씩 돌아가면서 자신이 한 작업과 기분 등을 공유한다.
- 그리고 내가 할 일과 하고 있는 일, 어려움을 겪고 있는 일을 공유한다.
- 칠판에 감정등을 쓰기도하고, Postit으로 자신이 할일과 끝난일을 붙이기도 한다.
- 이를 더 빠르고 편하게 해주는 것이 JIRA의 애자일 보드이다.
- 앉아서 하는 스크럼은 시간이 오래 걸릴 수 있어 지양되고, 빠르게 회의를 진행하고 공유 후 다시 작업을 시작하는 것이 핵심!
- Kanban 방법론
- 따로 스프린트가 없이 전체 프로젝트의 이슈를 생성해놓고, 상태관리를 진행한다.
- Scrum보다 자율성이 있으나, 따로 주기가 없다보니 한 명에게 일이 몰리는 문제가 발생할 수 있다.
- Auto In Progress
- 개인의 일량을 수치화하여 모든 팀원들에게 같은 양의 과제가 가게끔 설정하는 것
DevOps
개발/운영의 전형적인 악순환 고리
- 운영 시스템에서 예상하지 못한 사고가 발생하기 때문이다.
- 운영팀은 항상 NO라고 하기 때문이다.
- 개발팀이 운영팀에 이야기해주지 않았기 때문이다.
개발/운영 협업에서 문제점은 업무가 나뉘어서 서로 미루기 때문에 문제가 발생한다.
- 개발팀은 다양한 성과를 빠르게 내고 싶어하기 때문
- 운영팀은 변화보다 안정적인 소프트웨어 환경을 다루고 싶기 때문
따라서 등장한 개념이 DevOps
- 개발과 운영을 하나로 잇자!
- 2~3주 단위로 개발과 배포를 진행한다.
- 실시간 소통을 한다.
DevOps를 잘 수행하기 위한 조건
- 반복적인 작업들을 Tool을 이용해서 자동화
- 팀원 모두가 알고있는 하나의 공유된 지표가 필요
- 장애나 이슈가 있을 때 혼자만 알지 말고 팀원들과 공유가 필요
- JIRA로 해결 가능!