Agile은 고객과 긴밀하게 협업하고 변화에 적응하면서 작고 빈번한 증분 단위로 소프트웨어를 제공하는 사고방식입니다. 이는 특정 단일 프로세스가 아니라 Agile 선언문(2001)으로 정의됩니다. Scrum, Kanban, XP는 Agile 가치를 실천에 옮기는 구체적인 프레임워크입니다.
네 가지 가치
선언문은 네 쌍의 가치를 제시합니다. 오른쪽 항목을 버리지 않으면서도 왼쪽 항목을 더 중시합니다.
text
프로세스와 도구 보다 개인과 상호작용
포괄적인 문서 보다 작동하는 소프트웨어
계약 협상 보다 고객과의 협력
계획을 따르기 보다 변화에 대응하기
이는 12가지 원칙으로 뒷받침됩니다. 이르고 지속적인 제공, 변화하는 요구사항의 수용, 빈번한 제공, 매일의 협업, 지속 가능한 속도, 그리고 정기적인 성찰입니다.
구체적인 예시
팀이 완전한 제품을 만들기 위해 6개월 동안 사라지는 대신, Agile 팀은 2주마다 얇지만 사용 가능한 조각을 출시하고, 이를 사용자에게 보여주며, 피드백을 바탕으로 다음 조각을 조정합니다.
흔한 함정
- Agile을 "문서 없음" 또는 "계획 없음"으로 여기는 것. 이는 없음이 아니라 딱 필요한 만큼을 의미합니다.
- 그 뒤에 있는 가치를 무시한 채 의식(standup, sprint)만 도입하는 것.
왜 중요한가
Agile은 아이디어와 작동하는 소프트웨어 사이의 피드백 루프를 단축하여 잘못된 것을 만들 위험을 줄입니다.
면접관이 이 질문을 하는 이유는, 여러분이 Agile을 단순히 기계적으로 따르는 의식이 아니라 일련의 가치로 이해하고 있는지 확인하기 위함입니다.
