애자일이 대체 뭘까?
애자일 방법론은 소프트웨어 개발 방식에서 출발했다. 오늘날 우리가 알고 있는 애자일은 2001년부터 시작되었다고 하는데, 폭포수 모델, 워터폴(Waterfall) 방식에 대항해서 나왔다. 워터폴은 정해진 순서대로 진행하는 것이고 애자일은 빠른 반복 주기를 가져가는 방식이다. 워터폴과 애자일을 비교해놓은 글
데일리 스크럼, 스탠드업 미팅 처럼 애자일에서 파생된 실제 방법론들만 있고 애자일은 대체 뭘까... 오히려 알기 싫어졌던 적이 있다. 이번에 회사 팀원의 설명으로 더욱 확실하게 알게 됐는데, 애자일은 불확실성이 높은 상황에서 효과적으로 대응하는 전략이다. 위에 워터폴과 애자일을 비교해놓은 글을 읽으면 알 수 있듯 애자일이 모든 상황에 적합한 것은 아니다. 불확실성이 낮은 분야의 일이라면 굳이 애자일 방법론으로 할 필요가 없이 고정된 방법으로 가는 게 효율적이다.
애자일은 불확실성을 다루기 때문에 매번 다를 수 밖에 없다. 불확실성이 높을수록 애자일이 효과적이고 불확실성이 낮으면 도움이 별로 안 될 수 있다. 애자일은 불확실성을 다루기 때문에 애자일 실천법도 맥락에 맞게 설계해야한다.
더 자세한 내용은 이 글에 설명되어 있다.
https://yozm.wishket.com/magazine/detail/2177/
가장 효과적인 애자일 프레임워크 13가지 | 요즘IT
대체 애자일이 뭘까요? 요즘IT에도 ‘애자일’을 검색하면 약 100개 정도의 글이 검색되는데요. 그게 뭐기에 사람들이 스스로 워크샵도 열고 일에 도움도 받고 관점 전환도 됐다고 하는 걸까요?
yozm.wishket.com
애자일 프레임워크 소개
Avoid big loss
큰 손실 피하기
작은 손실은 감수하고 큰 손실을 피하는 것을 의미한다. 불확실성이 높을 땐 큰 손실을 피하는 게 중요하다. 언제 어떤 성공이 터질지 모르기 때문에 오래 살아남는 것이 무조건 유리하기 때문이다. 한 번에 큰 손실이 오는 게 아니라 손실이 오더라도 자잘하게 오도록 해야한다.
1. Redundancy: 중복을 허용하기
중복은 기본적으로는 비효율이지만, 불확실성이 높은 경우에는 한 명만 할 수 있는 일이 있는 게 위험할 수 있다. 그 사람이 없어졌을 때를 대비할 수 없기 때문이다. 그럴 때 두 명이 같은 일을 할 수 있다면 중복으로 일하게 되어 비효율이 생기지만 한 명이 사라지거나 다른 걸 해야 할 때 해결하기 좋다.
Question: 팀원이 빠져도 프로젝트가 진행될 수 있는가? plan B가 있는가?
Solution 예시
- 이 과업을 진행할 팀원 추가하기, 이 과업에 공감하는 사람들 찾기
- Plan B, C, D 만들어두기, 여러 시안 만들어보기
- 이 과업을 해본 사람에게 물어보기
- 같이 모여서 아이데이션 하기
2. Detect early: 문제를 빠르게 감지하기
문제가 되는 상황을 빠르게 감지해 내는 것. 문제가 될 수 있는 부분을 먼저 캐치하고 더 큰 문제가 되기 전에 해결하는 것. 이건 혼자서 하는 것은 어렵다. 여러 명이 여러 관점으로 보면 문제가 아니라고 생각했던 것에서도 문제를 발견하고 해결할 수 있다.
Question: 오류나 버그가 빨리 감지되는 환경인가? 누가 보더라도 문제를 빠르게 감지할 수 있는 상황/환경인가?
Solution 예시
- 프리모템 Pre-Motem 해보기. 내가 굉장히 좋아하는 방법 중에 하나인데, 사망 원인을 찾기 위해 죽은 사람을 검사하는 Post-Mortem(부검)을 따서 만든 말로 "이 과업이 망한다면?"을 상상해보는 일이다. 어떤 문제가 발생할 수 있을지, 불안 요소를 명시화함으로써 불안감도 덜고, 문제 예방도 할 수 있다.
- 팀원들의 리소스를 주기적으로 파악하기
- 이해관계자 혹은 아니더라도 피드백 받기
- 중간 회고: 프로젝트가 끝나고 회고 하는 게 아니라 중간 중간 회고해서 문제를 미리 파악해본다.
3. Asymmetry: 비대칭성 확립하기(밑져야 본전 구조)
보통 과업을 하면 시간이 흐른다. 그냥 가만히 있어도 매몰비용이 발생하는 셈이다. 시간을 정해두고 그 시간 안에 끝내서 최대의 이득을 내는 것으로 비대칭성을 이루는 것이 Asymmetry이다. 밑져야 본전 구조를 미리 만드는 것이다. 불확실한 일일수록 기한을 박아버리는 것도 좋다. 이 시간 내에 어떻게든 해내고 안되면 포기한다. 손실을 그 기간만큼으로 줄일 수 있다.
“밑져야 본전"이라고 느껴지는 (잃을 돈에 명확한 상한을 두는) 일을 하는 게 좋다는 뜻. 일/사업을 설계할 때 일을 하면서 돈을 딸 확률은 높지만, 돈을 잃은 확률은 적은 (혹은 이득의 크기는 상한이 없고, 손해의 크기는 상한이 있는) 게임을 하도록 설계해야 한다는 뜻
Question: 이익은 제한되면서 손실이 무한대는 아닌가? (프래질한가) / less pain more gain 한 구조인가? (안티프래질한가)
Solution 예시
- 타임박싱(Time Boxing): 가장 많이 활용되는 기법 중 하나로 시간을 정해놓고 그 시간 안에 결과물을 내는 것이다. 예를 들어 "15분 안에 기획서 초안 쓰기"를 4회 반복해서 1시간을 보내는 식이다.
- 타임 박싱을 잘 쓰려면 Feedback & Adapt가 잘 돼야 한다. 15분 지났을 때 상태가 어떤지 보고, 내가 새로 얻은 정보가 뭔지 알아본다. 예를 들어 30분 동안 기획서 초안을 써보니 이 방향이 아니네? 하면 다음 15분 동안 다른 방향으로 쓰는 식으로.
- 타임박싱을 잘하려면 아주 잘게 계획을 쪼개야 한다. 애초에 이 카테고리가 "손실을 줄이기" 였으므로 계획이 틀어졌을 때 15분만 버릴 수 있도록 만드는 것이다.
- 그리고 타임박싱으로 나온 결과물을 회고하면서 배워본다. 15분 동안 초안 쓰기를 해보니까 A팀원에게 정보를 물어봐야 쓸 수 있었던 거였네ㅎㅎ? 다음엔 좀 정보를 싹 모아놓고 써야겠다. 이런 식으로 타임박싱 예측력, 결과물의 정확도를 높이는 것이다.
- 기한/멈추는 기준 마련하기
- 정기적인 공유 시간 만들기
Learn as you go
계속 배우면서 나아가기
진행하는 과정에서 배움을 얻고 그 배움을 통해 더 좋은 방향으로 나아간다. 불확실성이 클수록 배우는 것이 중요하다. 특히 핵심을 찾고 싶은데 정보가 부족할 때 유용하다.
4. Feedback & adapt: 피드백을 받고 재조정하면서 나아가기
피드백을 받고 조정하면서 더 나아지는 것. 현재 진행한 것에 대해 피드백을 받고, 그 피드백을 기반으로 더 나은 방향으로 조정하거나 현재 하던 것과 다른 방향으로 진행해 보는 것을 의미한다.
Question: 피드백을 받고 있나? / 피드백 주기가 너무 길지는 않은가? / 피드백 받은 걸로 재조정이 일어나고 있는가? / 피드백을 누구에게서 받고 있나?
Solution 예시
- 이해관계자에게 피드백 받기 (함께 일하는 동료 혹은 상사)
- 오랜 시간 혼자 고민하기 보다는 초안 작성하고 동료들에게 피드백 받고 수정해보기
- 회사 안이 아니라 밖에서 피드백 받기 ex. 사용자 인터뷰, 설문조사 등
- 주 단위로/프로젝트 단위로 팀 회고 해보기
- 나 스스로 회고하고 성찰하기: 피드백은 타인 뿐만 아니라 나 자신으로부터 나올 수 있다. 이것도 내가 좋아하는 방법 중 하나.
5. Receiving new info: 새로운 정보 얻기
나 혼자서라면 전혀 생각 못했을 접근법, 내가 전혀 몰랐던 새로운 정보를 얻는 것을 의미한다.
Question
- 새로운 정보가 유입되는 환경인가?
- 지금까지 과업을 새로 하면서 새로운 정보를 접해본 적이 있는가?
- 최근에 내가 전혀 몰랐던 새로운 정보를 받았던 게 언제인가?
- 근래 1개월 간 생각하지 못했던 새로운 아이디어를 얻은 경험이 있는가?
Solution 예시
- ChatGPT에게 물어보기, AI 활용해보기
- 지금 하고 있는 방식이 아닌 다른 방식으로 접근해보기
- 가깝지 않은 동료에게 새로운 의견 구하기
- 정량적인 데이터로만 접근하고 있었다면 정성적인 데이터 구해보기
- 귀납적으로 접근하고 있었다면 연역적으로 접근해보기
- 회사 안이 아니라 밖에서 정보 얻기 ex. 사용자 인터뷰, 설문조사, 외부 업체 등
6. Many projects, sequential: 많은 프로젝트를 하는 것처럼 순차적으로 나아가기
하나의 큰 덩어리 프로젝트를 작게 여러 번의 프로젝트로 나누어서 진행하는 것으로 단순히 n분의 1로 쪼개는 건 아니다. 사람 얼굴을 그리는 거라면 처음에 얼굴 대충이라도 그리고, 두 번째 때 디테일을 더하고, 세 번째 때 완성하는 것. 첫 1/3에 눈 그리고, 2/3에 코 그리고, 3/3에 입 그리는 것이 아니다. 단순히 쪼개는 것이 포인트라기보다 ‘쪼개서 피드백과 새로운 정보를 얻고 반영할 수 있는 구조를 만드는 것’이 핵심이다.
Question
- 프로젝트를 딱 하나만 하려고 한 건 아닌가?
- Task를 단순하게 기계적으로 나누진 않았는가?
- 프로젝트가 순차적으로 구성되어 있는가?
- 다음 프로젝트를 염두해 둔 행동을 하고 있는가? (1회성이 아니다)
Solution 예시
- 한 번에 완성하는 것이 아니라 여러 단계로 쪼개서 테스크를 구성한다.
- 핵심적인 문제를 해결하는 여러 시안을 상상해보기
Achieve critical early with less effort
핵심적인 것을 일찍, 적은 노력으로 성취하기
처음부터 마지막에 영향을 주는 결과를 미리 확인하는 것을 의미한다. 이를테면 실제 결과물을 만들지 않고도 핵심 가설을 확인할 수 있게 만드는 것이다.
7. Piecemeal & center first: 가장 중요한 것을 먼저 하되 작은 단위로 쪼개서 진행하기
‘센터를 드러내게 하는 가장 심리적 부담 없는 작업이 뭘까’를 생각해야 한다. 무엇인가 진행할 때 심리적으로 부담을 주지 않는 선에서 스텝을 밟아가듯이 진행하는 것. 기계적으로 쪼개는 걸 의미하는 게 아니다. ‘Center’는 단순한 중심을 의미하는 게 아니라 가장 중요한 "핵심"을 의미한다. Christopher Alexander "Center" 참고자료
핵심 가설 없이 단편적으로 (Piecemeal) 빨리 실행하는 것은 위험하다. 안 중요한 것부터 하면 불확실성 속에서 불리해지게 되기 때문이다. 여기서 중요한 건 나중에 이게 잘못 되었을 때 큰일 나는 핵심 가설, 근본적인 가설을 먼저 하는 것이다.
Question
- 과업은 해볼 만한 느낌이 들도록 쪼개져 있는가?
- 핵심은 건드리지 못한 채 변죽만 울리는 건 아닌가?
- 검증 안 하면 큰일 나는 핵심 가설을 다루고 있는가?
Solution 예시
- 임팩트가 가장 큰 일부터 해결하기
- 아주 작은 MVP를 여러 개 만들기
- 과업의 목표를 구체화하기
8. Work with stakeholders: 이해관계자와 함께 일하기
Stakeholder는 과업의 성공과 실패에 큰 영향을 주는 사람이다. 과업을 진행하는데 중요한 사람과 함께 진행하는 것. 팀원과 함께 논의하고 업무를 진행하는 것이다.
Question
- 고객 참여가 이루어지고 있는가?
- 이해관계자와 협업하는 구조가 만들어졌는가?
- 미처 협업해야겠다고 생각지 못한 이해관계자가 있는가?
Solution 예시
- 단순히 피드백만 받기 보다는 가능하다면 이해관계자를 과업에 함께 참여시킨다.
- 이해관계자에게 과업의 목표와 목적을 설명하고 공감시키기
- 팀원들과 적극적으로 소통하기
Be flexible 유연하게 대처하기
9. High ground for change: 변화에 유리한 지점 선점하기
변화에 대해 유리한 지점을 먼저 차지하는 것을 의미한다. 하면 좋은 여러 가지가 있으면 앞으로 무슨 일이 일어나든 좋은 것을 택하는 것. 미래가 어떻게 돼도 유리해지는 일을 하는 것. 같이 과업을 진행하는 사람끼리 지식 공유, 신뢰 쌓기 등 미래가 바뀌어도 상관없는, 의미 있는 것들을 하는 것이다.
Question
- (협업 시) 파트너와 신뢰를 쌓아가고 있는가?
- 지식이 공유되고 있는가?
Solution 예시
- 팀원과 라포 쌓기, Teamship 높이기
- 만들고 있는 결과물이 실패하더라도 인정 받을 수 있는 환경 만들기
- 진행하는 과정에서 배운 것들 정리하기
- 팀원에게 일의 중요성을 설명하고 팀원의 일정까지 확보해두기
- 베타 테스터 모집하기
- 사용자를 팀원으로 만들기
10. Real option: 선택의 옵션 만들어두기
지금 진행해도 되고 나중에 진행해도 상관없는 옵션을 만든다. 불확실성이 높은 상황에서 계획을 촘촘하게 짠다고 불확실성이 나아지는 게 아니기 때문이다. 지금 미리 결정하지 않고, 나중에 이렇게 해도 되고, 안 해도 되는 옵션을 많이 만드는 것이 중요하다.
Question
- 지금 말고 나중에 해도 괜찮은 결정 사항이 있는가?
Solution 예시
- 미뤄도 된다면 미루기
- 목표에 치명적이지 않은 업무는 일단 제외하기
- 세부 목표는 바뀌어도 괜찮게 환경 만들기
- 만약 오늘 할 일이 실패했을 때 무엇을 시도할지 계획하기
11. Diversify: 외부 자극에 다양하게 대응하기
필요 다양성의 법칙 Law of Requisite Variety. 다양성이 있으면 우리는 유연해질 수 있다.
Question
- 문제 대응 방법이 한 가지로만 국한된 게 아닌가?
Solution 예시
- 다양한 직군의 팀원들과 함께 아이데이션 해보기
- 다양한 레퍼런스 찾아보기
- 평소에 사용하지 않았던 방법을 사용해보거나 평소에 만나지 않았던 직군 만나기
12. Slack: 여유 확보하기
유연해지려면 어느 정도의 여유, 여분이 있어야 한다. 항상 100%의 에너지를 다 쓰지 말고 80, 90 정도로만 써야 애자일해질 수 있다.
Question: 여유를 부릴 공간/시간이 있는가?
Solution 예시
- 자유 시간을 확보한다
- 메신저 방해 금지 시간을 만든다.
- 집중할 수 있는 환경을 세팅한다.
- 완벽한 결과물을 내려고 하지 말고 80% 정도로 끝내보기
스스로 EoA 해보기
위 방법론 모두 한 번에 잘되기 어렵다. 애자일의 정수는 내가 생각하기에 실행, 수정, 반복이다. EoA 방법론을 쓰면서 자주 회고 해야한다. 예를 들어 큰 손실 줄이기의 일환으로 "타임박싱"을 했을 때 한 번 해보고 잘 안됐다, 다른 방법 해봐야지 - 하는 게 아니라 몇 번 이터레이션 돌면서 아래 내용을 파악하고 수정하면서 반복한다.
- 이 방법이 목표를 달성하는데 효과적이었나?
- 내가 이 방법을 쓸 때 무엇을 고려했으면 좋았을까?
- 목표를 더 잘게 쪼갤 수는 없었을까?
- 이 방법으로 달성하려면 얼마나 시간/에너지가 소요될까?
- 이 방법을 통해 나온 결과물이 명확했나?
매일 EoA를 하면 더 빨리 성장할 수 있다. 목표를 세울 때는 오늘 할 일을 마구 나열하는 것이 아니라 오늘 해결해야하는 가장 중요한 문제를 되도록이면 1개만 작성한다. 목표를 작성하고 하루를 회고하다보면 이 목표가 너무 낮은지 높은지, 많은지 파악할 수 있어서 더 좋다.
- 오늘의 목표
- 이 목표를 이루는데 병목으로 예상되는 것
- 병목을 고려해서 수정한 목표
- EoA 활용해서 액션 아이템 생각해보기
예시로 오늘 내가 쓴 EoA를 붙여본다.
'코칭 방법론' 카테고리의 다른 글
코칭이란 스스로 문제를 해결할 수 있도록 돕는 협력적 관계 (코칭의 역사, 기원, 정의에 대해) (0) | 2023.12.09 |
---|---|
논문을 빨리 찾고, 잘 읽는 방법 (DeepL, ChatPDF, Chat GPT) (1) | 2023.08.27 |
대화도 점수로 매길 수 있다 Cognitive Interviewing (1) | 2023.08.27 |
빨리 배우는 방법 (학습 전이, Transfer of Training) (0) | 2023.08.26 |
ORS(결과 평가 척도)와 SRS(세션 평가 척도) 활용하기 (0) | 2023.08.22 |