형상 관리, 그까이거 그냥 폴더에 보관하면 되지
팀장의 고백 목차
- 게으른 PL이 프로젝트 일정을 지연시킨다.
- 개발명세서? 그 귀찮은 짓을 왜 하지?
- 개발계획은 팀장의 것? 팀원의 것?
- 팀장! 당신은 진정한 Nego를 할 수 있는가?
- 형상 관리, 그까이거 그냥 폴더에 보관하면 되지 (오늘의 Post)
- Trac을 통한 품질 관리
- UnitTest! 미완의 시도
- 인수테스트, 북치고 장구치고
- 진정한 프로젝트의 가치는 어디에서 오는 것일까?
주제의 연관성을 보았을 때 2차에 나누어서 연재할려고 계획했던 “형상관리, 그까이거 그냥 폴더에 보관하면 되지”와 “Trac을 통한 품질 관리” post를 하나로 합쳐 이야기하겠다.
본좌가 근무하는 회사에는 ‘장표’와 ‘장지x’이라는 표현이 있다. 장표는 “powerpoint로 작성한 보고용 자료”라는 뜻이고 장지x은 장표 작성 지x의 줄임말이다. 따라서 장지x은 powerpoint 작성 막노동을 뜻한다. 이 표현은 상당히 자기비하적인 표현으로써 쓰기에도 안좋고 듣기에도 안좋지만, 노가다성 보고용 자료 작성을 하는 자신을 한탄할 때 쓴다. 그런데 장지x을 하는 경우, powerpoint 작성 방법이 사람들마다 천차만별이라는 사실이다. 장지x의 생명은 효율성이다. 효율성을 높이는 copy & paste 기능을 사용할 때도 사람들마다 특성이 있다. 나는 효율성을 중시하기 때문에 자주 쓰이는 powerpoint 단축키는 쭉 꽤차고 있다고 자신한다. 그래서 copy & paste를 할 때면 ctrl+c와 ctrl+v의 단축키 신공(?)을 사용한다. 입사 후 지금은 회사를 그만 두신 선배사원과 같이 자료 작성을 하였다. 후배 사원이었기 때문에 어깨 넘어로 선배가 자료 작성하는 것을 지켜 보았다. 선배가 copy & paste를 하는데, 단축키를 사용하지 않고 툴바의 copy 버튼과 paste 버튼을 사용하였다. 후배된 마음에 선배의 자료 작성을 도와드릴려고
Hani : 선배님. 단축키 사용 안하세요?
선배 : 단축키? 그게 뭔데?
Hani : copy & paste할 때 툴바 사용하지 않고 ctrl+c, ctrl+v하면 쉽게 작업할 수 있는데요.
선배 : 그런게 있었어? 한번 써 볼까?
선배가 내가 알려 준 단축키를 이용해서 작업하기 시작했다. 그런데 키를 동시에 눌러 작업하는게 처음이었던지 번번히 c와 v를 입력했다. 몇 번 오타를 입력하자 선배 曰
선배 : Hani야. 넌 단축키가 편한지 몰라도, 난 툴바 쓰는게 더 편하다.
그리고는 다시 툴바를 이용해서 작업을 하였다. 오랜 세월동안 쌓아온 툴바 신공이라서 신기하게도 높은 작업 효율을 보였다.
아래 그림은 일의 효율성과 일을 할 때 필요한 에너지 수준을 나타낸다. x축으로 올라 갈수록 일의 효율성이 높아진다. y축은 일을 할 때 소요되는 에너지 혹은 시간을 나타낸다. 숙련도가 높아지면서 일의 효율성도 높아지지만, 일을 할 때 사용하는 툴이나 방법이 기존의 것을 대체할 때 비약적으로 상승한다. 그런데 이 그래프가 나타내듯이 툴이나 일을 처리하는 방법론을 바꾸기 위해서는 (상변화 시) 매우 높은 에너지가 필요하다. 즉, 새로운 툴과 방법을 사용해서 일하는데 익숙해 지면 이 때 필요한 에너지는 기존과 비교했을 때 적지만, 상변화에 필요한 에너지가 일시적으로 많이 들기 때문에, 기존의 방식을 바꾸어서 새로운 툴과 방법을 쓰는게 쉽지 않다.

지적 노동은 결국은 뇌활동이다. 뇌활동의 근본은 뉴론과 뉴론 사이의 연결이 얼마나 효율적으로 연결되었느냐에 따라서 달라진다. 오랜 시간 사용한 툴과 방법론에 최적화되도록 뉴론과 뉴론의 연결되어 있는데, 새로운 툴과 방법론에 적응하기 위해서는 기존의 신경망 연결을 재배치하거나 완전히 새로운 연결을 형성해야 한다. 따라서 이 때는 엄청난 두뇌학습. 즉 에너지가 필요하다. 그렇기 때문에 새로운 시도를 하는 것이 쉽지 않고 변화에 적응하는 것도 쉽지 않다. 이외도 심리적인 문제도 수반된다.
이런 이유로 개발 업무를 효율화하기 위해서 새로운 툴이나 방법론을 도입하는 것은 말처럼 쉽지가 않다. 형상관리나 품질관리를 위해서 이미 이런 툴들을 도입해서 사용하는 회사에서는 사용의 어려움보다는 편리함에 익숙해져서 툴을 쓰는 것을 당연하게 생각하지만, 이런 툴을 아직 사용하지 않는 회사에서는 이런 툴에 대해서 구성원들이 거부감이라고 표현되는 변화 에너지를 소비하는데 반감을 가지고 있기 때문에 도입이 쉽지가 않다.(당장에 에너지 소비가 미래의 편안함보다 더 중요하다.)
개발 효율성을 높이기 위해서 이런 툴을 도입할 때 위치에 따라서 사용할 수 있는 방법이 두가지가 있다. 우선 팀장이라면 무척 간단하다. 일단 도입하고 보는 것이다. 도입은 쉽지만, 이것을 사용하게 만드는 것은 둘째 문제다.(하지만 일단 도입은 할 수 있다.) 그러나 팀원인 경우 입장이 다르다. 팀장이라면 변화에 대한 반감을 조직이라는 측면을 활용해서 강제수용시킬 수 있지만(물론 이것이 옳다는 것은 아니다. 자발적인 참여가 좋지만, 더 나은 미래를 위해서 조직을 이용할 필요는 있다는 뜻이다.) 팀원은 자신이 옳다는 것을 다른 동료나 상사에게 설득시켜야 하기 때문에, 무작정 이런 툴의 도입을 주장만 할 수 없다. 이런 경우 우선 자신부터 이런 툴을 사용하는 것이다. 즉, 본인이 반응 에너지를 낮추기 위해서 화학반응에서 사용하는 촉매가 되자! 처음에는 동료들인 별스럽지 않게 생각하겠지만, 효율적으로 작업을 하는 모습을 보게 되면 다들 한번씩 써 볼까라는 생각을 비춘다. 이 때가 절호의 타이밍이다. 동료에게 한번 사용해보라고 형상관리, 품질관리 툴을 깔아주자. 만일 팀에서 관리하던 소스라도 날라가는 날이면, 혼자 관리하던 형상관리 툴이 빛을 볼 시점이다. 이 때가 바로 변화의 시작이다. 촉매가 서서히 화학반응에 참여해서 전체 변화 과정의 반응 에너지를 낮추는 것이다. 멋지지 않은가?
1부는 여기서 마치고 다음 post에서는 형상관리와 품질관리 툴을 이번 프로젝트에서 어떻게 사용했는지 살펴 보겠다.
May 5th, 2006 at 6:42 am
문제가 생기면 바로알 수도 있고 제대로 작동하던 가장 최근의 상태로 바로 되돌릴 수 있다는게 정말 매력적인 것 같습니다.
혼자서 작업할 때는 간단한 백업 유틸로 단순히 백업폴더로 sync 시키는 것만으로도 충분했는데… 아무래도 그렇지 않은경우에는 이런 유틸로는 조금 부족하지 싶더라구요.
May 5th, 2006 at 1:01 pm
kebie님//
특히 팀 작업을 하거나,
버전 release 혹은 main 프로그램과 sub 프로그램을 분리해서 개발할 경우 강력함을 느낌 수 있더군요.