오픈소스SW 등 새로운 기술 접목 위해서는 언어 종속성 해결이 과제

[컴퓨터월드] 국내 시장의 높은 자바 의존도가 새롭게 부상하는 IT 기술들이 성장할 수 있는 기회를 가로막고 있다. 이러한 자바 의존도를 해결하기 위해서는 먼저 공공사업에서 핵심적으로 사용되고 있는 전자정부 표준프레임워크를 개선해야 한다는 의견이 나온다. 표준프레임워크가 자바를 기반으로 하고 있기 때문에, 민간기업과 개발자들의 수요가 자바에 집중되고 있다는 주장이다.


효과적으로 정부IT 구축한 표준프레임워크

전자정부 표준프레임워크는 공공기관의 전산 시스템 구축을 위해 마련된 개발 프레임워크다. 개발과정을 효율화하고 상호간에 원활한 연동이 가능하도록, 다양한 시스템 개발에 필요한 공통 기능이나 아키텍처들을 사전에 만들고 기준을 정립했다.

과거에는 공공기관에서 전산 시스템을 구축할 때 각 기업별로 자체 제작한 별개의 개발 프레임워크를 사용했다. 모든 기업들이 독특한 개발 프레임워크를 보유한 것은 아니며, 대개 공공기관의 시스템 개발 프로젝트에 대한 경험이 많은 대형 SI 기업들이 개발 프레임워크를 자체 구축해 사용했다. 이들은 자체 개발 프레임워크를 통해 개발 과정을 효율화할 수 있었기에, 이러한 프레임워크를 보유하지 못한 중소기업들에 비해 효과적인 개발 계획을 세울 수 있었다.

하지만 표준이 정립되지 않은 채로 각자의 프레임워크를 사용하다보니 각각의 공공사업에서 사업자별로 동일한 기능을 중복해서 개발하는 일이 많았다. 서로 다른 업체들이 각각의 프레임워크를 통해 개발하다보니 시스템 간의 연동에도 많은 공수와 시간이 소요됐다. 특정 기업의 프레임워크로 개발한 시스템을 유지·관리하기 위해 해당 기업에 대한 종속성이 발생한다는 이슈도 있었다.

▲ 전자정부 표준프레임워크는 정부 전산 시스템 구축에 효과적인 장점들을 제공한다.

이러한 문제들을 해결하기 위해 행정안전부는 지난 2007년 수립된 정보화 전략계획에서 전자정부 표준프레임워크라는 개념을 제시하고, 이후 2008년 11월부터 국내 SW기업들과 함께 본격적인 표준프레임워크 개발에 돌입했다. 마침내 2009년 6월에 자바(JAVA) 플랫폼을 위한 오픈소스 프레임워크 스프링(Spring Framework)을 기반으로 전자정부 표준프레임워크 1.0버전이 출시됐다. 현재 전자정부 표준프레임워크는 지난 2월 3.9버전이 공개됐으며, 10여 년 간 수많은 공공사업에서 효과적으로 기능했다.

공공사업 시 표준프레임워크를 사용하면 다양한 이점을 얻을 수 있다. 대다수의 기업들이 무료로 사용할 수 있는 표준프레임워크로 공공기관의 시스템을 개발하게 되므로 프레임워크 보유 여부에 따른 대형 SI기업과 중소기업간의 개발역량 격차를 해소할 수 있고, 공통된 기능과 모듈을 사용하다보니 유지보수도 용이해 특정 기업에 대한 종속성 문제도 해결할 수 있다. 또한 자주 사용되는 핵심 기능들을 표준프레임워크 상에 탑재함으로써 같은 기능을 중복 개발하며 발생하는 역량과 예산 낭비도 줄일 수 있다. 표준화된 기능과 모듈을 사용하니 서로 다른 시스템간의 연동 또한 용이하다.


자바만으로는 신기술에 대응할 수 없다

그동안 전자정부 프레임워크가 공공사업에서 긍정적인 요인으로 작용한 것은 사실이다. 한국정보화진흥원(NIA) 산하의 표준프레임워크센터가 밝힌 바에 따르면, 표준프레임워크는 지난 10여 년 간 약 80만 건 이상 다운로드되며 공공·민간 시장에서 빠르게 확산됐다. 2020년 5월 기준으로는 약 3,700여 개의 공공사업에 표준프레임워크가 사용돼 기존의 많은 문제들을 불식시켰다.

특히 네팔, 멕시코, 베트남, 사우디아라비아 등 17개 국가에서 자국의 정보시스템 구축을 위해 우리의 표준프레임워크를 사용하면서 해외 진출에도 성공했다. 싱가포르 주관 미래정부시상식(FutureGov Awards)에서는 올해의 정부상, 기술선도상, 정부혁신상 등을 수상하며 글로벌 경쟁력을 입증받기도 했다.

▲ 표준프레임워크로 인해 공공사업에서는 많은 자바 개발자 수요가 발생한다.

하지만 최근 국내 업계 일각에서는 표준프레임워크가 새로운 시대의 변화를 받아들이지 못하고 있다고 지적했다. 특히 표준프레임워크가 스프링 프레임워크를 기반으로 하고 있기에 정부 시스템이 자바에 종속되는 것을 가속화시키고 있다는 평가다. 4차 산업혁명 시대를 맞이하며 우후죽순처럼 생겨나고 있는 기술들을 포용하고 급격한 변화에 대처하기 위해서는 표준프레임워크 역시 자바 이외의 많은 언어들을 지원해야 할 수 있어야 한다.

우리나라의 자바 의존도는 세계적으로도 매우 높은 편에 속한다. 표준프레임워크가 자바를 기반으로 삼고 있기 때문에 공공기관에서는 IT 시스템을 개발할 때 굳이 다른 언어로 개발하지 않는다. 공공사업을 수행하려는 기업들은 당연히 자바를 할 수 있는 개발자들을 필요로 하고, IT 개발자를 양성하는 국비 지원 교육 등에서도 자바는 기본적인 언어라는 인식이 강하다. 공공기관의 수요와 시장의 공급이 맞물려 있으니 자바를 활용하는 개발 사업은 더욱 늘어나고, 이러한 레퍼런스가 축적될수록 자바의 영향력 확대는 가속화된다.

▲ IT 분야 국비지원 교육의 상당수도
자바 개발자 양성과정으로 이뤄져 있다.

물론 자바 자체는 매우 강력하고 좋은 언어임에 틀림없다. 글로벌 인기 개발언어를 조사하는 티오베 인덱스(TIOBE Programming Community index)에 따르면, 2020년 6월 기준으로 자바는 16.10%의 지분을 차지하며 인기 언어 2위를 차지했다. 파이썬(Python)이나 R 등 새롭게 주목받는 언어들이 빠르게 치고 올라왔지만 자바의 입지는 굳건하다. 전 세계 엔터프라이즈 시장에서 자바를 배제하고 사내 IT 시스템을 구축한 기업은 없을 것이다.

하지만 오늘날 새롭게 등장하는 신기술들은 자바만으로는 다룰 수 없다는 점을 고려해야 한다. 빅데이터의 중요성이 증가하면서 파이썬과 R이 가파르게 성장한 것처럼, 새로운 기술들을 활용하기 위해서는 거기에 가장 적합한 언어들을 다룰 수 있어야 한다. 그나마 파이썬과 R은 개발자들 사이에서도 그 중요성이 크게 이슈화됐고 민간기업들 사이에서도 수요가 확대되며 안정적으로 자리잡았다는 점에서 상황이 나은 편이다. 하지만 그 외에 새롭게 떠오르는 기술과 언어들에 대해서는 항상 촉각을 세우고 관심을 둬야 한다.


오픈소스의 대두…자바 Only로는 어렵다

특히 자바 이외의 언어에 대한 필요성이 부각되는 것은 최근 오픈소스SW들이 급격하게 관심을 받고 있기 때문이다. 정부 역시 큰 기조에서 오픈소스에 대해 긍정적인 정책들을 펼치고 있다. 몇 년 전부터 정부 R&D 사업에서도 오픈소스 방식의 과제가 수십여 개 발주되고 있으며, 최근 새롭게 개정된 SW진흥법에서도 국가 R&D 과제를 공개SW로 하는 것이 좋다고 명시한 바 있다.

정부가 오픈소스를 중심으로 한 효과적인 IT 전략을 수립하고 실행하기 위해서는 먼저 우리나라의 기업과 개발자들이 오픈소스를 잘 활용할 수 있는 체계가 마련돼 있는지를 확인해야 한다. 국가 R&D 과제를 통한 기초 연구, 기반이 되는 기술들이야말로 IT 시장의 원유다. 그러니 이것을 기업과 개발자들이 잘 활용할 수 있는지, 연구 결과가 그들의 필요성을 충족시킬 수 있는지를 점검해야 한다. 만약 그렇지 않다면 R&D 과제 자체의 실효성을 점검하거나 시장의 요구를 변화시킬 필요가 있다.

시장의 요구를 변화시키기 위해서는 개발자들이 해당 기술에 시간과 자원을 투자했을 때 기업의 경쟁력과 개인의 역량 향상에 도움이 된다는 것을 보여줘야 한다. 우리나라에서는 여전히 정부의 목표와 방향 제시가 시장에 큰 영향을 미치기 때문에 변화를 이끌어나가기 위한 정부의 역할이 중요하다. 즉, 다양한 오픈소스를 효과적으로 활용하기 위해서 정부의 의지와 활약이 필요하다는 의미다.

정리하자면, 다양한 오픈소스 기술들이 시장에 널리 활용되고 나아가 전 세계적인 영향을 미칠 수 있는 오픈소스 프로젝트들을 선도하기 위해서는, 민간 기업과 개발자들이 이러한 기술에 관심을 가지고 익숙하게 활용할 수 있는 기반이 필요하다. 그리고 오픈소스 프로젝트들은 구현하려는 기능에 최적화할 수 있도록 다양한 언어로 개발되고 트렌드는 빠르게 변화한다. 따라서 기업과 개발자에게는 특정 언어에 치우치기보다 다양한 언어를 다룰 수 있는 역량이 요구된다.

국내의 오픈소스SW기업 I사 관계자는 “오픈소스가 대세가 되는 시대에 개발자은 다양한 언어를 얕고 넓게 다룰 수 있어야 한다. 필요할 때 원하는 소스를 접목하고 사용하기 위해서는 한 가지 주력 언어를 완벽히 다룰 수 있으면서도 다른 언어를 보고 이해할 수 있는 역량을 갖춰야 할 것”이라고 강조했다.

우리나라는 자바에 대한 의존도가 높고, 시장에서 자바에 대한 수요가 높기에 많은 신입 개발자들은 자바를 중심으로 역량과 경험을 쌓아나간다. 뒤집어 얘기하자면 어느 정도 시장의 트렌드를 읽고 새로운 기술에 관심을 가지는 일부 기업과 개발자들을 제외하면, 국내 SW기업과 개발자들이 가장 많이 접하고 필요로 하는 언어는 자바라는 소리다. 이러한 자바 중심의 시장 환경에 가장 큰 영향을 미치는 것이 바로 표준프레임워크다. 공공사업 시장이 큰 우리나라에서 표준프레임워크의 기반 언어가 자바라는 것은 무시할 수 없는 특징이다.

오늘날 이미 오픈소스는 전 세계 기업이 자사의 핵심적인 시스템에도 도입을 검토할 만큼 핵심적인 화두로 떠올랐다. 정부가 진정으로 이러한 오픈소스 기반의 혁신을 긍정적으로 검토하고자 한다면 현재 자바 중심의 표준프레임워크를 개선해 보다 다양한 언어를 지원할 수 있는 새로운 프레임워크를 제시해야 할 것이다.

개방과 변화에도 흔들리지 않을 개방형 표준 준수해야
심호성 한국공개SW협회 상근부회장


오픈소스에 대한 얘기를 하다보면 늘 나오는 얘기가 있다. 독일 뮌헨의 사례다. 뮌헨은 지난 2003년에 공공기관 전체에 대한 리눅스OS와 오픈소스 도입을 결정했다. 직원들이 사용하는 PC의 OS를 리눅스로 교체하고, ‘리브레오피스’ 등의 오픈소스 오피스 프로그램을 사용했다.

하지만 뮌헨의 이러한 오픈소스 중심주의는 오래 가지 않았다. 새로운 시장이 당선되자 이번에는 마이크로소프트(MS) 윈도우로의 회귀와 ‘MS오피스’의 도입을 추진했다. 리눅스와 ‘리브레오피스’ 등 오픈소스들을 적극적으로 사용했는데도 처음에 의도했던 비용 절감 등의 효과가 가시적이지 않다는 이유였다. 그렇게 다시금 상용SW로 회귀하는가 싶더니, 올해 들어서 다시 오픈소스SW를 중심으로 사용하겠다고 발표했다.

독일 뮌헨의 사례에서 우리가 얻을 수 있는 교훈은 정부의 정책은 언제든 유연하게 바뀔 수 있다는 사실이다. 과거에는 대기업 중심의 항공모함 같은 트렌드와 정책이 시장을 선도하며 꾸준히 밀고나가는 형태였다면, 지금은 시장의 요구도 환경도 기술도 다변화됐으며 매우 빠르게 변화하고 있다. 따라서 변하기 어려운 정책보다는 고무보트처럼 유연하고 빠르게 의사결정을 내릴 수 있는 전략이 필요하다.

그렇다면 정부의 방향성에 크게 영향을 받는 민간기업과 개발자들은 어떤 지표를 믿고 미래를 준비해야 할까? 이 질문에 답을 주기 위해 정부는 아주 기본적인 원칙을 지켜야 한다. 바로 개방형 표준(Open Standard)을 지켜야 한다는 것이다. 정부의 목표나 필요에 따라 오픈소스SW와 상용SW를 넘나드는 전위적인 선택을 한다고 하더라도, 일정한 개방형 표준을 준수하는 제품들을 사용한다면 기존에 운영하던 시스템과 새로운 시스템의 연동과 안정성을 보장할 수 있다.

예를 들어 개방형 문서 표준(Open Document Format for Office Applications, ODF)이 대표적이다. 뮌헨은 짧은 기간에 ‘MS오피스’와 ‘리브레오피스’라는 여러 개의 오피스 프로그램을 사용했지만, 모두 ODF를 준수하고 있기 때문에 전환에 큰 어려움이 없었다. 정책에 변화가 있더라도 큰 틀 내에서는 ODF라는 개방형 표준을 준수한다는 원칙을 세우고 있었기 때문에 혼란을 줄일 수 있었던 것이다.

정부가 명확하고 합리적인 신호를 주기만 한다면 민간에서는 자연히 따라가게 돼있다. 국내에서는 시장을 변화시키는 핵심이 바로 정부다. 개방형 표준을 준수하기만 한다면 어떤 서비스를 개발하더라도 사용할 수 있다는 큰 틀을 제시해야 한다.

전자정부 표준프레임워크가 자바 온리(Only)에서 탈피해야 한다는 것도 바로 이러한 관점에서 이해할 수 있다. 정부 전산 시스템의 표준은 특정한 언어가 아니라 새로운 개방형 표준이 되어야 한다. 자바를 사용하지 않아도 일정한 표준을 준수하기만 한다면 사용할 수 있어야 비로소 정부가 원하는 다양한 기술의 접목과 활용이 가능해질 것이다.

다행인 것은, 최근 몇 년 간 정부가 강하게 추진하고 있는 클라우드 전환 정책에서는 이러한 변화가 가시적으로 보이고 있다는 점이다. 현재 한국정보화진흥원(NIA)에서는 개방형 클라우드 플랫폼 파스-타(PaaS-TA)에 자바 이외에도 다양한 언어를 담을 수 있도록 폭넓은 개발환경을 갖췄다. 표준프레임워크를 포함해 7종의 프레임워크를 지원하며 파이썬·PHP 같은 자바 이외의 개벌언어도 지원하고 있다. 지금도 개발되고 있는 오픈소스 기반의 다양한 신기술들이 파스-타 위에서 효과적으로 작동할 수 있도록 지속적인 관심과 노력이 필요하다.

 

저작권자 © 컴퓨터월드 무단전재 및 재배포 금지