OSBC, 오픈소스 준수과제 포스아이디로 관리

컴퓨팅입력 :2020/05/01 09:19

세계적으로 오픈소스 소프트웨어의 가치가 높아지고 있다.

구글, 아마존, 페이스북과 같은 대형 IT 업체가 다수의 제품을 오픈소스로 개방해 생태계 구축을 확대하고 해외를 중심으로 오픈소스 기업의 대형 인수합병(M&A)과 기업공개(IPO) 사례가 줄을 있는다.

그럼에도 불구하고 관리, 비용 등의 이유로 기업이 오픈소스 사용을 결정하기에 우려되는 점이 있다.

OSBC는 기업 내 오픈소스 도입을 위해 해결해야 할 과제를 출처관리, 속도, 비용 3가지로 정리했다.

OSBC

■ 정확한 출처관리(Accuracy)

오픈소스 컴플라이언스에 대한 체계적 관리의 필요성은 지속적으로 부각되고 있다.

2020년 KDB 미래전략연구소에서 발행한 오픈소스 현황자료에 의하면, 오픈소스 라이선스에 대한 인식 부족으로 인한 국내 저작권 위반 및 법적 검토 필요 대상은 약 37%에 달했다.

오픈소스 컴플라이언스 관리에서 첫 번째로 주의해야 할 사항은 소스코드의 원출처와 라이선스를 정확하게 식별하는 것이다. 두 가지 정보가 정확해야만 올바른 라이선스 의무이행 계획을 수립할 수 있기 때문이다.

이를 위한 검증작업은 대게 오픈소스 컴플라이언스 관리에 특화된 별도 도구를 통해 수행된다.

오픈소스 관리도구는 소위 지식베이스(Knowledge base)로 불리는 오픈소스 데이터베이스(DB) 보유 여부에 따라 일차적으로 구분된다. 단순히 DB의 보유 여부만으로 제공되는 데이터의 퀄리티를 판단하기는 어렵다.

지식베이스를 별도 보유하고 있는 관리도구도 해당 데이터베이스를 최신 상태로 유지해야 한다는 과제를 안고 있다.

최신 오픈소스에 대한 정보는 기업의 오픈소스 탐지에 직접적인 영향을 미칠 수 있으므로, 기업은 오픈소스 관리도구 선택 시, 지식베이스 업데이트 주기를 고려해야 한다.

대부분의 오픈소스 관리도구는 스니펫(오픈소스 코드 수정 및 일부 코드 사용) 검색을 지원하지 않으며, 오픈소스 컴포넌트 파일을 단순 복제하여 사용된 경우만 탐지가 가능하다.

이 경우 코드의 일부 혹은 변경 사용된 경우나, 독점 라이선스 코드와 함께 결합된 오픈소스 라이선스가 적용된 코드들을 발견할 수 없다.

오픈소스 관리도구는 하나의 코드에 서로 다른 라이선스를 가진 수백 개의 일치 항목을 제공한다. 관리자는 이중 하나의 원출처와 라이선스만을 선택해야 하므로, 숙련된 전문가가 아니면 오픈소스 관리도구 사용 자체에 어려움을 겪을 수 있다.

오픈소스 관리도구마다 제시하고 있는 다중 일치항목의 수와 방식은 다양하기 때문에, 기업은 각각에 배치된 인력 및 환경적인 요소를 고려해 기업환경에 가장 적합한 관리도구를 선택할 필요가 있다.

■ 소스코드 스캔속도

속도는 오픈소스 컴플라이언스 관리의 실현화를 위해 고려해야 하는 요소다.

수백 명의 개발자가 동시에 오픈소스를 사용하고 원출처를 관리한다고 가정했을 때, 방대한 양의 코드 속에서 오픈소스를 수동으로 식별하고 추적하는 것은 사실상 불가능에 가깝기 때문이다.

오늘날 기업이 고속으로 소스코드를 스캔하고 오픈소스를 탐지하는 전문도구를 도입하는 이유다.

■ 비용(Cost)의 효율적 활용

오픈소스 소프트웨어의 국내외 시장은 연평균 20% 이상 성장할 것으로 전망되지만, 기업이 오픈소스 컴플라이언스 관리를 위해 투입할 수 있는 예산과 인력은 한계가 있기 마련이다.

기업은 오픈소스 예산 고려시에 ▲오픈소스 관리도구의 연간 라이선스 비용 ▲오픈소스 관리도구 실행에 필요한 서버 하드웨어의 초기비용 및 유지관리 비용 ▲오픈소스 컴플라이언스 준수 인력을 포함한 모든 리소스 비용을 포함해야 한다.

OSBC는 오픈소스 관리를 위해 오픈소스 관리 도구 포스아이디(FOSSID)를 제안했다.

관련기사

포스아이디 개발 프로세스에 통합되어 전체 컴포넌트부터 코드 스니펫에 이르기까지 모든 단위의 오픈소스를 감지하는 최첨단 오픈소스 스캐너와 초당 70개 이상 파일을 분석하는 고속 스캔 엔진을 제공한다.

전 세계 최대의 지식 베이스를 보유하고 있어, 이를 토대로 라이선스 의무사항, 컴플라이언스 및 보안 이슈를 탐지해 기업이 더 좋은 제품 생산에 집중할 수 있도록 돕는다.