Design/Project Managing

AGILE 현황판 튜토리얼

2014. 6. 12. 06:20




Com2us QA팀에 있을시적 Mantis를 통해 ITS 툴에 대한 개념을 익히고

지지난학기 브리디아 소프트에서 제작중이던 SNG를 Redmine을 이용하여

프로젝트 매니징 및 기획서를 작성하는 것을 보았다.

 

그리고 지난학기, 나는 ITS를 쓰면 PM이 엄청나게 수월해 질 것 같아 학교 프로젝트로 보드게임을
제작하면서 ITS를 사용하여 
이슈 및 기획서를 관리하려고 하였다.

 

기본적으로 비슷한 툴은 많다. Mantis(Wiki가 없다), Trac 등등등...

하지만 기본적으로 제일 이쁘게 생긴게 Redmine이었고 본것도 그거밖에 없어서

맨땅에 헤딩해가며 구축을 했다. 몇가지 이슈를 적어보면...

 

  1. 서버가 없으면 쓸 수 없는 프로그램 (비용발생)
    기본적으로 Mysql 기반으로 짜진 프로그램이다보니 항시 DB를 읽고 쓰려면
    24시간 돌아갈 수 있는 Mysql 서버가 있어야 한다.
    24시간 켜둘 수 있는 서버란 것은 회선 + 서버 사용비가 항상 들기 때문에
    무일푼으로 진행하는 학교프로젝트에는 걸맞지 않았다.
    (다행히도 나는 학교에 서버를 둘 수 있어서 비용은 들지 않았다.)
  2. 아직도 Stable 하지 못했던 2.x 버전
    브리디아에서 사용하고 있던건 1.x 대 버전이었고
    내가 redmine을 설치하려고 했을때 1.x 대 버전과 2.x 대 버전이 동시에 올라와있었다.
    그 때는 그냥 무조건 버전 높은게 짱일거라 생각하고 2.x 대 버전을 설치했었는데
    2.x대 버전은 아직도 제대로 된 피드백이 축적되지 않았으며 여러가지 버그가 난무해
    사용하기가 껄끄러웠다.
  3. 무궁무진한 커스터마이징, 노가다.
    기본적으로 오픈소스 프로그램이고 비교적 쉬운언어라는 ruby로 짜져있어
    무궁무진한 커스터마이징이 가능하다.
    근데 이 말은 즉슨 넣고 싶은 기능을 가감하는데 있어서 너무 많은 손이가
    redmine 전담이 없으면 너저분한 메뉴를 다 올려놓고 써야 하는 것이다.

이 모든것을 제껴두고 결국 APMSETUP, AUTOSET 등의 windows 기반 서버셋팅 프로그램들을
써가며 서버를 구축하려다 너무 많이 꼬여 그냥 가볍게 Bitnami Stack
(쉽게말해 APMSETUP과 더불어 필요한 프로그램을 미리 설치하여 바로 쓸수있게 해주는 패키지)
을 설치하여 서버 구동 및 운용을 하였다. (그 사이에도 자잘한 문제는 많이 터졌었음)

그렇게 우여곡절 끝에 셋팅한 서버, ITS를 구축한것만이 모든것의 끝은 아니였다.
아무리 좋은 틀이라도 그것을 어떻게 쓰냐가 중요한 것 사용관련 이슈를 꼽으면

  1. Data 입력에 대한 부담감 (귀찮은 것을 싫어한다.)
    그 아름다웠던 Gantt 챠트와 기획서는 무수히 많은 Data가 누군가에 의해 입력이
    되었기에 아름다워 보였던거지 그 항목이 입력되지 않았을 때는 의미가 없다.
    하나라도 일을 더 할 수 있는 판국에 이걸 쓰느라 머리를 싸맬 필요는 없었던 것이다.
  2. 관리에 너무 많은 시간 소요
    짜잘한 부분이 너무 많다보니 이것저것 건드릴 수 있는 것도 많지만
    그만큼 그 부분을 하나씩 보고 자기가 원하는 방향으로 이끌기 위해서는
    시간이 많이 들어간다. 이 일 하나만 보는 사람이라면 문제가 없지만
    다른 일도 해야되는 시점에서 5만큼의 일을 하고 그 일을 보고, 수치화 하기 위해
    3의 관리가 필요한 것은 효율 낭비였다.

그래서 결국 학기 중간에 Redmine 사용을 포기했다.
순수 업무 할당만 하고 나 자신만 Trello를 통해서 필요, 할당 이슈를 생성하고
관리를 하며 진행을 하여 프로젝트를 마무리 하였다.

대규모 인력이 투입되어 필연적으로 많은 관리가 필요한 프로젝트에는
유용하게 쓰일지 모르겠지만 관리보다 개발, 완성에 초점이 맞춰지는 소규모 게임 제작팀에서는 
그 시간에 좋은 게임을 만들 수 있는 생각을 더 많이 하는게 나을지도 모른다.

 

Wiki를 작성하던중 페이지를 열어놓고 딴짓을 하고 계속 반복작성을 시도했는데
점점 서버를 여는 시간도 길어지더니 결국은 서비스 임시 사용 불가와 프록시 에러가 떴다.
일단 급한데로 서비스를 껐다켰는데도 마찬가지로 계속 그러다 어느순간 잘 동작하는것이었다.


근본적인 문제를 해결하기 위해서... 구글링을 해보니 해당사례가 이미 있었다.


http://xyz37.blog.me/50090489826


결론은 mySQL쪽 DLL에서 문제를 일으킨다고 했는데 bitnami로 깐 내 redmine은
mongrel.log 파일이 없어서 분석도 못해보고 아파치 로그만 디립다 보다가
결국은 저기서 나온 sql dll 파일 교체를 시도했다. (물론 원본파일은 libmySQL1.DLL 로 백업해둠)
SQL 서버가 안돌면 어쩌나 했는데 잘 돌아간다.

redmine은 기본적인 위키 작성 툴인 textile이 있음
근데 이게 너무 기능이 간편해서... 좀 잘 해보려고 redmine 포럼의 ono란 사람이 개조한
redmine_ckeditor를 받았음, 근데.. 문제는 이걸 받아서 redmine 폴더의 plugin에 넣으면
무조건 구동이 안된다. 100%, 이걸로 오늘 삽질, 어떻게 해결할지 생각해봐야겠다.


1. rake db:migration RAILS_ENV='production' 은 redmine 폴더안의 htdocs 에서 실행해야된다.
    ㄴ 추가로 2.x대 버전에서는 db:migration이 아니라 db:migrate로 입력해줘야 한다(12-07-12)

2. 왠만한 프로그램 설치 안됐다는건 gem install 'xxx'로 해결할 수 있는건 좋은 기능인것 같다.

3. redmine 2.x 대에서는 plugins 폴더가 vendor 안에 넣으면 오류메세지도 뜨고 실행도 안된다.

4. execjs 설치시 Permission Denied 문제가 뜬다. / Redmine Stack 사용을 관리자 권한으로 실행하니 잘된다.

5. 이제 htdocs로 들어가니 안먹던 rake db:migrate_plugins RAILS_ENV="production"이 먹기 시작한다.
    ㄴ 2.x대 버전부터는 db:migrate_plugins가 아니라 redmine:plugins:migrate 라고 입력해줘야한다.
        (rake redmine:plugins:migrate RAILS_ENV='production' / 12-07-31)

6. 마이그레이션 완료 CKeditor가 구동된다


교훈.

(1) Redmine Stack 사용 (CMD로 실행된다) 은 무조건 관리자 권한으로 실행시켜라

(2) 인터넷에 온 글은 살짝 유행이 지났기 때문에 무조건 Redmine 공식홈페이지 매뉴얼을 읽어라

(3) 절대 vendor 안에 plugins 폴더 만들어 넣지마라, 이건 커맨드 창에서도 경고해준다

(4) 에러메시지만 봐도 반은 이해함

(5) migration을 안하고 바로 plugins에 넣고 재시작시 무조건 레드마인이 뻗는다. 구동 안됨!

(6) db:migrate를 했을때도 뜨던 internal error가 redmine:plugins:migrate를 하니 훨씬 덜 뜨는 것 같다.

1. 발단.

프로젝트 관리를 redmine으로 하고 싶은 욕심이 생김


2. ruby install

bitnami를 이용해서 redmine을 구동하는데는 성공을 했으나
이미 apmsetup을 깔아놓았기 때문에 한번에 관리하는게 편하다고 판단하고
bitmani를 지우고 apmsetup을 통한 설치에 도전하기로 함 (http://kindi.tistory.com/104)
더불어 redmine도 2.x 최신빌드를 이용하기로 함


3. rubygems install failed

ruby를 운용함에 있어서 gem 버전을 1.8.7 이상으로 업데이트를 해야되는데..
기본적인 ruby 인스톨러는 1.8.6에 gem 버전 1.1.2, 여기에 1.3.6을 까는건 되는데
1.8.24는 구문에러를 뱉으면서 설치가 안되는 것이다.
여기서 든 생각은 1.3.6을 먼저 설치해서 그런가? 라는 생각이었다.


3. ruby uninstall, reinstall

설치 도중 ruby가 bundler setup이 안되었네 구문에러니 난리를 피워대니 미칠 노릇, 
결국 ruby를 통째로 날렸다 (클린 설치를 위해) 
그리고 루비를 재 인스톨 해서 바로 디렉토리에서 setup.rb를 실행시켰지만... 잘 되지 않았다.


4. 1.9.1 덧씌움, 1.8.24 설치 성공

그래서 찾다찾다 보니 인스톨러는 1.8.6이지만 덧씌울수 있는 1.9.1 을 발견
그리고 1.9.1 을 덧씌우고 rubygems 1.8.24를 설치하니 말짱히 설치되는것이었다.


5. 순순히 될줄 알았냐? zlib킥!

그래서 이제 rail을 설치하려고 하는데 zlib이 없다고 하는 것이다.
i386-mswin32에는 zlib.so가 있었을 텐데 -_-;
그래서 구글링 열심히 했지만 뚜렷한 해결책을 찾을 수 없었고
zlib을 다시 받아 넣을까 했는데... 이런.. bin 폴더에 있는 파일이름이 zlib1.dll 이다. 
zlib1.dll을 zlib.dll로 바꿔주니 rail 설치 잘만된다.


6. 최신빌드는 명령어 부터 다르다

저 블로그에 나와있는건 1.x빌드 기준이고 공식홈에서는 secret_token으로 생성을 하란다


7. mocha는 깔았다.근데 rmagick는 왜 안깔려?

mocha가 없다고 해서 mocha를 깔았다.
그리고 rmagick가 없어서 gem install rmagick로 설치를 시도했는데..
디벨롭먼트 킷이 필요하단다. 7-zip exe로 된 DEV kit을 깔았는데도 안된다


8. 포기

rmagick gem 파일은 받았지만 너무 덕지덕지 많이 깔릴바에야 한방에 bitnami를 깔아서
ddns 접속 설정해주는게 현명하다고 판단. 오늘의 놀이는 여기까지..


6. 결론

아무것도 모르면 Bitnami Stack 깔아 쓰시면 됩니다. 속편해요

+ Recent posts