초심자, 비전문가의 손쉬운 개발 지원…하드코딩 최소화해 생산성 극대화

[컴퓨터월드] 오늘날 개발자 부족은 더 이상 IT 산업계만의 문제가 아니다. 대다수 기업들은 최신 IT 기술을 활용해 디지털 트랜스포메이션을 추진하고 싶어 하지만, 이를 지원할 수 있는 개발자들이 태부족해 어려움을 겪고 있다. 이러한 상황에 최소한의 개발자로도 방대한 IT 개발 수요를 감당할 수 있는 로우코드‧노코드 기술이 주목을 받고 있다. 최근 국내에서도 로우코드‧노코드 기술에 대한 요구가 속속 등장하고 있어, 산업계의 성장이 조속히 요구되는 상황이다.


만성적 개발자 부족…LCNC로 해결한다

IT 업계의 만성적인 인력난은 앞으로도 한동안 계속될 것으로 보인다. 정부와 학계, 민간에서 모두 IT 인력 양성에 열을 올리고 있지만, 여전히 공급이 수요를 따라가지 못하고 있기 때문이다. 특히 전 산업계에서 디지털 전환이 핵심 이슈로 자리잡으면서 비 IT 기업들 역시 개발자들을 직접 고용하는 추세고, 이는 IT 업계의 인력난을 더욱 가속화시키고 있다. 글로벌 시장조사기관 가트너가 지난 7월 공개한 글로벌 고용시장 설문조사(Global Labor Market Survey) 결과에 따르면, 전 세계 기업들은 IT 기술 수준을 강화하거나 유지하기 위해 IT 인력 유치와 고용 유지에 가장 큰 비용을 투자할 것으로 예상된다.

이에 따라 만성적인 IT 인력난을 해결하기 위한 방법 중 하나로 로우코드‧노코드(Low code‧No code, 이하 LCNC) 개발이 주목받기 시작했다. LCNC는 개발 과정에서 코드를 직접 작성하는 것을 최소화하고, 기존에 만들어놓은 컴포넌트와 모듈들을 블록 조립을 하듯 결합해 원하는 SW를 만드는 것을 의미한다. 코로나19(COVID-19) 팬데믹이 촉발한 전 산업계의 디지털 전환 수요로 인해 개발자 인력 부족이 단순히 IT 업계의 문제만은 아니게 되면서, 이를 해결할 수 있는 LCNC에 대한 관심은 더욱 빠르게 증가하고 있다.

구글은 2016년에 로우코드 모바일 애플리케이션 개발 서비스 앱메이커(App Maker)를 공개했다. 간단한 드래그 앤 드롭과 약간의 코딩을 더해 원하는 앱을 손쉽게 만들 수 있는 서비스다. 해당 서비스는 2020년 1월에 서비스 중단을 선언했지만, 같은 시기에 노코드 애플리케이션 개발 플랫폼 앱시트(AppSheet)를 인수하면서 여전히 LCNC를 주요 비즈니스 전략으로 이끌어갈 것임을 시사한 바 있다. 앱시트는 엑셀 같은 스프레드시트나 그리드(grid) 형식으로 작성된 파일로 모바일 앱을 손쉽게 개발할 수 있는 플랫폼이다.

구글이 인수한 코드 애플리케이션 개발 플랫폼 앱시트

마이크로소프트는 2021년에 개최된 연례 개발자 컨퍼런스 빌드 2021(Build 2021)에서 로우코드 플랫폼 파워앱스(Power Apps)를 발표했다. 파워앱스는 오픈AI가 개발한 대규모 언어 모델 GPT-3(Generative Pre-trained Transformer-3)를 적용해, 코딩이나 드래그 앤 드롭 대신 자연스러운 대화 명령으로 원하는 기능을 구현할 수 있도록 지원한다. 구체적인 지시사항을 하나하나 작성하는 대신 자연어 문장을 입력하기만 하면, 컴퓨터는 GPT-3 모델을 통해 해당 문장을 이해하고 사용자가 원하는 기능을 수행하는 코드를 만들어낸다.

단순한 앱 개발이 아닌 AI 서비스 개발에도 LCNC 사용 사례가 늘어나고 있다. 국내에서는 네이버의 클로바 스튜디오(CLOVA Studio)가 대표적이다. 네이버가 지난해 7월 공개한 클로바 스튜디오는 충분한 데이터셋을 업로드하고 요구사항을 자연어 문장으로 입력하면 자동으로 머신러닝 과정을 수행해 AI 서비스를 개발할 수 있도록 도와준다. 특히 영어 기반의 GPT-3 대신 한국어 기반의 초대형 언어모델 하이퍼클로바(HyperCLOVA)를 사용하기에 더욱 뛰어난 한국어 인식 성능을 자랑한다. 아직은 클로즈 베타 서비스 단계지만, 출시 이후 지속적으로 신규 기능 추가나 업그레이드가 이뤄지고 있어 향후 전망도 밝다.
 

[솔루션 리뷰] 의료 업계의 AI 개발 돕는 노코딩 플랫폼 ‘딥파이’

딥파이(DEEP:PHI)는 딥노이드가 개발해 지난 2021년 공개한 의료 AI 전문 노코딩 플랫폼이다. AI나 머신러닝, 코딩에 대한 지식이 부족해도 마우스 드래그 앤 드롭만으로 원하는 AI 모델이나 앱을 개발할 수 있다. 사용자는 의료 데이터들을 업로드하고 몇 가지 주요 모듈을 선택하기만 하면 된다. 부득이하게 코드 변경이나 추가가 필요할 경우에도 사전 구축된 명령어 블록들을 배치하기만 하면 되는 블록코딩 방법을 사용할 수 있다.

특히 딥파이의 장점은 의료 현장에서 종사하고 있는 의사와 연구자들에게 높은 접근성을 제공한다는 점이다. 최근 의료 분야에서는 AI 기술을 접목해 주요 질환을 진단하거나 중요한 판단을 보조하려는 시도가 늘어나고 있는데, 의료 분야는 사람의 생명과 직접적으로 연관돼 있는 만큼 AI 개발과 연구에 높은 도메인 지식이 요구된다. 현장에서 직접 경험과 노하우를 쌓은 의사와 연구자들이 직접 AI 기술을 활용해 연구를 수행하고 서비스 개발에 참여하는 것이 효과적이지만, 의료 현장에서 발생하는 이슈에 대응하면서 AI 관련 역량을 쌓는 것은 쉽지 않은 일이다. 이러한 점에서 의료 AI 전문 노코딩 플랫폼 딥파이는 의사와 연구자들이 별도의 코딩 공부를 하지 않고도 손쉽게 AI를 개발할 수 있도록 돕는다는 점에서 뛰어난 장점을 갖추고 있다.

딥파이는 IT 전문성이 부족한 사용자도 손쉽게 의료 AI 서비스를 개발할 수 있도록 돕는다. >>
딥파이는 IT 전문성이 부족한 사용자도 손쉽게 의료 AI 서비스를 개발할 수 있도록 돕는다. 


SW 개발 자동화의 역사

물론 IT 업계의 긴 역사에서 SW 개발을 쉽고 편하게 하려는 시도가 없었던 것은 아니다. 이미 1980년대에 컴퓨터의 도움으로 SW 개발을 자동화해보자는 CASE(Computer Aided Software Engineering)라는 개념이 등장했다. CASE는 사용자가 개발 요구사항을 입력하면 사전에 작성해놓은 코드 뭉치들로 변환되도록 하는 개발방법론이자, 이를 구체적으로 구현하는 도구(CASE Tool)들을 통칭한다. 사전에 효과적인 코드 뭉치들을 많이 준비해놓고, 전체 과정을 제대로 설계하고 요구사항을 정확하게 입력하면 손쉽게 원하는 SW를 얻을 수 있다.

또한 컴포넌트 기반 개발(Component Based Development, 이하 CBD) 방법론도 있다. CBD는 특정 기능들을 수행하는 컴포넌트들을 다수 만들어놓고, 이것들을 블록처럼 잘 조립해 원하는 SW를 개발하는 방법이다. 각 컴포넌트들은 각자의 기능들을 독립적으로 실행할 수 있기 때문에, 사용자가 조립만 잘 하면 복잡한 SW도 문제없이 개발할 수 있다. 실제로 SW 개발 과정에서 컴포넌트를 활용해 일부 개발 과정을 간소화하려는 시도는 지금도 쉽게 찾아볼 수 있다.

CASE나 CBD와 같은 개발방법론들은 요구사항만 제대로 입력하면 복잡한 코드 작성은 컴퓨터가 대신해준다는 점에서 오늘날의 LCNC와 큰 차이는 없어 보인다. 하지만 산업계에서 바라보는 시선은 사뭇 다르다. 그동안 제시됐던 SW 개발 자동화 방법론이나 도구들은 필요에 따라 제한적으로만 사용됐을 뿐, SW 개발 과정에 혁신적인 변화를 가져올 정도는 아니었다. 그에 반해 오늘날 많은 글로벌 기업들과 전문가들은 LCNC에 막대한 기대를 걸고 있다.


개발 생산성 극대화하는 LCNC

여기에는 크게 두 가지 이유가 있다. 첫 번째 이유는 그동안의 SW 개발 자동화 방법론들이 아직 충분한 기술 수준을 갖추지 못했다는 점이다. 간단한 SW에는 유용한 방법일 수 있지만, 기업의 핵심 시스템들을 설계하고 개발할 때 통용되는 수준에는 미치지 못했다는 얘기다.

가령 CASE 개발도구들은 사용자의 업무 프로세스를 잘 분석해 원하는 요구사항들을 구체적으로 입력하면 컴퓨터가 그에 맞는 코드를 생성해주는 방식이다. 하지만 개발도구가 불러온 코드 뭉치들이 해당 시스템에 100% 알맞게 만들어져있으리라는 보장이 없다. 결국 컴퓨터가 코드를 생성해줘도 개발자가 직접 수정하고 최적화하는 과정이 필요하다. 하지만 직접 짠 코드가 아니다보니 이를 이해하고 분석해 역설계(reverse engineering)하는 것이 쉽지 않다. 코드를 수정하게 되면 본래 공통된 CASE 도구를 공유하는 개발자들끼리 얻을 수 있었을 개발 표준화 수준도 떨어진다. 이러한 문제는 해당 코드에 대해 대규모 수정이 필요할 경우에 더 심각해지는데, 이러면 차라리 처음부터 직접 코딩을 하는 게 더 낫다는 생각에 이르게 된다.

CBD 방법론의 근간을 이루는 컴포넌트 기술 역시 과거에는 충분한 완성도를 갖추고 있지 않았다. 과거의 컴포넌트들은 하나하나가 가지고 있는 기능이 너무 간단하고 단편적이어서 개발 생산성을 획기적으로 향상시켜주지 못했다. 예를 들어 과거의 그리드 컴포넌트는 DB에서 데이터를 가지고 와서 그리드 상에 배열해주는 단편적인 기능만을 수행했고, 그 외의 기능을 원한다면 개발자가 직접 코딩을 해야 했다. 하지만 최근에는 그리드 컴포넌트가 데이터를 배열하는 과정에서 종류를 구분하고 일정한 서식을 부여하거나 필터를 입히는 등 다양한 기능들을 수행할 수 있게 됐다. 당연히 개발자가 개입해야 하는 부분이 크게 줄어들었기 때문에, 얻을 수 있는 효과 역시 이전에 비할 바가 아니다.

두 번째 이유는 SW 개발을 간소화하고 자동화하려는 요구가 늘어났다는 점이다. SW 개발을 자동화하면 당연히 개발 생산성이 크게 증가한다. 생산성 향상은 과거에도 충분히 메리트가 있었다. 하지만 심각한 IT 인력난에 직면해 있는 현재만큼은 아니었다. 개발 생산성 향상이라는 장점이 과거에는 ‘있으면 좋은 것’이었지만, 지금은 ‘반드시 있어야 하는 것’으로 바뀌었기 때문이다.

우리는 간단하게 즐길 수 있는 레토르트 식품에서 수십만 원 상당의 고급 레스토랑 음식과 같은 맛을 기대하지는 않는다. 일선에서 LCNC 기술을 적극적으로 도입하려는 기업들 역시 현재의 LCNC 기술이 IT 업계에서 2~30년 경력을 가진 베테랑 개발자들보다 더 나은 SW를 만들어낼 거라고 기대하지는 않을 것이다. 하지만 고급 레스토랑에서 한 접시의 음식을 만들 동안 공장에서는 수백 개의 레토르트 식품을 생산할 수 있는 것처럼, LCNC는 개발 생산성 측면에서 비할 수 없는 향상을 가지고 온다. 이는 만성적인 개발자 부족을 겪고 있는 기업들에게 무척 매력적인 장점이다.

특히 직접 코딩할 필요가 없는 노코드 기반의 개발 플랫폼들은 IT에 대한 지식이 없는 비개발자도 SW 개발에 참여할 수 있어 더욱 효과적이다. IT 인력을 보유하기 어려운 스타트업이나 중소기업에서도 외부의 조력 없이 원하는 SW를 개발해 활용할 수 있고, 비즈니스 조직은 더 이상 원하는 SW를 개발하고 수정하기 위해 IT 조직과 마찰을 일으키지 않아도 된다. 노코드 플랫폼을 통해 간단한 개발 작업들은 비전문가가 직접 수행하는 대신, IT 조직은 전문가의 역량이 필요한 복잡한 개발에 집중해 SW 품질과 생산성을 더욱 향상시킬 수 있다.

[구축사례] 투비소프트, 넥사크로N ‘퀵코드’로 기술지원 페이지 성공적 구축
이노다임 조경탁 이사


Q. 이번 프로젝트의 목표는?

기술지원 홈페이지는 투비소프트 관련 사이트 중 가장 많은 사용자들이 방문하는 곳이다. 고객이나 수행사, 현장의 개발자, 디자이너 등 하루 1,000명 내외의 사용자들이 문제 해결이나 질의응답 등을 위해 방문한다. 해당 페이지는 과거에 투비소프트의 X플랫폼(XPLATFORM)으로 구축됐다가, 이후 넥사크로플랫폼14(NexacroPlatform 14) 제품으로 업그레이드됐다. 하지만 구축한 후 오랜 시간이 지나다보니 사이트 자체가 무겁고 사용자 경험 측면에서 아쉬운 부분들이 있어 대대적인 개선 사업을 수행하게 됐다. 프로젝트 기간은 약 6개월 정도로, 프로젝트 종료 후에는 사용자 경험 측면에서 많은 개선이 이뤄졌다.


Q. 이번 프로젝트에 어떻게 로우코드 기술을 활용했는가?

이번 프로젝트에는 투비소프트의 신제품인 넥사크로N(Nexacro N)을 사용하고, 특히 해당 제품의 로우코드 기능인 퀵코드(Quickcode)를 적용했다. 사실 투비소프트의 과거 제품들에도 이지UI(easyUI)라는 명칭으로 로우코드 기능이 있었는데 중요하게 다뤄지지는 않았다. 넥사크로N부터 기능을 강화하면서 퀵코드로 이름을 바꾸고 핵심 기능으로 자리잡았다.

일반적인 프로젝트에서는 웹 화면을 그리기 위해 디자이너가 화면을 구성하고, 퍼블리셔가 표준에 맞춰서 템플릿을 만들면, 개발자들이 그걸 가져다가 상세한 스크립트를 붙이기 시작한다. 여기에는 많은 반복 작업이 필요하다. 비슷한 화면 구성이 반복되면 더더욱 그렇다. 그런데 넥사크로N의 퀵코드 기능은 MVC(Model, View, Controller) 구조의 코드 블록을 활용할 수 있다. 정형화돼있는 블록들을 마우스로 드래그 앤 드롭하면 많은 부분들이 자동으로 그려진다.

퀵코드를 통해 상당한 개발 생산성을 경험할 수 있었다. 특히 이번 프로젝트에는 이제 막 학원을 나온 신입 개발자 2명이 포함돼 있었는데, 투비소프트 제품의 특성화된 개발 코드를 모르는데도 불구하고 어렵지 않게 업무를 수행할 수 있었다. 또한 사전에 퀵코드에서 만들어놓은 코드 블록을 수정하면, 해당 블록을 적용한 모든 항목에 자동으로 소급 적용되는 부분도 만족스러웠다.

넥사크로N의 퀵코드 기능은 MVC 구조의 코드 블록을 활용해 개발 생산성을 향상시킨다.

Q. 로우코드 기술 활성화를 위해 해결해야 할 문제는?

로우코드에 대한 인식이 부족한 게 가장 큰 문제인 것 같다. 로우코드를 하기 위해서는 해당 사이트에 대해 굉장히 잘 알아야 한다. 그런데 이번 프로젝트에 참여한 개발자들 중 로우코드에 대해 잘 알고 있는 사람이 드물어서 처음에 어려움이 있었다. 이제까지 그냥 하드코딩했던 개발자들 사이에서 로우코드가 뭔지, 그걸 왜 해야하는지, 한다면 누가 해야하는지 의견이 분분했다. 퀵코드에서는 프로젝트에 들어가기 전에 공통개발자가 MVC를 모두 만들어줘야 하는데, 공통개발자들에게 로우코드라는 개념 자체가 생소했을 뿐더러 본인의 업무가 늘어난다는 것에 대해 부담감을 가지기도 했다.

개인적으로는 넥사크로플랫폼에 탑재된 이지UI 시절부터 로우코드를 통한 UI 개발에 관심을 가지고 있었다. 하지만 아직 국내에 많이 퍼져있지 않기 때문인지 정보를 구하기도 어렵다. 이것은 투비소프트 같은 로우코드 기술 공급사가 보다 적극적으로 저변을 넓히기 위해 나서야 하는 문제라고 생각한다.

인식 개선이 과제…공동전선 위한 협의회 발족

다만 아직 국내 시장에서는 LCNC 기술에 대한 반응이 미적지근한 편이다. 주요 글로벌 기업들이나 시장분석기관들이 언급하는 것과 달리, IT 인력 부족을 체감하고 있는 기업들 사이에서도 LCNC 기술의 도입이나 제품 사용이 활발히 일어나지는 않고 있으며, 일회성 파일럿 프로젝트 형식으로만 진행되는 것이 대다수다. 아직 LCNC 기술에 대한 적극적인 수요가 발생하지는 않고 있다.

개발자들 사이에서도 LCNC는 아직 다소 거리감이 있는 트렌드다. 다수의 개발자들은 LCNC 기술에 대해 들어본 적이 있다고 하면서도 한동안 본인의 업무에 직접 영향을 주지는 않을 것으로 예상했다. 해당 단어의 의미도 알고 전 세계적으로 주목받는 트렌드라는 것도 알지만, 아직 일선 현장에서는 필요성을 느끼지 못하고 있으며 접할 수 있는 정보도 제한적이라는 이유다. 또한 과거의 코딩 자동화 도구들을 경험해본 개발자들은 LCNC 자체에 대해 부정적인 인식을 가지고 있다고 답하기도 했다.

이에 대해 업계 관계자들은 LCNC 시장이 활성화되기 위해서는 산업계 전반의 인식이 바뀌어야 한다고 조언했다. 분명 LCNC가 SW 개발 현장의 모든 문제를 해결할 수 있는 만능열쇠는 아니지만, 개발자 태부족을 겪고 있는 대다수 기업에서는 생산성 극대화라는 장점이 큰 역할을 할 수 있다. 이를 실제 프로젝트를 통해 증명해나가면서 산업계의 인식을 바꿔나가는 것이 LCNC 기술을 제공하는 기업들의 당면 과제다.

이를 위해 LCNC 기업들은 국내 시장의 LCNC 인식 개선을 앞당기기 위한 단체 행동에 나섰다. 지난 7월에는 국내 LCNC 기업 9개사가 모인 노코드‧로우코드 협의회가 출범했다. 협의회 초대 회장은 비아이매트릭스 배영근 대표가 맡았다. 협의회는 LCNC 기술 활성화와 관련 산업 발전을 통해 국내 개발자 인력난 문제 해결에 앞장서겠다는 목표다. LCNC 기술 고도화와 관련 시장 파악, 공동 마케팅을 통한 성공 사례 마련과 인식 개선은 물론, 시장 활성화를 위한 정부 정책 제언 등에도 적극적으로 협력한다.

[인터뷰] “고군분투하던 회원사들의 힘 모아 산업계 변화 만들어나갈 것”
배영근 노코드‧로우코드 협의회 회장, 비아이매트릭스 대표

 

코로나19 팬데믹 이후에 전 산업계에서 SW 개발자 인력 부족을 겪고 있다. 정부에서는 개발자 수급을 위해 교육 프로그램 개발에 많은 예산을 투입하고 있으며, 이를 통해 대학교나 학원 등지에서 지금도 많은 개발자들이 양성되고 있다. 하지만 이들이 산업 현장에서 제 구실을 하기 위해서는 최소한 3년 이상은 기다려야 한다. 앞으로도 여전히 2~3년 동안은 대다수 기업들이 개발자 수급에 어려움을 겪을 것이다. 이처럼 개발자가 부족한 현장에서는 LCNC 기술을 통한 개발 생산성 향상을 통해 많은 성과를 거둘 수 있을 것이다.

AI나 빅데이터, 메타버스 등 최신 기술 분야에는 뛰어난 경험과 역량을 갖춘 전문 개발자가 필요하다. 이런 분야에는 LCNC 기술과 제품들이 큰 활약을 하지 못할 것이다. 그렇다면 상대적으로 개발이 쉬운 분야에서 역량을 쌓은 개발자들을 일부 최신 기술 분야로 투입하고, 해당 분야에 부족한 생산량을 LCNC 기술로 메꾸면 산업 전반의 개발자 부족 문제를 해결할 수 있을 것이다.

지금 국내에서 LCNC 기술이 활성화되지 못하는 것에는 담당자들의 인식 부족이 큰 영향을 미치고 있다고 생각한다. 이들은 LCNC 기술을 너무 과대평가해 어려움을 느끼거나, 혹은 너무 과소평가하며 얕잡아보고 있다. LCNC는 갑자기 툭 떨어진 복잡한 기술이 아니라 이미 여러 분야에서 적용돼왔던 친근한 기술이며, 적극적인 기술 도입을 통해 개발 생산성이라는 측면에서 혁신을 가져올 수 있는 기술이다.

일례로 비아이매트릭스는 몇 십년 간 국내 시장에 BI(Business Intelligence) 솔루션을 제공해왔는데, BI와 로우코드는 멀리 떨어져있는 기술이 아니다. BI 솔루션은 조직이 보유하고 있는 데이터를 분석하고 시각화해서 보여준다. 분석할 데이터를 고르고 몇 가지 설정을 하면 BI 솔루션이 알아서 DB에서 데이터를 탐색하고 차트로 만들어주는데, 요즘에는 이 과정에서 복잡한 코딩이나 스크립트를 짤 필요는 없다. 몇 번의 클릭과 간단한 수치 입력이 필요할 뿐이다. 몇 년 전에는 이러한 BI 프로세스에 셀프서비스 BI(Self-service BI)라는 이름이 붙었다. LCNC 기술이 주목받고 있는 시점에 다시 돌이켜보면, 비아이매트릭스의 BI 솔루션은 이미 20년 전부터 로우코드 기술을 적용했던 셈이다.

그동안 국내 LCNC 기업들이 관련 시장 활성화와 기술 소개를 위해 많은 노력을 기울였다. 하지만 국내 SW 산업계에서 전통적으로 시스템을 구축하던 방법론에는 LCNC 기술이 잘 먹혀들지 않았다. 그러다가 지금까지처럼 제각기 흩어져 고군분투해서는 대대적인 분위기 전환을 만들어내지 못할 것이라는 공감대가 만들어져, 노코드‧로우코드 협의회라는 이름으로 모이게 됐다. 관련 기술을 연구했던 기업들끼리 시장 분위기를 주도해 전 산업계에 만연한 개발자 부족 문제를 해결하고, 장기적으로는 글로벌 시장 진출의 기회도 함께 만들어나갈 계획이다.

 

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