36
오픈소스를 사용하고, 준비하는 개발자를 위한 가이드 황은경(violet.blue) kakao corp.(OSA)

오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

오픈소스를��사용하고,�준비하는��개발자를�위한�가이드

황은경(violet.blue)�kakao�corp.(OSA)

Page 2: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

“FOSS��(Free�and�Open�Source�Software)�저작권자가�소스코드를�공개하여�누구나�자유롭게��사용,�수정,�재배포�할�수�있는�자유로운�소프트웨어

“�If�I�have�seen�further�it�is�by�standing�on�the�shoulders�of�Giants�”�

- Isaac Newton

Page 3: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

/*��*�Copyright�(c)�1995,�2008,�Oracle�and/or�its�affiliates.�All�rights�reserved.��*��*�Redistribution�and�use�in�source�and�binary�forms,�with�or�without��*�modification,�are�permitted�provided�that�the�following�conditions��*�are�met:��*��*���-�Redistributions�of�source�code�must�retain�the�above�copyright��*�����notice,�this�list�of�conditions�and�the�following�disclaimer.��*���-�Redistributions�in�binary�form�must�reproduce�the�above�copyright��*�����notice,�this�list�of�conditions�and�the�following�disclaimer�in�the��*�����documentation�and/or�other�materials�provided�with�the�distribution.��*���-�Neither�the�name�of�Oracle�or�the�names�of�its��*�����contributors�may�be�used�to�endorse�or�promote�products�derived��*�����from�this�software�without�specific�prior�written�permission.��*��*�THIS�SOFTWARE�IS�PROVIDED�BY�THE�COPYRIGHT�HOLDERS�AND�CONTRIBUTORS�"AS��*�IS"�AND�ANY�EXPRESS�OR�IMPLIED�WARRANTIES,�INCLUDING,�BUT�NOT�LIMITED�TO,��*�THE�IMPLIED�WARRANTIES�OF�MERCHANTABILITY�AND�FITNESS�FOR�A�PARTICULAR��*�PURPOSE�ARE�DISCLAIMED.��IN�NO�EVENT�SHALL�THE�COPYRIGHT�OWNER�OR��*�CONTRIBUTORS�BE�LIABLE�FOR�ANY�DIRECT,�INDIRECT,�INCIDENTAL,�SPECIAL,��*�EXEMPLARY,�OR�CONSEQUENTIAL�DAMAGES�(INCLUDING,�BUT�NOT�LIMITED�TO,��*�PROCUREMENT�OF�SUBSTITUTE�GOODS�OR�SERVICES;�LOSS�OF�USE,�DATA,�OR��*�PROFITS;�OR�BUSINESS�INTERRUPTION)�HOWEVER�CAUSED�AND�ON�ANY�THEORY�OF��*�LIABILITY,�WHETHER�IN�CONTRACT,�STRICT�LIABILITY,�OR�TORT�(INCLUDING��*�NEGLIGENCE�OR�OTHERWISE)�ARISING�IN�ANY�WAY�OUT�OF�THE�USE�OF�THIS��*�SOFTWARE,�EVEN�IF�ADVISED�OF�THE�POSSIBILITY�OF�SUCH�DAMAGE.��*/��

/**�The�HelloWorldApp�class�implements�an�application�that�simply�prints�"Hello�World!"�to�standard�output.�*/

class�HelloWorldApp�{�����public�static�void�main(String[]�args)�{���������System.out.println("Hello�World!");�//�Display�the�string.�����}�}

“코드를�사용하면서�출처를�밝히는�것은��개발자의�의무사항”

License,�copyright�유지

기본적인�의무사항

Page 4: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

Open�Source�License�구분

Public�Domain

free�for�all

MIT�/�X11

BSD-New

Apache�2.0

GPL�2

AGPL�3

LGPL�2.1+

LGPL�3�or��LGPL�3+

MPL�1.1

GPL�3�or�GPL�3+

GPL�2+

keep-on share-alike Network�Protective

LGPL�2.1

Page 5: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

• 소스코드를�공개하지�않아도�되는�대표적인�라이선스�• 저작권�명시(고지문)�• 적용�사례�:�Nginx(The�BSD�2-Clause�License)

• MIT에서�해당�대학의��SW�공학도들을�돕기�위해�개발한�라이선스�• 라이선스�및�저작권�명시(고지문)�• 적용�사례�:�부트스트랩�,�Angular.js,�Backbone.js,�jQuery�

• 아파치�재단의�모든�SW에�적용되는�라이선스�• BSD�의무사항�+�특허권(GPL2.0으로�배포되는�코드와는�결합�불가능)�• 적용�사례�:�안드로이드(v2.0),�하둡(v2.0)

일반적으로�사용하는�라이선스�

Apache

BSD

MIT

Page 6: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

• 수정한�소스코드�LGPL로�공개�(Static�Linking�으로�사용하면�전체�코드�공개)�• 라이선스�및�저작권�명시�• 적용�사례�:�모질라�파이어폭스(v2.1)�

• GPL�소스코드를�이용한�소프트웨어�전체�GPL로�공개�• 라이선스�및�저작권�명시�• 적용�사례�:�리눅스�커널(v2.0)�

• AGPL�소스코드를�이용한�소프트웨어�전체�AGPL로�공개.�웹서비스�포함!�• 라이선스�및�저작권�명시�• 적용�사례�:�몽고DB(v3.0)��■�Database�Server�and�Tools�:�AGPL�3.0�■�Drivers�:��Apache�2.0

LGPL

GPL

주의해야�할�라이선스�

AGPL

Page 7: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

personally

외부�배포�O

public

3rd�party

외부�배포�X

private내부�전용

바이너리

웹�서비스

소스코드

판매

AGPL�:�웹서비스도�적용�된다고�명시

라이선스�적용�범위�

Page 8: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

➺�오픈소스�소프트웨어의�배포의�개념?�

“소스코드�및/또는�바이너리�(실행)�코드의�카피를�다른�사람에게�제공하는�행위(to�give�someone�else�a�copy�of�its�code�—�either�its�source�code,�or�its�binary�(executable)�code,�or�both)”��

[출처]�Open�Source�Initiative�(https://opensource.org)

XX�소스코드야 땡큐~

배포 !

USB

Page 9: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

✓모바일앱의�성장�✓전�세계�공개SW�단체에�의한�모니터링�✓오픈소스�증가�->�저작권자�증가

오픈소스�Compliance��이슈�증가�

Page 10: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

Free�Software�Foundation�GNU��프로젝트�운영�및�Free�SW�배포/관리�OSI�(Open�source�Initiative)�OSS�라이선스�인증�관리�GPL�Violations�GPL�라이선스�기반의�저작권�보호�및�소송지원�단체�SFLC�(Software�Freedom�Law�Center)�OSS�개발자를�위한�법적�자문기관

기타�:�Linux�Foundation,�FOSS,�OIN(Open�Innovation�Network),�국내�OSSF�등

OSS�대표�단체�

Page 11: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

• SW는�SW에�관한�지적재산권에�의해�보호�받고�있는데,�원칙적으로�저작권자만이�해당�SW에�대한�독점�사용�권리를�갖는다.��

• �라이선스(License)는�이러한�독점�사용�권리에�대해�SW�개발자와�사용자간의�이용방법�및�조건의�범위를�명시한�대여�규칙을�정의해�놓은�사용�허가권(License)으로�대여의�방법은�유료�및�무료로�구분된다.��

Software의�지적재산권과�라이선스�

오픈소스�사용자는�라이선스를�준수해야�할�의무가�있습니다.�

Page 12: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

형사처벌 판매금지와�손해배상 소스코드�공개

기업�이미지�손상

저작권법

Page 13: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

라이선스�분쟁�

Page 14: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

Xiaomi:�MIUI�/�리눅스�커널�기반�GPL�코드�포함�(2014년)�

해당�소스�코드�공개�-�2015.3.31��

스카이프�리눅스�전화단말기�'WSKP100’�:�리눅스�커널�코드�사용�(2007년)�소스코드�공개�및�벌금�지불�판결�유통�업체에게도�GPL위반�책임.�본국이�아닌�다른�나라에서�소송/판결�

엘림넷�v.�하이온넷:�영업비밀침해와�VTUND�(GPL)�(2005년)�

엘림넷에서�VTUND�를�기반으로�개발한�ETUND를�하이온넷에서�HL로�개작�및�상용화 엘림넷은�영업비밀침해에�대한�고소,�FSF와�GNU는�저작권법�위반�경고�▶�소스�코드�공개

Page 15: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

Google,�Oracle�자바�소송�

❄ Google이�Android�에�java�api�37개�사용�❄ Oracle이�특허�및�저작권�침해�10조($90억)�손해배상�소송�❄ History�

○ 2012년�1심�:�API�저작권�인정하지�않음�○ 2014년�항소심�:�API�저작권�인정�○ 2015년�연방대법원�:�API�저작권�인정�확정,�공정이용�여부�확인을�위해�1심으로�돌려�보냄�○ 2016년�1심�:�공정이용�판결�○ 2018년�항소심�:�공정이용�아니다�구글�배상하라고�판결

Page 16: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

VMWare,�리눅스�개발자�소송�

❄ VMWare:ESXi에�리눅스�커널�코드�사용�❄ 일반�개발자(크리스토프�헬비그)가�고소�진행,�오픈소스�관련�단체�지원�❄ 지난해�8월�함부르크�지방법원은�소송�기각�결정�

○ ESXi의�Vmklinux�에서�사용중으로�소스�코드�제공하고�있음�-�GPL�준수�○ Vmkernel�에는�사용되지�않음�○ Vmklinux와�Vmkernel�의�결합방식은�다루지�않음�

❄ 크리스토프�헬비그는�항소를�밝힌�상태

Page 17: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

❄ 라이선스�소송은�본국이�아닌�다른�나라에서도�가능�❄ 미국법원에서�오픈소스�라이선스가�집행력�있는�계약임을�인정�❄ 손해배상은�침해로�인해�내가�얻지�못한�이익+침해자가�얻은�이익�등을�고려해서�결정�❄ 상용화를�포함한�라이선스�채택은�저작권자의�고유�권한

➺�다중�라이선스(Multi�License)?��- 하나의�코드를�2가지(dual�license)혹은�그�이상의�라이선스로�배포하는�형태�- 저작권자가�선택�사항으로�독자적인�유료�보증�설정

라이선스�분쟁�이슈�체크�

Page 18: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

GPL�사용�=�GPL로�소스�코드�공개�GPL을�사용한�프로젝트를�배포한�경우�그�프로젝트의�전체�소스코드를�공개해야�함�✼�AGPL은�네트워크로�연결되어�연동되는�프로그램의�전체�소스코드�공개(웹서비스도�공개)�

GPL2.0�+�Apache2.0�=�배포�불가능�프로젝트에�GPL2.0과�Apache2.0�오픈소스를�같이�사용했다면�배포할�수�없음�Apache2.0의�특허�보복�조항을�GPL2.0에서는�보장하지�않아�라이선스�충돌(양립불가능)�※�특허�보복�:�사용자가�특허�소송�제기시�라이선스�종료(사용불가)되고�사용료�청구�

LGPL2.1�+�Apache2.0�=�결합방식에�따라�배포�불가능�할�수�있음�LGPL2.1도�특허�보장하지�않으므로�라이선스�충돌(양립불가능)�라이선스의�적용�범위에�따라�LGPL2.1을�사용한�코드가�Apache2.0�오픈소스를�사용한��코드와는�독립적으로�사용(Dynamic�Linking)되고�있는�경우는�배포�가능�

GPL�알고�씁시다!�

Page 19: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

❄ 투명한�코드�>�가시성�확보,�책임감/능력�향상�❄ 커뮤니케이션�>�문서화,�이슈�생성,�커밋�로그,�거버넌스��❄ 기술�중심�>�코드를�중심으로�의사소통과�의사결정�❄ 개인�명성�>�소스�코드,�커밋�로그,�프로필�

http://rankedin.kr/users�http://rankedin.kr/repos��

❄ 다양성�보장�>�발견과�개선,�선택과�집중

오픈소스�공유�및�기여��

Page 20: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

라이선스�명시�라이선스를�명시하지�않으면�기본�저작권법이�적용되어�타인이�저작물을�복제,배포�할�수�없음�https://help.github.com/articles/licensing-a-repository/�(코드�사용시에도�라이선스가�없는�코드는�기본�저작권법�적용됨)�

사용한�오픈소스의�라이선스�의무사항�준수�사용한�오픈소스를�명시하고�해당�라이선스의�의무사항을�준수해야�함�

의무조항의�충돌로�함께�사용할�수�없는�라이선스가�있는지도�확인(Compatibility)��-�Apache2.0�,�OFL�등�차별조항이�있는�라이선스는�GPL2.0과�충돌�

적합한�라이선스�채택�사용한�오픈소스�라이선스와�호환되는�라이선스를�채택해야�함�(GPL�사용�=�GPL�배포)�자신의�오픈소스의�공유�목적에�맞는�라이선스를�채택� GPL은�사용제한을�할�수�없음

코드�공개�및�배포시�주의사항�

Page 21: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

카카오의��오픈소스�Guidance

카카오의��오픈소스�Guidance

Page 22: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

프로세스와�정책의�강제?�No!�

“오픈소스를�잘�사용하고,�오픈소스에�기여할�수�있도록�돕는다.”�

❄ 오픈소스�라이선스�확인과�고지문�발급�자동화,�효율화�❄ 오픈소스�프로젝트(코드�공개)�지원�❄ 오픈소스�사용현황�제공

오픈소스��Guidance�

Page 23: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

Hermes�

카카오의�오픈소스�관리�시스템

❄ Dependency�관리��❄ 고지문�발급�자동화�❄ Protex�연동�❄ OSS�DB�구축을�통한�검증�데이타�고도화

Page 24: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

Hermes

Dependency�분석

Protex��연동

OSS�매핑

SourceCSV

Legal Notice

Page 25: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

Target�Dependency�설정�파일,�내/외부�라이브러리�

Analysis�&�Mapping�Dependency�설정�파일�분석�고지될�OSS�로�매핑�

Remember�(Auto�Mapping)�분석/매핑된�대상�저장,�자동�매칭

Dependency�분석�

Page 26: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

dependencies {

implementation ‘com.google.code.gson:gson:2.8.1'

}

Name : google-goon URL : https://github.com/google/gson License : Apache License 2.0 Copyright : Copyright 2008 Google Inc.

build.gradle

Page 27: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

iOS_MacOperator

2%

Protex36%

Dependency62%

Operator1%

Protex38%

Dependency61%

Operator1%

Protex61%

Dependency38%

CommAndroid

OSS��확인�위치�

Operator1%

Protex43% Dependency

55%

Page 28: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

DB�kakao�OSS,�License�DB�구축�

Data�정합성�주기적인��Data�확인�및�개선을�통한�Data�정합성�

Automation�검증했던�OSS와�Dependency�자동�매칭���자동�매칭�비율,�자동�매칭�후보�등의�통계자료�확인�및�개선으로�자동화�비율�증대

검증�효율화,�고도화

Page 29: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

자동�매칭�비율

자동�매칭

0

20

40

60

80

100

(월) 1 2 3 4 5 60

25

50

75

100

(월) 1 2 3 4 5 6

dependency protex

자동�매칭�후보

신규�Device�프로젝트�검증시�대부분�수동�매칭됨

Page 30: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

카카오톡�Andriod,�iOS�각각�100개�이상�오픈소스�사용�고지

오픈소스�사용�및�고지

페이스북�250여개�사용�(2015년�기준)

Page 31: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

사용중인�오픈소스�약�1,700개�(2018년�8월�기준)�����

Page 32: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

6%6%

87%

1%

3%

7%

9%

20%

58%

Apache�2.0

License�Statistics�by�Device�

BSDMIT

Apache�2.0MIT

BSD

Apple�MIT

zlib

Android iOS

Page 33: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

github.com/kakao�

http://tech.kakao.com/opensource/

Page 34: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

1. 오픈 여부 승인 - 팀 리더 및 기술 직군 리더 승인

2. 사내 코드/라이브러리의 오픈 계획안 작성

3. 특허, 오픈소스 라이선스 확인 - 법무 + OSA 지원

4. 저장소 명칭(github.com/kakao/[reopository-name]) 확정 github.com/kakao > Private 저장소로 코드/라이브러리 이동

5. License 확정 - Apache 2.0 추천 Readme / CONTRIBUTING / CLA(Contributor License Agreement) 추가

6. 사용자/기여자와 커뮤니케이션 채널 준비, Company repository 팀 멤버 권한 조정

7. 오픈 (Private > Public 전환)

코드�공개�프로세스�

Page 35: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

Remind

오픈소스�출처�고지�및�copyright�유지�코드를�수정할�경우�코드의�출처를�유지하고�내�copyright�추가�

LGPL�<�GPL�<�AGPL�- 오픈소스�라이선스�의무사항�준수�(라이선스�감염�&�코드�공개)�- 코드�수정�- 라이선스�구매�

참고)�공개SW��포털,�OLIS�- 오픈소스�라이선스�가이드�문서�제공�- 오픈소스�라이선스��문의�- 사용한�오픈소스�라이선스�확인�(대상�:�국내�개인,�대학,�중소기업)

Page 36: 오픈소스를 사용하고,준비하는 개발자를위한가이드 › dn › if-kakao › conf2018 › %E1%84%8B%E1... · 2018-09-06 · 독점사용권리를갖는다. • 라이선스(License)는이러한독점사용권리에대해SW개발자와사용자간의이용방법및조건의

Thanks!�

ANY�QUESTIONS?