Thursday, August 28, 2008

변화하는 ISIS의 리더쉽

글 네이트 플레스니스
ISIS 상임이사

오는 1월이면 저도 62세가 됩니다. 이는 저에게 변화를 모색하고 어떻게 해야 ISIS에 가장 적절하게 기여할 수 있을지 생각해봐야 하는 시간이기도 합니다. 우리는 우리가 함께 만드는 국제적 규모의 ISIS 네트워크를 자랑스럽게 생각해도 될 것입니다. 이정도 규모의 공조는 결코 흔치 않기 때문입니다. 전세계의 기관과 단체에서 국제적으로 이동이 잦은 동물들의 이동을 추적하고 복원 개체 수 정보를 파악하며 동물 관리 시스템을 공유 등 여러 가지 이유로 글로벌 ISIS 네트워크에 참여하고 있습니다.

제가 ISIS를 이끈 지도 벌써 오래 되었습니다. 처음 ISIS에 들어왔을 때는 ISIS가 수립된 지 5년 밖에 안됐고 직원도 단 두 명뿐이었습니다. 그리고 회원도 5개 국가의 85명뿐이었고 직원들 월급 주기가 힘든 적도 있었습니다. 하지만 지난 29년 동안 ISIS는 성장의 성장을 거듭하여 지금은 총 76개 국가의 800여 기관에서 함께하는 세계 최대의 동물학 관련 회원제 조직으로 거듭났습니다. 지금까지 어려움도 많았지만 회원 여러분의 성원과 지지에 힘입어 여기까지 올 수 있었습니다. 그리고 현재도 문제가 전혀 없는 것은 아니지만 지금까지 그래왔던 것처럼 무사히 해쳐나갈 수 있으리라 믿습니다.

원래 저는 집단 생물학, 동물원 데이터, 동물원 소프트웨어 개발 등이 전문이지만 ISIS의 규모가 커지고, ZIMS라는 초대형 프로젝트를 선도적으로 진행하면서 많은 문제에 부딪치게 되자 업무 영역도 변하게 되었습니다. ISIS가 성장하는 만큼 ISIS의 최고 책임자는 조직 개발과 관리에 역량을 집중해야 합니다. 최고 책임자는 ISIS 이사회를 도와 정책을 개발하고 복잡한 생물학 분야에 사용되는 최첨단 IT 기술을 관리해야 합니다. 그리고 여러 동물원/수족관을 비롯한 전세계 관련 협회와 더욱 강력한 파트너쉽을 형성하고 외부 기관과도 강력한 관계를 구축해야 합니다. 이 밖에도 마케팅, 모금 운동, 계약, 커뮤니케이션, 예산, 은행가와 브릿지론, 인적자원 정책 등을 모두 관리해야 합니다. 이는 모두 ISIS 최고 책임자가 필수적으로 수행해야 할 업무이며 저는 이보다는 제 전문 지식으로 기여할 수 있는 가능성이 있는 업무를 놓고 싶지 않았습니다.

이러한 이유로 ISIS 이사회의 집행 위원회와 저는 새로운 기술력을 바탕으로 ISIS의 새로운 시대를 열어나갈 새로운 리더쉽이 필요한 시점이라는데 의견을 같이했습니다. 그리고 제가 집단생물학자로서의 지식과 그간 ISIS에서 쌓은 경험을 바탕으로 새로운 자리에서 ISIS에 기여할 수 있다는 점에도 뜻을 같이 했습니다. 그래서 저는 ISIS의 상임이사 자리에서 물러나 과학자로서 새로운 역할을 수행할 예정입니다. 지금까지 전세계 동물학 관계자의 네트워크를 형성해 ISIS가 현재까지 발전하는데 일조할 수 있어서 감사하게 생각합니다. 이제는 저의 후임자를 돕고 ISIS의 뛰어난 서비스 네트워크를 지원하는데 최선을 다할 것입니다.

이제 새로운 지도자에게 이 자리를 넘겨주고 수많은 동물원과 수족관의 과학 기술을 통합하는 작업에 전념하면서 ISIS가 ZIMS를 개발하고 커뮤니티와의 약속을 지켜나가도록 도울 것입니다. 그리고 이제서야 오래 동안 미뤄왔던 휴가를 떠날 수도 있을 것 같습니다.

감사합니다.
네이트

Thursday, August 14, 2008

ZIMS 개발이 오래 걸리는 여섯 가지 이유

글 네이트 플레스니스
ISIS 상임이사

현재 ZIMS 개발에 왜 이렇게 오랜 시간이 걸리냐는 질문을 많이 받고 있습니다. 그래서 이번 포스트에서는 그 이유를 설명해보려고 합니다. 원래 블로그에서는 간단하게 핵심만 설명하는 것이 보통이지만 이번 글은 상당히 내용이 많습니다. 하지만 3분 정도만 투자해서 이 글을 모두 읽으면 ZIMS 개발에 시간이 오래 걸리는 이유를 이해하실 수 있을 것입니다.

사실 답은 간단합니다. ZIMS가 복잡하기 때문입니다. ZIMS는 그냥 복잡한 것이 아니라 매우 복잡합니다. ZIMS가 왜 복잡한지 아래 여섯 가지 이유로 설명하겠습니다. 이 중 IT 관련 사항은 하나고 나머지는 모두 동물원과 수족관의 사업 방식과 관련되어 있습니다.

1. ZIMS는 선도적인 프로젝트입니다. 지금까지 어디에서도 이런 작업을 시도해본 적이 없습니다. ZIMS는 통합된 표본(또는 단체) 정보를 온라인으로 실시간 제공하여 동물원과 수족관 커뮤니티에 필요한 정보를 유기적으로 연결하는 소프트웨어로 수의학 자료를 포함한 해당 표본(또는 단체) 기록은 해당 동물의 다음 소유자들이 계속 이어서 관리해 나갈 것입니다. 지금까지 이와 같은 시스템이 제작된 적은 없으며 ISIS는 ZIMS를 개발하기 위해 외부에서 도움을 받아야 했습니다. 물론 ISIS가 ZIMS 프로젝트를 마무리하겠지만 선도적인 프로젝트이기 때문에 그만큼 시간이 오래 걸립니다. 우리는 처음 ZIMS 작업에서 많은 것을 배웠습니다. 어려움도 많았지만 이 또한 배움의 과정이라고 생각합니다. 현재도 작업은 계속 진행 중이며 ZIMS가 완성되면 모든 ISIS 회원이 정보 기술을 선도할 수 있으리라 믿습니다.

2. IT – 기술적 이유: 소프트웨어 개발 프로젝트에서는 기본 아키텍처가 매우 중요하다고 하지만 실제로 기본 아키텍처를 똑바로 제작하는 프로젝트는 거의 없습니다. 집을 짓는 것처럼 최고급 재료와 인력을 투자하지 않고 싸고 빠르게 프로젝트를 제작할 수도 있습니다. 하지만 급하게 만든 주택은 결국 나중에 수리비로 더 많은 비용이 들어가기 마련입니다 그래서 ISIS는 첨단 아키텍처를 사용해 나중에도 효율적으로 시스템을 유지 관리하고 향상시킬 수 있도록 정도를 따르려고 합니다. “유지 관리”란 시간에 따라 변하는 동물원과 수족관의 요구 조건에 맞춰 시스템의 버그를 수정하고 새로운 기능을 추가해 업데이트 버전을 만드는 작업을 의미합니다. 우리는 장기적인 관점에서 최대한 비용 효율이 높은 결과물을 투자자와 회원, 그리고 최종 사용자에게 전달하기 위해 최선을 다하고 있습니다. 미리 투자해서 품질을 높이면 결국 나중에 빛을 보게 될 것입니다. 그래서 우리는 일반적인 소프트웨어보다 훨씬 높은 수준의 기본 아키텍처와 프로그램 코드를 요구하고 있습니다. 이렇게 높은 수준을 맞추려면 ISIS는 전반적인 품질 기준을 정하고 시스템과 코드 템플릿을 개발해 벤더에 전달하며 마지막에는 모든 상세 정보를 적극적으로 감독해야 할 것입니다.

3. ZIMS는 아무리 작은 기관의 요구 사항도 충실하게 반영하려고 합니다. ISIS 회원의 연간 예산 규모는 100,000 달러 이하부터 1억 달러 이상까지 다양합니다. 동물에 관해 매우 상세한 부분까지 기록하고 관리하기를 바라는 회원이 있는 반면 기본 정보만 사용하는 회원도 있습니다. ZIMS(및 ISIS)는 글로벌 네트워크를 형성하여 국경을 가로질러 이동하는 동물의 이동 경로나 가계의 역사를 기록합니다. 사실 언어 번역은 비교적 쉬운 부분으로 처음 ZIMS를 작업했을 때 약 일주일 만에 ZIMS를 일본어와 스페인어로 번역하기도 했습니다. 그래서 번역보다는 서로 규모가 달라서 필요한 부분과 동물 관리 방법도 다른 여러 회원을 모두 만족시키는 ZIMS를 설계하는 것이 훨씬 어려웠습니다.

4. ZIMS는 수족관에도 서비스를 제공할 예정입니다. ZIMS는 커뮤니티 최초로 복잡한 생명 유지 시스템을 관리하고 단체를 주도 면밀하게 추적하며 수족관 수질을 상세하게 감독, 관리하는 표준 시스템이 될 것입니다.

5. ZIMS는 매우 복잡한 소프트웨어지만 매우 쉽게 사용할 수 있어야 합니다. 처음 ZIMS 작업에서 전문가들로 구성된 약 500여명의 자원 봉사자가 소중한 아이디어를 다수 제공했지만 우리는 ZIMS 화면에 이들 아이디어를 반영하려면 반드시 사용자 인터페이스 전문가의 손을 거쳐야 한다는 점을 배웠습니다. 그런 교훈을 통해 일관적이고 사용하기 쉬우며 효율적인 화면이 탄생하게 되었습니다. (현재 진행 중인 파일럿 프로젝트에서 전문가들은 새로운 사용자 인터페이스를 몇 가지 개발해냈으며 이중 일부를 곧 공개할 예정입니다.)

6. ZIMS는 기존 데이터 표준을 10배 확장합니다. 데이터베이스가 거대하고 즉각적으로 접근 가능하다고 하더라도 데이터가 표준화되어 있지 않으면 쓸모가 없습니다. ZIMS는 기존 데이터 기준 30개를 포함해서 총 300여 가량의 데이터 표준을 만들기로 했습니다. 사용자들이 사용하기 쉽도록 강력한 데이터 표준(예: SNOMED)을 새로 만드는 것 또한 앞으로의 과제입니다.

ZIMS는 비전이 큽니다. 그러나 이 비전은 단순히 뜬구름이 아니라 상당히 현실적입니다. ZIMS는 매우 실질적이고 현대적인 방식으로 우리를 도울 수 있을 것입니다. ZIMS는 데이터 입력 및 기록 관리 시간을 절약하고 효과적으로 혈통 대장을 정리하는 등 직원들이 일상적으로 처리하는 수천 가지 잡무를 더욱 신속하고 효율적으로 처리할 수 있도록 도와줍니다. 그리고 매우 빨리 필요한 정보에 접속함으로써 위급한 상황에 대처해 동물의 생명을 구할 수도 있을 것입니다. 이들은 모두 동물원과 수족관에서 자체적으로 더욱 저렴하고 효과적으로 동물을 보호하고 관리하도록 지원하는 기능입니다.

비록 예상보다 오랜 시간이 걸린다고 하더라도 이들 모두는 작업할만한 가치가 높습니다. ZIMS는 기다릴만한 가치가 있는 시스템입니다.



Wednesday, July 30, 2008

지금까지 모든 것이 순조롭게 진행되고 있습니다.

글: 하산 사이드
ISIS 부국장

A-1 테크놀로지와 함께 진행하는 6주간의 파일럿 프로젝트가 반 정도 끝난 현재 모든 것이 순조롭게 진행되고 있습니다. 이 파일럿 프로젝트에서는 ISIS에서 제안한 ZIMS의 새로운 방법론과 ISIS와 새 벤더의 잠재적 작업 관계를 테스트합니다.

우리 팀은 현재 ZIMS의 기술 프레임워크를 제작하고 있습니다. 그리고 A-1팀에게 뛰어난 품질로 장기간 손쉽게 프로그램을 유지관리/업그레이드할 수 있는 ZIMS 페이지 코드 작성법을 구체적으로 전달하고 있습니다.

A-1은 아직 ZIMS 프로젝트를 함께 진행할 벤더로 선정되지는 않았음을 알려드리며 앞으로 새로운 소식이 있으면 업데이트하겠습니다.

Monday, July 14, 2008

폭포수 모델의 난해한 문제점 및 스크럼 마스터

글 제이미 마이어
ISIS 커뮤니케이션 전문가

일반인에게 소프트웨어 개발 방법을 설명하기란 결코 쉽지 않습니다. 소프트웨어 개발에는 소위 “코드”라 불리는 개발자들만의 비밀 언어가 사용되기 때문입니다. 그래도 이번에는 이러한 비밀 언어에 대해서 잠시 설명해보겠습니다.

소프트웨어 개발에 있어 폭포수 모델은 오래된 접근 법이라 할 수 있습니다. 일반적으로 폭포수 개발은 순서에 따라 모든 작업을 순차적으로 계획해 놓고 전체 어플리케이션을 개발하는 방식입니다. 따라서 일단 작업 시작되면 마치 폭포수가 떨어지는 것처럼 쉬거나 변경되는 일 없이 전체 어플리케이션 개발이 진행됩니다. 그래서 폭포수 모델은 일반적으로 상의하달식 경영 방식과 비교할 수 있습니다. 하지만 폭포수 모델은 난해한 문제, 즉 처음 계획 단계에는 예상하지 못했던 내부 모순적 문제로 인해 프로젝트 전체가 좌초될 수 있습니다. 소프트웨어 개발 과정에서 난해한 문제들이 발생할 가능성은 매우 높고 폭포수 방법에서 고객은 프로젝트가 최종 완료되고 나서야 소프트웨어가 작동하는 모습을 확인할 수 있습니다. 게다가 이 시점에는 이미 난해한 문제들이 치명적인 문제로 성장해서 되돌리기가 힘듭니다. (위 내용은 tucows.com에서 일부 발췌했습니다.)

ZIMS는 이러한 폭포수 방법의 문제점을 보완하고자 약 10년 전에 개발된 애자일 방법을 사용합니다. 폭포수 방법에서는 심도 깊은 사전 계획을 통해 난해한 문제점을 해결하려고 한다면 애자일 방법론에서는 아무리 철저하게 사전에 준비하더라도 작업 중에는 어쩔 수 없이 난해한 문제가 발생한다고 가정합니다. 따라서 애자일 방법에서는 개발자와 고객이 긴밀하게 공조하여 계획을 변경하고 우선 순위를 다시 정하는 등 유연하게 대처합니다. ISIS는 애자일 방법론 중에서도 스크럼 방식을 사용하고 있습니다. 스크럼은 선수들이 얼굴을 맞대고 전술을 대형을 짜는 럭비 경기에서 유래된 말입니다. 럭비 경기에서 스크럼은 몇몇의 선수들이 공을 중심으로 서로 어깨를 맞대고 밀고 당기면서 뭉친 진영을 가리키는 말입니다. 스크럼 방식에서는 단기간 집중적으로 작업해 눈으로 확인 가능한 성과물을 만들어냅니다. 그래서 마치 폭포수가 떨어지는 것처럼 전체 소프트웨어를 한 번에 릴리스하기 보다는 여러 단계로 나눠서 조금씩 릴리스하고 별도의 기능이 필요하면 이후 릴리스에 추가합니다. 전체 소프트웨어는 각 스크럼으로 나눠서 개발되고 매우 구체적인 고객의 요구 사항까지 반영하기 때문에 완전한 고객 승인을 얻을 수 있습니다. 이런 연유로 ZIMS도 여러 단계에 걸쳐 릴리스됩니다. (위 내용은 클레이그 머피의 “스크럼을 이용한 적응적 프로젝트 관리”에서 일부 발췌했습니다.)

스크럼 방식의 기본 요소 중 하나는 매일 수행하는 일일 스크럼 회의입니다. 우리는 중부 표준시 8:00 AM(뉴델리 시간 6:30 PM)에 일일 스크럼 회의를 갖습니다. 그리고 스크럼 방식의 다른 요소들과 마찬가지로 회의도 정확히 정해진 시간 안에서 이뤄집니다. 일일 스크럼 회의는 아래 세 가지 질문에 대해 모든 참석자가 가능한 간단하게 답하는 방식으로 진행되며 회의 시간은 15분을 넘지 않습니다.

어제 어떤 작업을 진행했나?
오늘은 어떤 작업을 진행할 예정인가?
오늘 작업 가운데 예상되는 문제점은 무엇인가?

스크럼 회의의 목표는 팀원들이 긴밀하게 공조하여 빠르게 작업을 진행하며 공동의 목표에 집중하도록 하는 것입니다. 스크럼 회의는 ISIS가 현재 진행하고 있는 집중 프로세스의 상징이라 할 수 있습니다. 이 프로세스가 제대로 작동하려면 스크럼 마스터라 불리는 강력한 지도자와 감독관이 필요한데 이번 프로젝트에서는 새로운 ZIMS 프로젝트 매니저, 앨빈 스미스가 이 역할을 담당하고 있습니다. 미네소타의 ISIS 사무실에서 근무하는 앨빈은 진행 속도가 빠르고 변경이 가능하며 유연하고 긴밀한 공조가 필요한 애자일 환경에서 공동 목표에 따라 모든 작업이 안정적으로 진행되도록 또한 팀원 중 누구 하나 길을 잃고 헤매지 않도록 관리 감독합니다.

Wednesday, July 2, 2008

ZIMS에서 가장 근사한 부분을 제작하는 ISIS 기술 팀

글 네이트 플레스니스
ISIS 상임이사

우리는 ZIMS 프로젝트에 애자일 개발이라는 새로운 방법을 선택했습니다.

이 새로운 프로세스에 따라 ISIS는 매일 진행되는 모든 작업을 직접 감독 관리할 것입니다. 보강된 ISIS 기술팀에서는 ZIMS의 “가장 근사한 부분”을 직접 제작하게 되어 책임이 커진 만큼 재미도 늘어났다고 할 수 있겠습니다. 새로운 벤더에서는 일반적인 소프트웨어보다 훨씬 수준 높은 코드를 작성해 달라는 ISIS의 요구에 따라 전체적인 사용자 인터페이스 기능 향상 등과 같이 기술적으로 좀더 포괄적인 부분을 담당할 예정입니다.

ISIS은 가히 최고 수준이라 평가할만한 개발팀을 보유하고 있어 새 벤더를 선정(아래 ZIMS 블로그 참조)하기 전에 이미 내부 팀에서 직접 ZIMS 프로젝트의 중요한 작업을 처리하기도 했습니다. 이들 주요 작업 중 하나는 데이터베이스의 단순화입니다. 이 작업을 구체적으로 설명하기는 힘들지만 원래 데이터베이스의 작동 방식은 지금보다 훨씬 복잡했습니다. 하지만 ISIS 개발팀과 컨설턴트는 기존 데이터베이스를 검토하고 평가한 후 그 복잡도를 반으로 줄였습니다.



이를 보면 왜 동물원과 수족관의 실제 작업 및 이들이 필요로 하는 사항을 잘 알고 있는 전문가가 ZIMS 개발에 참여해야 하는지 그 이유를 분명히 알 수 있습니다. ZIMS에서는 이들 커뮤니티의 영역별 전문가와 ISIS직원이 프로그래머 옆에서 함께 작업을 진행합니다. 그리고 이러한 접근법은 이번 개발 과정에서 이미 큰 차이를 만들어내고 있습니다.

Tuesday, July 1, 2008

인도에서 전합니다.

글 더그 베두즈코
ZIMS 수석 아키텍트

A-1과 함께 진행하는 파일럿 프로젝트의 6주 과정 중 벌써 한 주가 지났습니다. 이번 파일럿 프로젝트에서는 ISIS에서 제안한 ZIMS의 새로운 방법론과 ISIS와 새 벤더의 작업 관계를 테스트합니다. 우리 내부에서는 ISIS는 일반 고객과 성격이 다르고 ZIMS는 보기 드물 정도로 복잡한 프로젝트라는 사실에 익숙해져 있지만 외부인에게 ZIMS에 어떤 기능이 필요하고 지난 34년 간 ISIS에서 어떤 작업을 수행해 왔는지 설명하면 지금까지 이런 일은 본적이 없다며 깜짝 놀랍니다.

이번 주는 A-1팀에서 ISIS와 동물학, ZIMS 프로젝트, ISIS 팀이 구상한 ZIMS의 기술 아키텍처를 익히는 시간이었습니다. 네이트, 하산, 엘리자베스, 원레이, 크레이그, 리치, 김, 그리고 저까지 총 8명으로 구성된 ISIS 팀은 일주일 동안 오리엔테이션을 열어 A-1 팀에게 되도록 많은 정보를 전달했습니다. A-1팀은 훌륭한 질문을 많이 해주었고 이번 주는 매우 순조롭게 지나갔습니다.


앞으로 몇 주 동안은 A-1팀에서 ZIMS 화면을 직접 작성함으로써 이들이 시간과 노력이 많이 필요한 ZIMS 프로젝트를 수행할 역량을 갖췄는지 평가할 것입니다. 물론 A-1과의 업무가 잘 진행되길 바라지만 ISIS는 이번 작업 관계를 통해 우리의 요구 조건에 맞는지 신중하게 판단할 것입니다.

이번 주에 저희 8명은 미네소타에서 인도 구르가온으로 건너와 매우 바쁜 한 주를 보냈습니다. 실제 프로젝트가 시작하면 전 작업 기간에 걸쳐 ISIS에서 인도로 인력을 파견할 예정이라 이 부분도 이번 파일럿 프로젝트에서 확인해봐야 합니다. ISIS에서는 내부 개발자나 커뮤니티의 영역별 전문가들을 주로 파견할 것입니다. 그래서 앞으로 일년 동안 항공 마일리지가 엄청나게 쌓일 것 같습니다.

저희 팀은 가끔 업무로 인한 두통이나 위장병으로 시달리기도 했으나 이는 커뮤니티에서 원하는 수준의 ZIMS를 개발하기 위한 하나의 과정이 아닐까 싶습니다.

Tuesday, June 17, 2008

인도로 출발

하산은 아래 포스트를 통해 인도에서 A-1 테크놀로지와 함께 6주 동안 진행할 파일럿 프로젝트의 목적과 목표를 설명했습니다. 간단히 말하자면 이 파일럿 프로젝트의 목표는 세부 계획과 작업 관계를 시험하는 것입니다. 아래는 인도에 가서 A-1 테크놀로지와 함께 파일럿 프로젝트 진행할 명단입니다.

몇 주간 장기 체류할 인원:
하산 사이드
더그 베두즈코
리치 랑그레
크레이그 옐릭
원레이 팽
누리 스워드
엘리자베스 헌트

1주 가량 체류할 인원:
네이트 플레스니스
킴 헤이스팅스

일주일 후에 진행 상황을 업데이트하겠습니다.
네이트