§3.4.1 산출물

1. 조항 개요

라이선스 의무를 이행하려면 실제로 고지문, 소스코드 패키지 등 컴플라이언스 산출물을 준비하여 소프트웨어와 함께 제공해야 한다. §3.4.1은 식별된 라이선스가 요구하는 컴플라이언스 산출물을 준비하고 공급 소프트웨어와 함께 배포하는 절차, 그리고 산출물 사본을 일정 기간 보관하는 절차를 수립하도록 요구한다. 이 조항은 §3.3 검토·승인 단계의 결과물을 실제 배포와 보관으로 연결하는 단계다.

2. 해야 할 활동

  • 라이선스별로 요구되는 컴플라이언스 산출물(NOTICES 파일, 소스코드 패키지, written offer 등)의 유형을 정의한다.
  • 산출물을 준비하여 공급 소프트웨어와 함께 제공하는 절차를 문서화한다.
  • 배포된 산출물의 사본을 일정 기간 보관하는 절차를 수립하고 문서화한다.
  • 산출물 보관 기간을 정책에 명시한다 (업계 관행: 마지막 배포 후 최소 3년).
  • 보관 절차가 올바르게 수행되었음을 입증하는 기록을 유지한다.

3. 요구사항 및 입증자료

조항 번호요구사항 (KO)입증자료
§3.4.1공급 소프트웨어에 대해 식별된 컴플라이언스 산출물을 생성하기 위한 프로세스가 존재해야 한다.3.4.1.1 식별된 라이선스가 요구하는 컴플라이언스 산출물을 준비하고, 이를 공급 소프트웨어와 함께 제공하기 위한 프로세스를 설명하는 문서화된 절차
3.4.1.2 공급 소프트웨어의 컴플라이언스 산출물 사본을 보관하기 위한 문서화된 절차. 이러한 절차가 올바르게 수행되었음을 입증하는 기록이 존재해야 함
영문 원문 보기

§3.4.1 Compliance Artifacts A process shall exist for creating the identified compliance artifacts for the supplied software.

Verification Material(s): 3.4.1.1 A documented procedure that describes the process under which the compliance artifacts are prepared and distributed with the supplied software as required by the identified licenses. 3.4.1.2 A documented procedure for archiving copies of the compliance artifacts of the supplied software - where the archive is planned to exist for a reasonable period of time since the last offer of the supplied software; at least 3 years is a common practice.

4. 입증자료별 준수 방법 및 샘플

3.4.1.1 컴플라이언스 산출물 준비 및 배포 절차

준수 방법

라이선스 의무에 따른 컴플라이언스 산출물을 준비하고 공급 소프트웨어와 함께 제공하는 절차를 문서화해야 한다. 이 절차 문서가 입증자료 3.4.1.1이다. 절차에는 ①산출물 유형 결정, ②산출물 작성, ③검토 및 승인, ④소프트웨어와 함께 제공, ⑤기록 보관의 단계가 포함되어야 한다.

컴플라이언스 산출물의 유형은 배포하는 라이선스에 따라 달라진다. 일반적으로 고지 의무 라이선스(MIT, Apache-2.0 등)는 NOTICES 파일이 필요하고, GPL 계열 라이선스는 소스코드 패키지 또는 written offer가 필요하다. 산출물 형태는 제품에 동봉, 패키지에 포함, 웹사이트 게시, 요청 시 제공 등 다양한 방식으로 제공할 수 있다.

고려사항

  • 산출물 유형 정의: 라이선스별로 어떤 산출물이 필요한지 미리 정의하여 배포 준비 시 빠르게 대응할 수 있도록 한다.
  • NOTICES 파일 품질: 모든 오픈소스 컴포넌트의 저작권 고지문과 라이선스 전문이 누락 없이 포함되었는지 검토한다.
  • 소스코드 패키지: GPL 컴포넌트의 경우 수정된 소스코드와 빌드 스크립트를 포함한 완전한 소스코드 패키지를 준비한다.
  • 제공 방식: 산출물을 소프트웨어에 동봉할지, 웹사이트에 게시할지, 요청 시 제공할지를 라이선스 요건에 맞게 결정한다.
  • 최종 검토: 배포 전 오픈소스 프로그램 매니저가 산출물의 완전성을 최종 확인한다.

샘플

아래는 컴플라이언스 산출물 준비 및 배포 절차 개요 샘플이다.

[컴플라이언스 산출물 준비 및 배포 절차]

1. 산출물 유형 결정
   - SBOM을 기준으로 포함된 라이선스 목록을 확인한다.
   - 라이선스별 의무에 따라 필요한 산출물을 결정한다:
     · 고지 의무 라이선스 → NOTICES 파일
     · GPL-2.0/3.0 → 소스코드 패키지 또는 written offer
     · LGPL → 동적 링크 구조 증명 문서 또는 소스코드

2. 산출물 작성
   - NOTICES 파일: 자동화 도구(FOSSology, ORT 등)로 생성하거나 수동 작성.
     컴포넌트명, 버전, 라이선스 전문, 저작권 고지문 포함.
   - 소스코드 패키지: GPL 컴포넌트의 수정된 소스코드와 빌드 스크립트 포함.

3. 검토 및 승인
   - 오픈소스 프로그램 매니저가 산출물의 완전성과 정확성을 검토한다.
   - 불완전한 항목은 수정 후 재검토한다.

4. 소프트웨어와 함께 제공
   - 제품 패키지에 동봉하거나 설치 시 표시되는 화면에 포함한다.
   - 웹사이트 게시 또는 요청 시 제공하는 경우 해당 URL 또는 절차를 명시한다.
   - written offer를 사용하는 경우 3년간 유효한 서면 약정을 포함한다.

3.4.1.2 컴플라이언스 산출물 보관 절차

준수 방법

배포된 공급 소프트웨어의 컴플라이언스 산출물 사본을 일정 기간 보관하는 절차를 문서화하고, 그 절차가 실제로 이행되었음을 입증하는 기록을 유지해야 한다. 이 절차 문서와 보관 기록이 입증자료 3.4.1.2다.

보관 기간은 해당 소프트웨어의 마지막 배포 시점으로부터 합리적인 기간이어야 하며, 업계 관행상 최소 3년을 권장한다. 보관 대상은 NOTICES 파일, 소스코드 패키지, written offer 사본, SBOM 등 배포 시 제공한 모든 산출물이다. 소프트웨어 버전별로 산출물을 체계적으로 관리하여 특정 버전의 산출물을 즉시 검색·제출할 수 있어야 한다.

고려사항

  • 보관 기간 명시: 정책 또는 절차 문서에 보관 기간(최소 3년)을 명시한다.
  • 버전별 관리: 소프트웨어 릴리스 버전과 산출물을 연결하여 버전별로 보관한다.
  • 보관 위치: 사내 파일 서버, 문서 관리 시스템, 소스코드 저장소 등 접근 가능하고 안전한 위치에 보관한다.
  • 보관 기록 유지: 어떤 버전의 산출물을 언제 보관했는지 이력을 기록한다.
  • 접근성: 감사 또는 외부 문의 발생 시 즉시 산출물을 제출할 수 있도록 검색 가능한 형태로 보관한다.

샘플

아래는 컴플라이언스 산출물 보관 기록부 샘플이다.

| 소프트웨어명 | 버전 | 배포일 | 산출물 유형 | 보관 위치 | 보관 기한 | 담당자 |
|-------------|------|--------|------------|-----------|-----------|--------|
| MyProduct | v1.0.0 | 2024-03-01 | NOTICES 파일, GPL 소스코드 패키지 | /archive/myproduct/v1.0.0/ | 2027-03-01 | 홍길동 |
| MyProduct | v1.1.0 | 2024-09-15 | NOTICES 파일 | /archive/myproduct/v1.1.0/ | 2027-09-15 | 홍길동 |
| FirmwareX | v2.3.0 | 2025-01-10 | NOTICES 파일, LGPL 소스코드 패키지, SBOM | /archive/firmwarex/v2.3.0/ | 2028-01-10 | 이인프라 |

5. 참고