Waterfall(폭포수 모델)
1. 가장 익숙하고 고전적인 소프트웨어 개발 기법
2. 각 개발 단계가 완전히 끝났다고 판단됐을 때, 다음 단계로 넘어가는 방식
3. 단순한 모델이라 이해하기 쉽고, 단계별로 정형화된 접근이 가능하다.
4. 프로젝트의 진행상황을 한눈에 명확하게 알 수 있다.
5. 프로젝트를 개발하던 도중 제기된 변경사항을 적용하기 어렵다.
6. 시스템의 동작 여부를 시스템 테스트 단계에 돌입하고 나서야 확인이 가능하다.
7. 대형 프로젝트에 적용하는 것이 부적합하고, 일정이 지연될 가능성이 매우 크다.
Agile 방법론
- 짧은 주기의 개발 단위를 반복해 하나의 큰 프로젝트를 완성해 나가는 것.
- 협력과 피드백을 통해 유연한 일 진행과 사용자의 요구 사항에 빠른 반영이 가능하다.
-요구 사항을 작은 단위로 쪼개 그에 대한 솔루션을 만들고, 빠르게 보여줌으로써 요구 사항에 대한 검증을 진행
- 대표적인 방식으론 스크럼(Scrum)과 칸반(Kanban)이 있다.
Scrum(스크럼)
개발자와 고객 사이의 지속적인 커뮤니케이션을 통해 요구사항을 수용
고객이 결정한 사항을 가장 우선적으로 시행
팀원들과 주기적인 미팅을 통해 프로젝트를 점검
주기적으로 제품 시현을 하고 고객으로부터 피드백 수용
작은 기능에 대해 "개획, 개발, 테스트, 기능 완료"의 4가지 과정을 1~2주마다 진행함
Kanban(칸반)
- 단계별 작업 현황을 행 형식의 보드 형태로 시각화하는 프로젝트 관리 방법을 말함.
- 업무 흐름을 시각화하고, 진행 중 업무에 제한을 둘 수 있다.
- 명시적 프로세스 정책 수립, 업무 흐름의 측정과 관리에 용이하다.
스크럼과 칸반의 차이
역할 구성
스크럼은 제품 책임자, 스크럼 마스터, 개발 팀이 각각의 역할을 수행하며, 팀내 구성이 명확하다.
칸반은 역할 구성을 정해놓지 않고, 팀원 모두가 각자의 업무를 진행하면서 정해놓은 우선순위에 따라 개발을 진행하는 차이가 있다.
기한과 집중 :
스크럼은 스프린트 주기를 정하여 각 스프린트마다 고유의 개발 목적이 있다.
칸반은 기한에 대한 제한보다는 일감의 우선순위에 맞추어 개발이 진행된다.
일감처리 방식
스크럼은 스프린트를 통해 전체 일감을 나누고 우선순위를 정한다.
칸반은 우선순위 부터 정하고, 칸반보드를 작성한 후, 우선순위에 따라 개발자에게 업무를 할당한다.
지속적인 개선
칸반은 지속적인 개선을 추구하여, 개선사항을 계속해서 칸반 보드에 명시한다.
스크럼은 각 스프린트에서 설정한 목표를 달성하는데에 집중한다.
유연성
스크럼은 고정된 스프린트 주기가 존재하기에 기간을 잘못 산정하면 프로젝트가 지연될 수 있다.
칸반에서는 업무에 따라 유연하게 일감의 우선순위를 조정할 수 있다.
'KDT 코딩온 개발 14기 수강일기' 카테고리의 다른 글
KDT 포스코X코딩온 웹 과정 14기 18일 - callback, promise, async (2) | 2024.10.27 |
---|---|
KDT 포스코X코딩온 웹 과정 14기 17일 - 구조분해할당, 클래스, 연산자 (0) | 2024.10.27 |
KDT 포스코X코딩온 웹 과정 14기 14일 - git (0) | 2024.10.25 |
KDT 포스코X코딩온 웹 과정 14기 13일 - 프레임워크 VS 라이브러리 (1) | 2024.10.25 |
KDT 포스코X코딩온 웹 과정 14기 13일 - JQuery (3) | 2024.10.25 |