본문 바로가기

기술-IT-인터넷 동향

소스 코드를 자동으로 생성해주는 개발 도구

반응형

 

소스 코드를 자동으로 생성해주는 개발 도구 

 

SW를 개발할 때 일부 작업들을 자동화하여 생산성을 올리는 RAD(“신속한 응용 SW 개발”을 의미하는 Rapid Application Development의 줄임말이며, 지원하는 프로그래밍 언어가 제한되는 경우도 있음.) 개발도구, 모델링을 통해 오류 없이 신속한 개발을 추구하는 MDD(Model Driven Development의 줄임말로 우리말로는 “모델 주도 개발”로 번역할 수 있음. MDD에 관한 보다 자세한 내용은 진회승, 김태호(2015), “MDD(모델 주도 개발) 유용성 논의와 사례 분석”, SPRi 이슈리포트 2015-012호 참조.) 방법론이 탄생하였다.

 

RAD 개발도구: 그래픽 사용자 환경이 보편화되자 버튼, 스크롤바, 입력창 같은 사용자 인터페이스를 빠르고 쉽게 제작하는 델파이와 같은 도구가 등장하면서 개발자가 핵심적인 알고리즘 설계와 코딩에 집중할 수 있게 되었고, 최종사용자가 SW의 외관을 빨리 확인할 수 있는 프로토타입 개발을 중시하는 RAD 방법론과 밀접한 관련을 가지고 있다. 

 

RAD 도구를 이용한 대화상자 예시. 출처: 첨부 자료 1

 

 

UML(통합 모델링 언어(Unified Modeling Language)는 소프트웨어 공학에서 사용되는 표준화(97년)된 범용 모델링 언어임)과 MDD: SW개발 시 설계가 중요하다는 점에 착안해 모델링 언어로 작성된 설계도를 만들고, 해당 모델을 SW도구로 소스코드로 변환하여 SW를 개발하려는 시도가 등장하였다.  

 

­ UML: SW에서 각종 데이터를 저장하고 동작을 수행하는 객체(Object)를 식별하고 그들 간의 관계를 표현하기 위한 모델링 언어로 90년대 중반부터 개발된 국제표준으로 점점 용도가 확장되었음.

­ MDD: 금융, 제조 등 각 분야에서 목표하는 업무 프로세스를 UML 또는 도메인 특화 언어 등으로 모델링한 후 필요한 산출물과 소스코드를 자동으로 생성하는 개발방법을 말함 

 

 

RAD 개발도구, UML과 MDD의 장단점

 

ㅇ (RAD 개발도구) 그래픽 사용자 환경의 SW개발이 편리해 졌으나 개발된 SW의 성능이 저하되는 단점과 SW개발자의 보조도구인 측면이 강함

­ RAD로 개발한 SW는 그렇지 않은 SW에 비해 메모리 요구량이 커지거나 동작 속도가 느린 편이어서 이를 개선하기 위한 노력이 지속 추진됨

­ 프로그램 완성을 위해서는 프로그래밍 언어로 소스코드를 작성해야하는 부분이 남아 있어 기존 SW개발자의 보조도구인 측면이 강했음

 

ㅇ (UML과 MDD) SW설계가 가시화되고 산출물이 신속하게 확보되는 장점이 있었으나, SW개발자가 모델링 언어를 새로 익혀야 하며 자동 생성된 소스코드는 인간인 SW개발자가 이해하기 어려운 단점이 있었음

­ UML 등으로 표현된 업무 프로세스를 현업 담당자가 같이 리뷰하기 때문에 요구사항이 명확해져 SW개발 프로젝트의 성공률을 높일 수 있음

­ 모델링 언어와 MDD 도구를 수정 또는 자체 개발해야 하는 경우도 있어 모든 SW 개발에 적합하다고 보기 어려우며 기업 업무에 특화된 편임 

 

출처: 디지털 전환을 촉진하는 NoCode와 RPA, 강송희, 이현승, 유호석, ISSUE REPORT l 2021.06.29 IS-117, 소프트웨어 정책 연구소 

 

 

코비 스멀더스

Cobie Smulders

 

 

 

반응형

캐어랩 고객 지원

취업, 창업의 막막함, 외주 관리, 제품 부재!

당신의 고민은 무엇입니까? 현실과 동떨어진 교육, 실패만 반복하는 외주 계약, 아이디어는 있지만 구현할 기술이 없는 막막함.

우리는 알고 있습니다. 문제의 원인은 '명확한 학습, 실전 경험과 신뢰할 수 있는 기술력의 부재'에서 시작됩니다.

이제 고민을 멈추고, 캐어랩을 만나세요!

코딩(펌웨어), 전자부품과 디지털 회로설계, PCB 설계 제작, 고객(시장/수출) 발굴과 마케팅 전략으로 당신을 지원합니다.

제품 설계의 고수는 성공이 만든 게 아니라 실패가 만듭니다. 아이디어를 양산 가능한 제품으로!

귀사의 제품을 만드세요. 교육과 개발 실적으로 신뢰할 수 있는 파트너를 확보하세요.

지난 30년 여정, 캐어랩이 얻은 모든 것을 함께 나누고 싶습니다.

카카오 채널 추가하기

카톡 채팅방에서 무엇이든 물어보세요

당신의 성공을 위해 캐어랩과 함께 하세요.

캐어랩 온라인 채널 바로가기

캐어랩