Home | Info | Research | Blog | Repos | Messages | Contact Me

 


'협업 개발 환경'에 해당되는 글 1건

  1. 2007/05/09 CDE 시스템들의 간단한 리뷰
CDE는 Collaborative Development Environment의 약자인데 말그대로 협업 개발 환경입니다. 이 협업 개발 환경의 중요성은 이제 손아프니 더 이상 강조하지 않기로 하고, 본론으로 들어가서 현재 나와있는 CDE 시스템들을 리뷰해 보도록 하겠습니다.

리뷰한 시스템들 중에서 상용 시스템들도 있으며 무료로 사용할 수 있는 것들도 있습니다.

CollabNet Enterprise Edition
http://www.collab.net/products/enterprise_edition
Subversion을 만든 CollabNet의 CDE 시스템입니다. 15명 까지 무료로 사용할 수 있습니다.

일단 설치가 아주 짜증납니다. 스크립트를 받아와서 설치를 해야 하는데 Red Hat Enterprise Linux ES release 3 (Taroon Update 6)에서 설치해야 합니다. 다른 리눅스 배포판에서 설치할 경우 상당한 삽질을 각오해야합니다. 첫 진입 장벽이 이렇게 높으니 15명 무료라고 해도 아무도 안쓴다는 결론이 나옵니다.

데모 사이트도 사용법이 불분명하고 도무지 제품을 팔 생각이 있는지 의심이 됩니다. 삼성전자에 팔았다고 광고를 하고 있긴 한데, 제 예상으로는 설치된 서버를 통째로 팔고 거기 설치, 유지 보수, 관리 인력도 함께 팔았을(?) 것 같은 생각이 듭니다.

데모 사이트 보다는 http://tigris.org를 보는 것이 속편하며 이것이 CollabNet Enterprise Edition을 사용한 사이트라고 봐도 됩니다. 버그 트래커, 소스코드 저장소 뷰어, 메일링 리스트, 파일릴리즈 등 기본적인 기능을 갖추었으나 모두 상당히 미흡(허접)합니다.

SourceForge Enterprise Edition
http://sourceforge.net/powerbar/sfee
오픈소스 프로젝트 호스팅 사이트로 유명한 소스포지의 엔터프라이즈 버전입니다. 이것도 15명까지 무료로 사용할 수 있습니다.

설치는 Collab 제품과는 달리 아주 간편합니다. 따로 설치할 필요는 없고 VMware 이미지(VMware Virtual Appliance)로 배포를 하고 있어서, 이것만 받아서 VMware에서 실행하면 서버가 바로 동작됩니다.

서버를 부팅하고 root 로그인을 하면 설정하는 것이 나오는데 서버 IP 설정과 SMTP 서버 설정만 해주면 바로 작동이 됩니다.

sourceforge.net 처럼 사용자를 등록하고 그 사용자가 프로젝트를 제출하고 프로젝트 공간을 호스팅 받아 운영을 하는 방식입니다. 프로젝트와 사용자가 많아도 일관성 있게 관리할 수 있도록 되어 있습니다.

트래커, 문서화, 태스크, 게시판, 소스코드 저장소 뷰어, 리포트, 파일릴리즈, 위키등의 기능을 가지고 있으며, sourceforge.net과는 전혀 다른 모습을 보여줍니다. 모든 트래커, 태스크, 문서, 커밋등은 고유의 ID를 가지고 있어서 관리 및 추적이 편리합니다. 위키에서도 이 고유 ID를 적어주면 바로 링크가 됩니다. 하지만 위키는 대충 모양만 내서 그런지 일반 위키에 비해 기능이 미흡합니다.

각 트래커나 태스크, 문서화, 게시판, 위키등을 모니터링 하여 메일로 받아 볼 수 있지만 소스코드 커밋은 모니터링이 되지 않는 단점이 있습니다.

저장소는 CVS와 Subversion을 사용할 수 있고 하나의 프로젝트에 여러개의 저장소를 만들 수 있습니다. 저장소 뷰어는 ViewVC를 사용하는데 소스코드 컬러링이 되지 않습니다.

저장소에 커밋을 하고 트래커나 태스크의 고유 ID를 적어주면 해당 트래커, 태스크에 커밋로그가 붙습니다. 커밋을 할 때 꼭 트래커나 태스크 ID를 적어줘야 커밋이 되도록 설정할 수도 있습니다.

디자인이 매우 딱딱하며 버튼들은 유닉스의 모티프류 어플리케이션을 보는 것 같은 느낌이 듭니다.

데모 사이트에서 대강 모양을 확인할 수 있습니다. 하지만 모양만 확인이 가능하고 전체 기능을 사용하려면 VMware 이미지를 받아서 해야 합니다.

GForge Advanced Server
http://gforgegroup.com/es
소스포지를 포크하여 개발한 시스템인데 완전 새로 개발하여 전혀 다른 시스템이 되었습니다. GForge라는 오픈소스 프로젝트를 기반으로 만든 것이지만 오픈 소스 버전과는 질적으로 수준이 다른 시스템입니다. GForge 프로젝트가 새로운 회사를 차려서 판매를 하고 있고, 15명 까지 무료로 사용할 수 있습니다.

소스포지 엔터프라이즈와 같이 VMware 이미지를 받아서 네트워크 설정만 하면 간편하게 사용할 수 있습니다.

트래커, 게시판, 리포트, 문서화, 뉴스, 파일릴리즈, 메일링 리스트, 위키, 소스코드 저장소 뷰어를 갖추고 있으며, 트래커에서는 게시물의 세부적인 속성을 하나 하나 지정할 수 있고 위키에서 트래커를 바로 링크할 수 있습니다. 하지만 저장소의 리비전은 링크가 되지 않습니다. 이 위키도 모양만 내서 그런지 일반 위키에 비해 기능이 매우 미흡합니다.

트래커, 게시판, 문서화, 파일릴리즈등 각각의 게시물을 하나 하나 모니터링 할 수 있습니다. 하지만 위키 변경사항은 모니터링 되지 않습니다.

개인 페이지도 소스포지 엔터프라이즈에 비해 기능이 좋으며 개인 위키, 개인 파일 저장공간, 개인 일정(gantt chart)을 제공합니다.

저장소도 CVS, Subversion 뿐만 아니라 ClearCase, Visual Source Safe도 사용이 가능했고 커밋로그를 메일링 리스트로 보내도록 설정하면 자동으로 커밋로그 메일링 리스트가 생성되어 편리합니다. 하지만 소스코드 컬러링은 되지 않고, 프로젝트 하나에 저장소 하나만 표시할 수 있습니다.

소스포지와 마찬가지로 저장소에 커밋을 하고 트래커의 고유 ID를 적어주면 해당 트래커에 커밋로그가 붙습니다. 커밋을 할 때 꼭 트래커 ID를 적어줘야 커밋이 되도록 설정할 수도 있습니다.

디자인은 그라데이션을 사용하여 소스포지 보다는 괜찮지만 칙칙한 감이 있으며 한글로 설정해서 사용할 경우 폰트 크기가 코딱지 만하게 나와서 보기도 불편하고 클릭하기도 힘듭니다.(클릭을 하려면 조준(?)을 해서 해야합니다, 이건 아시아권 시장을 포기한거나 마찬가지겠죠)

데모 사이트에서 사용자를 등록하고 테스트 프로젝트를 만들어서 각 기능을 사용해 볼 수 있습니다.

Trac
http://trac.edgewall.org
가장 최근에 나온 시스템이며 여러 오픈소스 프로젝트 및 기업에서 사용하고 있습니다. 오픈소스 프로젝트로 제한 없이 사용할 수 있습니다. 하지만 얼마전에 회사가 망해서 커뮤니티 형태로 계속 개발이 되고 있긴 하지만 버전 1.0도 나오지 않았는데 이렇게 되서 안타까운감이 있습니다.

VMware 이미지 같은 것은 제공해 주지 않지만 덩치가 크지 않아 설치가 크게 어렵지 않은 편입니다.

전체 시스템이 위키 기반으로 되어 있고 위키의 기능도 일반 위키 만큼 상당히 좋습니다. 위키에서 각 티켓, 저장소 리비전 등을 손쉽게 링크할 수 있습니다.
 
로드맵(마일스톤)을 이용해서 프로젝트의 개발 진행상태를 파악할 수 있고, 타임라인을 통해서 프로젝트의 전체적인 변경사항들을 한눈에 볼 수 있습니다. 로드맵은 iCalendar 형식으로 출력할 수 있고 타임라인은 RSS 형태로 받아 볼 수 있어서 아주 편리합니다.

저장소 브라우저도 소스코드 컬러링이 아주 잘되며(이것을 중점적으로 개발한 것 같은 느낌이 듭니다. 백엔드로 Silver City와 Enscript를 사용합니다.), 디자인도 괜찮습니다. 리비전간 Diff도 깔끔하게 출력되고 한글 폰트 크기도 적당하게 나옵니다.

저장소에 커밋을 하면 커밋 로그를 메일로 보낼 수 있고 해당 티켓에 커밋 로그를 붙일 수 도 있습니다. 저장소 타입도 Subversion 뿐만 아니라 CVS, Darcs, Bazaar, Mercurial, Git, Perforce, SVK, Arch, monotone, ClearCase등 많은 버전 컨트롤 시스템을 지원합니다.

각종 플러그인이 많이 나와 있지만 파이썬 프로그래머가 많지 않아서 PHP 기반 프로젝트들에 비해 개발 속도도 느리고 결과물의 양이 많지 않은 것 같습니다.

단점으로는 정식버전이 아직 나오지 않았다는 것과 위의 CDE 시스템들에 비해 여러 프로젝트를 관리하는 기능이 없어 불편합니다. 그리고 사용자 관리와 개인 페이지기능도 매우 부실합니다.

프로젝트 생성과 관리에 있어서도 다른 시스템들은 웹상에서 모든 것을 처리할 수 있지만 트랙은 커맨트라인 도구(trac-admin)을 이용해야 하는 불편함이 있습니다.

기타 시스템들
GForge - 오픈소스라서 제한 없이 사용할 수 있습니다. 국내에서는 kldp.net에서 사용하고 있지만 설치 및 관리를 하려면 상당한 삽질을 해야하고, 기능도 그다지 뛰어나지 않습니다.
ClearCase - 기능이 막강하다고 하는데, 가격이 매우(!) 비싸고 사용법이 복잡해서 쓸일은 없을 것 같습니다.

맺음
지금까지 여러가지 CDE 시스템들을 알아보았는데 완벽한 시스템은 없었습니다. 그리고 사용계층이 대중적이지 않은데다 이런 시스템을 사용하는 소프트웨어 개발업체가 적어, 제품이 많이 팔리지도 않고, 가격도 비싸고, 개발도 활발하지 못한 악순환이 계속 되고 있습니다. 이 협업 시스템이 널리 퍼져 제품도 많이 발전했으면 합니다.