컨플루언스(Confluence)는 아틀라시안에서 개발한 자바 기반의 상용 위키 소프트웨어이다[efn_note]https://ko.wikipedia.org/wiki/%EC%BB%A8%ED%94%8C%EB%A3%A8%EC%96%B8%EC%8A%A4_(%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4[/efn_note]
위키위키
위키는 간단한 마크업 언어를 이용하여 빠르게 복수의 사람 문서를 공동 편집하기 위해 개발되었다. 위키백과는 미디어위키를 이용하여 익명의 사용자가 공동으로 작성하여 만들어진 프로젝트중의 가장 유명한 사례이다.
웹 브라우저를 이용하여 문서를 공동 편집하게 되면 완성된 형태의 문서가 아닌 계속 진화하고 어디서나 접근할 수 있다는 장점을 가진다.
이러한 특성은 시장 요구에 재빠르게 반응해야 하는 기업체에서도 유용하게 받아들여졌다. 하지만 본래 오픈 소스 진영에서 개발되었고 익명의 공통 편집이라는 문화 때문에 오픈소스 위키들은 대부분 인증 기능이 약하고 WYSIWYG 형태의 에디터 방식을 제공하는 경우도 많지 않다.
컨플루언스를 쓰는 이유
그럼 기업에서 협업을 위한 문서 관리를 위키로 하려면 어떤 솔루션이 있을까? 현실적으로 선택할 수 있는 위키 소프트웨어는 두가지 뿐이다. 위키백과에 사용된 미디어위키와 아틀라시안에서 개발한 사용 위키인 컨플루언스이다.
문제는 미디어위키를 이용하면 각종 플러그인을 추가로 설치하고 스킨을 커스터마이징 하는등 많은 노력이 들어간다. 각종 기능들이 여러 사람이 만든 플러그인에 의해서 동작하기 때문에 파편화되어 동작하기 때문에 인터페이스 일관성도 없고 원하는 형태로 동작하지 않는 경우도 발생한다.
따라서 이문서에서는 미디어위키가 아닌 컨플루언스를 이용해서 문서를 체계적으로 관리하는 방법에 대해 다루고자한다. 컨플루언스는 클라우드 서비스의 경우 무료로 서비스를 하고 있다. 빠른 반응성을 원한다면 유료 결제후 설치형을 받아서 사용해도 된다. 원도우 운영체제에서 문제없이 동작하고 설치하기도 간편하다.
문서를 스페이스별로 분리
컨플루언스는 문서를 스페이스별로 따로 관리할 수 있다. 회사 프로젝트 별로 스페이스를 나누어서 사용하면 된다. 권한 관리를 지원하기 때문에 다음과 같이 스페이스를 개인용과 협업용으로 따로 나눠서 관리할 수도 있다.


스페이스가 여러개가 생기면 공간 선택의 어려움이 생길 수 있다. 이때 공간마다 레이블을 달아서 분류를 해줄 수 있다. 스페이스를 선택한 후 스페이스 설정 메뉴를 클릭하면 다음과 같은 화면을 볼 수 있다.

분류 메뉴의 [편집] 버튼을 클릭하면 해당 스페이스에 지정된 레이블을 볼 수 있다. 이 글에서는 여러 스페이스를 project 라는 레이블로 묶어볼 것이다. 다음과 같이 project라는 레이블을 입력 후 추가하기 버튼을 클릭한다.

다른 스페이스 설정에도 들어가서 project 레이블을 추가한다.

이제 공간 > 모든 스페이스 보기 메뉴를 선택한다.

이제 분류 영역에 Project 라는 레이블이 추가된 것을 볼 수 있다. Project를 텍스트를 클릭하면 Project 레이블을 설정한 두개의 스페이스 공간만이 출력되는 것을 볼 수 있다.


문서 계층화 하기
오픈소스 위키 소프트웨어들은 문서 계층화 처리가 까다롭고 불편하다. 미디어위키도 WYSIWYG 기능은 본문 편집만을 제공할 뿐이다. 하지만 컨플루언스는 간단히 문서를 드래그하는 것만으로 문서간의 계층 구조를 재설정할 수 있다. 다음 이미지 처럼 문서를 클릭해서 원하는 계층으로 쉽게 옮길 수 있다. 미디어 위키의 서브 페이지로 계층 구조를 만들면 상위 페이지가 삭제될때 하위 페이지가 모두 삭제되므로 삭제 전에 모두 페이지를 이동 시켜줘야 하는 지리한 작업이 필요하다.


문서를 라벨별로 분리
문서를 트리 형태의 계층 구조로 만들면 문서간의 부모 링크가 1개만 가질 수 있다. 하지만 어떤 문서들은 부모를 두개 이상 가져야 하는 그래프 형태의 구조가 필요할 수 있다.

예를 들어 내가 만든 Blog and youtube라는 스페이스에 존재하는 “블로그 및 유투브 포스팅 관리 방안” 이라는 문서가 있다. 이 문서는 콘텐츠 제작 방법이라는 문서의 자식이다. 그리고 “공부 호르몬” 이라는 문서가 있다. 해당 문서는 Posting drafts라는 문서의 자식이다.
이렇게 다른 문서의 하위에 존재하는 문서들을 또다른 주제로 그룹을 지어서 보고 싶다면 어떻게 해야할까?


이때 사용해야 하는 기능은 문서 라벨링 기능이다. 앞서 스페이스를 라벨로 분류하는 것을 보았을 것이다. 컨플루언스는 문서끼리도 라벨로 분류할 수 있다. 먼저 문서 편집 메뉴를 선택한 다.

그리고 화면 오른쪽 상단 상세 메뉴를 선택 후 “레이블 추가” 버튼을 선택하면 해당 문서의 레이블을 설정할 수 있다.

예제로 든 문서 두개 모두 “weekly_reading” 이라는 레이블을 설정한 후 추가 버튼을 누러 레이블을 설정한다. 그리고 출판 버튼을 클릭하여 문서를 저장한다.

레이블을 추가하면 문서의 하단에 다음과 같이 레이블이 출력된다.

해당 레이블을 클릭하면 이문서의 스페이스에서 같은 레이블이 설정된 문서들의 리스트가 모두 출력된다.

레이블은 여러 스페이스에 걸쳐 모든 문서에 설정 가능하다. 만약 모든 스페이스에서 해당 레이블이 설정된 문서를 보고 싶다면 화면 오른쪽 상단의 메뉴를 선택 후 “모든 공간의 콘텐츠를 확인합니다” 설정을 선택해주면 된다.

문서의 레이블 목록은 컨플루언스에서 따로 메뉴가 존재하지 않는다. 문서마다 레이블을 클릭해서 검색하는 것은 불편하기 때문에 자주보는 레이블은 URL을 복사해서 댜음 그림과 같이 스페이스 메인 페이지에 추가해 놓는 것이 좋다.

아니면 메인 페이지에서 Vie more를 선택해서 레이블 매크로를 이용해 레이블 목록을 출력할 수도 있다.


다음은 레이블 목록 매크르롤 이용하여 현재 스페이스에 쓰인 레이블 목록을 출력한 것이다. 수동으로 URL을 넣어주는 것보다 이 방법을 추천한다.

결론
쓸만한 상용 위키 서비스가 없어진 지금 컨플루언스의 존재는 안도의 한숨을 내쉬게 한다. 쉬운 유지보수가 가능하고 강력한 권한 기능을 갖추없으며 마음만 먹으면 플러그인을 만들어 확장도 가능하다. 무엇보다 컨플루언스는 강력한 분류 기능을 지원한다. 기업에서 사용할 경우 많은 수의 문서가 만들어져도 이를 이용하면 관리가 가능하다.