오픈소스 개요

46
오픈소스 개요 허광남 [email protected]

Upload: kenu-gwangnam-heo

Post on 13-Jan-2017

1.417 views

Category:

Software


0 download

TRANSCRIPT

오픈소스 개요

허광남

[email protected]

오픈 소스

• Open Source Software; OSS

• Free and Open Source Software; FOSS

• 공개SW(대한민국 정부)

• Free SW와 구분

오픈 소스 프로그램

• 소스가 버전관리 시스템 등을 통해서 공개되어 있는 프로그램

• 라이선스에 따라 자유롭게 사용 가능

• 개발자의 참여로 발전 속도가 빠름 빠름 빠름

FSF

• Free Software Foundation

• 지식 발전을 위한 공개

오픈소스는 공짜?

• 세상에 공짜는 없다.

오픈소스 비용(Cost)• Poor Manual

• Few Experts

• Trials & Errors

• Patches

– Securities

– Vulnerabilities

– Performance Better

이 모든 것을

• 사람이

• No Vendor

오픈 소스 생태계

• It’s own position.

• Step by Step growing

Commiters

Contributors

Configurer

User

End User

Commiters

• 소스의 변경권한

Contributors

• Mailing Lists

• Bug/Issue Reports

• Documentation

• Patches

Configurer

• Setting Change

• Performance Factor

• Tuner

User

• Beginner

• Service Provider

• No Feedback

• Search Issues/Troubles

End User

• Person who has only time and money.

• Target of Internet Business.

• Finally, Open Source is for these people.

개발팀에 오픈소스 방식 적용하기

• 핵심은 ?

소통

• 메일링을 통해 의사소통하고,

• 이슈트래커를 통해서 소스에 기여하고,

• 변경된 소스에 대해서 문서화하고 전파함.

Step Up

• 더 나은 개발자가 되기 위해서는

• 애플리케이션 코드 한 줄 보다

• 이 애플리케이션이 제대로 쓰일 수 있도록

• 외부 사람들과 소통하는 것이 중요합니다.

기존 마인드

• 소스에 숨겨둔 자신의 약점

• 지키기 힘든 약속

– 시간 나면 ...

• 남는 시간에 소스 고치면 지는 거다.

열린 마인드

• 동료의 코드

• 소스 변경의 어려움

• 개발 스타일의 타협점

주요 오픈소스 그룹• 리눅스• 아파치• 모질라• 이클립스• 안드로이드• 오픈스택

리눅스

아파치

모질라

이클립스

안드로이드

오픈스택

스프링 프레임워크

jQuery

오픈소스 애플?

프로젝트 호스팅

• 소스포지• 구글코드• 기트허브• n포지

프로젝트 지원 기능

• 버전 관리

• 위키• 이슈 트래커

• 멤버 관리

• 메일링리스트(외부)

오픈소스와 ALM

• Application Lifecycle Management

• 코드 이상의 관리 기법

• 요구사항부터 개발, 배포, 업그레이드 포함

버전• 0.1.1 major, minor, patch http://semver.org

• alpha > beta > Release

• Milestone

• RC: Release Candidate

• GA: Generally Available

• SR: Service Release

• LTS: Long Term Service

버전 의미명칭 의미

Milestone 기능 추가 변경

Release Candidate 기능 고정, 버그 픽스, 성능 개선

Generally Available 안정화된 정식 버전

Service Release 유지보수, 버그픽스, 성능 개선

Long Term Service 오랜 기간 지원되는 안정화 버전

도입 이슈

• 문제가 발생하면, 누가 책임질 것인가?

오픈소스와 벤더• IBM 서버

• IBM 이클립스

• 아파치 재단에 기부

• 애플 웹킷 브라우저 엔진

• 삼성SDS anyframejava

• 전자정부 표준프레임워크

오픈소스 라이선스• GPL, LGPL

• MIT

• Apache License

• CPL, EPL

• BSD

• ...

라이선스

• 저작권, 사용/복제/배포/수정의 자유

• 특허, 상표

• 저작물에 대한 책임

Dual License

• MySQL, ExtJS

• GPL or Commercial

기업의 OSS 라이선스

• http://timreview.ca/article/65

알*Not OSS

OSS Enterprise

검증 서비스

오픈소스의 가치

• TCO는 줄지 않는다 - Microsoft

• 결국 엔지니어 비용

• 기술 발전의 방법

Q&A

감사합니다