상세 컨텐츠

본문 제목

졸업프로젝트에 쓰일 방법론 Agile, DSDM

맨체스터대학교졸업

by Jzzn 2011. 10. 11. 08:44

본문

수업준비를 제대로 하려면 흔히들 예습, 복습을 철저히 하라는 말을 많이들 한다.  그것은 중고등학교때 뿐만이 아니라 대학에 진학해서도 마찬가지다. 그러나, 대학생이 된 이상, 수업에 대한 내용 이해는 수업 시간 그 자리에서 다 해치워야 한다아무리 복습, 예습을 안 했을지라도 대학생이 되어서도 수업시간 때 무슨 내용인지 교수님이 하는 설명을 완벽히 알아듣지 못하면 안 된다는 말이다.  교수님의 설명, 학우들과의 토론 내용은 수업시간때 실시간으로 머릿속으로 따라가야 한다.

대학에서 배우는 양은 엄청나기 때문에 중고등학교 때 처럼 노트정리할 엄두가 안난다.  그래서, 클라우딩 형식으로 웹에다가 그때그때 내용을 요약한 글이나 수업시간때 필기한 내용을 적어서 따로 저장해 왔는데 올해에는 그것마저도 겁난다단순히 학년 숫자만 바뀐게 아니라 전공 학문의 어려움 수위(?)도 높아졌다.  그래서 차라리 강의노트를 스캔에서 이미지 파일로 저장하고 중요사항은 별도로 글을 적기로 마음먹었다. 


게다가 수업때 휘갈겨쓴 강의노트는 대놓고 블로그에 올려도 좋다는 생각을 했다.  어차피 압축 형식으로 쓴 단어 내지는 문장들이므로 이게 어느 상황때 나온 말이었는지, 어떤 내용인지는 나만 제대로 알아볼 수 있기 때문이다.


오늘 수업시간에 교수님이 이러셨다.  '분명 너희들은 프로젝트를 하면서 실수를 할거다. 그러나 실수를 하면서 컨설팅 스킬과 협상 스킬, 커뮤니케이션 스킬을 터득해나갈 것이고 이것은 여러분의 커리어에 많은 도움이 될 것이다.'


교수님 왈, 'learning by doing, not what I tell you what to do.' 


Learning by doing, 그 주체는 우리다.  사실 졸업프로젝트 과목에 별다른 이론 공부가 있는 건 아니다.  솔직히 속으로 좀 놀랬다.  나름 theory 공부가 많을 것이라 예상했는데.  (그럼 에세이는 어떻게 몰로 쓰라고!).  DSDM 이라는 Agile (애이자일 이라고 발음한다) 방법론을 가르쳐주시고 교수님은 프레젠테이션 발표가 있기 2주전 11월 말일에 다시 보자며 퇴장하셨다.  다음주엔 커리어 담당자분이 강의를 리드하실거라며.



SWOT 분석, BCG Matrix 같은 것은 많이 들어봤지만 Agile 은 생소했다. 
그러나, 컨설팅, 프로젝트 관리에서 쓰이는 방법론이 참 다양하다.  Agile 이란 하나의 프로젝트 관리 방법론이며 기존 Waterfall 방법론의 개선안이기도 하다.  It's all about Project Management.
그리고 DSDM (Dynamic System Development Method) 는
1995년 영국에서 개발되었으며 Agile 의 여러가지 방법중 하나이다.  현재, BT, Logica, Orange 같은 주로 IT, 통신 기업이 많이 사용하고 있다.  실제 DSDM 은 복잡한 개념이자 방법이므로, 졸업프로젝트에선 DSDM 의 Principle 만을 응용해서 프로젝트 수행을 한다.  꼭 DSDM 방법대로 할 필요는 없다고 교수님이 말씀하셨지만 우리 팀은 DSDM 기법을 충실히 사용하기로 결정했다.

When starting the project, make a draft plan (outline plan) and then collect user requirements.  After that, create development plan.


Timeboxing is very crucial.  팀원끼리의 미팅은 최소 일주일에 한번, 클라이언트 미팅은 격주로 진행하는 것이 ideal.
Ensure that the delivery date is fix.  has to be timely and punctual.   각각의 Timebox 는 요구사항과 데드라인을 뜻한다.




DSDM 에서는, requirements가 크게 5가지 타입으로 나뉜다.  Must Haves는 top priority로 나머지 Should have, Could have 는 low priorities 에 속한다.  Won't have는 들어가면 안되는 것이고.




지난번 포스팅에서 내가 맡은 졸업프로젝트는 컨설팅 프로젝트다.  실제 클라이언트를 찾아가서 requirements를 알아내고 프로젝트를 본격적으로 수행해가면서 지속적인 피드백과 커뮤니케이션을 공유해서 클라이언트가 만족하는 결과물을 만들어내는 것, 그래서 좋은 성적을 받는 것이 목표다.   그래서 그런지 팀원들과는 똘똘뭉쳐 한마음이 됐다.  강의가 끝나고 미팅 약속 잡기, 책임 역할 정하기 등등이 일사천리로 결정되었다.   (물론, vote 에 의해 역할이 배정되었다)



얼른 역할을 배정하는 것이 좋겠다는 교수님의 충고를 들으면서 강의노트 뒷장에 표를 그려보았다.  DSDM 방법에 따르면 팀원의 역할이 크게 Team Leader (팀장), Ambassador, Senior Developer, Developer, Scribe 로 나뉘는데 조금 일반적인 직무로 다음과 같이 바꾸었다.

여기서 중요한 건, 팀원이 다섯명인 소수인원 팀이기에 항상 한명이 어떤 역할을 맡고 누군가는 그사람의 역할이 무엇인지 정확히 알고 그사람이 부재중일때 대신 일처리를 할 deputy 가 필요하다고 교수님이 거듭 강조하셨다.  즉, 메인 한사람과, 서브 한사람해서 최소 두명이 한개의 역할을 동시에 맡아야 한다는 것.


복학생인 나를 제외한 팀원들은 1학년때무터 여러 프로젝트를 해왔기에 각자 무엇을 잘하는지를 잘 알고 있었다.  PM, 시간관리를 할 팀장 역할, 보고서 작성 및 타 웹사이트 분석 및 자료 데이타 수집분석을 하는 리서처, 웹디자이너, 개발자, 그리고 클라이언트와 지속적인 소통을 담당할 커뮤니케이터가 다음과 같이 정해졌다.  각 역할의 메인은 만장일치로 추천을 통해 선정되었다.  나는 메인 디자이너와 보조 개발자 그리고 보조 커뮤니케이터 역할을 맡았다.  나 역시도 그 역할을 하고 싶었고.  그러나, 이 역할대로 6개월 계속 가는게 아니라 초창기에는 이렇게 가고 각 상황에 따라 능동적으로 역할을 바꾸자고 결정되었다.




이번주 수요일, 농장에서 갖는 첫 클라이언트 미팅을 한다. 


관련글 더보기

댓글 영역