상세 컨텐츠

본문 제목

[JIRA] Aglie(애자일) 방법론이란?

IT에 대해

by choiDev 2024. 1. 1. 01:04

본문

소프트웨어 개발 방법론중 하나로 처음부터 끝까지 계획을 수립하고 개발하는

폭포수 방법론과는 달리 개발과 함께 즉시 피드백을 받아서 유동적으로 개발하는 방법이다.

애자일 방법론은 선언문이 있는데 선언문의 내용은 아래와 같다.

공정과 도구보단 개인과 상호작용
포괄적인 문서보다 작동하는 소프트웨어
계약 협상보단 고객과의 협력
계획을 따르기보다 변화에 대응하기

선언문은 우측에 언급된것을 중요시 여기는데 이것은 과거의 개발방법론보다

애자일 방법론이 조금더 일하는 프로세스를 민첩하게 움직이려는 이념을 엿볼수있다.

가장 크게 와닿는 부분은 계획을 따르기 보다 변화에 대응하기를 이라는 문구인데

그럼 계획을 세우지 말라는건가요? 라는 의미로 받지 말고

계획은 세우지만 시장의 변수, 투자의 변수, 리소스의 변수 등등의 변수의 상황에 따라

일정 및 개발 방향도 유연하게 바뀔수 있다라는 것을 마음가짐으로 삼는다 정도로 받아드리고 있다.

 


애자일 프레임워크 종류 (Scrum과 Kanban)

  • Scrum
    • 스크럼의 어원은 럭비 경기에서 양팀선수들이 하나의 집단을 형성하고 서로 협력을 통해 공을 빼앗는 대형을 의미한다.
    • 스크럼은 애자일 프로세스 중 하나로, 팀이 일정한 주기(일반적으로 2주)로 작업을 완료하는 반복적인 개발 사이클을 가지고있습니다 
    • 제품 백로그, 스프린트 계획 회의, 일일 스크럼 등의 핵심  이벤트와 역할이 정의되어 있습니다.
    • 스크럼은 보통 프로덕트 오너, 스크럼 마스터, 개발팀으로 구성됩니다.
    • 스크럼의 가치에는 용기, 집중, 헌신, 존중, 개방성 등이 있습니다.
    • 스크럼의 주요 목표는 의사소통의 투명성, 공동책임 및 지속적인 발전환경을 통해 고객의 요구를 충족시키는 것에 있습니다.
    • 스크럼의 프로세스는 스프린트 백로그 작성 & 개발 일정 수립 > 백로그 할당 > 스프린트 진행 > 일일 스크럼 회의 > 스프린트 종료 > 스프린트 검토회의 > 스프린트 회고 등의 프로세스로 진행합니다.
프로덕트 오너
- 목표 제품에 대한 책임을 지고 의사를 결정하는 역할을 담당함, 이해관계자들의 의견을 총합하고, 가치있는 제품을 만들고있는지 상시 체크하는 담당자

스크럼마스터
- 개발팀원들의 원활한 업무를 위한 가이드 역할을 담당하며 일일 스크럼회으를 주관할 수 잇으며 개발과정에서 발생된 장애요소를 공론화하여 해결할 수 있도록 처리한다. 

개발팀
- 프로덕트오너와 스크럼마스터를 제외한 모든 스크럼 팀의 구성원을 뜻하며, 개발자, 디자이너, 테스터 등을 전부 지칭하는 뜻이다.

 


  • Kanban
    • 팀이 작업의 상태를 실시간으로 추적 할 수 있도록 하는 방법론 입니다.
    • 작업을 한번에 몇 개씩 가져가고 완료되면 바로 다음작업을 진행하는 풀방식을 사용합니다
    • 칸반은 일본어로 시각화한 보드를 의미합니다 
    • "제 시간에 완성(저스트 인 타임)" 하기 위한 스케줄링 시스템으로서, 도요타가 최초로 개발해 사용했습니다.
    • 칸반은 기본적으로 (할일, 진행중, 완료) 3가지 column으로 이루어집니다. 이것만으로도 칸반시스템을 운영 할 수 있습니다. 물론 중간에 스텝을 추가하는것은 가능합니다
    • 칸반은 언제 작업이 들어올지 모르는 지원티켓 관리와 같은 시나리오에 효과적입니다.
    • 칸반은 할일 -> 진행중 -> 완료로 이동하는 행을 swimlan이라고 부르며 각 Column마다 있는 숫자는 WP(Work In Process)로 불립니다. 각 프로세스마다 동시에 진행할 수 있는 이슈의 제한 수를 의미하기도 합니다.
    • 칸반은 3가지 규칙이 중요합니다.
      • 워크플로우 가시화 : 작업을 분할로하여 작업지시서에 기록하여 작업보드에 게시
      • WIP 제한 : 워크 플로우상의 적정한 프로세스를 관리 > 병목현상 관리를 통한 품질저하 방지
      • Workflow 측정 및 최적화 : 평균 시간, 사이클 타임을 산정하여 소요시간 최소화를 위한 프로세스 최적화

칸반보드 예시

Reference

https://www.atlassian.com/ko/agile/kanban/boards

관련글 더보기