오픈소스의 이해

2,936 views

Published on

오픈소스 구성 요소, 오픈소스 생태계, 오픈소스 라이선스

Published in: Technology
3 Comments
12 Likes
Statistics
Notes
No Downloads
Views
Total views
2,936
On SlideShare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
61
Comments
3
Likes
12
Embeds 0
No embeds

No notes for slide

오픈소스의 이해

  1. 1. 오픈소스의 이해 허광남 kenu@okjsp.pe.kr
  2. 2. 오픈 소스• Open Source Software; OSS• Free and Open Source Software; FOSS• 공개SW(대한민국 정부)• Free SW와 구분
  3. 3. 오픈 소스 프로그램• 소스가 버전관리 시스템 등을 통해서 공개되어 있는 프로그램• 라이선스에 따라 자유롭게 사용 가능• 개발자의 참여로 발전 속도가 빠름 빠름 빠름
  4. 4. FSF• Free Software Foundation• 지식 발전을 위한 공개
  5. 5. 오픈소스는 공짜?• 세상에 공짜는 없다.
  6. 6. 오픈소스 비용(Cost)• Poor Manual• Few Experts• Trials & Errors• Patches – Securities – Vulnerabilities – Performance Better
  7. 7. 이 모든 것을• 사람이• No Vendor
  8. 8. 오픈 소스 생태계 Commiters Contributors• It’s own position. Configurer• Step by Step growing User End User
  9. 9. Commiters• 소스의 변경권한
  10. 10. Contributors• Mailing Lists• Bug/Issue Reports• Documentation• Patches
  11. 11. Configurer• Setting Change• Performance Factor• Tuner
  12. 12. User• Beginner• Service Provider• No Feedback• Search Issues/Troubles
  13. 13. End User• Person who has only time and money.• Target of Internet Business.• Finally, Open Source is for these people.
  14. 14. 개발팀에 오픈소스 방식 적용하기• 핵심은 ?
  15. 15. 소통• 메일링을 통해 의사소통하고,• 이슈트래커를 통해서 소스에 기여하고,• 변경된 소스에 대해서 문서화하고 전파함.
  16. 16. Step Up• 더 나은 개발자가 되기 위해서는• 애플리케이션 코드 한 줄 보다• 이 애플리케이션이 제대로 쓰일 수 있도록• 외부 사람들과 소통하는 것이 중요합니다.
  17. 17. 기존 마인드• 소스에 숨겨둔 자신의 약점• 지키기 힘든 약속 – 시간 나면 ...• 남는 시간에 소스 고치면 지는 거다.
  18. 18. 열린 마인드• 동료의 코드• 소스 변경의 어려움• 개발 스타일의 타협점
  19. 19. 주요 오픈소스 그룹• 리눅스• 아파치• 모질라• 이클립스• 안드로이드• 오픈스택
  20. 20. 리눅스
  21. 21. 아파치
  22. 22. 모질라
  23. 23. 이클립스
  24. 24. 안드로이드
  25. 25. 오픈스택
  26. 26. 스프링 프레임워크
  27. 27. jQuery
  28. 28. 오픈소스 애플?
  29. 29. 프로젝트 호스팅• 소스포지• 구글코드• 기트허브• n포지
  30. 30. 프로젝트 지원 기능• 버전 관리• 위키• 이슈 트래커• 멤버 관리• 메일링리스트(외부)
  31. 31. 오픈소스와 ALM• Application Lifecycle Management• 코드 이상의 관리 기법• 요구사항부터 개발, 배포, 업그레이드 포함
  32. 32. 버전• 0.1 major, minor• 0.9 -> 0.10 -> 0.11• alpha• Milestone• beta• Release Candidate
  33. 33. 버전 의미• Milestone • 기능 추가 변경• Release Candidate • 기능 고정, 버그 픽스, 성능 개선• Generally Available • 안정화된 정식 버전• Service Release • 유지보수, 버그 픽스, 성능 개선
  34. 34. 도입 이슈• 문제가 발생하면, 누가 책임질 것인가?
  35. 35. 오픈소스와 벤더• IBM 서버• IBM 이클립스• 아파치 재단에 기부• 애플 웹킷 브라우저 엔진• 삼성SDS anyframejava• 전자정부 표준프레임워크
  36. 36. 오픈소스 라이선스• GPL, LGPL• MIT• Apache License• CPL, EPL• BSD• ...
  37. 37. 라이선스• 저작권, 사용/복제/배포/수정의 자유• 특허, 상표• 저작물에 대한 책임
  38. 38. Dual License• MySQL, ExtJS• GPL or Commercial
  39. 39. 오픈소스의 가치• TCO는 줄지 않는다 - Microsoft• 결국 엔지니어 비용• 기술 발전의 방법
  40. 40. Q&A
  41. 41. 감사합니다

×