YoonWould!!

[시험 대비]오픈소스 본문

<IT 용어>

[시험 대비]오픈소스

Hading 2018. 9. 26. 23:01
728x90

오픈소스(Open Source), 또는 공개 소프트웨어는 저작권자가 소스코드를 공개하여 누구나 특별한 제한 없이 자유롭게 사용, 복제, 배포, 수정할 수 있는 소프트웨어입니다. 오픈소스는 소스를 공개한다는 면에서 Freeware, Shareware와 다르며, 오픈소스 이니셔티브(OSI)라는 단체에서 오픈소스에 대한 라이선스와 가이드를 제시하고 있습니다.

오픈소스의 장점

  • 낮은 진입비용 : 오픈소스는 무료로 다운로드 및 소스코드의 수정/재배포가 가능하므로 일반적으로 초기 개발비용이 새로 개발하는 것에 비해 1/2 정도인 것으로 알려져 있습니다.

  • 빠르고 유연한 개발 : 오픈소스 커뮤니티는 보통 최신 기술 정보 및 문제점과 해결책을 공유하는 형태로 자유롭게 운영되기 때문에 독점 프로그램에 비해 기술발전속도가 빠릅니다.

  • 호환성 : 오픈소스는 주로 오픈포맷 또는 프로토콜을 사용하기 때문에 서로 다른 소프트웨어간 상호연동성이 보장됩니다. 모든 기기들이 서로 다른 네트워크를 통해 하나로 연결되는 유비쿼터스 시대에 필수적인 요소입니다.

  • 신뢰성과 안정성 : 오픈소스의 개발 과정을 보면 전세계에 있는 수많은 우수한 개발자들이 직접 개발과 디버깅 과정에 참여하기 때문에 In-house에서 폐쇄적으로 개발되는 독점 프로그램에 비해 비교적 안정적으로 동작합니다. 하지만 신뢰성과 안정성은 많은 개발자들이 적극적으로 참여할 때에만 가능하므로, 사용하고자 하는 오픈소스의 개발과정, 평판 등을 주의깊게 살펴보아야 합니다. 실제로 잡다한 수많은 오픈소스들이 있기 때문에 쓸만한 오픈소스를 가려내는 것이 중요합니다.

오픈소스의 단점

  • 애플리케이션의 부족 : 대부분의 이용자들이 MS 윈도우즈기반의 GUI에 익속한 반면, 오픈소스는 GUI가 일반적이지 않습니다. 또 오픈소스는 리눅스 기반으로 개발된 애플리케이션이 많기 때문에 윈도우즈 기반 애플리케이션과 호환되지 않는 문제점도 있습니다.

  • 빈약한 문서 : 오픈소스를 수정하여 원하는 애플리케이션을 제작하고자 할 경우 문서화가 중요한데, 상용 프로그램에 비해 오픈소스는 체계적인 문서를 갖지 않은 경우가 많습니다. 경우에 따라서는 개발과정을 지체시키는 원인이 되기도 합니다.

  • 불확실한 로드맵 : 오픈소스는 영리를 목적으로 하는 회사에서 개발되는 것이 아니라 개인의 자발적인 참여를 통해 개발되는 경우가 많기 때문에 독점 프로그램에서 볼 수 있는 로드맵을 기대하기 어렵습니다. 어느날 갑자기 단종되고, 업그레이드가 중단되는 경우도 있습니다.

  • 지적재산권 : 일반적으로 오픈소스를 수정한 프로그램은 사용료 없이 배포할 것을 요구하고 있습니다. 따라서 기업이 보유한 특허를 소스코드에 포함시켜 재배포하려는 경우 반드시 명확한 입장을 밝히고 오픈소스 저작권자의 정책을 고려해야 합니다.

오픈소스의 비용

  • 라이센스료 : 일반적으로 오픈소스는 무료라는 편견이 있습니다. 하지만 하지만 오픈소스는 엄연히 라이센스를 가지고 있는 소프트웨어로 라이센스 비용이 발생할 수 있습니다.

  • 유지보수 : 관리, 모니터링, 제어 등 유지보수 및 업데이트 및 업그레이드 비용, 기술지원비용

  • 교육/훈련 : 개발자/관리자 교육

  • 보안 : 보안 관련 패치의 설치/개발 비용

  • 이전 및 통합 : 기업이 보유한 소프트웨어를 오픈소스로 전환할 경우 Migration과 Integration 비용이 발생합니다. 특히 OS와 같은 인프라성 오픈소스가 변경된 경우 해당 오픈소스와 관련된 H/W, S/W, Network를 고려해야 합니다.

  • 하드웨어 유지보수

오픈소스의 이익

  • 아키텍처의 효용성 : 필요한 IT 기능을 적시에 사용 가능

  • 유연성 : 필요할 때 필요한 기능을 가져다 쓸 수 있습니다.

  • 벤더에 대한 영향력 강화

  • 고품질 : IT 아키텍처와 어플리케이션에 대한 결함율 감소

  • 문제 해결 : 커뮤니티를 통한 빠른 문제 해결

  • IT 담당자의 역량 강화

오픈소스의 위험

  • 숨은 비용 : SW 라이프사이클 비용 발생 가능

  • 기술 지원 문제 : 오픈소스에 대한 지원의 보장이 부족

  • 필요한 기능의 부재

  • 오픈소스 관리 도구의 부재, 유명한 오픈소스의 경우 관리 도구 또는 모니터링 도구를 판매하는 업체도 있습니다.

  • 고객의 요구에 부합하지 않는 릴리스 계획

  • 보안 : 오픈소스의 경우 커뮤니티에서 제공하는 최신 보안 patch의 반영을 소홀히 할 경우 보안 위험이 발생할 수 있습니다.

  • 지적재산권 : 개발자의 라이센스 위반의 위험성 내포

오픈소스에 대한 오해

  • 소스를 공개한 소프트웨어가 오픈소스 이다.

  • 오픈소스는 공짜이므로 마음대로 가져다 써도 된다.

  • 우리는 오픈소스를 전혀 사용하지 않는다.

  • 오픈소스는 관리가 필요 없고 설치만 하여 사용하면 된다.

  • 오픈소스는 성숙도가 낮고 보안 위험이 있다.

  • 오픈소스는 돈이 안돼 비즈니스에 적합 하지 않다.


728x90

'<IT 용어>' 카테고리의 다른 글

운영체제의 기술발전 흐름  (0) 2018.10.09
악성코드  (0) 2018.09.30
[시험 대비] 데이터통신 & 네트워크  (0) 2018.09.26
[시험 대비]운영체제  (0) 2018.09.16
뛰어난 SW개발자를 채용하는 방법  (0) 2018.09.09