노무현 대통령 배너



2012년 9월1일에 열렸던 Agile Korea 2012 영상을 모두 공개합니다. Agile Korea Conference에 대해 잘 모르시는 분은 컨퍼런스 사이트(http://agilekorea.org/event/2012)를 참고하세요.

  1. 애자일을 실천하는 사람들이 격는 어려움(최보나)
  2. Lean Startup in Practice(정지웅)
  3. 애자일하게 스펙 작성하기(황상철)
  4. OEC facilitation Season2(채홍미)
  5. Traditional vs Agile(경기원)
  6. 애자일을 통하여 얻은것(황순삼)
  7. 협업도구를 활용한 Agile Practice 활용사례(한문근)
  8. 개인이 조직을 바꾸는 법(김창준)
  9. 유니콘 목장(정기원)
  10. User stories workshop(박준표, 최보나)
이번에 공개된 영상들은 발표자 분들로부터 사전에 영상촬영 및 공개에 대한 허락을 받은 영상들입니다. 컨퍼런스 프로그램에 있으나 영상이 없는 발표들은 다음과 같은 사항때문에 영상 자체가 없습니다.
  • 발표자 분이 영상촬영 거부하신 경우
  • 촬영 자체를 진행하지 못한 경우
  • 촬영을 했으나 잘못되어 제대로 촬영되지 못한 경우
2012년 행사에 참석하지 못하신 분들은 본 영상을 통해서 뒤늦게나마 행사를 즐기셨으면 좋겠습니다. 그리고 2013년 8월말에 개최될 Agile Korea 2013도 많은 성원과 도움 부탁드립니다. 

ps) 애자일 코리아 페이스북 그룹(https://www.facebook.com/groups/267408126612451/)에도 많이 참여해 주세요. 참석자 수가 많은것도 행사를 진행하는데 큰 힘이 됩니다.



저작자 표시 비영리 변경 금지

GTAC 2013

Work & Study/TechTalk 2013/05/07 22:55 posted by k16wire

GTAC은 Google Test Automation Conference 입니다. 지난 4월23~24일 양일간 뉴욕에서 열렸는데요. 이 멋진 컨퍼런스의 모든 발표자료와 영상이 무료로 공개되었습니다. 

GTAC 2013 WrapUp

GTAC2013: Presentations

제목만 봐도 끌릴만한 발표들이 즐비합니다. 잘 준비해서 내년에는 직접 한번 가보고 싶네요.


저작자 표시 비영리 변경 금지

'Work & Study > TechTalk' 카테고리의 다른 글

GTAC 2013  (0) 2013/05/07
Play2 특징을 소개하는 영상  (0) 2013/05/01
나는 프로그래머로서 어느정도 수준인가  (0) 2013/04/25
초간단 웹서버 띄우기  (0) 2013/04/18
Play에서 사용할수 있는 모듈들  (0) 2013/04/12
좋은 API 디자인 하기  (0) 2013/04/09

Play2 특징을 소개하는 영상

Work & Study/TechTalk 2013/05/01 16:29 posted by k16wire

이전에 NHN에서 진행했던 테크 브리핑 영상입니다. 사내행사를 녹화한것입니다만 어차피 시간이 지나면 의미없으니 공개하려고 합니다. 40분동안 Play2 Framework의 특징에 대해 설명합니다. 

샘플을 가지고 시연하는 부분도 사이사이 들어있으니 부담없이 보세요.



저작자 표시 비영리 변경 금지

'Work & Study > TechTalk' 카테고리의 다른 글

GTAC 2013  (0) 2013/05/07
Play2 특징을 소개하는 영상  (0) 2013/05/01
나는 프로그래머로서 어느정도 수준인가  (0) 2013/04/25
초간단 웹서버 띄우기  (0) 2013/04/18
Play에서 사용할수 있는 모듈들  (0) 2013/04/12
좋은 API 디자인 하기  (0) 2013/04/09

팀원분이 공유해주신 Programmer Competency Matrix를 보면서 궁금해 졌습니다. 

나는 프로그래머로서 어느정도나 되는걸까? 

많은 개발자분들이 저와 같은 고민을 하고 있지 않을까요. 아래 링크를 따라가시면 Computer Science, Software Engineering, Programming, Experience, Knowledge 영역별로 Level0 ~ Level3 까지 정의되어 있는 매트릭스를 보실수 있습니다. 


http://www.indiangeek.net/wp-content/uploads/Programmer%20competency%20matrix.htm


내용이 모두 마음에 드는것은 아닙니다. 특히 SE는 너무 내용이 빈약하네요. 하지만 Computer Science와  Programming은 괜찮은거 같습니다. 한번쯤 재미로라도 본인의 수준을 확인해보시죠.


저는 영역에 따라 다르기는 한데 Level2 ~ Level3를 왔다갔다 하네요.



저작자 표시 비영리 변경 금지

'Work & Study > TechTalk' 카테고리의 다른 글

GTAC 2013  (0) 2013/05/07
Play2 특징을 소개하는 영상  (0) 2013/05/01
나는 프로그래머로서 어느정도 수준인가  (0) 2013/04/25
초간단 웹서버 띄우기  (0) 2013/04/18
Play에서 사용할수 있는 모듈들  (0) 2013/04/12
좋은 API 디자인 하기  (0) 2013/04/09

2012년 애자일 현황

Work & Study/애자일 개발 2013/04/23 00:19 posted by k16wire


애자일 프로젝트 관리 도구 및 교육을 진행하는 버전원(VersionOne)에서 2012년 애자일 현황에 대한 설문조사 결과를 2013년 2월 26일 발표했습니다. 설문조사 결과 전문은 아래 URL에서 다운로드 가능합니다.

http://www.versionone.com/state-of-agile-survey-results/


애자일 강의를 준비하다보면 '트렌드'에 대한 자료가 필요한데 전 이 설문조사를 자주 애용합니다. 특히 이번에는 인포그래픽으로 만들어져서 깔끔하니 좋네요. 몇가지 흥미로운것만 추렸습니다.

  • 애자일 도입에 실패한 이유는? 적절한 사람을 찾지 못해서, 팀 문화를 정착시키지 못해서
  • 애자일 도입에 성공한 이유는? 경영진의 스폰서쉽(23%), 교육/워크샵(18%), 공통의 도구 사용(13%)
  • 어떤 애자일 방법론을 사용하는가? 스크럼(54%), 스크럼과 XP(11%), 자체(9%)
  • 사용하는 애자일 기법은? 일일스크럼(85%), 단위 테스팅(74%), CI(56%), CD(23%)
  • 애자일 도입의 걸림돌은? 조직문화에 대한 변화(52%), 변화에 대한 저항(41%)

자료를 전부 살펴보기 싫으신 분들은 설문조사를 분석한 IDG의 "애자일 개발의 발목을 잡는 것은 문화와 사람"을 읽어보세요.


저작자 표시 비영리 변경 금지

초간단 웹서버 띄우기

Work & Study/TechTalk 2013/04/18 17:58 posted by k16wire

맥에는 python이 기본으로 설치되어 있습니다. 이 python으로 초간단 웹서버를 띄우는 방법입니다. 

python -m SimpleHTTPServer 8081


저작자 표시 비영리 변경 금지

플레이 프레임워크가 뜨지 못하는 이유중 하나를 저는 서드파티 모듈이 부족해서라고 생각합니다. 

RoR, GRails, Play와 같이 빠른 개발을 지향하는 기술에서는 굉장히 중요한 부분이죠. 부족하다고 말했지만 그래도 2.0을 지원하는 모듈이 꽤 많이 개발되고 있습니다. 아래 링크에서 한번 확인해보세요. 


http://www.playframework.com/documentation/2.1.1/Modules





저작자 표시 비영리 변경 금지

좋은 API 디자인 하기

Work & Study/TechTalk 2013/04/09 17:25 posted by k16wire

KTH 개발자 블로그에 올라온 좋은 API 디자인하기, 왜 그것이 중요한가? 를 읽다가 내용이 너무 좋아서 원본 동영상을 공유합니다. API를 코드로 바꿔도 손색이 없을만큼 좋은 내용이네요.

역시 좋은 발표는 시간이 흐른다고 흐트러지는게 아니네요. 꼭 한번씩 감상해보세요. (영어자막도 있으니 잘 안들리면 키고 보셔도 좋습니다.)



저작자 표시 비영리 변경 금지

DevOps 레퍼런스

Work & Study/애자일 개발 2013/04/04 09:19 posted by k16wire

DevOps에 대한 내용이 궁금해서 좀 찾아봤습니다. 


KTH 개발자 블로그 & H3 Conference

미물님 블로그
DevOps와 NoOps에 대하여 유용한 링크가 많이 들어있습니다.

공감 세미나 2회

한빛미디어:디봅스(DevOps, 개발운영) 이란?

아름프로 블로그: Continuous Delivery vs Continuous Depoyment 

DevOpsDay 
DevOps 관련 컨퍼런스인 DevOpsDay 사이트(http://devopsdays.org/)에도 좋은자료가 많군요. 컨퍼런스 발표영상을 공개해놓은것도 있는데 전부인지는 모르겠습니다.

컨설팅
Chef에 대한 호스팅과 컨설팅을 제공하는 회사: http://www.opscode.com/

외국 사례

한동안은 DevOps 구축에 매진할거 같습니다. 재밌을거 같네요.


저작자 표시 비영리 변경 금지

SKP에 오자마자 가이드를 만드는 일을 맡아서 오랜만에 코딩 표준을 좀 찾아봤습니다. 

그런데 몇년전에 비해 하나도 변한게 없네요. 안드로이드쪽은 많이 다를거라 생각했는데 의외로 코딩에 대한 기준은 차이가 없더군요. 그러다 구글링으로 찾은 슬라이드에서 우연히 본 내용이 마음에 들어 공유합니다.

출처: http://courses.coreservlets.com/Course-Materials/pdf/android/Android-Coding-Style.pdf


코드에 달린 주석을 살펴보면 쓸데없는 주석이 많습니다. 그런 주석중 대표적인 형태가 이런겁니다.

"이 클래스는 사용자 관리를 위한 클래스 입니다." 있으나 마나한 주석이죠. 

그 보다는 어떤 동작을 하는지 설명하는 주석이 좋은데 잘 안 와닿습니다. 그럴때는 3인칭 관점에서 주석을 써보시죠. 좀 더 의미있는 주석이 나올거 같습니다.



저작자 표시 비영리 변경 금지

이런 서비스 하나 있으면 좋겠다 하는 생각은 누구나 합니다. Programmable Web에 올라오는 수많은 오픈 API들을 보면서 이런 서비스들을 잘 엮어주는 서비스 없나. 그런것 있으면 참 좋을거 같은데..하는 생각을 했습니다. 있네요. ^^;


Zapier(https://zapier.com/)는 코딩 한줄 안해도 원하는 서비스를 엮을수 있도록 해줍니다. gmail에서 메일을 받아서 evernote로 남기는 작업을 어떻게 통합하는지 한번 보시죠.



통합작업이 아무리 쉬워도 내가 원하는 서비스가 없다면 소용없죠. Zapier를 이용해 통합할수 있는 서비스에 어떤것들이 있는지는 https://zapier.com/zapbook/에서 확인 가능합니다. 제가 아는 서비스는 이미 대부분 지원하는군요. 와우!


UX도 깔끔하고 정말 맘에 드는 서비스네요.


저작자 표시 비영리 변경 금지

Yalp Framework

Work & Study/TechTalk 2013/03/12 09:15 posted by k16wire

Play 1.2.x에서 파생되어 나온 프레임워크입니다. 메일링 리스트에서 계속 논란이 있더니 결국에는 새로운 프레임워크가 등장했네요. 어떻게 발전해나갈지 궁금합니다.


https://github.com/yalpframework/yalp



저작자 표시 비영리 변경 금지

지난해 중순부터 사용해 오던 Play Framework에 대한 책을 쓰기로 마음 먹었습니다. 

출판계약은 오랫동안 번역으로 인연을 맺어온 에이콘 출판사와 했구요. 현재 어느정도 목차도 확정되어 한창 원고 작업을 진행중에 있습니다. 다음은 제가 이책을 쓰게된 기획의도 입니다.

몇년전부터 자바 웹 어플리케이션에 대한 표준 프레임워크는 스프링이 되었다.

스프링이 좋은 프레임워크이긴 하지만 꼭 스프링이 아니어도 되는 서비스를 스프링으로 개발하는것은 낭비라고 말할 수 있다. 스프링과 비교하기에는 부족해도 또 다른 강점을 가진 프레임워크로 Grails, Play를 들수 있다. 높은 개발 생산성을 위해 만들어진 이런 프레임워크가 널리 쓰이지 못하는것은 왜일까?


여러가지 이유가 있겠지만 이런 기술을 실제로 쓰고 싶을때 참고할수 있는 제대로된 참고서나 가이드라인이 없는것도 그 이유로 불수가 있다. 만약 본서가 출간된다면 Play를 이용해 빨리 원하는 서비스를 만들어 보고 싶은 사람들에게 큰 도움이 될거라 예상된다.


제가 생각하는 이 책의 독자는 다음과 같습니다.

  • 아이디어를 빨리 서비스화 하고 싶은 스타트업
  • 웹서비스를 빨리 프로토타이핑 하고 싶은 사람
  • Play를 이용해 웹 서비스를 개발하고 싶은 사람
  • 자바기반 웹 어플리케이션을 개발을 배우고 싶은 사람


책은 아마도 5월은 되어야 나올거 같습니다. 책에서 다루어졌으면 하는 내용이 있다면 댓글로 의견주세요. 좋은 의견 주신 분에게는 나중에 책으로 보답하겠습니다.


그리고 현재도 Play for Scala 책을 가지고 스터디 그룹을 운영하고 있습니다. 이미 이 스터디는 끝나가는데 관심 있는 분들이 더 생기면 2번째 스터디를 진행할 의향이 있습니다. 스터디 참석을 원하시면 아래 URL로 페북 그룹에 가입신청 하세요.


https://www.facebook.com/groups/400984499987421/


저작자 표시 비영리 변경 금지

지난 일주일간 대구 계명대학교에서 FusionSoft 엔지니어분들을 대상으로 애자일 강의를 진행했습니다. FusionSoft는 대구에 있는 소프트웨어 개발을 전문으로 하는 기업인데 개발자가 약 150명정도 되는 꽤 큰 기업이라고 합니다. 이번에 전사적으로 애자일을 도입하고자 NIPA를 통해 강의를 요청하셔서 진행하게 되었습니다. 


강의 제목을 고민 하다가 딱 떠오르는 제목이 있더군요. "애자일 SW개발 101" 

첫날 수강생들의 애자일 경험과 지식을 확인해보니 대부분 초보자 분들이어서 일단 눈 높이는 잘 맞췄다는 생각이 들었습니다.


기간이 4일이나 되어 욕심을 좀 부렸는데 시간내에 모든 내용을 소화하기는 어려웠습니다. 역시 계획은 깨지라고 있나 봅니다. 그래도 강의를 듣는분들이 4일 내내 적극적으로 참여해주시고 긍정적인 피드백을 많이 주셔서 강의하는 저도 뿌듯했습니다. 교육에서 다루었던 내용은 아래와 같습니다.

  • 애자일 개발 전반에 대한 소개
  • 스크럼 소개
  • 애자일 게임: 칸반게임
  • 스토리 기반의 플래닝
  • 스펙 워크샵
  • XP 소개
  • 회고
  • 애자일 도입에 대한 OST

아래 사진은 강의중에 진행했던 워크샵과 토론을 찍은 사진들입니다.


단순 강의 형태가 아니라 같이 참여하는 워크샵과 실습을 병행했던게 수강생들의 만족도를 크게 높여준거라 생각됩니다. 이번 교육을 위해 준비했던 내용을 좀 더 보강하면 괜찮은 애자일 교육 프로그램이 하나 나올거 같다는 생각도 드네요.  (관련해서 교육이 필요하신 분 계시면 연락주세요.)


이번 교육을 통해 FusionSoft에 애자일 SW 개발이 정착되길 기원합니다. 다들 파이팅 하세요. ^^;



저작자 표시 비영리 변경 금지

사내 사외를 막론하고 요즘에는 강의를 잘 안합니다. 그동안 많이 진행해서 지친것도 있지만 회사 분위기가 좀 바뀌면서 사내강의가 많이 줄은것도 큰 이유입니다. 지난달 NTS에서 2013년 상반기 교육을 진행하는데 애자일 강의를 해달라는 요청을 받았습니다. 

"Agile Bootcamp & Scrum" 이라는 제목으로 애자일 소프트웨어 개발 전반에 대한 내용과 스크럼에 대한 경험을 설명하는 교육을 2번에 걸쳐 진행했습니다. 

평소 교육 기회가 많지 않았는지 많은 분들이 참여하셨고 NHN에서보다 더 열심히 참여하시는걸 느낄수 있었습니다. 아래 사진은 교육중에 칸반게임을 하는 모습들입니다. 



듣는 분들이 열심이어서 오랜만에 재밌게 강의를 진행했던거 같네요. 사실 사내교육은 강의시간도 3시간 미만이고 해서 관련 영상을 본다거나 질문이나 애자일 게임 같은것을 진행하지 못했거든요. 이번엔 강의시간을 넉넉히 잡은 덕분에 편하게 강의를 진행했던거 같습니다. NHN에서 제가 진행한 마지막 애자일 교육이 됐네요.


ps) 2월에는 시간적으로 여유가 좀 있네요. 혹시 애자일 관련 교육이나 강연이 필요하신 분 연락주시면 도움을 드리겠습니다.

저작자 표시 비영리 변경 금지

개발자라면 DZone Refcardz를 모를리 없으시죠. 혹시 모르시는 분은 얼른 가서 메일링 등록하세요. 주옥같은 내용을 앉아서 받아보실수 있습니다.

http://www.dzone.com/links/index.html


이번에 나온 HTTP에 대한 Refcard는 웹개발을 하면서 자주 보는 내용을 깔끔하게 요약해놨네요. 3페이지 밖에 안되니 얼른 받아서 읽어보세요.


rc172-010d-HTTP_0.pdf


저작자 표시 비영리 변경 금지

Play2에 입문하는 사람에게는 괜찮을거 같습니다.


http://www.imaso.co.kr/?doc=bbs/gnuboard.php&bo_table=article&wr_id=41921


저작자 표시 비영리 변경 금지
TAG Play

Play 2.1-RC2 에서 바뀐 부분

Work & Study/TechTalk 2013/01/18 02:14 posted by k16wire

Play 2.0.,4를 쓰다가 새로 출시된 2.1-RC2로 업그레이드를 했습니다. 그러다 발견한 소소한 변경사항을 정리했습니다.


- eclipse 프로젝트를 만들때 사용하던 eclipsify 명령어가 eclipse로 변경

- 이전에는 컴파일에러가 나지 않던 부분들이 디버깅 시점에 에러로 나옵니다. 대부분이 패키지를 전부 명시하지 않은경우 이네요. 형검사가 더 엄격해진거 같습니다.

- ebean을 쓰는 경우에도 dependency에 추가해줘야 합니다.

  val appDependencies = Seq(

    // Add your project dependencies here,

    javaCore,

    javaJdbc,

    javaEbean

  )

- controller에서 form 메소드를 쓰는 경우 아래와 같이 static import 를 명시적으로 선언해야 합니다.

import static play.data.Form.form;

- migration guide에도 나오는데 Build.scala 파일에서 PlayProject 였던 부분을 play.Project로 변경해줍니다.

val main = play.Project(appName, appVersion, appDependencies).settings(projectSettings: _*

)

- application.conf 에서 global 이 application.global 로 변경되었습니다. 정확히 말하면 global은 deprecated 되었습니다.


이런 작업을 할때는 기존에 한창 개발을 진행하던 프로젝트에서 진행하지 말고 새로  clone 받아서 진행하길 권장합니다. 기존 버전으로 컴파일된 클래스들이 문제를 더 복잡하게 만들수 있습니다.

아니면 play clean-all 로 더미 파일을 모두 삭제하는것도 좋은 방법입니다. 삽질 많이 했네요.


참고자료

[1] Play 2.1-RC1 공식 변경사항: https://github.com/playframework/Play20/wiki/Highlights





저작자 표시 비영리 변경 금지

Play와 Grails를 비교한 자료

Work & Study/TechTalk 2013/01/16 10:49 posted by k16wire

Play Framewok 2와 Grails를 다양한 측면에서 비교한 자료가 있어 공유합니다.

이런 류의 Framework 를 선택한다면 참고할 만 합니다.


http://static.raibledesigns.com/repository/presentations/Play_vs_Grails_Smackdown_UberConf2012/#/


저작자 표시 비영리 변경 금지

지난해 NIPA/소프트웨어 공학센터 후원으로 많은분들과 같이 작업했던 "애자일 SW 개발 101" 가이드 북에 대한 PDF 파일이 공개되었습니다.

이 가이드 북은 소프트웨어 공학센터 사이트 '지식마당 > 보고서/지침서' 메뉴에서 무료로 다운로드 받으실수 있으니 많이 받아 보시고 업무에 참고하시면 좋겠습니다. 


ps) 저작권 때문에 파일에 대한 직접적인 링크는 제공하지 않으니 많이 방문하셔서 앞으로도 이런 작업을 계속할수 있게 지원해주세요.




전자신문과 디지털타임즈에 홍보 기사가 떳네요.

http://www.etnews.com/news/computing/solution/2704622_1476.html

http://www.dt.co.kr/contents.html?article_no=2013011002019960600003



저작자 표시 비영리 변경 금지

일전에 공지했던 Play Framework 스터디에 대한 후속공지입니다.


스터디 교재

현재까지 5분이 신청을 하셨습니다. 이분들과 어떻게 스터디를 진행할까 고민해봤는데 역시 스터디는 교재가 있어야 스터디가 끝났을때 뭔가 이루었다는 느낌을 받을수 있을거 같습니다.

그래서 교재는 Manning사의 Play for Scala로 정했습니다. 현재 MEAP 버전으로 판매중이니 pdf로 구입하시면 될거 같네요. 

 Play for Java가 아니라 Play for Scala를 선택한 이유는 제가 Scala를 잘해서가 아닙니다. 제대로 Play를 이해하려면 Scala를 모르면 안되기 때문입니다. 저랑 이번기회에 Scala에 대한 맛도 같이 보시죠.


스터디 진행

온라인과 오프라인을 병행해서 진행하겠습니다. 한번 온라인이면 한번 오프라인. 처음에는 오프라인으로 할거고 같이 코딩을 해보려면 노트북이 있어야 좋을거 같네요.

 

첫 스터디는 1월15일로 생각중인데 확실한 날짜는 신청하신분들과 맞춰서 정하겠습니다. 스터디 신청하신분들 이 글에 비밀댓글로 연락처(이메일, 핸드폰 번호) 남겨주세요.


저작자 표시 비영리 변경 금지

보나님이 페북에 올린글 Stop Using Story Points 를 읽으면서 번역은 아니고 요약을 좀 해봤습니다.


스토리 포인트는 스프린트 처럼 애자일 하면 떠오르는 용어다. 2007년 의도적으로 스토리 포인트와 개발속도를 적용하지 않으면서 애자일적인 특징을 높히기 위한 실험을 했던 적이있다. 이 실험에서 고정 길이 스프린트(fixed-length-sprint)는 흐름 기반의 워크플로(flow-based workflow)로 바꾸고 일일 스크럼은 잦은 팀 미팅(frequent team huddles)으로 바꿔 진행했다. 프로세스에서 낭비되는 부분을 적극적으로 바꾸다보니 우리의 프로세스는 책에서 말하는 애자일과 사뭇 다르게 보이기도 한다. 그럼 왜 스토리 포인트 사용을 그만둔걸까?


스토리 포인트를 처음 접했을때

1999년 스타트업에서 일할때는 나도 팀의 개발속도를 나타내는 스토리 포인트에 매혹되어 있었다. 관리자들에게도 좋고 팀원들에게도 좋고, 중요도가 떨어지는 기능을 선별할때 특히 유용했다. 스프린트내에 주어진 작업이 끝나면 꼭 필요한 기능(must-have)와 있으면 편리한 기능(nice-have)를 고민하면 되었다. 


그 후 난 8년간 스토리 포인트를 써왔고 그러면서 많은 오해와 잘못된 사용경험을 알게되었다. 처음에는 이런 문제를 사람들에게 더 나은 교육을 진행해야 한다는 징후로 이해했다. 하지만 몇년이 지난뒤 스토리 포인트와 개발속도에 깊은 결함이 있음을 알게되었다.


 비 이성적인 스토리 포인트의 증가

큰 문제가 있음을 처음 알게된것은 2001년 대형 프로젝트에서다. 첫번째 팀은 완전한 애자일로의 전환을 목표로 하는 우리가 만나봤던 최고의 준비된 팀이었다. 이팀은 2년뒤 기한내 높은 성과를 낸 공로로 보너스와 시상을 받았다. 하지만 이 팀은 그 이후에 더 높은 생산성을 요구받게 된다. 이 팀의 평균 개발속도가 52였는데 80으로 높히라는 요구였다. 어떻게 했냐고 물으니 이런 대답을 들었다. "요즘 여기서는 재채기만 해도 스토리 포인트로 잡아요."

개발속도가 빨라진것처럼 보이기 위해서 스토리 포인트를 얼마든지 오용할수 있던것이다. 이 경험은 스토리 포인트에 대한 나의 믿음을 약화시켰다. 하지만 한편으로 이런 생각을 했다. 문제는 교육이 충분치 않았던게 아닐까? 2004년 스토리 포인트 사용을 그만두기까지 나와 내 동료들은 관리자와 스토리 포인트를 잘못 사용하는 사람들에게 두배의 노력으로 교육을 진행했다.

 

예측가능성을 위해 품질을 희생하다.

추정을 맞추기 위해서 하는 첫번째 작업이 TDD나 리팩토링을 생략하는 것이다. 품질을 희생하면서 납기일을 맞추려는 팀을 자주 봤다. 수년동안 수강생들이 품질높은 코드를 가진 기능을 배포하는게 어떻다는것을 경험하도록 도우면서 이 공통적인 문제를 역설했다. 

위대한 팀들이 일관된 개발속도를 유지하면서 동시에 기술적으로 뛰어난 팀이라는 사실을 설명했다. 이 내용은 사실이지만 그런팀은 드물었고 일관성은 팀 크기가 변하거나 외부의 압력때문에 변하곤했다.

더 많은 해가 지난뒤 일관된 개발속도를 유지하는게 예측이나 추정을 하는데도 도움이 되기 때문에 중요하다는 생각이 들었다. 그럼에도 많은 팀들이 품질을 희생하고 기술적인 빚을 지고 예쁜 소멸차트를 유지하려한다.


포인트로 팀 비교하기

몇년뒤 서로 다른회사에서 일하는 몇명의 관리자들이 이렇게 말하는것을 들었다. "왜 팀X는 스프린트마다 24 스토리 포인트를 처리하는데 팀Y는 12 스토리 포인트밖에 못 끝내지? 팀크기는 같은데 말야 왜 차이가 나는걸까?" 이 관리자들은 개발속도를 팀의 역량에 대한 지표로 보기보다는 성과측정의 지표로 간주하는 함정에 빠진 것이다. 교육할때 팀을 개발속도로 비교하지 말라고 하지만 많은 사람들이 그런 비교를 당연하다고 여기는게 실제로 문제가 된다.

2005년도에는 팀마다 스토리포인트를 좋아하는 과일로 부르도록 함으로서 이 문제를 처리해보려 했다. 한 팀은 개발속도를 오렌지로 다른 팀은 사과, 또 다른팀은 키위 이런식으로 부르게 했다.

그러고 나서 관리자가 팀간의 개발속도를 비교하려 할때 나는 이렇게 말했다. "사과와 오렌지는 비교할수 없어요"

과일을 이용한 접근이 팀간 개발속도 비교를 지적하는데 도움은 되었지만 스토리포인트를 잘못 사용하지 않도록 하는것보다는 더 단순하고 에러가 생기지 않는 방법을 쓰는게 더 낫지 않을까 하는 생각이 드는것은 어쩔수 없었다.


스토리 포인트 혼란: Are We NUTs?

많은 사람들이 스토리 포인트를 사용하는게 정당하다고 하는데 그렇게 말하는 이유가 사람들이 실제 시간을 이용해 추정하는데 익숙치 않기 때문이라고 말한다. 그렇게 말하는 이유로서 실제로 작업을 완료하는데 걸리는 시간을 추정하는것보다 작업의 크기를 추정하는게 더 낫기 때문이라고들 말한다.

사실 사람은 무슨 측정단위를 사용하느냐와 무관하게 보통 추정에 익숙치 않다.

나중에 보여주겠지만 자주 재추정을 할때가 더 나은 추정을 하게된다.

스토리포인트는 이슈를 더 혼란에 빠뜨릴 뿐이다.

시간을 이용해 추정할때 생기는 질문들은 스토리 포인트에서도 똑같이 생긴다.


이런 것들을 이용하기 위해서 우리가 배워하는 것은

  • 그것들이 무엇이고
  • 어떻게 사용하고
  • 그것들을 잘못 사용하지 않는 많은 방법이 있는지
스토리 포인트에 대한 대부분의 교육에서는 사람들간의 저항을 잘 다루는 방법을 가르친다.
신참들은 스토리 포인트를 가지고 추정하는것에 불편함을 느끼기 때문에 스토리 포인트를 실제 시간으로 자주 맵핑해준다.
의미를 잘 아는 애자일 전문가들은 초심자들을 교육시키는데 최선을 다한다. 어떻게 스토리 포인트가 티셔츠 크기나 피보나치 수열에 해당하는지를 설명한다.
2005년 우리 고객중 한명은 스토리 포인트가 혼란스럽다고 NUTs(Nebulous Unit of Time)라고 이름을 바꿔버렸다.
스토리포인트에 대한 잘못된 이해와 사용은 시간이 갈수록 커진다. 특히 하나의 프로세스 처럼 팀에서 부서로 다시 회사전체로 확산된다.
이런 잘못된 이해와 오용을 바로잡으려면 시간과 에너지가 들어간다. 스토리 포인트와 개발속도를 계산하는 일은 애자일을 처음 시작하는 팀에게 불필요한 혼란을 야기시키는 부자연스러운 기법이다.

요약으로 시작했느데 하다보니 번역이 되네요. 이놈의 직업병은 어쩔수 없는걸까요. 글이 길어서 나머지는 다음번 포스트에 계속하겠습니다.


저작자 표시 비영리 변경 금지

Well deserved

Work & Study/English 2012/09/19 19:01 posted by k16wire

이 말은 좋은 소식을 막 들은 누군가에게 이야기하기 가장 좋은 말입니다.


로또에 당첨된 사람이라면 "Congratulations"가 어울리겠지만 "well deserved"는 노력하고 시간을 들이고 어딘가 있을 위험을 극복한 사람에게 어울리는 말입니다.


출처: http://sethgodin.typepad.com/seths_blog/2012/09/well-deserved.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+typepad%2Fsethsmainblog+%28Seth%27s+Blog%29

저작자 표시 비영리 변경 금지

이번해 Agile Conference에는 헨리크리닉버그가 키노트 연사로 참여했습니다.

요즘 그의 관심사를 반영하듯 내용은 린(Lean) 이네요.


http://blog.crisp.se/2012/08/14/henrikkniberg/lean-from-the-trenches-agile2012


저작자 표시 비영리 변경 금지

'Work & Study > 애자일 개발' 카테고리의 다른 글

Play Framework 스터디 방향  (7) 2013/01/02
스토리 포인트는 이제 그만 1편  (0) 2012/10/26
Agile 2012 Keynote "Lean frm the Trenches"  (0) 2012/09/18
린에 대한 사례연구  (0) 2012/09/18
프로그래머로 산다는것  (4) 2012/09/15
Agile : An Introduction  (0) 2012/09/13

린에 대한 사례연구

Work & Study/애자일 개발 2012/09/18 12:47 posted by k16wire

애자일코리아에서 연사로 오셨던 황순삼님의 린(Lean)에 대한 글이 소프트웨어 공학 웹진에 실렸네요.



http://www.software.kr/mbs/swkr/jsp/board/view.jsp?spage=1&boardId=183&boardSeq=619327&mcategoryId=&id=swkr_040500000000


저작자 표시 비영리 변경 금지