방법론 도입이 실패하는 이유
많은 기업들이 애자일을 포함 정말 다양한 방법론을 도입하려고 노력해 왔고 지금도 애를 쓰고 있는 것 같습니다. 하지만 그 노력에 비해 성공률은 그렇게 높은 것 같지가 않습니다. 왜 그럴까요?

오늘은 이 질문에 한 가지 답변을 해보려고 합니다.

도요타가 자동차 개발, 설계에 대해 업계에 혁신을 가져왔다는 점에 대해서는 반론을 하기 힘들 것 같습니다. 그래서 여러 기업들이 앞다투어 도요타 방식을 도입했습니다. 하지만 모 경영학자에 의하면 전세계에서 도요타 방식을 도입해 정말 성공한 기업은 딱 한 군데라고 합니다. 도요타 자신이요.

왜 그럴까요?

일반적으로 도요타를 배우려는 기업들은 도요타의 실천법들을 배워갑니다. 안돈, 칸반, 포카요케 같은 것들이지요. 처음 보면 굉장히 인상적입니다. 눈에 확 들어오죠. 하지만 도요타를 만든 것은 이 실천법들이 아닙니다.

<린 소프트웨어 개발>의 감수의 글에서 저는 이렇게 말했습니다. "도요타에서 1년간 구현되는 개선 아이디어 개수는 1백만개라고 한다. 제안되는 아이디어 개수가 아님에 주의하자. 하루에 3000개의 개선 아이디어가 실제로 구현된다. 동종 업계의 10배에서 1000배 수준이라고 한다."

도요타가 도요타일 수 있었던 것은 칸반 같은 개별 '베스트 프랙티스'가 아니라 그런 실천법들이 생겨날 수 있는 문화적 풍토와 생성적 과정(generating process) 때문이었습니다. 반면, 누군가는 이걸 보고 "옳다구나, 개선 아이디어를 내고 실행하게 하는 제도를 도입하면 되겠네" 하는 생각을 할 수도 있겠네요.

칸반 같은 개별 실천법은 상시 변화하고 발전하는 도요타의 특정 시점의 스냅샷 같은 것이 아닐까 생각합니다. 우리가 배워야 할 것은 칸반 이면의, 칸반이 나올 수 있었던 구조와 문화입니다.

최근 '더피알'이라는 매체와 인터뷰에서 기자가 이런 질문을 했습니다. "애자일을 진행하는 가운데 가장 빈번히 빚어지는 폐단은 무엇인가?"

저의 답변은 이랬습니다. "애자일을 반애자일적으로 진행하는 것이다. 예컨대 애자일은 불확실한 상황에 대한 접근법인데, 애자일을 도입할 때 확실성 위에서 진행하려고 한다면 문제가 된다."

애자일 방법론을 도입할 때 뭘 해야할지 명확하게 알려달라고 합니다. 근데 그 모습은 전혀 애자일적이지 않습니다. 찾아가는 모습이 애자일입니다. 어차피 방법론 도입이라는 것이 매우 불확실한 것이기 때문에 정답이 있을 수 없습니다. 이전 경험이 이번에 정확히 들어맞는다고 말할 수도 없습니다.

이것은 거의 모든 종류의 방법론 도입에 적용됩니다. 왜냐하면 방법론 도입은 태생적으로 불확실성이 높기 때문입니다. 그럴 때 현명한 전략은 정해진 수순을 따르는 것이 아니라 주변을 탐색하고 조금 나아가고 확인하고를 반복하면서 우리의 현 맥락에 맞는 좋은 전략들을 스스로 만들어 나가는 것이 아닐까 합니다.

--김창준
by 애자일컨설팅 | 2018/04/03 16:20 | 트랙백 | 핑백(1) | 덧글(1)
프로그래밍 어떻게 배우고 어떻게 가르칠까
프로그래밍을 어떻게 공부해야 좋냐는 질문은 전산학을 전공하는 대학생부터 10년차 개발자까지 다들 마음 속에 품고있는 화두 같은 게 아닌가 싶습니다. 또 프로그래밍을 가르치는 사람 입장에서는 어떻게 가르쳐야할까가 중요한 고민이 될 겁니다.

이 두 부류의 분들에게 도움이 되는 동영상 강의를 2015년도에 찍었습니다. 블로그에서는 처음 소개하게 되는 것 같습니다.

우선 첫번째 강의는 "프로그래밍 어떻게 공부할 것인가"입니다. 총 4시간 가량 되는 동영상 강의입니다. 대상은 프로그래밍을 효과적으로 공부하고 싶어하는 분들이며, 이미 프로그래머인 분들뿐만 아니라 향후 프로그래머가 되고 싶어하는 사람, 혹은 프로그래밍을 한 번 배워보고 싶어하는 타분야 종사자까지도 고려해서 만들었습니다. 하지만 사실 강의의 상당 부분은 프로그래밍과 관련이 없는 분들도 들으실 수 있습니다. 일례로 8강에서는 영어 공부법에 대한 이야기를 하기도 하고요.

이 강의의 특징은 근거 기반(evidence based)이라는 점이 아닐까 합니다. 되도록 교육학, 심리학, 소프트웨어공학 등의 연구 결과를 반영해 강의를 만들었습니다. 원래 이런 쪽 이야기는 개인의 제한된 경험에 기반하거나 혹은 주관적 의견에 좌우되는 경우가 많은데 그런 위험을 피하실 수 있을 겁니다.

현재 한 시간 분량의 강의를 무료로 공개해 두었습니다. (이제까지 무료로 2회차를 볼 수 있었는데 더 추가했습니다)

두번째 강의는 첫번째 강의의 원칙들을 적용해서 동영상 강의를 만들어 봤습니다. 그래서 효과적으로 가르치는 예를 보여드리기 위해서 만든 시범 강의입니다. 전체 4시간반 정도 되는 강의입니다. 주제는 정규식(Regular Expression)입니다. 정규식은 텍스트에서 패턴 검색을 할 때 자주 쓰는 도구인데요, 프로그래머라면 다들 어느 정도는 접해보셨을 겁니다. 하지만 이 강의는 제목이 "일상 정규식"입니다. 즉, 프로그래머뿐 아니라 데이터, 텍스트를 다루는 분들이 일상적으로 정규식을 잘 쓰게 도와주는 걸 목표로 합니다. 그리고, 정규식과는 관련없이 어떻게 가르쳐야할까 고민하는 분들에게 좋은 예시가 되는 강의라고 생각합니다.

이 강의의 특징 중 하나는 과정적, 생성적 접근을 했다는 점입니다. 노벨상을 수상한 머리 겔만(Murray Gell-Mann)의 유명한 일화가 있습니다. 어렸을 때부터 천재로 유명한 겔만은 19세에 MIT를 조기입학했는데요, 당시 물리학 수업을 듣던 친구 하나가 나중에 밝힌 일화입니다. 그 친구가 1주일 내내 고민해도 안풀리는 문제가 있어서 겔만의 기숙사 방을 두드렸다고 합니다. 겔만이 문을 열고 그 사이로 빼꼼히 문제지를 몇 초간 쳐다보더니 "-1"이라고 답하고는 문을 닫았다고 합니다. 그 몇 초 사이에 머리 속으로 문제를 푼 것이죠. 이 친구는 여기에 충격을 받고 MIT를 자퇴합니다. 그러고 나중에 알게 된 것이 겔만이 천재라서 아주 특이한 경우라는 것이었죠. 이런 해프닝이 벌어진 이유는 겔만이 답만 이야기를 해줬기 때문입니다. 그 과정은 빼먹고 말이죠. 그런데 많은 정규식 강의/교재가 그렇습니다. 이럴 때는 이런 정규식을 쓰면 된다는 말만 하지, 애초에 그 정규식을 생각해낸 사람이 머리 속에서 어떤 과정을 거쳤을지를 가르쳐주지 않습니다. 그래서 배워도 응용을 못하고 다 까먹는 것이지요. 그러나 본 강의에서는 정규식을 잘 쓰는 사람이 어떤 과정을 거쳐서 그런 기발한 정규식 패턴을 생각해내는지를 밝히고 있습니다. 이를 과정적 혹은 생성적이라고 부릅니다.

이 강의도 대략 한 시간 분량의 강의를 무료로 공개해 두었습니다. (이제까지 무료로 2회차를 볼 수 있었는데 더 추가했습니다) 아마 이 동영상만 보셔도 이제까지 봐온 정규식 교재나 강의들과 뭐가 다른가 바로 느낄 수 있지 않을까 합니다.

프로그래밍을 어떻게 배울까 어떻게 가르칠까 고민하시는 분들에게 지름길이 되기를 바랍니다.

--김창준
by 애자일컨설팅 | 2018/03/16 13:47 | 트랙백 | 덧글(0)
애자일을 키워드로 배워보자 : 애자일 키워드 팟캐스트
작년 8월부터 팟캐스트를 만들었습니다. 블로그에는 좀 늦게 소개를 드리네요.

"애자일 키워드"라는 팟캐스트입니다. 한 번에 대략 40분 정도씩 해서 애자일의 중요한 키워드를 완전 초보자(심지어 IT 배경이 없는 분들까지도)를 위해 풀어내는 팟캐스트 방송입니다. 국내 최초의 애자일 관련 팟캐스트가 아닌가 싶습니다.

총 7개의 에피소드가 등록되었고요, 현재는 시즌 2를 준비 중입니다.

시즌 1의 에피소드들은 다음과 같습니다:
  1. 애자일
  2. 애자일 자격증
  3. 데일리 스크럼 (Daily Scrum)
  4. 테스트 주도 개발 (Test Driven Development)
  5. 짝 프로그래밍 (Pair Programming)
  6. 애자일 코치 (Agile Coach)
  7. 정보 방열기 (Information Radiator)

기존에 나온 책이나 매체에서 접할 수 없는 내용들이라고 자신합니다. 애자일을 책으로만 접했던 분들, 그리고 책을 봐도 도대체 애자일이 뭔지 감이 안오는 분들에게는 신선한 경험이 되지 않을까 합니다. 순서가 그리 중요하지 않으므로 자신이 끌리는 키워드부터 들어보시면 좋을 것 같습니다.

--김창준
by 애자일컨설팅 | 2018/02/12 14:19 | 트랙백 | 덧글(2)
< 이전페이지 다음페이지 >