본 챕터에서는 오픈소스 컴플라이언스 프로그램의 구성 요소와 업무를 진행하면서 맞이하게 될 여러가지 도전 과제들에 대해 소개합니다.
구성요소 | 설명 |
---|---|
전략 | - 컴플라이언스 전략 - 문의 대응 전략 - 법무 전략 - M&A, 협력사 개발 전략 - 소프트웨어 획득 전략 |
정책 및 절차 | - 오픈소스 사용 정책 - 오픈소스 기여 정책 - 오픈소스 배포 정책 - 감사 정책 - 의무사항 준수 정책 |
구성원 | - 오픈소스 검토 위원회: 검증에 특화된 업무 담당 (법무 포함) - 오픈소스 집행 위원회: 오픈소스 사용, 기여 등 전반 담당 (본 업무 외에 파트타임 형태도 가능) |
툴 | - 코드 스캐닝 툴 - 프로젝트 관리 툴 - 결합 방식 분석 툴 - diff 검증 툴 - 바이너리 분석 툴 - BOM 관리 툴 - 웹 포탈 |
교육 | - 정규 교육: 회사의 규모와 오픈소스 사용 정도에 따라 교육 의무화 가능 - 비정규 교육: Brown Bag Seminar(점심 시간에 하는 캐주얼한 교육), 신규 입사 오리엔테이션 등 - 가이드라인 및 정책 |
자동화 | - 온라인 양식으로 오픈소스 사용 제출 - 온라인 양식 감사 - 개발자가 오픈소스 문의를 하거나 사용 승인을 받는 절차 |
기조 | - 사내 공식 커뮤니케이션 - 사외 공식 커뮤니케이션 - 내부/외부 웹사이트 운영 - 회사의 정책과 목표를 명확하고 일관성 있게 설명 |
산업 이니셔티브 참여 | - 오픈소스 커뮤니티에 참여 (SPDX, OpenChain 등) |
-
임원급에서 장기적인 지지가 필요함
-
간단하면서 효율적인 정책과 절차로 만들어야 함
-
모든 사람이 따라야 하는 기본적인 규칙을 만들어야 함
(예) 개발자 및 3rd 파티 개발사는 오픈소스 사용 목록을 작성해야 한다.
오픈소스 검증을 위해 아키텍처 구조를 공개해야 한다.
-
장기적인 목표는 완벽한 컴플라이언스를 만족시키는 것
-
장기 목표를 실현하기 위해 단기적으로 실행할 수 있는 요소들이 무엇인지 알아야 하고, 그 중 필수적으로 지켜야 하는 절차가 무엇인지 정해야 함
기업에서 가장 중요한 것은 제품이 제때에 런칭하는 것임을 잊지 말자!
- 컴플라이언스 검토 요청 시기 정하기
- 소스코드 스캔을 위한 주기 정하기
- 오픈소스 검증 프레임워크 정하기
- 기업에서 컴플라이언스 정책을 고수해야 함
- 지속적으로 소스코드 스캔하기
- 툴을 지속적으로 향상시키고 관리해야 함
-
임원급의 지지가 필요함
-
컴플라이언스 프로그램 개선을 목표로 현재 프로세스를 평가해보기
-
컴플라이언스를 의무화하고, 사내 교육하기
대기업의 경우, 사업부간 및 자회사까지 일관성을 확보하는 것이 중요하다!