애자일 프로젝트 관리 A to Z

CIO

지속적인 개선이라는 특징으로 무장한 애자일 기법은 기업의 프로젝트 성공 가능성을 한층 높여줄 수 있다. 여기 여러 기법에서부터 훈련 방법, 연관 소프트웨어에 이르기까지 애자일 프로젝트 관리와 관련해 알아둘 만한 것들을 정리했다.



애자일(Agile)이란?
애자일은 제품 또는 서비스 개발 중 지속적으로 개선을 시도할 수 있도록 ‘스프린트’(Sprint)라는 짧은 개발 사이클을 활용하는 프로젝트 관리 방법론이다.

점진적인 소프트웨어 개발 방법은 1957년까지 거슬러 올라가지만 ‘애자일’이라는 용어는 대형 소프트웨어 시스템 개발에 관한 논문을 발표한 윌리엄 로이스(William Royce)가 1970년대에 처음으로 언급했다. 이후 2001년, 17명의 소프트웨어 개발자들이 “소프트웨어 개발에 대한 반복적이고 사람 중심적인 접근방식을 인도하기 위한 4가지 핵심 가치와 12가지 원칙을 공식적으로 천명한” 애자일 매니페스토(Agile Manifesto)를 발표했다. 이 개발자들은 모여서 자신들의 종합적인 경험을 바탕으로 개발 방법을 논의했다.

애자일의 원칙
애자일 프로젝트 관리에 대한 다음의 12가지 핵심 원칙은 지금도 활용되고 있다.

1. 고객 만족은 항상 우선순위가 가장 높으며 신속하고 지속적인 제공을 통해 달성한다.
2. 환경 변화는 고객에 경쟁 우위를 제공하기 위해 프로세스의 아무 단계에서도 도입된다.
3. 제품 또는 서비스를 더 높은 빈도로 제공된다.
4. 이해당사자 및 개발자는 매일 긴밀하게 협업한다.
5. 모든 이해당사자 및 팀원은 최적의 프로젝트 결과를 통해 동기 부여를 유지하면서 팀에는 필요한 모든 툴과 지원을 제공하고 프로젝트 목표를 달성할 수 있다는 신뢰를 얻는다.
6. 면대면 회의는 프로젝트 성공을 위한 가장 효율적이고 효과적인 형태로 간주한다.
7. 최종 동작 제품은 궁극적인 성공의 지표이다.
8. 지속 가능한 개발은 개발팀과 이해당사자가 지속적인 속도를 유지할 수 있는 애자일 프로세스를 통해 달성한다.
9. 민첩성은 기술적 우수성과 적절한 디자인에 대한 지속적인 집중을 통해 향상된다.
10. 간결성은 필수적인 요소이다.
11. 자기 조직 팀은 최고의 아키텍처와 디자인을 개발하고 요건을 충족할 가능성이 가장 높다.
12. 팀들은 미세 조정 행동을 통해 효율성을 개선하기 위해 정기적인 주기를 활용한다.

애자일 방법론 도입
본래 소프트웨어 산업을 위해 개발되기는 했지만 많은 업계에서 현재 애자일 방법론의 높은 협업성과 효율성 때문에 제품 및 서비스 개발에 이를 활용하고 있다. 다음의 표는 버전 원(Version One)이 제 11차 연례 애자일 실태(11th Annual State of Agile) 설문조사에서 여러 산업에서의 애자일 방법론 도입률을 조사한 결과다.



애자일의 이점
애자일 기법은 본래 소프트웨어 문제와 결함을 빠르게 식별하고 적응하기 위해 개발 프로세스를 간소화하고 향상시키려는 의도로 개발됐다. 짧고 반복적인 양방향 세션/스프린트를 통해 더욱 신속하게 더 나은 제품을 제공할 수 있는 방안을 제공한다. 디지털 혁신의 시대에 많은 기업들이 디지털 직장으로 이전하는 트렌드와 맞물려 애자일은 프로젝트 관리 및 운영 방식을 혁신하고 싶어하는 조직에게 인기를 끌고 있다. 애자일은 비즈니스적 이점 측면에서 애자일은 다음을 혜택을 제공한다:

- 유연성 증가
- 생산성 증가
- 투명성 증가
- 더 높은 품질의 제공물
- 목표 미달 위험 감소
- 이해당사자 참여 및 만족 증가

프로젝트 개발 측면의 장점
프로젝트 관리 분야에서는 애자일이 프로젝트팀, 후원자, 프로젝트 리더, 고객에 다음과 같은 여러 이점을 제공한다.

- 더욱 신속한 솔루션 배치
- 자원 최소화를 통한 폐기물 감소
- 변화에 대한 유연성 및 적응력 증가
- 더욱 집중적인 노력을 통한 성공 증가
- 더욱 신속한 전환 시간
- 더욱 빠른 문제 및 결함 감지
- 최적화된 개발 프로세스
- 더욱 가벼운 프레임워크
- 최적 프로젝트 관리
- 특정 고객 필요에 대한 집중도 증가
- 협업 및 피드백 빈도 증가

애자일의 단점
다른 방법론과 마찬가지로 애자일이 모든 프로젝트에 적합한 것은 아니다. 각각의 상황에 대한 최고의 방법론을 찾기 위해 충분한 상당한 주의가 늘 필요하다. 가령 고객이 목표를 명확히 하지 않은 경우 또는 프로젝트 관리자 또는 팀이 경험이 없는 경우 또는 상당한 압박 속에서 제대로 기능하지 못하는 경우 애자일이 의도한 대로 작동하지 않을 수 있다.

또 개발 프로세스 전반에 걸쳐 애자일은 개발자, 프로젝트팀, 고객 목표에 도움이 되곤 하지만 반드시 최종 사용자의 경험에도 도움이 되는 것은 아니다. 이 밖에 덜 형식적이면서 더욱 유연한 프로세스 때문에 애자일이 항상 프로세스, 정책 또는 팀 내부에 상당한 경직성 또는 유연성이 있는 더 크고 전통적인 조직에 항상 쉽게 흡수되지 않을 수도 있다. 마찬가지로 경직된 프로세스 또는 운영 방법이 있는 고객에 사용 시 문제가 나타날 수 있다.

애자일과 다른 방법론의 조합
애자일을 워터폴(Waterfall) 등의 다른 방법론과 조합해 하이브리드 솔루션을 만들어낼 수도 있다. 오늘날 워터폴 기법 또한 기업 환경 속에서 널리 활용되고 있다. 특히 계획 작업은 프로젝트의 정의, 분석, 문서화 측면에 대해 더욱 포괄적이고 체계적이며 가끔은 더욱 느린 접근방식이 필요하다. 이 때문에 워터폴이 더 나은 접근방식이 된다. 프로젝트가 개발 단계에 진입하면 신속하고 반복적인 변화를 위해 다른 접근방식이 필요하며 여기에서 애자일은 빛을 발하게 된다.


이 하이브리드 접근방식은 다양한 산업 내에서 애자일의 적용성을 높이거나 프로젝트, 제품 또는 서비스별 속성에 맞춰 최적화하는데 도움이 된다. 다시 한 번 말하지만 사용할 수 있는 다양한 방법과 프로세스의 적합성과 용량을 판단하려면 상당한 주의가 필요하다.

-> 기고 | 애자일과 워터폴을 공존시키는 4가지 방법

인기 애자일 방법론
애자일 내에서는 자주 사용하거나 인기 있는 방법이 있으며 스크럼(Scrum), 칸반(Kanban), LN(Lean) 등이 가장 인기가 높다. 애자일 방법은 다음과 같다.

- 스크럼(Scrum)
- 칸반(Kanban)
- LN(Lean)
- DSDM(Dynamic System Development Model)
- XP(Extreme Programming)
- 크리스탈(Crystal)
- ASD(Adaptive Software Development)
- AUP(Agile Unified Process)
- 크리스탈 클리어(Crystal Clear) 방법
- 디시플린드 애자일 제공(Disciplined agile delivery)
- FDD(Feature-Driven Development)
- 스크럼반(Scrumban)
- RAD(Rapid Application Development)

-> 기고 | 프로젝트 관리 기법, 어떻게 선택할까?

애자일 프로젝트 관리 및 스크럼
스크럼은 소프트웨어 개발 및 다른 프로젝트에서 애자일을 활용하게 해주는 강력한 프레임워크이다. 이 프레임워크는 도입률이 높고 스프린트라는 짧은 작업 반복과 스크럼이라는 일일 회의를 통해 프로젝트 전체가 완료될 때까지 프로젝트의 개별적인 부분을 연속적으로 해결한다. 스크럼 내에서는 스크럼 마스터, 제품 소유자, 스크럼 팀원 등의 3가지 역할이 중요하다.

- 제품 소유자는 제품 백로그(Backlog)를 생성하고 우선순위를 설정한다(수행할 작업).
- 팀은 백로그에서 항목을 선택하고 작업 완료 방법을 결정한다.
- 작업은 한 스트린트(일반적으로 2-4시간) 내에 완료해야 한다.
- 스크럼 마스터는 매일 팀과 짧게 만나 진행상황 업데이트를 받는다.
- 스트린트 검토는 각 스프린트 종료 시에 수행한다.
- 프로세스는 모든 작업 또는 백로그가 완료될 때까지 다시 시작된다.

애자일 도입에 대한 조직의 장애물
프로젝트 관리를 위해 애자일을 도입하려는 조직은 다음과 같은 여러 공통적인 장애물에 직면할 수 있다.

- 애자일을 적절히 지원하지 못하는 기업 구조 또는 문화: 프로젝트팀이 애자일 개발을 위해 준비를 완료할 수 있지만 기업의 나머지 부문이 동의하지 않을 수 있다. 애자일은 정말로 효과적이기 때문에 후원자, 임원, 기능 리더들도 반드시 지지해야 한다.

- 전반적인 비즈니스 목표에 대한 영향에 대해 명확하지 않은 이해: 애자일 방법론을 이용해 프로젝트를 실행한다고 원하는 이점을 얻을 수 있는 것은 아니다. 프로젝트는 여전히 비즈니스 전체에 지속 가능한 성장을 달성하는데 도움이 되는 결과를 제공할 수 없는 방법으로도 실행할 수 있다. 전략적인 일치도가 필수적이다.

- 성급한 시험 사이클: 스프린트는 성급한 시험 사이클의 위험을 발생시킬 수 있다. 스프린트를 가능한 신속하게 끝내려고 시도하는 과정에서 팀은 시한에 더욱 집중하고 시험 사이클의 간단한 측면을 놓치면서 잠재적으로 상당한 영향을 받을 수 있다. 결함이 발견되지 않거나 너무 늦게 발견될 수 있다.

- 제한적인 애자일 기술: 애자일이 빠르게 뿌리를 내리고 있지만 최고의 애자일 인재를 찾아서 유도하기가 어려울 수 있다. 제한적인 애자일 인재 때문에 이 방법론을 활용해 프로젝트를 실행하려는 기업에 대한 이점이 제한될 수 있다.

주요 애자일 기술
모든 프로젝트 관리자가 갖추어야 할 6가지 주요 애자일 프로젝트 관리 기술 또는 속성이 있다.

1. 불필요한 작업을 거르고 필수적인 작업에만 집중하는 능력
2. 압박 속에서의 건전한 판단력 및 스트레스를 받을 때도 차분함을 유지하는 능력
3. 프로젝트 전반에 걸쳐 팀을 안내하고 지원할 강력한 동기 및 코칭 기술
4. 모든 것에 정직하고 우선순위를 설정하는 예외적인 조직 능력
5. 환경이 빠르게 변화하면서 신속하게 사고하고 의사를 결정하는 능력
6. 변화를 수용하고 불필요한 혼란과 위험을 낮추기 위한 높은 수준의 적응력

-> 칼럼 | 애자일 개발팀에 필요한 6가지

애자일 프로젝트 관리 소프트웨어
애자일을 이용하는 기업들은 애자일의 모든 이점을 누리기 위해 애자일 개발에 맞추어 개발한 소프트웨어를 활용할 가능성이 높다. 사용 가능한 애자일 솔루션은 다음과 같다.

- 아틀라시안 지라 + 애자일(Atlassian Jira + Agile): 스크럼, 칸반, 복합적인 방법론을 지원하는 애자일 프로젝트 관리 툴이다. 이 프로젝트 관리 소프트웨어에는 스크럼팀이 이벤트를 손쉽게 수행하는데 도움이 되는 일련의 포괄적인 툴이 함께 제공된다.

- 애질리언(Agilean): 애질리언은 다양한 수직에 맞추어 중소 IT 기업의 작업 흐름 관리를 자동화한다. 사용자 정의가 가능하며 50개의 템플릿이 내장되어 있다.

- 스프린트그라운드(SprintGround): 개발자가 업무를 정리하고 진행상황을 추적할 수 있도록 개발된 프로젝트 관리 툴이다.

- 버전원(VersionOne): 이 프로젝트 관리 솔루션은 모든 수준에서 SAF(Scaled Agile Framework)를 지원하도록 개발되었다.

애자일의 미래
경쟁이 지속적으로 심화되고 TTM(Time To Market)이 또한 단축되면서 애자일은 다수의 이점을 제공할 수 있다. 또 단점이 존재하지만 제한적이다. 더 많은 기업들이 속도, 유연성, 향상된 생산성에 크게 의존하는 디지털 직장으로 이행하면서 애자일 또는 하이브리드 방법론의 필요성이 증가할 것이다. 여러 산업에서의 적용 및 디지털 직장 모델이 제공하는 이점과의 일치도로 보아 애플리케이션 도입률은 전 세계의 여러 산업 부문에서 지속적으로 증가할 것으로 전망된다. ciokr@idg.co.kr