반응형

 


 

Open Source Project(오픈 소스 프로젝트) 그 자체 또는 그것을 이용한 제품(Project)를 보면,

Upstream(업스트림), Downstream(다운스트림)이라는 표현이 자주 보인다.

 

예를 들어, 아래와 같은 표현을 보자.

OKD는 Upstream 활동으로 만들어진 Open Source Project이고
OCP는 OKD에 대한 Downstream 활동으로 만들어진 Project이다.

Fedora는 Upstream Project이다.
RHEL 8은 Fedora의 Downstream 활동으로 만들어진 OS이다.
RHEL 9은 CentOS Stream의 Downstream 활동으로 만들어진 OS이다.

 

 

Open Source  Project는 Upstream, Downstream으로 이루어진다.

(절대적으로 이렇다는 것은 아니고, 대부분 활성화된 Open Source Project가 이렇다는 뜻이다)

 

Upstream은 그 Project의 Open Source Code에 직접 Contribution하는 것이고,

Downstream은 Upstream 활동으로 만들어진 결과물(Artifact)를 사용해보면서(즉, 테스트하면서) Feedback을 주는 행위를 하거나 자기 사업에 적용하는 행동을 의미한다.

 

 

Upstream, Downstream 활동을 요약해보면, 아래와 같다.

  • Upstream Activity
    • 요구 사항 분석(Requirement Analysis)
    • 설계(Design)
    • 구현(Implementation)
    • 문서(Document) 작성
    • 번역
    • Bug Fix
  • Downstream Activiry
    • Upstream Project에서 배포된 PKG 설치, 사용
    • 사용 후 Feedback을 Upstream Project(Community)에 제공
    • 본인 사업에 적용하여 운영
    • 사례 공유

위 내용은 사전적 정의라기 보다는 나의 주관이 쬐~끔 반영된 것이니까, 너무 찰떡 같이 받아들이지 않기를~~~

 


 

+ Recent posts