<폭포수모델과 애자일모델의 비교>
폭포수 방법론(waterfall model)
소프트웨어 개발 계획을 정해두고 완전히 순차적으로 한 단계, 한 단계로 개발을 진행하는 형태의 개발 방법론이다.
지나치게 계획에 의존하고 있으며 형식적인 절차를 따르기 때문에 시간도 오래걸리고 그 효율성이 크게 저하된다는 단점이 있다.
애자일 방법론(agile model)
미래를 예측하기 보다는 주기적으로 제작 프로토타입을 시험해보는 철저한 관리를 통한 개발 방법론이라 할 수 있으며 끊임없이 개발하고 수정하는 일을 반복하면서 고객이 가장 만족할 수 있는 방향으로 소프트웨어를 개발한다.
애자일 개발 프로세스로 불리는 개발 방법론
- eXtreme Programming(XP)
애자일 개발 프로세스의 대표자로 고객과 함께 2주 정도의 반복개발을 하고, 테스트우선 개발(TDD)을 특징으로 하는 명시적인 기술과 방법을 가지고 있다.
- 스크럼
30일마다 동작 가능한 제품을 제공하는 스프린트(Sprint)를 중심으로 하고 있다. 매일 정해진 시간에 정해진 장소에서 짧은시간의 개발을 하는 팀을 위한, 프로젝트 관리 중심의 방법론
- Lean 소프트웨어 개발
애자일 실천을 위한 생각의 도구로 일본의 토요타에서 개발한 방법론으로 자동차 생산에 사용되는 방법론을 건축, 생산 뿐만 아니라 소프트웨어개발에 적용한 사례
- 애자일 회고
프로젝트 말미 혹은 중간 목표를 달성한 후 팀원들의 그동안 행적을 돌이켜보고 자료를 수집하여, 문제점을 밝혀낸 뒤 개선을 위한 아이디어와 구체적인 실행 방안을 내고 그 다음 업무에 효과적으로 적용시키기 위한 모임 활동
- TDD(Test Driven Development)
짧은 주기를 반복, 개발하는 개발 방법론에서 자동화된 테스트 케이스를 작성 후 테스트를 통과하기 위한 최소한 양의 코드를 생성, 그리고 리팩토링
- Extreme Modeling
- Adaptive Software Development(ADS)
스크럼(scrum)
관련 용어
- 제품 백로그(Product Backlog)
개발할 제품에 대한 요구 사항 목록
- 스프린트(Sprint)
약 3~5주의 반복적인 개발 주기
- 스프린트 계획 미팅
스프린트 목표와 스프린트 백로그를 계획하는 미팅
- 스프린트 백로그(Sprint Backlog)
각각의 스프린트 목표에 도달하기 위해 필요한 작업 목록
- 일일 스크럼(Daily Scrum) 회의
매일 약 15분간 진행되는 진척 상황 미팅
- 제품 증분(실행 가능한 제품 개발)
스프린트의 결과로써 나오는 실행 가능한 제품
칸반 보드
burn down chart
(남아있는 일 대비 시간을 표시)