Your SlideShare is downloading. ×
OSS and R&D
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Introducing the official SlideShare app

Stunning, full-screen experience for iPhone and Android

Text the download link to your phone

Standard text messaging rates apply

OSS and R&D

654
views

Published on


0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
654
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
10
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Copyright © 2012, Embedded Systems Lab, Hansung University, All rights reserved공개소스 소프트웨어, 소프트웨어 R&D 이민석한성대학교 컴퓨터공학과minsuk@hansung.ac.kr
  • 2. Open Source Software in • Open-source software (OSS) is computer software that is available in source code form: the source code and certain other rights normally reserved for copyright holders are provided under an open-source license that permits users to study, change, improve and at times also to distribute the software. • Open source software is very often developed in a public, collaborative manner. Open-source software is the most prominent example of open-source development and often compared to (technically defined) user-generated content or (legally defined) open content movements. • A report by the Standish Group states that adoption of open-source software models has resulted in savings of about $60 billion per year to consumers.Embedded Systems Lab., Hansung University 2
  • 3. 얼마 전, 조선 Biz no FUD anymore ! fear uncertainty doubt on FOSShttp://biz.chosun.com/site/data/html_dir/2012/04/27/2012042701328.html
  • 4. Open Source Definition from OSI• Free Distribution• Availability of Source Code• Derived Works• Integrity of the Author’s Source Code• No Discrimination Against – Person, Group, Field, Product opensource.org• Distribution of License• Coexistence with other Software Licenses 수정 후 같은 Example 대표적인 두 형태 License ? GPL O Linux Apache (BSD) X Android
  • 5. 공개 소스 소프트웨어 이용의 장단점 • 사용자 측면의 장점 – 소프트웨어 (라이선스) 확보, 관리, 배포에 따르는 비용이 저렴하다 – 소스 코드를 얻을 수 있다 • 소스 코드를 이용하여 원하는 뭐든지 할 수 있다 – 버그 수정, 성능 개선, 다른 응용에의 활용 • 소프트웨어 공급자의 스케줄에 얽매이지 않는다 • 공급자 측면의 장점 – 소프트웨어 개발 및 유지 비용이 감소한다 • Community가 잘 유지되면 • 사용자 측면의 단점 – 다른 사람의 IP를 위반할 가능성이 있다 OR – 내 IP가 같이 공개될 위험이 있다 • 공급자 측면의 단점 – 이제 우리 소프트웨어는 공공의 재산이다 – 정교한 BIZ 모델이 필요하다Embedded Systems Lab., Hansung University 5
  • 6. 공개 SW 라이선스의 위험 요소 • 라이선스 위반 ? – 소스 비공개, 저작권 삭제 변경, … • (실제 Case는 특허, 상표권,영업비밀 등등과 엮여서 복잡한 양상) • 누가 고발할까 ? – 저작자, 경쟁사 – 감시단체 (SFLC, FSF, GPL violations, KOSSLC, …) • 결과는 ? – 재무적 손실: 벌금, 손해배상, 합의금, 소송비용 – 비재무적 손실: 소스 공개(지적자산유출), 판매 금지, 공개 사과 • 대책은 ? – Open Source Governance • OSS Compliance와 OSS 자산화Embedded Systems Lab., Hansung University 6
  • 7. 공개 소스 소프트웨어의 개발 방식 * 최근엔 초기 개발도 완전 커뮤니티 방식으로 많이 진행Embedded Systems Lab., Hansung University 7
  • 8. 공개 소스 프로젝트 순환 구조 앞의 장점을 살리기 위해서는 뭐든지 공개 core group과 community가 같은 걸 봐야 한다 개발 Practice가 바뀌어야 한다.Embedded Systems Lab., Hansung University 8
  • 9. 공개 소스를 통한 수익창출 유형 • 배포판 소프트웨어 (Linux…) – Brand를 전파 (수익성은 거의 없음) • Dual 라이선스 정책 – GPL (for public) and Commercial License • 상용 사용자에만 로열티 부과 • 특허 – 소스는 공개하고 (저작권 포기), 특허를 라이선스 • 보완재의 판매 – 공개 소스 Platform 위에서 상용 소프트웨어 판매 – 공개 소스로 해결이 안 되는 부분의 소프트웨어 판매 • 컨설팅, 교육, 기술 지원 – 주요 지원 내용 : customizing for performance – Community를 통한 개발 • 블랙박스 – 하드웨어에 공개 소스 솔루션을 묶어서 판매 (요즘 서버 회사들) – 임베디드 시스템에서 매우 유용Embedded Systems Lab., Hansung University 9
  • 10. Open Source Software R&D 이슈들 : • Community와의 관계 (open, open, open, …) – 요구 분석 단계 – 개발 단계 • 모든 R&D를 공개 SW로 – 유지 보수 단계 할 수는 없겠죠 ? • Governance – 국방, – Process/Practice – 전략적 핵심 기술, … – License Issue • 예산 책정 • 선수도 필요하죠 ? • 중복 개발 – 기술도 있고, • 성공 여부 (성과 지표) – OSS Practice도 아는 • 기술 이전 및 지원Embedded Systems Lab., Hansung University 10
  • 11. 공개 SW 형 공공 R&D 추진 모델 R&D 사업 제도,예산 정부 발주 기관 개발비 지원 설립 개발 관리/평가 SW 프로세스 지원 공학센터 R&D 과제 등록 SW-Bank 공개SW 주관 기관 (Repository) 거버넌스 역량플라자 지원 협력 과제 후 등록 정보 관계 이전 지원 Community Industry 피드백Embedded Systems Lab., Hansung University 11
  • 12. 공개 SW R&D의 세 가지 방식구분 공개SW glue 방식 (AS IS) 공개SW 수정 방식 오픈 프로젝트 방식 ․기존 공개SW에 기능을 추가 ․기존 공개SW를 직접 수정하여 새로운 SW를 개발 ․해당 커뮤니티에서 새로운 SW를 개발 개념 ․폐쇄적(closed) 개발 ․폐쇄적(closed) 개발 ․개방형(Open) 개발 ․프로젝트 신설(새로운 커뮤니티 경우) ․기존 공개SW와 인터페이스 정립 ․적합한 공개SW를 선택하여 분석 ․새로운 기능의 동료검토 및 승인 필요개발활동 ․추가 기능은 자체개발 ․자체 개발 추가 기능을 선택된 공개SW에 통합 ․커뮤니티 정책에 따른 라이선스 ․추가SW의 새로운 라이선스 가능 ․라이선스는 선택된 공개SW의 라이선스를 따름 ․정해진 개발환경에서 개발 ․커뮤니티에 의한 (인력/비용 절감) ․추가SW에 대한 기술이전 가능 ․과제계획대비 내용, 일정 부합 지속적 결과물 유지 보수, 개선 장점 ․공개SW 활용으로 개발비용 절감 ․공개SW 활용으로 개발비용절감 ․동료검토를 통한 품질보증 ․개발자간 무한 경쟁 ․해당 커뮤니티와 중복 개발 가능 ․과제계획대비 내용, 일정 차질 단점 ․해당 커뮤니티와 중복 개발 가능 ․새 버전에 이식 문제 ․제한적인 기술이전 ․제한적인 기술이전 ․(영어) 문서 / 이메일로 수시 대응결과물 ․과제수행자가 선택 ․과제수행자가 선택 ․커뮤니티 사이트에 모든 활동/결과 공개공개장소결과물 ․문서 공개 ․문서 공개 공개 ․개발 환경/버그관리 시스템 제공 ․개발환경/버그관리 시스템 제공 ․오픈 프로젝트 활동으로 해결고려사항 ․버그수정 대응 ․버그수정 대응 비고 ․현재 활용되는 방식 전형적인 공개SW 개발 방식
  • 13. 성공 여부, 성과 지표, 그 이후 ? • 지금까지 모든 국가 R&D는 성공으로 완료 – OSS R&D도 당연히 그렇게 될 것임 – 그리고, OSS R&D 결과물은 더 잘 활용될 것임  OMM (OSS Maturity Model) 프로젝트의 성공은 Community로서의 지속가능성을 의미 • 지적재산권 – Open Source License, (방어적) 특허 (see OIN http://www.openinventionnetwork.com/) • 기술 이전 – 기술 이전 ? OK, 기술 이전료 ? Maybe NOT – 기술 지원료 ? OK (확장, 부가 SW, 진짜 지원) ?Embedded Systems Lab., Hansung University 13
  • 14. OMM (Opensource Maturity Model) 수준 포함된 평가 요소 PDOC Product Documentation STD Use of Established and Widespread Standards• QualiPSo QTP Quality of Test Plan 프로젝트 LCS Licenses ENV Technical Environment Basic DFCT Number of Commits and Bug Reports MST Maintainability and Stability CM Configuration Management PP1 Project Planning Part 1 REQM Requirements Management RDMP1 Availability and Use of a (product) roadmap Part 1 RDMP2 Availability and Use of a (product) roadmap Part 2 STK Relationship between Stakeholders PP2 Project Planning Part 2 Intermediate PMC Project Monitoring and Control TST1 Test Part 1 DSN1 Design Part 1 PPQA Process and Product Quality Assurance PI Product Integration RSKM Risk Management TST2 Test Part 2 Advanced DSN2 Design Part 2 RASM Results of 3rd party Assessment REP Reputation CONT Contribution
  • 15. What to do ?• 학교에서 – OSS and OSS Practice 교육 • Tools, Skill, Culture – Open하고 feedback 받고 • Capstone Design • R&D (as much as possible) – Community 참여 독려• 정부(연구소)에서 – 가능한 모든 걸 Open • data, source, docs – Open Source R&D• 기업에서 – Open Some Data, and see what happen – Open Some Source, and see what happen – Support Open Source as a CULTURE (mecenat …)
  • 16. Code for America • 공공성 서비스를 OSS로 개발 – Open311 API – 교통, 환경, 시장, 일자리, … • CfA Fellowship (개발자) – 35US$/11개월 + 교육, N/W, … – 5명 팀으로 프로젝트 운영 – Google Summer of Code internship • 11개 미국 도시 – Boston, Washington DC, Seattle, Honolulu, Austin, … • Donation from .. – Google, MS, Nike, LinkedIn, O’Relilly, …Embedded Systems Lab., Hansung University 16
  • 17. Reference • 정보통신산업진흥원 : http://www.nipa.kr – 인력 양성, Community 지원, OSS 확산 – 공개 SW 역량플라자 : http://www.oss.kr/ • OSS 관련 기술 지원, Test, 라이선스 검증 .. – 동북아(한중일) 공개SW 활성화 포럼 : http://www.neaossforum.org/ • WGs : 기술, 인력양성, 표준, 사업화 • 한국 공개 SW 협회 : http://www.kossa.kr/ – Open Source Learning Community : http://olc.oss.kr/ • 거의 모든 공개 SW에 관한 무료 강좌 • Linux, Tools, Java, C, Android, Eclipse, Spring, … – OSS World Challenge : http://project.oss.kr/ • 그리고 – github.com, code.google.com, sourceforge.net – http://dev.naver.com/projects/Embedded Systems Lab., Hansung University 17