공개SW '잘쓰면 약, 못쓰면 독'
기업차원 공개SW 정책 수립 장점ㆍ단점 명확히 이해 활용
기획단계부터 라이선스 준수 제품 리콜 등 불상사 막아야
운영체제인 리눅스, 웹서버인 아파치, 데이터베이스관리시스템인 마이SQL 등 많은 공개 소프트웨어(SW)들이 SW개발자들과 기업에게 큰 인기를 끌면서 공개SW 바람이 전 세계적으로 불고 있습니다.
소스코드가 공개된 공개SW가 개발비용을 줄일 수 있고, 광범위한 SW개발자(기여자)의 참여로 기술 발전속도가 빠른 것을 비롯해 여러 이점을 갖고 있기 때문입니다.
하지만, 공개SW는 잘 잘 못 쓰면 독이 된다는 말이 있습니다. 공개SW는 본래 의미를 유지하기 위해 다양한 라이선스 정책을 만들어 이를 지키도록 요구하고 있는데, 이를 꼼꼼하게 검토하지 않으면 낭패를 볼 수 있기 때문입니다.
이와 관련해 정보통신부는 최근 공개SW 라이선스 가이드를 만들어 컴퓨터프로그램보호위원회 홈페이지(www.socop.or.kr) 등을 통해 배포하고 있는데, 공개SW를 활용하고자 하는 기업이나 개발자들이 도움을 될 만 합니다. 정통부의 가이드 중 기업에서 공개SW 라이선스를 관리하고 활용할 때 필요한 내용을 요약합니다.
공개SW 라이선스 가이드에 따르면, 대부분의 국내 기업이 공개SW 관련 정책을 따로 마련하지 않고 개발자들이 알아서 기업 외부에 존재하는 공개SW를 활용하는 수준에 머물고 있는데, 공개SW의 활용 필요성이 꾸준히 증가할 것을 고려하면 기업 차원에서 공개SW 정책을 수립할 필요가 있습니다. 정책을 수립할 때는 개별기업이 속한 시장의 상황, 공개SW 발전정도, 개별기업의 기술수준과 비즈니스 모델을 고려해야 합니다.
또 공개SW를 활용할 경우 공개SW의 장점(적은 초기 개발비용, 커뮤니티 방식에 따른 빠르고 유연한 개발, SW간에 상호 연동성을 보장하는 오픈포맷과 프로토콜, 강력한 네트워킹 기능 지원)과 단점(애플리케이션의 부족, 빈약하고 체계적이지 못한 문서, 불확실한 개발 로드맵)을 명확히 이해한 가운데 활용여부와 방향을 결정해야 합니다.
공개SW를 활용하기 위해서는 라이선스 준수가 필수적입니다. 자칫 잘못하면 라이선스 위반으로 판매중인 제품을 리콜하거나 소스코드를 공개해야 하고, 아예 처음부터 다시 개발해야 하기 때문입니다.
공개SW 라이선스 문제를 피하는 가장 좋은 방법은 개발 기획시점부터 이를 고려하는 것입니다. 해당과제에 공개SW를 활용할지 여부와 구체적으로 어떤 프로그램을 사용할지를 판단해야 합니다. 이 때 쉽게 공개SW 정보를 찾을 수 있는 Freshmeat.net, SourceForge.net, OSDir.com, BerliOS, Bioinformatics.org 등이 도움이 됩니다.
기획 단계에서는 또 해당 SW 콤포넌트별로 소스코드 공개 가능여부를 판단해야 합니다. GPL 등의 라이선스를 준수하는 공개SW를 사용할 경우 결과물의 소스코드 공개가 요구돼 경우에 따라 SW 구현방법을 달리해야 하기 때문입니다.
자체 개발한 소스코드를 공개해도 무방한 경우는 특별히 구현방법에 신경을 쓸 필요가 없지만, 이를 원하지 않을 때는 사용하는 공개SW의 라이선스 의무사항과 활용하고자 하는 형태(커널, 애플리케이션, 디바이스 드라이버 등)에 따라 다양한 경우가 발생하기 때문에 상당한 주의가 요구됩니다.
프로젝트 매니저는 개발자가 공개SW를 사용한 경우 해당 라이선스를 삭제하지 않도록 해야 합니다. 또 SW 구현 단계에서 공개SW를 사용할 경우에는 SW 사용목록을 작성해 제출하도록 해야 합니다. 일부 공개SW의 경우 라이선스 확인이 어려운 경우가 있는데 구글이 운영하는 공개SW 코드 검색사이트인 코드서치(www.google.com/codesearch)나 Freshmeat, Sourceforge 등에서 확인하는 것이 필요합니다.
개발이 완료된 후에는 개발 결과물인 소스코드에 대해 실질적인 검증이 필요합니다. 개발 계획서 자체에는 라이선스 이슈가 없었다고 해도 개발자가 실제 구현과정에서 공개SW를 라이선스에 대한 검증 없이 사용한 경우가 있을 수 있기 때문입니다.
제품화 단계에서는 사용된 공개SW들을 라이선스별로 분류하고 각 라이선스에서 준수해야 할 사항이 실제로 제품에 반영될 수 있도록 해야 합니다.
공개SW 라이선스 의무사항 중 저작권 관련문구 유지, 제품명 중복방지, 특허 등은 기획 및 구현단계에서 확인해야 할 사항이고, 소스코드 공개, 사용여부 명시 등은 제품화 단계에서 확인해야 합니다.
강동식기자 dskang@
기업차원 공개SW 정책 수립 장점ㆍ단점 명확히 이해 활용
기획단계부터 라이선스 준수 제품 리콜 등 불상사 막아야
운영체제인 리눅스, 웹서버인 아파치, 데이터베이스관리시스템인 마이SQL 등 많은 공개 소프트웨어(SW)들이 SW개발자들과 기업에게 큰 인기를 끌면서 공개SW 바람이 전 세계적으로 불고 있습니다.
소스코드가 공개된 공개SW가 개발비용을 줄일 수 있고, 광범위한 SW개발자(기여자)의 참여로 기술 발전속도가 빠른 것을 비롯해 여러 이점을 갖고 있기 때문입니다.
하지만, 공개SW는 잘 잘 못 쓰면 독이 된다는 말이 있습니다. 공개SW는 본래 의미를 유지하기 위해 다양한 라이선스 정책을 만들어 이를 지키도록 요구하고 있는데, 이를 꼼꼼하게 검토하지 않으면 낭패를 볼 수 있기 때문입니다.
이와 관련해 정보통신부는 최근 공개SW 라이선스 가이드를 만들어 컴퓨터프로그램보호위원회 홈페이지(www.socop.or.kr) 등을 통해 배포하고 있는데, 공개SW를 활용하고자 하는 기업이나 개발자들이 도움을 될 만 합니다. 정통부의 가이드 중 기업에서 공개SW 라이선스를 관리하고 활용할 때 필요한 내용을 요약합니다.
공개SW 라이선스 가이드에 따르면, 대부분의 국내 기업이 공개SW 관련 정책을 따로 마련하지 않고 개발자들이 알아서 기업 외부에 존재하는 공개SW를 활용하는 수준에 머물고 있는데, 공개SW의 활용 필요성이 꾸준히 증가할 것을 고려하면 기업 차원에서 공개SW 정책을 수립할 필요가 있습니다. 정책을 수립할 때는 개별기업이 속한 시장의 상황, 공개SW 발전정도, 개별기업의 기술수준과 비즈니스 모델을 고려해야 합니다.
또 공개SW를 활용할 경우 공개SW의 장점(적은 초기 개발비용, 커뮤니티 방식에 따른 빠르고 유연한 개발, SW간에 상호 연동성을 보장하는 오픈포맷과 프로토콜, 강력한 네트워킹 기능 지원)과 단점(애플리케이션의 부족, 빈약하고 체계적이지 못한 문서, 불확실한 개발 로드맵)을 명확히 이해한 가운데 활용여부와 방향을 결정해야 합니다.
공개SW를 활용하기 위해서는 라이선스 준수가 필수적입니다. 자칫 잘못하면 라이선스 위반으로 판매중인 제품을 리콜하거나 소스코드를 공개해야 하고, 아예 처음부터 다시 개발해야 하기 때문입니다.
공개SW 라이선스 문제를 피하는 가장 좋은 방법은 개발 기획시점부터 이를 고려하는 것입니다. 해당과제에 공개SW를 활용할지 여부와 구체적으로 어떤 프로그램을 사용할지를 판단해야 합니다. 이 때 쉽게 공개SW 정보를 찾을 수 있는 Freshmeat.net, SourceForge.net, OSDir.com, BerliOS, Bioinformatics.org 등이 도움이 됩니다.
기획 단계에서는 또 해당 SW 콤포넌트별로 소스코드 공개 가능여부를 판단해야 합니다. GPL 등의 라이선스를 준수하는 공개SW를 사용할 경우 결과물의 소스코드 공개가 요구돼 경우에 따라 SW 구현방법을 달리해야 하기 때문입니다.
자체 개발한 소스코드를 공개해도 무방한 경우는 특별히 구현방법에 신경을 쓸 필요가 없지만, 이를 원하지 않을 때는 사용하는 공개SW의 라이선스 의무사항과 활용하고자 하는 형태(커널, 애플리케이션, 디바이스 드라이버 등)에 따라 다양한 경우가 발생하기 때문에 상당한 주의가 요구됩니다.
프로젝트 매니저는 개발자가 공개SW를 사용한 경우 해당 라이선스를 삭제하지 않도록 해야 합니다. 또 SW 구현 단계에서 공개SW를 사용할 경우에는 SW 사용목록을 작성해 제출하도록 해야 합니다. 일부 공개SW의 경우 라이선스 확인이 어려운 경우가 있는데 구글이 운영하는 공개SW 코드 검색사이트인 코드서치(www.google.com/codesearch)나 Freshmeat, Sourceforge 등에서 확인하는 것이 필요합니다.
개발이 완료된 후에는 개발 결과물인 소스코드에 대해 실질적인 검증이 필요합니다. 개발 계획서 자체에는 라이선스 이슈가 없었다고 해도 개발자가 실제 구현과정에서 공개SW를 라이선스에 대한 검증 없이 사용한 경우가 있을 수 있기 때문입니다.
제품화 단계에서는 사용된 공개SW들을 라이선스별로 분류하고 각 라이선스에서 준수해야 할 사항이 실제로 제품에 반영될 수 있도록 해야 합니다.
공개SW 라이선스 의무사항 중 저작권 관련문구 유지, 제품명 중복방지, 특허 등은 기획 및 구현단계에서 확인해야 할 사항이고, 소스코드 공개, 사용여부 명시 등은 제품화 단계에서 확인해야 합니다.
강동식기자 dskang@
[저작권자 ⓒ디지털타임스 무단 전재-재배포 금지]
실시간 주요뉴스
기사 추천
- 추천해요 0
- 좋아요 0
- 감동이에요 0
- 화나요 0
- 슬퍼요 0