GPL룰 위배되지 않는 범위에서 적용해야 … OSS대한 올바른 인지·전문가 양성 시급
상태바
GPL룰 위배되지 않는 범위에서 적용해야 … OSS대한 올바른 인지·전문가 양성 시급
  • 데이터넷
  • 승인 2007.12.10 00:00
  • 댓글 0
이 기사를 공유합니다

공개 소프트웨어
유행 아닌 필수산업으로 인식 ‘절실’
GPL룰 위배되지 않는 범위에서 적용해야 … OSS대한 올바른 인지·전문가 양성 시급

공개 소프트웨어(OSS; Open Source Software)는 해외 여러 S/W선진국을 비롯해 우리나라의 소프트웨어 산업 발전을 위한 하나의 기회요인으로 작용하고 있다. 이에 우리나라는 이 분야에 대한 지속적인 투자와 정책 보완을 추진해 나가고 있다. 이 같은 상황은 공개 소프트웨어가 하나의 유행으로서 끝나는 것이 아니라 소프트웨어 산업의 중요한 변인으로 자리 잡고 있다는 반증으로 볼 수 있다. 공개 소프트웨어가 각광받고 있는 이유는 비용, 보안, 그리고 종속에 대한 우려다. 특히 후진국에서는 공개 소프트웨어 사용은 지식 경쟁 사회에서 살아남을 수 있는 유일한 대안으로 인식되고 있다.
그간 여러 매체를 통해 수차례 소개됐던 공개 소프트웨어 도입 필요성에 대한 고찰은 잠시 접어두고, 공개 소프트웨어를 통해 소프트웨어 강국으로 발돋움할 수 있는 절호의 기회를 잡을 수 있는 방안을 살펴본다.
| 김나연 기자·grace@datanet.co.kr |

공개 소프트웨어(OSS)는 최근 다양화되고 세분화되고 있는 추세로, 대용량 고성능의 미션 크리티컬한 기업 환경에도 적응하고 있다. 그야말로 상용 IT 소프트웨어를 모든 면에서 대체함으로서 공개 소프트웨어를 중심으로 체계적인 기술 및 사업 생태계를 형성할 수 있는 기반을 마련하고 있다.
소프트웨어 제품에 있어서 설계도와 마찬가지인 소스코드를 공개하는 것은 일반적인 상식으로 이해하기 힘들수도 있다. 이는 당연히 많은 사람들에게 오해를 불러 일으켰는데 공짜로 이용할 수 있는 소프트웨어는 모두 오픈소스라고 생각하는 사람도 있고, 어떤 방법으로든 소스코드만 얻을 수 있으면 ‘오픈’된 소스라고 생각하는 경우도 있다.

오픈소스가 되기 위해 반드시 충족돼야 할 조건

1)소스 코드 제공(Source Code Access)
소스 코드 공개는 가장 기본적인 오픈소스의 정의라고 보면 된다. 여기서 소스코드는 프로그램 작성에 필요한 프로그래밍 언어의 소스 파일(C, C++, 자바 등)과 빌드를 위한 파일, 프로그램 데이터 등을 모두 포함한다. 따라서 소스 코드 공개 없이 단순히 소프트웨어를 자유롭게 사용할 수 있도록 배포한 프리웨어(Freeware)는 오픈소스의 범주에 포함되지 않는다.

2)수정 허용(Derivative Works) 및 자유로운 재배포(Free-Redistribution)
앞에서 언급한 조건만으로는 오픈소스의 정의가 성립되지 않는다. 오픈소스가 되려면 공개된 오픈소스를 수정하고 다시 배포할 권리 또한 함께 인정해야 한다. 원 저작물을 가공한 2차 저작물을 작성 및 배포할 권리를 인정하는 것이 오픈소스이다. 오픈소스의 철학은 소프트웨어의 발전을 진흥시키는 데 있으므로, 이러한 수정 및 재배포 권리는 필수적이다.

3)차별 배제(No Discrimination)
차별 배제는 오픈 소스를 이용함에 있어서 어떤 제약 조건도 두어서는 안 된다는 뜻이다. 대표적인 예가 상업적인 이용을 막는 것이다. 앞의 두 가지 조건을 모두 충족시키지만, 상업적인 용도의 이용을 막고 있다면 이는 오픈소스라고 볼 수 없다.

4)다른 소프트웨어에 대한 무제약(No Restrictions On Other Software)
대부분의 오픈소스 라이선스는 오픈소스 소프트웨어가 다른 상용 프로그램 내에 포함됐을 때 해당 상용 프로그램 역시 오픈소스가 될 것을 강제하지 않는다. 즉, 오픈소스 소프트웨어는 자신에 대한 라이선스만을 명시할 뿐, 이를 이용하는 다른 소프트웨어에는 어떤한 의무 사항도 부과하지 않는다. 이 조건에 대한 명시적인 예외는 GPL(GNU Public License)인데, GPL 소프트웨어를 포함한 소프트웨어는 모두 GPL이 돼야 한다. 이런 GPL을 다른 오픈소스 라이선스와 구분해 자유 소프트웨어(Free Software)라고 부른다.
오픈소스 소프트웨어는 GPL로 대변되는 자유 소프트웨어와 달리 기업 친화적인 요소가 많다. 특히, 오픈소스 정의 3, 4번 요소인 차별 배제와 다른 소프트웨어에 대한 무제약은 오픈소스 제품을 상업 제품에 적극 이용하도록 유도하고 있다. 이 정의에 따르면, 오픈소스 제품은 얼마든지 상업적 용도로 이용될 수 있으며, 기업이 오픈소스 제품을 사용하더라도 어떤 제약도 받지 않음을 의미한다. OSI(Open Source Initiative)는 오픈소스 라이선스에 대한 인증도 하고 있다.
오픈소스 사이트(www.opensource.org/licenses)에 가보면, 현재 OSI 정의에 부합되는 오픈소스 라이선스를 정리해두고 있다. 대표적인 라이선스로는 아파치(Apache), New BSD, GPL, LGPL, MIT, MPL, CPL 등이 있다.

개발자, ‘GPL 준수’ 등 양심 마인드 확립
기업 입장에서는 비용대비 도입 효과가 우수한 공개 소프트웨어 사용을 꺼릴 이유는 그리 크지 않다. 실제로 국내 대형 제조업체 내부의 65%가 공개 소프트웨어를 사용하고 있는 것으로 알려졌다. 그러나 이 같은 공개 소프트웨어는 단순히 무료로 사용하면 되는 것이 아니라, GPL 룰에 따라 라이선스가 지불돼야 하지만, 실상은 그렇지 않다는데 문제가 있다.
실제로 공개 소프트웨어의 문제점은 R&D센터에서 나온 수많은 연구 결과물에 대한 제대로 된 검증시스템이 없다는 것. 즉, 소스코드의 진위를 따질 수 있는지, 개발자가 직접 개발한 내용인지를 밝혀낼 수 있는 체계가 갖춰져 있지 않은 것이 사실이다.
현재 가장 많이 언급되는 공개 소프트웨어 라이선스는 GPL(또는 GNU)이다. GPL은 리처드 스톨만이 만든 것으로써, 그가 제공하는 소스코드의 자유가 다른 사람에 의해 남용되는 것을 방지하기 위한 방법으로 제작됐다. GPL은 ‘카피레프트’ 라이선스로서, 다음 그림은 소스와 소유권이 있는 소스간의 소스 구조와 소스의 흐름이 어떻게 고려돼야 하는지에 대해서 보여준다.
S/W업계 한 관계자는 “실제로 SI업체들의 납품물(개발) 을 살펴봤는데 14만개에 해당하는 공개S/W를 도용하고 차용한 경우가 많았다”고 지적했다.
그는 “오픈소스를 사용은 하되 그것을 상업화 하거나, 대가를 받는 프로젝트에 내놓는 것은 잘못된 것”이라며 “GPL 허가를 받아야 하고 어디서 가져왔는지 명기를 해야 한다. 공개 소프트웨어 사용상의 문제점은 마치 자기가 개발한 것인 양 살짝 수정해서 만든 다음 납품할 경우에 있다”고 덧붙였다.
실제로 공개 소프트웨어를 상업화하는 과정에서 발생한 재소사건이 빈번하게 일어나고 있다. GPL 기반 제품은 유통할 때, 사용자들이 소스 코드를 알 수 있도록 인터넷에 정보를 공개해야 하고, 해당 제품이 GPL 기반 제품이라는 것을 명시해야 하는데, 이를 지키지 않은 사례가 다수 발견되고 있다.
GPL을 위반한 사례를 감시하는 비영리단체인 ‘GPL-vio lator.org’는 소니 엔터테인먼트의 음반 4천만 장을 리콜 시켰다. 소니 엔터테인먼트는 저작권 보호 소프트웨어인 DRM을 공개 소프트웨어를 써놓고도 이를 명시하지 않는 등 GPL 룰을 위반했다는 것이 이유다.
이 외에 최근에는 인터넷전화 업체 스카이프가 GPL을 위반했다는 결정이 독일 지방법원에서 나왔다. 이번 결정은 GPL 위반에 대한 책임을 제조회사뿐만 아니라, 판매 및 서비스회사에도 물었다는 점에서 남다르다. 독일 법원(뮌헨)이 스카이프 독일 지사가 유통한 인터넷 전화용 송수화기 ‘SMCWSKP100’에 대해 GPL 위반을 판결을 내린 것은, 이 송수화기는 SMC라는 스페인 제조업체에서 펌웨어를 리눅스 기반으로 만들었고, 리눅스는 GPL2의 라이선스를 따르지만 이 제품은 결국 스카이프가 자사 제품으로 웹사이트를 통해 판매했으므로 라이선스 요건 충족 및 공개 등을 위반했다는 판결이다.
PMP, MP3P 등 휴대용 디바이스가 강한 우리나라도 그 안에 들어가는 많은 소소한 공개 소프트웨어들을 GPL 룰에 따라 명기해야 하는데, 간혹 이를 무시하고 재가공해서 상업용으로 출시한 사례가 있어 문제가 제기되기도 했다.
업계 한 전문가는 “실질적으로 기업에서는 공개 소프트웨어를 어떻게 사용해야 하는지 등을 명시한 특정 규정 수립이 미비한 실정이므로, 너무 쉽게 공개 소프트웨어를 상용으로 써버리는 모럴 해저드(moral hazard)에 빠져있다”고 비판했다.
이 같은 문제가 사회문제로도 비화될 수 있으므로 미국에서는 BLACK DUCK 등 몇몇 회사가 소스코드를 돌려보면 어떤 부분이 공개 소프트웨어에서 가져왔는지를 잡아내는 툴을 개발하기도 했다.
공개 소프트웨어의 단면에는 개발자의 순수 창의성을 배제시키고 이를 가져다가 상업적 득을 취할 수 있는 부분이 있으므로 이에 대한 룰과 가이드가 필요하다. 공개 소프트웨어의 모럴 해저드를 경계하고, 공개 소프트웨어의 특징을 악용해 득을 취하는 경우에 대비하기 위해 올바른 오픈소스 사용 가이드라인 확립이 시급하다는 것이 업계의 중론이다.
한편, 한글과컴퓨터 조광제 이사는 “불행하게도 몇몇 사람들은 GPL 소스코드를 수정한 경우, 수정한 코드도 반드시 GPL을 따라야만 한다는 의미로 GPL을 잘못 해석한다. 하지만 이것을 틀리다. 가장 좋은 예로 리눅스 운영체제를 들 수 있다”며 “리눅스 커널은 GPL을 따르지만 오늘날 GPL이 아니면서 리눅스에서 운영되는 많은 상업적 애플리케이션들(예로 오라클)이 있다”고 설명했다.

OSS 커리큘럼 마련에 ‘박차’
한국공개S/W활성화포럼(의장 고건 서울대 교수)은 일본공개S/W활성화포럼·중국공개S/W활성화연맹과 공동으로 한·중·일 공개S/W 공통 개발자 자격증 제도를 만들기로 하고 이를 위한 공개 S/W 모델 커리큘럼 개발에 들어갔다고 밝혔다. 고건 교수는 “시장과 전문 인력의 상관관계는 항상 맞물려 있다. 아무리 공개 소프트웨어를 도입하라고 권해도 전문인력이 없으므로 아직은 믿고 사용할 수 없다는 말이 나오고, 왜 전문인력을 육성하지 않느냐고 하면 공개 소프트웨어 수요가 여전히 적기 때문이라고 말하는 악순환 구조가 계속되고 있다”고 설명했다.
물론 S/W산업 자체를 발전시키기 위해서도 마찬가지겠지만, 이 같은 악순환을 타파하고 공개 소프트웨어를 제대로 활성화시키기 위해서는 전문인력 양성이 시급하다는 것이 고 교수의 설명이다.
이의 일환으로 동북아 공개S/W활성화 포럼에서는 한·중·일 공통 자격증과 커리큘럼을 마련하는데 공동으로 힘을 기울이기로 했다.
먼저 3국은 공개S/W 모델 커리큘럼 개발한다는데 초점을 맞췄다. 고건 교수는 “공개 S/W관련 공통 커리큘럼 제정이 궁극적 목표이고, 그 이전에 모델 커리큘럼을 마련하는 것이 선행과제”라며, “공개 소프트웨어에 대해 과연 대학에서는 무엇을 가르쳐야 할지 결정하는 것이 먼저다. 지금껏 시스템 관련 실습과목이 전무했던 것이 사실이었다. DB, 네트워크 등의 소스 자체가 공개되지 않으니 이론만 학습할 뿐 실습할 수 있는 기회가 전혀 없었다”고 꼬집었다.
고건 교수는 “그러나 공개 소프트웨어는 학교에서 시스템을 실습할 수 있는 기회를 가져왔다. 운영체제는 리눅스로, 네트워크는 아파치로, DB는 DB2 등으로 가능하다. 하지만 공개 소프트웨어 전문가 자체가 아직 없으므로, 교육기관에서 조차도 어디서부터 무엇을 얼마만큼 가르쳐야 할지 모델 커리큘럼을 만드는데 노력하고 있다. 국제 사회에서 공인된 강의요강이 나와야 이를 근간으로 공통 자격증도 만들 수 있다”고 덧붙였다.
한·중·일 공통 커리큘럼이 만들어지고 자격증이 생기면 개발자들은 공개 소프트웨어 분야에 보다 쉽게 접근하고 공부할 수 있어 전문가 양성을 위한 기반이 크게 확대될 전망이다. 이로써 공개 소프트웨어 분야 교육의 수준이 향상되는 것은 물론, 자격증을 소지한 전문가가 한·중·일 3국에서 자유롭게 취업할 수 있게 될 것으로 보인다.
한편, 국내에서도 최근 다양한 기술에 기반한 오프소스 프로젝트들이 가시화되고 있다.
다음커뮤니케이션(www.daum.net)은 국내 최초로 제주대학교 컴퓨터공학 전공 학생들을 대상으로 오픈소스 강의를 개설, 이번 2학기부터 강의를 진행하기 시작했다.
다음이 제주대에 개설한 오픈 소스 관련 강의는 해외에는 미국의 UC버클리, 오레곤주립대학, 포틀랜드주립대 등에서 진행된 사례는 있지만, 국내에서는 처음인 것으로 알려졌다.
이 밖에도 다음은 오픈 소스를 활용한 서드파티(외부협력업체) 개발자들을 위해 다음 ‘DNA(dna.daum.net)’ 사이트를 통해 다양한 활동을 펼치고 있다. 또한 개별 오픈소스 커뮤니티에 대해 서버호스팅도 지원하고 있다.
다음 관계자는 “국내 오픈 소스 사용자는 많으나 개발자는 부족한 현실을 극복하기 위해, 대학생들에게 오픈 소스의 기본기를 교육함으로서 미래 개발자 양성의 초석을 마련하고자 마련했다”고 밝혔다.

차별된 유지보수 요율 적용돼야
일각에서는 공개 소프트웨어에 대한 차별성을 인지하지 못하고 기존 패키지 소프트웨어 유지보수 기준인 요율제를 적용해 유지보수와 기술지원을 기반으로 하는 공개 소프트웨어 사업모델의 올바른 정착이 이뤄지지 못하고 있다.
업계 한 관계자는 “국내 S/W시장은 공개 소프트웨어에 대한 허술한 대가체제와 유지보수 서비스에 대한 대가지불이 인색한 상황이다”며 “공개 소프트웨어 자체의 특성과 비공개 상용 소프트웨어와의 차이점을 이해하지 못하고 비공개 상용 소프트웨어에 적용돼 왔던 상업적 관례를 그대로 답습하려는 경향이 확산돼 있는 것도 문제다”고 비판했다.
그는 또 “특히 도입 시스템 검토와 정보 시스템 개발 착수 단계에서 공개 소프트웨어를 무조건 거부하거나 막연히 의심하는 분위기도 큰 문제 중 하나다. 단적으로 금융계에서는 이메일 등의 시스템을 제외하고는 공개 소프트웨어가 들어간 사례가 거의 없는 것도 사실이다”고 덧붙였다.
공개 소프트웨어 유지보수 서비스의 가격체계는 공개 소프트웨어가 제품 표시가가 없는 것과 마찬가지므로 유지보수 가격 산정을 위해서 상용 비공개 소프트웨어와 같이 일률적인 요율을 적용시킬 수 없으므로 정액제를 적용한다.
또한 공개 소프트웨어 유지보수의 특징으로 설치된 순간부터 유료 적용이 된다. 그리고 하자보수 활동은 보통 공개 소프트웨어 유지보수 활동으로 간주되며 온라인 중심의 기술지원이 일반적이고 현장 기술지원은 별도의 서비스로 구분된다.
기술지원은 유지보수를 제공하는 방법으로써 서비스는 행의 자체가 대가 청구의 대상이 되며 유지보수 또는 기술지원과 별도로 계약된다.
공개 소프트웨어가 국내 소프트웨어 산업 육성과 소프트웨어 기술경쟁력 강화를 위한 핵심 수단이라는 막연한 기대감은 이제 버려야 한다는 것은 자명한 일임을 업계에서는 인정하고 있다. 실질적인 공개 소프트웨어의 실체를 이해하고 공개 소프트웨어가 우리 산업에서 제대로 활용되고 구체화 되는지 바로 지금 생각해 보고, 길을 마련해야 한다는 것은 모두가 인정하고 있는 사실이다.


댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.