생성형 AI에 대응한 SW 인재 양성 정책 방향 연구 (A study on Policy Directions for Fostering Software Talent in Response to Generative AI) 본문듣기
작성시간
첨부파일
관련링크
본문
◈ 연구 목적 및 필요성
생성형 AI의 혁신적인 기술 발전으로 편리한 사용 방법과 접근, 창의적인 정보 생성, 효율적 정보 확보 등의 장점으로 생성형 AI의 활용이 확대되고 있다. 생성형 AI는 경제, 사회, 교육 등 전반에 영향을 미칠 것으로 예상되며, 이미 그 사용 효과가 증명되고 있다. 생성형 AI는 특히 기술자 그룹에 많은 영향을 미칠 것으로 예측되며, 코드 자동 생산, 코드 자동 완성 등 SW 개발 관련 기능의 효율성과 편리성으로 개발자들이 현업에서 이미 많이 활용하고 있다. 생성형 AI 기술 발전 및 업무 적용 속도로 보아 생성형 AI에 의한 개발 환경, 개발 방식, 역량 등의 변화는 매우 클 것으로 예상된다. 이러한 변화에 대한 사회·경제적 혼선을 줄이고 관련 인력양성의 기회로 연결할 수 있도록 디지털 인력양성 정책의 변화가 필요하다. 위 배경 및 필요성에 따라 본 연구는 생성형 AI가 개발 업무에 미치는 영향을 분석하고, 이에 따른 디지털 인재양성 정책 방향을 제시하고자 한다
◈ 연구 내용 및 결과
본 연구는 디지털 인력 중 특히 수요가 많은 개발자에 초점을 맞춰, 그들의 작업에서 코드 자동 생성 기능 등에 의한 생성형 AI의 영향도를 분석한다. 이를 기반으로 개발자 및 디지털 전환 인력의 역할 변화를 고려하여 생성형 AI 시대의 디지털 인재 양성 정책 변화 및 방향을 모색한다. 디지털 인재를 넓은 의미에서‘디지털 신기술을 보유하고 디지털 전환을 주도하는 사람과 디지털 기술을 활용하는 모든 사람을 포함한 인력’으로 정의하고, 해외 기관 및 정부 부처가 공통적으로 제시한 디지털 신기술은 AI, 빅데이터, 소프트웨어 등임을 확인하였다. 디지털 인재 역량 요구사항 중 가장 수요가 많고 중요성이 커지는 기술은 Java, 파이썬, SQL 등 프로그래밍 언어와 애자일 방법론, 컴퓨터 공학 등 개발 관련 기술로 조사되었으며, 디지털 기술 중 2023년 선풍을 일으킨 생성형 AI는 코딩 보조 도구로써 코드 자동 생성, 자동 테스트, 주석 작성 등에 뛰어난 성능을 가지고 있어 프로그래밍 작업 시 영향을 많이 미칠 것으로 예상된다. 이에 따라 생성형 AI가 개발자 수준, 개발 난이도, 소프트웨어 유형 등 개발 조건에 따라 개발 생산성에 얼마나 영향을 주는지 분석한다.
1) 생성형 AI 기술의 진화
생성형 AI는 딥러닝 기술과 텍스트, 오디오, 이미지 또는 동영상 형태의 방대한 데이터를 활용하여 학습하고, 새로운 콘텐츠를 생성하는 기술이다. 생성형 AI 기술은 1980년대 개발된 신경망, 2006년대 심층 신경망, 2010년대 트랜스포머 모델을 거치면서 성숙하였고, 성능이 향상된 컴퓨팅 파워, 폭발적으로 증가한 데이터를 사용하여 혁신적으로 발전하게 되었다. MS, Amazon, Google 등 빅테크 기업에서는 시장에서 경쟁 우위를 확보하고 새로운 수익원을 창출하기 위해 생성형 AI 기술을 개발하고 혁신적인 서비스를 출시하는 데 매진하고 있다. 자동차, 의료 등의 산업에서도 생성형 AI를 이용한 수익 창출을 위해 차별화된 제품을 개발하고 있을 뿐 아니라 업무 효율성 향상을 위해서도 생성형 AI 기술을 도입하고 있다. 또한 생성형 AI 기술과 관련 인재를 확보·유지하기 위해 총력을 기울이고 있는데, 오픈AI, 구글 등 글로벌 빅테크 기업은 물론 아시아·태평양 지역기업들 또한 생성형 AI 인재 부족을 해결하기 위해 많이 노력하고 있다.
2) 국내·외 디지털 인재 양성 정책
생성형 AI 기술의 진화와 그에 따른 우수 디지털 인재 수급 등의 문제 발생에 신속 대응하기 위해 미·중·영·일본 등 해외 주요국에서는 기존 AI 관련 정책에 더해 다양한 대응방안을 마련하고 있다.
미국의 AI 정책은 글로벌시장에서 AI 경쟁력을 유지하고, 안전하고 신뢰할 수 있는 AI 발전을 추구하는 것이다. AI 인재 확보를 위해 「국가 AI R&D 전략계획」, 「안전하고 신뢰성 있는 AI를 위한 행정명령」 등을 통해 AI 분야에 필요한 기술 인력을 평가하여 교육하고 글로벌 AI 인력 확보를 위해 비자 제도를 개편하였다. 또한 「인공지능교육법」을 제정하여 AI 오용 가능성을 감소시키고, 정부 관련 직원들이 정부의 수요에 가장 적합한 인공지능 시스템을 도입할 수 있도록 하기 위해 연방 행정 각부, 산하기관 등에 AI 교육을 시행하고 있다.
중국은 「고등교육기관 AI 혁신 행동 계획」,「중국 인공지능 인재양성 백서」등을 통해 국가 주도로 AI 인재를 양성하고 있으며, 대학을 중심으로 기업이 보조하는 형태의 인재 양성을 추진하고 있다. 대학에서 실무에 바로 투입할 수 있는 실습 기반 교육을 하고, 빅테크 기업에서는 인공지능 대회, 단기 교육을 통해 실전 경험 강화를 유도하고 인재 인증 제도를 활성화하여 AI 인재 양성을 추진하고 있다.
영국도 「영국 디지털 전략」에서 영국의 기술 기업이 혁신하고 성장하는데 필요한 인력과 자금 확보를 표명하고, 해외 우수 인재 확보를 위해 새로운 비자를 대폭 신설하였다.
일본은 「AI 전략」, 「초·중등 교육 단계에서의 생성형 AI 활용에 관한 잠정적 가이드라인」 등을 발표하고, 초·중등 교육에서부터 수리·데이터사이언스·AI 이론을 학습시키는 한편 첨단 AI 기술과 기술 표준화의 국제주도권 확보를 위해 해외 우수 인재 유치 및 국제 공동 연구를 지원하는 정책과 사업을 펼쳐오고 있다.
주요국은 디지털 인재 양성을 위해 디지털 리터러시 교육과정을 확대하고, 대학 학위프로그램을 확대하는 방향으로 정규교육 프로그램을 개편하고 있다. 기업의 AI 인재 양성을 강조하고 있으며, 글로벌 해외 인재 확보를 위한 제도를 개선하고 있다.
국내에서는 글로벌 AI 시장에서 경쟁력을 갖추기 위해 2023년 4월「초거대 AI 경쟁력 강화 방안」을 발표하고, 「디지털 인재양성 종합방안」등 AI·SW 인력양성의 기존 정책의 기조를 유지하며, 초거대 AI 개발·활용에 전문화된 글로벌 수준의 인재를 추가 양성한다.
3) SW 개발 환경 변화에 따른 개발 업무 변화 분석
생성형 AI 기술이 개발 업무에 미치는 영향에 대해, 요구분석-설계-구현-테스트의 4단계로 구분되는 SW 개발 프로세스를 기준으로 분석하였다. 우선 관련 문헌조사 후 컴퓨터공학과 교수, 개발자와 SW 전문가 등으로 구성된 자문단을 구성하여 구조화된 설문지를 통해 전문가 심층 인터뷰를 수행하였다. 마지막으로 O*NET의 개발자 직무 Task 기반 분석을 수행하였ek.
3-1) 문헌 연구 (SW 개발에 사용되는 AI 및 생성형 AI 기술 관련 연구와 활용 현황)
소프트웨어 코딩을 자동화하기 위해 기존에 특수 목적이나 일부 한정된 사람들이 MDD(모델주도방법론), 로우코드·노코드(LCNC) 도구를 주로 사용하였다. 최근에 널리 퍼진 생성형 AI 개발 도구는 개발자들이 SW 개발 시 일반적인 도구로 활용하고 있다. 동 배경하에, 개발자들이 코드 생성 외의 다른 작업에도 생성형 AI를 얼마나 활용하는지와 활용 가능성에 대해 검토한다.
SW 개발 요구분석 단계는 고객과 소프트웨어 개발 그룹과의 기능에 대한 이해와 협의가 중요하기 때문에 자동화 도구를 활용한 작업이 쉽지 않다. 생성형 AI는 회의 내용을 요약하고, 텍스트 기반의 요구사항을 구조화하는데 제한적으로 활용되고 있다. 연구에서도 사용자 요구사항의 코드 구현 관련 추적성 개선에 관한 연구 등의 소수 연구가 진행되고 있다.
SW 설계 단계는 문헌 자료를 찾기 어려울 정도로 생성형 AI를 많이 활용하지 않는 것으로 조사되었다.
SW 구현 단계에서는 거대언어모델(LLM)의 기술적 특성으로 인해 생성형 AI가 자동 코드 생성 기능이 우수하여, 코드 생성, 코드 자동 완성, 코드 주석 작성, 리버스 엔지니어링(역공학) 등에 개발자들이 이미 많이 활용하고 있었다. 개발자들은 생성형 AI 기술을 이용한 상용화된 도구인 GitHub Copilot, ChatGPT, AWS CodeWhisperer 및 Tabnine 등을 통해 많은 시간이 소요되고 반복 작업이 많은 코드 생성에 대해 이를 많이 활용하고 있다. 물론 생성형 AI가 코드를 완벽하게 생성하는 것은 아니어서, 컴파일되지 않는 코드, 보안 취약성, 라이선스 침해 등의 문제가 있는 코드에 대해서는 개발자의 수정을 반드시 필요로 한다. 개발자들은 생성형 AI 개발 도구를 지원하는 프로그램 언어 종류, 자동 코드 생성·코드 자동완성·코드 리뷰 등 코딩 관련 기능, 테스트 및 보안 검증 기능 여부에 따라 각 도구를 선택하여 활용하고 있다. 연구에서는 OpenAI, MS, 구글 등 LLM 관련 업체의 생성형 AI 도구의 원리 및 개선, HumanEval 등으로 성능을 테스트한 관련 논문들을 상당히 많이 발표되어 있다.
문헌 조사상에서 생성형 AI의 영향을 가장 많이 받을 것으로 예측된 단계는 SW 테스트 단계이다. 테스트 케이스의 우선순위 선정, 오류 원인 분석, 테스트 케이스 생성 등에 생성형 AI를 활용할 수 있다고 조사되었다. 생성형 AI를 활용한 테스트 데이터 생성, 테스트에 유용한 테스트 케이스 생산을 통한 테스트 커버리지 확대 등의 논문이 있다. 테스팅 자동화, 관리, 데이터 생성, 시나리오 작성 등을 지원하는 AI 증강 테스팅 도구들 또한 시장에 많이 출시되었다.
SW 구현, 테스트 이외에도 생성형 AI 기술은 초급 개발자 교육에도 활용될 뿐만 아니라 SW 컴파일러의 오류메시지를 이해하기 쉽게 생성하거나, COBOL 등 기존 프로그램에서 사용하던 언어를현재 운영하는 시스템에 맞는 프로그램 언어로 변경하는 작업 등에서도 활용되고 있다.
이러한 생성형 AI의 여러 코딩 관련 기능으로 인한 개발자 생산성 향상의 가능성에도 불구하고, 코드 생성 시 LLM에 최신 데이터 미적용, 환각(Hallucination), 보안 취약성, 저작권 침해, 내부 정보 유출 등에 문제가 있으며, 이로 인해 개발 생산성이 저하되고 개발 비용이 증가할 수 있다. 천문학적 LLM 개발 및 유지 비용도 간과할 수 없는 부분이다.
3-2) 전문가 심층 인터뷰 및 전문가 설문 분석
생성형 AI 개발 도구 사용 현황·발전 방향, 디지털 인재상, 개발자 수준, 디지털 인재 확보 현황 등에 대해 전문가들의 전문성에 따라 관련 분야의 심층 인터뷰를 시행하였다. 또한 SW 개발 프로세스 단계별로 개발자와 전문가들의 사용 현황과 의견을 물었다.
개발자들은 소프트웨어 구현 시 생성형 AI 개발 도구를 기본적으로 활용하고 있는데, 구현 및 테스트 단계에서 개발 코드 생성 및 검증은 물론, 개발 코드 설명이나 개발문서 작성에도 활용하는 것으로 조사되었다. 여러 생성형 AI 개발 도구 중 대부분 개발자가 깃허브를 이용하여 접근이 용이한 Copilot을 활용하고 있었으며, 일부 전문가가 Tabnine를 사용하고 있었다. 대화형 플랫폼으로 접근성이 가장 좋은 ChatGPT는 개발자가 코드에 대한 도움을 받거나, 새로운 기능에 대한 아이디어를 얻는 용도로 사용하는 것으로 조사되었다. 전문가들은 생성형 AI를 활용하면 초급 개발자가 빠르게 개발 역량을 높일 수 있는 장점도 있다고 했다. 그러나 단점으로는 최신 데이터 학습에 제한적인 LLM의 특성 때문에 빠른 주기로 기술이 변하는 프론트엔드 개발에는 활용하기 어렵다는 의견이 있었다.
개발자들은 테스트의 경우, 테스트 코드를 자동화하는 것과 프로그램의 단일 기능에 대한 테스트는 가능하나, 비즈니스 로직에 대한 전반적인 테스트는 불가하다고 했다. 그러나 테스트는 상당한 시간이 소요되고 반복적인 업무가 많아 생성형 AI를 이용하면 가장 개발 효율성을 높일 수 있는 단계인 것으로 분석된다. 생성형 AI 기술을 이용한 테스트 도구는 기존 테스트 도구의 단점인 적절한 테스트 커버리지를 위한 최소의 테스트 케이스 생성과 테스트 데이터 생산으로 인한 테스트 데이터 부족 문제를 해결한다고 했다.
전문가들은 요구사항 분석 단계에서는 생성형 AI를 활용하여 고객의 요구사항을 듣고 고객 요청의 맥락까지 파악하는 것은 어렵다고 조언하였다. 개발자들은 코딩작업에 생성형 AI 개발 도구를 사용하는 데에 비교적 긍적적이었으나, 소프트웨어 개발 공정 전체에 생성형 AI 개발 도구를 활용하는 데는 아직까지 어느정도 제한이 있다는 의견이 많았다.
초급 개발자보다는 중급 개발자의 개발 생산성 향상 정도가 높았는데, 이는 초급 개발자의 경우 생성형 AI의 환각(Hallucination)으로 인한 잘못된 코드를 분별하는 데 어려움을 겪기 때문인 것으로 판단된다. 또한 생성형 AI가 개발자나 SW 전문가가 원하는 정보를 생성하기 위해서는 컴퓨터 공학에 대한 기본 개념이 있어야 하고, 프롬프트 엔지리어링이 매우 중요하다는 의견이 지배적이었다. 생성형 AI 출현 이후에 전문 개발자들은 생성형 AI를 활용하여 빠르게 지식 습득을 하고 있으며,기업에서는 지식이 많은 직원보다 주어진 문제를 인식하고 해결할 수 있는 역량을 가진 직원을 선호하는 것으로 나타났다.
교수들은 대학에서 학생들이 과제나 SW 프로그래밍에 생성형 AI 도구를 빈번하게 활용하고 있으며, 생성형 AI로 인해 소프트웨어 관련 비전공 학생들의 코딩 실력이 늘었다고 답변했다. 논문 작성에도 생성형 AI를 활용하며, 일부 학회는 논문에 생성형 AI 활용을 허용하고 있다고 했다.
3-3) O*NET의 개발 관련 직무의 작업(Task), 세부작업(DWA)별 생성형 AI 기술의 영향을 검토
컴퓨터 프로그래머, 소프트웨어 개발자, 웹 개발자의 세부 업무(DWA) 중 개발과 관련된 것과 생성형 AI에 영향을 받는 DWA를 추출하고, 개발자 작업(Task)과 비교하여, SW 개발 프로세스인 요구분석, 설계, 구현, 테스트 단계별로 생성형 AI에 의한 영향도를 분석한다.
SW 개발 업무 중 생성형 AI의 영향도가 가장 큰 작업(DWA)은 구현 단계의 컴퓨터 프로그래밍 코드 작성(Write computer programming code), 애플리케이션 개발(Develop computer or online applications), 테스트 단계의 소프트웨어 테스트(Test software performance), 소프트웨어 테스트 시나리오 및 테스트 케이스 제작(Develop testing routines or procedures), 기타 소프트웨어 사용 설명서 작성(Prepare instruction manuals) 등이었다. 컴퓨터 프로그래머, 소프트웨어 개발자, 웹 개발자 중 생성형 AI의 영향을 가장 가장 많이 받는 직무는 컴퓨터 프로그래머로 분석되었다.
AI나 생성형 AI의 직업에 미치는 선행연구들에서도 “AI나 생성형 AI 역량”과 “모든 직업에서 수행하는 직무”를 비교하여 “각 직업에 대한 생성형 AI의 영향도”를 분석하였으며, 본 연구는 “개발자 업무와 직업”에 관한 연구를 문헌 연구, 전문가 심층 인터뷰, 그리고 선행연구의 연구 방법(AI 역량과 직업 역량 비교)을 활용하여 수행하고 분석을 시도하였다.
3-4) 생성형 AI가 개발 업무에 미치는 영향에 대한 최종 결과 분석
문헌 연구, 전문가 심층 인터뷰, O*NET 자료 분석 결과, SW 개발 프로세스 중 생성형 AI 기술의 영향을 가장 많이 받는 단계는 구현 단계였으며, 개발자가 생성형 AI를 활용하여 구현 단계에서 할 수 있는 작업은 “문헌이나 인터넷 등에 이미 포함되어 있는 코드”를 이용한 코드 생성과 통합개발환경(IDE)이 제공하는 함수를 사용할 때 “코드 자동 완성” 기능을 활용하는 것이다. 그러나 개발 단계에서 비즈니스 로직이 복잡하거나 개발 코드가 최신 기술을 활용해야 하는 코드를 작성해야 할 때는 생성형 AI 개발 도구를 활용하기 어렵다. 생성형 AI의 영향으로 전문 개발자가 아닌 소프트웨어 산업 외의 다른 산업에 종사하는 도메인 전문가들의 프로그래밍이 가능해지며, 디지털 전문가로 전환 가능성이 커질 것으로 예상된다.
종합적으로 SW 개발 단계 중 요구분석과 설계 단계에서는 생성형 AI 활용도가 낮아 SW 개발 시 개발 생산성 향상에 많은 영향을 주지는 못하는 것으로 분석된다. 또한 개발자 업무 중 컴퓨터 하드웨어 엔지니어와 협력하여 하드웨어 및 소프트웨어 시스템을 통합하고, 고객, 마케팅 담당자, 소프트웨어 보안 담당자 등 소프트웨어 개발에 중요한 이해관계자와의 협상 등 직접적인 개발 업무에 속하는 않는 작업들은 생성형 AI를 활용하기 어렵다.
4) 생성형 AI 시대에 대응한 디지털 인재양성
생성형 AI가 개발자에 미치는 영향 분석 결과와 해외 주요국 및 국내 AI 정책을 분석하여 생성형 AI 디지털 인재 양성 정책 방향을 검토하였다.
1. 디지털 인력 확보 기본 방향
- 디지털 교육 저변 확대 및 개인 맞춤 교육
- 생성형 AI 기술의 효율적 활용을 위한 디지털 교육
- 생성형 AI를 활용한 연구와 디지털 교육
2. 디지털 인재 양성을 위한 교육 환경 구축
- 체계적 교육시스템 구축
- 디지털 교육을 위한 학습 시스템과 평가시스템 구축
3. 지속적이고 효율적인 인재 확보 추진
- 글로벌 인재 확보
- 디지털 인재 네트워킹 활성화 지원
본 연구는 요구사항 분석, 설계, 구현, 테스트의 개발 프로세스 단계별로 문헌 연구, 심층 인터뷰, O*NET 데이터를 이용하여 생성형 AI 영향에 의한 개발환경 변화를 다각도로 분석하여, 생성형 AI 시대의 인재양성 정책를 제안하였다는데 의의가 있다. 향후 연구로는 생성형 AI 활용이 어려운 개발 관련 업무나 교육에 생성형 AI 기술을 적용하여 개발 생산성을 높이고 디지털 전환을 가속하게 하는 방안에 대한 연구가 필요하겠다.
<ifsPOST>
※ 이 자료는 소프트웨어정책연구소(SPRi)가 발간한 [연구보고서 RE-158]에 실린 것으로 연구소의 동의를 얻어 게재합니다. <편집자> |
댓글목록
등록된 댓글이 없습니다.