(Case Study) Atlassian의 버그 추적기와 지식 관리 도구를 사용한 해양 과학 프로젝트



본사: 캐나다 빅토리아 대학교
직원 수: 30명
설립: 10년 전
제품: JIRA 및 Confluence

NEPTUNE Canada Murray Leslie

ROPOS – 심층 해양 과학 ROV

고객들이 버그 추적기와 공동 작업 소프트웨어를 사용하여 업무에 도움을 받는다는 사례를 들으면 Atlassian은 끊임없이 놀랍니다. 해양 과학 프로젝트, NEPTUNE Canada에서 JIRA와Confluence 모두를 사용한 경우도 그렇습니다.
밴쿠버 아일랜드에 기지가 있는 NEPTUNE은 인터넷에 직접 연결되어 있는 최초의 지역 규모 수중 해양 관측소로서, 예측할 수 없는 대형 선박이나 위성 데이터에 대한 의존도를 줄여줍니다. 본질적으로 이 프로젝트는 원격으로 해저를 탐색하고 전 세계 대학에서 모인 과학자들이 심해에서 실험할 수 있는 기회를 제공합니다. 수중 네트워크는 고속 광섬유 케이블을 통해 데이터를 전송하는 수많은 광범위한 하이테크 장비로 실시간 데이터를 수집합니다. 데이터는 프로젝트 본부의 혁신적인 시스템에 전송되고 보관됩니다. NEPTUNE Canada는 25년 동안 북동부 태평양 해저를 지속적으로 관찰하기 위해 설립되었습니다.
저는 NEPTUNE의 소프트웨어 품질 관리 담당인 Murray Leslie와 함께 Atlassian의 소프트웨어 개발 도구를 통해 목표를 달성하고 유지 관리하는 데 도움을 받은 방법에 대해 이야기를 나눌 기회를 가졌습니다. 이런 흥미진진한 프로젝트는 한 번도 들어본 적이 없던 터라 2008년에 NEPTUNE 프로젝트가 The Economist로부터 올해의 가장 의미 있는 5개 과학 프로젝트 중 하나로 선정되었다는 소식을 듣고서 매우 기뻤습니다. IRA와 Confluence 모두 NEPTUNE이 이 놀라운 성과를 달성하는 데 도움이 되었습니다.

인터뷰 내용

맡은 업무와 회사에 대한 간략한 소개를 부탁드립니다.

NEPTUNE Canada는 빅토리아 대학교에 위치해 있습니다. 우리 관측소는 밴쿠버 아일랜드 서부 해안가에 위치한 지역 케이블 관측소입니다. 이러한 종류로는 세계에서 최대 규모의 관측소이며 Oceans Network Canada의 자금 지원을 받고 있습니다. 워싱턴 DC에 본부를 둔 해양관측프로그램(Ocean Observatories Initiative, OOI)은 최근에 기금을 받고 앞으로 4~5년 동안 네트워크를 구축하려 계획하고 있습니다. 앞으로 OOI와 상호 협력할 수 있게 되기를 바랍니다. OOI의 wiki는 매우 개방적이고 그곳에서도 우리처럼 JIRA와 Confluence를 쓴다는 것을 알게 되었습니다.
OOI는 전 세계적으로 대서양 남부와 서부, 태평양 북동부에 해양 관측 시스템을 설치하고 유지 관리하는 몇 개의 프로젝트를 진행 중입니다. NEPTUNE Canada는 밴쿠버 섬 서부 해안에 위치하며 다른 OOI 프로젝트와 상호 협력하고 이것을 오레곤을 통해 워싱턴주까지 확대할 예정입니다. 따라서 최종적으로는 캘리포니아에서 알래스카까지 고래의 이동을 모니터링할 수 있을 것으로 전망하고 있습니다.
저는 여기에서 4년 정도 근무했고, 소프트웨어 및 품질 엔지니어링 팀에서 다른 2명과 함께 일하고 있습니다.

NEPTUNE에서는 JIRA를 어떻게 사용하고 있습니까?

3년 전에 Bugzilla에서 JIRA로 옮겼습니다. 우리는 소프트웨어와 관련 없는 문제 추적과 단순한 버그 추적을 다룰 수 있도록 다양한 워크플로를 확장하고 처리할 수 있는 제품을 원했습니다. 이 점이 JIRA의 큰 판매 포인트 중 하나였습니다. 다른 프로젝트는 평가하지 않았습니다. 회사의 수석 개발자 중 한 분이 JIRA를 사용하던 다른 회사에서 근무했었는데 기본적으로 그 분이 JIRA를 추천한 셈이죠.
JIRA는 역할이 다양한데 주된 목적은 버그 추적, 기능 요청, 요구 사항 관리 및 문제 추적입니다. 우리는 계기 장비를 위한 프로젝트, 데이터를 가상화하거나 계기 장비의 설정을 변경하려는 과학자들을 위한 다른 프로젝트도 진행하고 있습니다. 엔지니어링 과학 소장의 경우 이걸 전혀 다른 방식으로 사용합니다. 기본적으로 회의에서 발의된 행동 항목을 추적하고 후속 조처를 취하는데 사용합니다. 그쪽은 투명성과 조처 가능한 항목을 유지 관리하는 것이 중요하기 때문이죠.
우리에게는 현재 13개의 프로젝트와 103명의 사용자가 있습니다. 직원은 30명이지만 대규모의 과학자 및 연구자 커뮤니티에서 JIRA를 사용하고 있습니다. 우리는 JIRA와 Confluence를 사내, Java 기반 웹 응용프로그램인 데이터베이스 관리 및 보관 시스템(Database Management and Archiving System, DMAS)과 통합하려고 합니다. 그러면 우리가 도구를 다시 발명하지 않고도 사람들이 소셜 네트워킹 활동을 할 수 있습니다. 예를 들어, 과학자에게는 자기 프로젝트 또는 장비와 관련된 JIRA 티켓을 포함한 작업 공간이 주어집니다. 이 공간에서 Single Sign-On을 사용하여 한 번의 클릭으로 DMAS에 액세스하고 실시간 데이터를 사용할 수 있습니다. 따라서 이 모든 것이 합쳐지면 장비에 대한 일상적인 관찰뿐만 아니라 궁극적으로 공동 작업 워크숍이나 과학 논문 공동 출판까지 원활하게 경험할 수 있습니다.

애자일 개발 프로세스를 따르십니까?

우리는 애자일 개발 프로세스를 더 많이 사용하는 편입니다. wiki 소프트웨어에서 사용자 스토리를 개발한 다음 그것을 개별 티켓으로 쪼개서 신속한 반복 작업을 수행할 수 있도록 말입니다. 한 달에 두 번 릴리스하려고 합니다. 현재 GreenHopper는 사용하지 않습니다. 우리는 가치가 높은 기능을 조기에 제공하려고 합니다. 바로 이 점에서 JIRA와 Confluence는 우리에게 아주 유용합니다. 요구 사항을 wiki로 문서화하고 그것을 JIRA 워크플로로 쪼개고 개별 티켓을 만들고 해당 티켓을 프로그래머에게 할당합니다. 계기 장비/과학 측면에서 우리가 외부 사용자와 투명한 커뮤니케이션을 유지하면서 넘치는 이메일에 빠지지 않을 아주 유용한 방법이었습니다. ‘그 이메일 못 받았습니까?’ 또는 ‘이 논문의 최신 버전은 누가 갖고 있죠?’라는 말이 필요 없었죠. 우리는 사람들에게 Confluence 또는 DMAS의 리포지토리를 알려주어 이런 질문에서 벗어나려고 합니다.

다른 플러그인이나 통합 도구를 JIRA에 사용하십니까?

지금 현재는 LDAP 디렉터리가 Confluence 및 DMAS에 Single Sign-On으로 연결되어 있습니다. Confluence와 연동이 잘 되는 Java 기반의 Single-Sign-On 도구인 Jasig CAS를 사용합니다. JIRA와의 통합에는 LDAP와의 일부 레거시 문제가 있지만 JIRA 사용자가 우리가 사용하는 이런 응용프로그램이나 다른 것들에도 액세스할 수 있게 하려 합니다.

JIRA 사용을 고려하는 다른 과학 기구에 조언하실 말이 있습니까?

처음부터 Single-Sign-On을 고려하라고 말하고 싶습니다. 우리도 소프트웨어를 설정하고 운영하기 위한 계획이 많았습니다. 또한, JIRA와 Confluence는 서로 잘 작동하는 타고난 짝궁입니다.
JIRA와의 워크플로 아이디어는 다른 결함 추적 시스템과 정말로 차별화되는 부분입니다. 정말 훌륭한 부분입니다. 사용이 간편해요. 소프트웨어를 설치하고 가동하려면 대부분의 사람들이 약 10분 정도만 자습서를 익히면 됩니다. 관리 관점에서 저는 권한 변경, 새 그룹, 새 프로젝트, 구성 요소 생성이 아주 간편하다고 생각합니다. 저는 매뉴얼을 읽을 필요가 없다는 것을 소프트웨어의 성공 지표로 생각하는데, JIRA는 그런 면에서 정말 칭찬이 아깝지 않습니다.

Confluence는 어떻게 무슨 이유로 사용하게 되었습니까?

내부 wiki의 경우 아직까지 MediaWiki를 사용 중입니다. 도메인 외부 사람들은 별도의 VPN 없이는 여기에 액세스할 수 없습니다. 회사 웹 사이트를 확장하고 생성하기 시작했을 때 처음에는 dotCMS라고 하는 콘텐츠 관리 시스템을 사용했습니다. 아마도 wiki를 포함하는 공동 작업 도구를 포함하고 있었는데 좋게 말해서 마땅찮았습니다. 사용자가 간편하게 콘텐츠를 생성할 수 있는 다른 도구를 여기 저기 찾아보기 시작했습니다. 그러다가 JIRA를 사용해 본 경험 때문에 공용 지식 관리 도구용으로 Confluence를 사용하게 되었습니다.

Confluence의 주된 용도는 무엇입니까?

사용자 기여 콘텐츠에 주로 사용합니다. 개별 연구자를 위한 프로젝트 공간이 있습니다. 해양 과학용 소셜 네트워킹으로 Ocean 2.0이라고 합니다. 단순히 콘텐츠를 제시하는 것에서 탈피해서 공동 작업을 허용하자는 것이 목적입니다. 다른 사람들이 모르게 프로젝트에서 비공개로 공동 작업을 할 수도 있지만 우리는 프로젝트를 개방하도록 독려하고 있습니다. 아마 일종의 확장 활동으로 Facebook 타임라인(기존 담벼락)과 같은 것이라고 말할 수 있겠죠. 어떤 연구든 가능한 한 빨리 공개되기를 바랍니다. 어떤 콘텐츠는 웹 직원이 생성하고 다른 콘텐츠는 현장 연구를 통해 생성됩니다. 우리는 교사, 정책 연구자 같은 다른 사용자 그룹이나 기후 변화와 해양 지리학에 기반한 정책이나 결정에 관심이 있는 사람들의 참여를 유도하고 싶습니다. 또한, 현재 연구자들은 원하는 만큼 상세하게 만들 수 있고 원하는 대로 권한을 유지하거나 다른 사람이 공동 작업할 수 있도록 개방할 수도 있습니다
제가 사람들에게 이해시키기 위해서 언급하는 사용 사례는 이런 것입니다. '이메일 스레드가 계속적으로 반복되어 사람들이 여러 버전의 문서를 주고 받아야 하는 경우를 경험해 보셨습니까? 일곱 번쯤 반복하다 보면 아무도 누가 문서에서 뭘 고쳤는지도 모르는 상황이 되지 않습니까?’ 이건 모두가 겪었을 법한 사례인데 우리가 'wiki 스타일'을 만들고 우리 문서를 데이터 서비스에 올리면 모든 버전 관리가 이루어 질 수 있습니다.
Confluence에는 수백 명의 사용자가 있습니다. DMAS 사이트에는 6천 명 정도의 사용자가 있지만 그중 몇백 명만 Confluence 계정을 가지고 있습니다. 우리는 대학생, 관심있는 당사자와 주요 연구자에 대한 액세스를 제한하려 합니다.
기존 dotCMS 도구의 공동 작업 도구는 우리가 기대한 바에 못 미쳤습니다. 그래서 Confluence로 변경하였고, 새로운 기능을 추가하지는 않았지만 새 페이지를 쉽게 작성하고 새 콘텐츠를 쉽게 작성하고 문서에 대한 버전을 관리하고 JIRA & DMAS 프로젝트로 다시 링크를 거는 작업을 지금까지 1년간 진행했습니다.

Confluence를 고려하고 있는 다른 연구 기관에 하실 조언이 있습니까?

Confluence는 원하는 대로 스킨을 적용할 수 있습니다. 스킨을 적용해서 wiki인지도 모르게 꾸밀 수 있습니다. 그리고 스타일 시트를 정말 잘 아는 개발자가 있어야 합니다.

마지막으로 하실 말은 무엇입니까?

저는 대부분의 사람들이 사회적 상호 작용 콘텐츠를 위한 웹 2.0 기술의 가치를 알고 있다고 생각하고 이 기술을 과학 지향적인 웹 사이트에 적용하려 합니다. 사람들은 데이터를 찾고 다른 연구자와 상호 작용하고 직관적이고 자연스러운 방식으로 공동 작업할 단순한 도구가 필요합니다. 문서 관리, 공유 작업 공간, Confluence, JIRA, Skype 같은 타사 도구의 사용이 소셜 웹으로 우리 회사가 성장하는 데 도움이 되었습니다. 이게 맞는 방향이고 가까운 장래에 좋은 결실을 맺으리라 생각합니다.

댓글

이 블로그의 인기 게시물

시스템에 숨어있는 "윤초" 버그에 대해 준비하십시요

Confluence 내의 스프레드 시트 기능이 필요하시다면 애드온을 활용해 보십시요

Confluence 페이지의 분류와 관련된 잘 몰랐던 기능 3가지를 확인해 보십시요