KR101734306B1 - 멀티 프로그램 코드 자동 개발 시스템 - Google Patents

멀티 프로그램 코드 자동 개발 시스템 Download PDF

Info

Publication number
KR101734306B1
KR101734306B1 KR1020160021717A KR20160021717A KR101734306B1 KR 101734306 B1 KR101734306 B1 KR 101734306B1 KR 1020160021717 A KR1020160021717 A KR 1020160021717A KR 20160021717 A KR20160021717 A KR 20160021717A KR 101734306 B1 KR101734306 B1 KR 101734306B1
Authority
KR
South Korea
Prior art keywords
module
program
information
user
input
Prior art date
Application number
KR1020160021717A
Other languages
English (en)
Inventor
이민호
최재훈
Original Assignee
주식회사 핀인사이트
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 핀인사이트 filed Critical 주식회사 핀인사이트
Priority to KR1020160021717A priority Critical patent/KR101734306B1/ko
Application granted granted Critical
Publication of KR101734306B1 publication Critical patent/KR101734306B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/31Programming languages or programming paradigms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)

Abstract

다종의 프로그램 언어를 통하여 소스 코드 및 배치 파일을 포함하는 특정 프로세스를 처리하는 프로그램을 개발 시 자동으로 사용자의 환경에 맞는 언어로 프로그램을 개발할 수 있는 기술을 제공한다. 본 발명의 일 실시예에 따른 멀티 프로그램 코드 자동 개발 시스템은, 기설정된 디폴트 언어의 코드로 이루어짐으로써, 프로그램 소스 코드를 구성하는 복수의 프로세스 각각에 대응하는 코드 모듈과 각 프로세스 및 파일을 실행하기 위한 배치 모듈에 관한 정보인 모듈 정보, 및 유저의 식별 정보, 다수의 프로그램 언어 정보 및 각 유저의 식별 정보와 프로그램 언어 정보 간의 매칭 정보를 포함하는 유저 정보를 저장하는 데이터베이스부; 유저 단말로부터 모듈 정보에 대한 호출 입력인 제1 입력을 수신 시, 상기 데이터베이스부로부터 호출 입력에 대응하는 모듈 정보를 로드하고, 유저 단말로부터 로드된 각 모듈 정보 사이의 결합 순서에 대한 설정 입력인 제2 입력을 수신 시, 로드된 모듈 정보 사이의 결합 순서를 설정하여 기설정된 디폴트 언어로 구성된 프로그램 소스 코드 및 배치 스케줄러를 포함하는 제1 프로그램을 생성하는 제1 프로그램 생성 모듈; 및 상기 데이터베이스부로부터 유저 정보를 로드하고, 로드된 유저 정보를 이용하여 제1 프로그램의 코드를, 상기 디폴트 언어와 다종의 프로그램 언어 사이의 모듈 정보별 매칭 정보에 따라서, 유저 정보에 매칭된 프로그램 언어로 자동으로 변환하여 제2 프로그램을 생성하는 제2 프로그램 생성 모듈;을 포함하는 것을 특징으로 한다.

Description

멀티 프로그램 코드 자동 개발 시스템{Multi program code automatic developing system}
본 발명은 다양한 언어의 프로그램 코드를 일원화된 유저 인터페이스를 통하여 개발할 수 있도록 하기 위한 기술로서, 구체적으로는 단일화된 인터페이스를 통하여 프로그램을 구성하는 프로세스를 입력 시 유저에 맞춤화된 언어로 구성되는 프로그램 코드를 자동으로 개발하기 위한 기술에 관한 것이다.
다양한 프로세스를 처리하는 프로그램은 기본적으로 특정 언어, 즉 프로그램 랭귀지(Program Language)로 이루어진 소스 코드 및 명령 인터프리터에 의하여 실행되도록 고안된 명령어들을 포함하는 배치 파일로 이루어진다. 소스 코드는 언어마다 서로 다른 텍스트로 구성되며, 프로그램을 기계언어로 번역하기 전 인간이 이해할 수 있는 명령어들을 포함하게 된다.
소스 코드 및 배치 파일은 각 언어마다 서로 다르게 구성되는 것이 일반적이기 때문에, 특정 프로그램을 작성 시에 사용자들은 해당 언어를 능숙하게 이용할 수 있을 정도의 전문성이 요구되며, 난이도의 경중은 있더라도 다른 언어를 습득하는 데 어려움이 있다.
특히, 같은 프로세스를 처리하는 데 있어서, 서로 다른 언어를 통하여 프로그램을 개발하는 경우에는, 각기 다른 언어로 직접 소스 코드 및 배치 파일을 작성해야 하기 때문에, 프로그램 개발에 있어서 호환성이 문제시되고 있으며, 인적 시간적 낭비가 불가피한 문제점이 지적되어 왔다.
이에 따라서 한국등록특허 제1082797호 등에서는, 언어 코드를 다른 코드로 변환하기 위하여, 언어 코드를 구분하고, 하드웨어 부분 코드를 다른 언어로 변환하는 기술 등을 제시하고 있다.
그러나 이러한 경우에도, 특정 언어 사이에서만 제한적인 부분에서 코드의 변환이 가능하고, 이에 따라서 프로그램을 다양한 언어로 개발하는 데에는 한계가 있으며, 이에 따라서 다종의 프로그램 코드를 개발하는 데 문제점이 있다.
이에 본 발명은, 다종의 프로그램 언어를 통하여 소스 코드 및 배치 파일을 포함하는 특정 프로세스를 처리하는 프로그램을 개발하는 데 있어서, 그래픽 유저 인터페이스를 통하여 간단하게 사용자가 원하는 프로세스를 입력하게 되면, 사용자의 환경에 맞는 언어로 프로그램을 자동으로 개발하도록 하는 기술을 제공하는 데 그 목적이 있다.
상기 목적을 달성하기 위하여, 본 발명의 일 실시예에 따른 멀티 프로그램 코드 자동 개발 시스템은, 기설정된 디폴트 언어의 코드로 이루어짐으로써, 프로그램 소스 코드를 구성하는 복수의 프로세스 각각에 대응하는 코드 모듈과 각 프로세스 및 파일을 실행하기 위한 배치 모듈에 관한 정보인 모듈 정보, 및 유저의 식별 정보, 다수의 프로그램 언어 정보 및 각 유저의 식별 정보와 프로그램 언어 정보 간의 매칭 정보를 포함하는 유저 정보를 저장하는 데이터베이스부; 유저 단말로부터 모듈 정보에 대한 호출 입력인 제1 입력을 수신 시, 상기 데이터베이스부로부터 호출 입력에 대응하는 모듈 정보를 로드하고, 유저 단말로부터 로드된 각 모듈 정보 사이의 결합 순서에 대한 설정 입력인 제2 입력을 수신 시, 로드된 모듈 정보 사이의 결합 순서를 설정하여 기설정된 디폴트 언어로 구성된 프로그램 소스 코드 및 배치 스케줄러를 포함하는 제1 프로그램을 생성하는 제1 프로그램 생성 모듈; 및 상기 데이터베이스부로부터 유저 정보를 로드하고, 로드된 유저 정보를 이용하여 제1 프로그램의 코드를, 상기 디폴트 언어와 다종의 프로그램 언어 사이의 모듈 정보별 매칭 정보에 따라서, 유저 정보에 매칭된 프로그램 언어로 자동으로 변환하여 제2 프로그램을 생성하는 제2 프로그램 생성 모듈;을 포함하는 것을 특징으로 한다.
본 발명에 의하면, 프로그램에서 일반적으로 사용되는 다수의 프로세스를 기준 언어가 되는 디폴트 언어로 구성된 코드로 작성하여 각각 모듈화하고, 해당 모듈을 선택 및 결합 시 각 코드 모듈 및 배치 모듈과 다종의 프로그램 언어 사이의 모듈 정보별 매칭 정보에 따라서, 디폴트 언어로 구성되는 프로그램을 유저 정보에 포함된 프로그램 언어로 자동으로 변환하게 된다.
이에 의하면, 유저들은 모듈을 선택하여 자신이 개발하고자 하는 프로그램에 포함시키는 간단한 동작 만으로 유저가 사용하는 언어로 프로그램을 개발할 수 있다. 즉, 특정 프로세스를 다종의 언어로 자동으로 변환하여 주기 때문에, 특정 프로세스를 자동의 언어로 개발하는 데 있어서 인력 및 시간의 낭비를 최소화할 수 있는 효과가 있다.
도 1은 본 발명의 일 실시예에 따른 멀티 프로그램 코드 자동 개발 시스템의 구성도.
도 2 내지 9는 본 발명의 각 실시예에 따라서 유저 단말의 화면에 출력되는 다수의 인터페이스의 화면 예.
이하 첨부된 도면을 참조하여, 본 발명의 일 실시예에 따른 멀티 프로그램 코드 자동 개발 시스템에 대하여 설명하기로 한다.
이하의 실시 예는 본 발명의 이해를 돕기 위한 상세한 설명이며, 본 발명의 권리 범위를 제한하는 것이 아님은 당연할 것이다. 따라서 본 발명과 동일한 기능을 수행하는 균등한 발명 역시 본 발명의 권리 범위에 속할 것이다.
또한 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
또한, 본 발명의 구성 요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 “연결”, “결합” 또는 “접속” 된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 “연결”, “결합” 또는 “접속”될 수도 있다고 이해되어야 할 것이다.
본 발명의 실시 예에서 “통신”, “통신망” 및 “네트워크”는 동일한 의미로 사용될 수 있다. 상기 세 용어들은, 파일을 사용자 단말, 다른 사용자들의 단말 및 다운로드 서버 사이에서 송수신할 수 있는 유무선의 근거리 및 광역 데이터 송수신망을 의미한다.
이하의 설명에서 “장치” 또는 "서버"란, 사용자들이 접속하여 본 발명의 실시예에 따라서 구현된 멀티 프로그램 코드 자동 개발 시스템의 기능을 이용하기 위하여 접속하게 되는 서버 컴퓨터를 의미한다. 용량이 작거나 이용자 수가 작은 경우 하나의 서버에 다수의 프로그램이 운영될 수 있다. 또한, 용량이 매우 크거나 실시간 접속 인원수가 많은 경우, 그 기능에 따라서 운영을 위한 서버가 하나 이상 존재할 수도 있다.
또한 서버에는 데이터베이스에 대한 미들웨어나 결제 처리를 수행하는 서버들이 연결될 수 있으나, 본 발명에서는 이에 대한 설명은 생략하기로 한다.
도 1은 본 발명의 일 실시예에 따른 멀티 프로그램 코드 자동 개발 시스템의 구성도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 멀티 프로그램 코드 자동 개발 시스템(10, 이하 “시스템”이라 함)은, 데이터베이스부(11), 제1 프로그램 생성부(12), 제2 프로그램 생성부(13), 인터페이스 제공부(14), 리포트 생성부(15) 및 모듈 거래 인터페이스 제공부(16)를 포함하여 이루어지는 것을 특징으로 한다. 본 발명에서 시스템(10)은 적어도 하나의 장치 및 서버 등의 단말에 의하여 구현될 수 있는 것으로 이해될 것이다.
데이터베이스부(11)는 기설정된 디폴트 언어의 코드로 이루어짐으로써, 프로그램 소스 코드를 구성하는 복수의 프로세스 각각에 대응하는 코드 모듈과 각 프로세스 및 파일을 실행하기 위한 배치 모듈에 관한 정보를 포함하는 모듈 정보, 및 각 유저의 식별 정보, 다수의 프로그램 언어 정보 및 각 유저의 식별 정보와 프로그램 언어 정보 간의 매칭 정보를 포함하는 유저 정보를 저장 및 관리하는 기능을 수행한다.
본 발명의 일 실시예에 있어서 디폴트 언어는, 시스템(10) 상에서 독자적으로 구현된 별개의 언어를 의미하며, 다수의 프로그램 언어 정보로 변환 가능한 언어를 의미한다. 물론 본 발명의 다른 실시예에서, 디폴트 언어는 기존의 프로그램 언어 중 어느 한 언어일 수 있다.
본 발명에서 프로그램 소스 코드는, 프로그램을 구성하는 실질적인 소스 코드(Source Code)를 의미한다. 한편 코드 모듈은, 소스 코드에 포함된 복수의 프로세스 각각의 내용을 구현할 수 있는 코드들을 모듈화한 개념이다.
본 발명에서 프로세스란, 소스 코드의 컴파일을 통하여 프로그램이 구동될 시, 프로그램이 수행하는 기능 또는 프로그램을 구성하는 특정 데이터 처리 스텝에 따라서 구분되는 단위 프로그램을 의미한다. 예를 들어, 변수를 선언하는 프로세스, 데이터 테이블을 설정하는 프로세스, 프로그램 실행 시 데이터 처리를 위하여 교환되는 메시지를 설정하는 프로세스 등, 다양한 프로그램 개발 시 필요한 기능 등에 의하여 구분되는 데이터 처리 단위 프로그램을 의미한다. 즉, 전체 소스 코드는 다수의 프로세스가 결합되어 해당 프로세스들에 포함된 코드가 결합됨에 따라서 생성되는 것으로 이해될 것이다.
즉, 코드 모듈은, 각 프로세스에 포함된 코드의 집합체를 의미하며, 코드 모듈에는 해당 코드 모듈에 대응하는 프로세스의 내용과 프로세서를 처리하기 위한 디폴트 언어로 구성된 코드에 대한 정보를 포함한다.
배치 모듈은, 각 프로세스 및 파일을 실행하기 위한 일종의 잡 스케줄러(Job Scheduler)로 이해되는 각 배치 파일을 구성하는 텍스트 코드의 집합을 의미하며, 코드 모듈과 유사한 개념으로 이해될 것이다. 모듈 정보는 코드 모듈과 배치 모듈의 상기의 정보들을 포함하는 정보로서, 코드 모듈과 배치 모듈을 포함하는 상위 개념으로 이해될 것이다.
데이터베이스부(11)는 코드 모듈 및 배치 모듈을 저장 시, 각 코드 모듈 및 배치 모듈의 식별 정보, 코드 모듈 및 배치 모듈을 이루는 코드, 및 코드 모듈 및 배치 모듈의 식별 정보와 각 코드간의 매칭 정보를 관리하여, 유저가 해당 코드 모듈 또는 배치 모듈을 선택 시 매칭 정보에 따라서 해당 모듈에 포함된 코드 및 텍스트 명령어를 호출할 수 있도록 관리한다.
한편 유저의 식별 정보는, 시스템(10)의 기능을 이용하기 위하여 시스템(10)에 접속한 유저의 식별 정보로서, 일반적인 유저의 아이디, 패스워드 및 개인 정보 등을 포함할 수 있고, 본 발명에서는 특징적으로 유저가 사용하는 프로그램의 개발 언어에 대한 프로그램 언어 정보 및 유저의 업종에 관한 정보를 포함할 수 있다.
예를 들어 유저가 기업체인 경우, 해당 기업체에서 기업체의 사업을 위하여 구동하고 있는 프로그램은 해당 기업체의 프로그램 개발자에 따라서 특정 언어가 될 수 있다. 이 경우, 유저의 식별 정보에 그 특정 언어를 식별할 수 있는 정보를 포함하여, 후술할 본 발명의 기능 수행을 위하여 사용할 수 있다.
한편, 데이터베이스부(11)는 유저의 식별 정보 중 적어도 일부를 기설정된 기준에 의하여 카테고리화하여 관리할 수 있다. 예를 들어 기설정된 기준은 유저의 업종 정보가 될 수 있다. 즉, 예를 들어 유저가 투자 자문사인 경우, 해당 유저의 카테고리를 예를 들어 금융업으로 분류하여 관리할 수 있다. 이는 후술할 모듈 정보의 출력에 의한 유저의 프로그램 개발에 사용될 수 있다.
프로그램 언어 정보는 기존의 프로그램 언어들의 식별 정보 및 프로그램 언어에 포함된 코드 정보를 포함한다. 프로그램 언어 정보를 이용하여 디폴트 언어로 구성된 프로그램을 다른 언어로 변환할 수 있도록 한다. 프로그램 언어 정보는 외부의 해당 프로그램 관리 서버(30) 등으로부터 수신하여 관리될 수 있다.
제1 프로그램 생성 모듈(12)은, 유저 단말(20)로부터 모듈 정보에 대한 호출 입력인 제1 입력을 수신하게 되면, 데이터베이스부(11)와의 쿼리 전송 및 메시지 수신을 통하여, 데이터베이스부(11)로부터 호출 입력에 대응하는 모듈 정보를 로드한다. 한편, 유저 단말(20)로부터 로드된 각 모듈 사이의 결합 순서에 대한 설정 입력인 제2 입력을 수신시, 로드된 모듈 정보 사이의 결합 순서를 설정하여 기설정된 디폴트 언어로 구성된 프로그램 소스 코드 및 배치 스케줄러를 포함하는 제1 프로그램을 생성하는 기능을 수행한다.
유저는 후술할 인터페이스를 통하여, 이용 가능한 코드 모듈 및 배치 모듈을 확인하고 이를 호출하기 위한 제1 입력을 수행하게 된다. 또한, 각 프로세스의 실행 순서 및 배치 스케줄러를 통한 파일 실행 순서를 설정하는 제2 입력을 수행하게 된다.
제1 입력과 제2 입력이 수행되면 다수의 프로세스가 순서에 따라서 실행되는 프로그램이 생성되는데, 생성된 프로그램이 전술한 제1 프로그램이다. 제1 프로그램은 상기 언급한 바와 같이 디폴트 언어로 구성되는 것을 특징으로 한다. 다른 언어로 번역하기 위하여 기준이 되는 디폴트 언어로 제1 프로그램을 생성하게 되는 것이다. 제1 프로그램 생성 모듈(12)은 유저 단말(20)로부터의 제1 입력 및 제2 입력에 따라서 실시간으로 제1 프로그램의 생성을 갱신할 수 있다. 즉 유저 단말(20)의 제1 입력 및 제2 입력을 수신하는 즉시 입력 대상이 되고 기 생성되어 있는 제1 프로그램에 제1 입력 및 제2 입력을 반영하여 제1 프로그램을 생성하게 되는 것이다.
제2 프로그램 생성 모듈(13)은, 데이터베이스부(11)로부터 유저 정보를 로드하고, 제1 프로그램 생성 모듈(12)로부터 제1 프로그램에 대응하는 소스 코드를 수신한 뒤, 로드된 유저 정보를 이용하여 제1 프로그램의 코드를 디폴트 언어와 다종의 프로그램 언어 사이의 모듈 정보별 매칭 정보에 따라서, 유저 정보에 매칭된 프로그램 언어로 자동으로 변환하여 제2 프로그램을 생성하는 기능을 수행한다. 즉, 제2 프로그램은, 제1 프로그램의 기능을 동일하게 수행하도록 하기 위하여 제1 프로그램의 디폴트 언어로 구현된 소스 코드를 다른 언어로 변환한 결과 생성되는 프로그램을 의미한다.
상기 언급한 바와 같이 유저 정보에는 특정 프로그램 언어 정보가 매칭되어 있다. 제2 프로그램 생성 모듈(13)은 유저의 개발 언어로 제2 프로그램을 생성하기 위하여, 유저 정보를 이용하게 된다.
본 발명에서 제1 프로그램과 제2 프로그램 사이의 언어 변환 기준은 상기 언급한 바와 같이 코드 모듈 및 배치 모듈, 즉 모듈 정보별로 이루어지거나, 코드 및 언어별 문법별로 이루어질 수 있다.
모듈 정보별 변환은, 각 모듈 정보에 따라서 디폴트 언어와 변환대상 언어 사이의 코드 매칭에 따라서, 해당 모듈 정보에 대응하는 프로세스를 수행할 수 있는 변환대상 언어의 코드를 호출하는 것으로 변환되는 기능을 의미한다. 한편, 코드 및 언어 문법별 변환은, 상세 코드 및 각 언어의 문법별 변환 정보에 따라서 코드를 변환하는 형태를 의미한다.
이때 제1 프로그램 생성 모듈(12)과 동일하게, 제2 프로그램 생성 모듈(13) 역시, 제1 프로그램이 갱신되는 경우, 갱신된 제1 프로그램에 따라서 실시간으로 변환을 수행하여, 제2 프로그램을 실시간으로 갱신하도록 구현될 수 있다.
본 발명의 시스템(10)에는 상기의 기능 수행을 유저 단말(20)의 입력에 따라서 수행하고, 이를 유저 단말(20)에 유저가 인식할 수 있도록 출력하기 위해서, 인터페이스 제공부(14)가 포함될 수 있다.
인터페이스 제공부(14)는 유저가 유저 단말(20)의 출력 수단을 통하여 정보를 확인할 수 있는 메뉴와, 유저 단말(20)의 입력 수단을 통하여 특정 정보를 입력할 수 있도록 선택 가능한 메뉴를 유저 단말(20)에 전송하고 제1 입력 및 제2 입력을 유저 단말(20)로부터 수신하는 기능을 수행한다.
구체적으로, 인터페이스 제공부(14)는 데이터베이스부(11)를 통하여 관리됨으로써 프로그램 생성을 위해 선택 가능한 모듈 정보가 출력되는 모듈 확인 메뉴, 제1 입력에 의하여 로드된 모듈 정보를 적어도 하나의 다이어그램으로 출력하고, 제2 입력에 포함된 입력으로서 다이어그램의 추가, 삭제, 수정 입력 및 다이어그램 사이의 결합 순서를 변경하기 위한 변경 입력 등이 가능한 모듈 제어 메뉴 및 모듈 제어 메뉴에 의하여 구현된 다이어그램들에 의하여 생성된 복수의 프로세스에 대응하는 제2 프로그램의 소스 코드를 출력하는 코드 확인 메뉴를 포함하는 인터페이스를 유저 단말(20)에 출력함으로써, 유저가 유저 단말(20)의 입력 수단을 통해 다이어그램 제어 방식으로 제2 프로그램을 생성할 수 있도록 하는 기능을 수행하게 된다.
본 발명에서 다이어그램은 각 모듈 정보에 포함된 프로세스를 유저가 화면을 통하여 식별할 수 있도록 표시되는 구성으로서, 모듈 정보에는 적어도 하나의 다이어그램이 포함될 수 있다. 또한 하나의 모듈 정보에는 각 다이어그램의 실행 순서를 나타내는 화살표 등의 아이콘이 출력될 수 있다.
예를 들어, 변수를 설정하고 이에 따라서 메시지를 작성하여 송신하는 프로세스에 대응하는 모듈 정보에 있어서, 변수 설정 및 메시지 작성에 대응하는 다이어그램이 해당 모듈 정보에 포함되며, 변수 설정 다이어그램으로부터 메시지 작성 다이어그램을 향하는 화살표 아이콘이 표시되어 각 다이어그램에 대응하는 데이터 처리 순서를 유저가 확인할 수 있도록 할 수 있다. 각 다이어그램에는 해당 다이어그램의 실행 내용에 대하여 유저가 확인할 수 있는 텍스트 등의 정보가 표시될 수 있다.
즉 유저가 제1 입력을 통하여 하나의 모듈 정보를 선택하게 되면, 해당 모듈 정보에 포함된 적어도 하나의 다이어그램 및 실행 순서를 나타내는 아이콘등이 모듈 제어 메뉴에 출력되는 동시에, 해당 모듈 정보에 대응하는 제2 프로그램의 소스 코드가 출력된다.
한편, 모듈 제어 메뉴를 통해서, 사용자들은 일 모듈 정보에 포함된 다이어그램에 있어서 다른 모듈 정보로부터 새로운 다이어그램을 추가하거나, 직접 다이어그램을 작성하여 추가하는 등의 추가 입력, 다이어그램을 해당 모듈 정보로부터 삭제하는 삭제 입력, 다이어그램에 대응하는 소스 코드 또는 다이어그램에 포함된 내용 정보를 수정하는 수정 입력을 제2 입력으로서 수행할 수 있다. 또한, 제2 입력으로서, 화살표 아이콘의 수정 및 다이어그램의 출력 순서의 변경 입력을 통해서, 각 다이어그램 사이의 결합 순서를 변경하기 위한 변경 입력이 가능하다.
한편, 코드 확인 메뉴에 유저가 사용하는 언어로 구성되는 제2 프로그램의 소스 코드가 출력됨이 바람직하나, 제1 프로그램의 소스 코드 역시 추가적으로 출력될 수 있음은 당연할 것이다.
상기와 같은 인터페이스 제공부(14)를 통해, 사용자는 모듈 정보의 선택 및 모듈 정보에 포함된 다이어그램 제어 방식을 통하여 제2 프로그램을 생성하도록 할 수 있다. 즉, 제1 프로그램 생성 모듈(12) 및 제2 프로그램 생성 모듈(13)은 인터페이스 제공부(14)에 의하여 유저 단말(20)에 출력되는 인터페이스에 대한 유저의 제1 입력 및 제2 입력에 대한 다이어그램 제어 입력을 통해서 해당 프로그램을 생성하게 된다.
이때 제1 프로그램 생성 모듈(12) 및 제2 프로그램 생성 모듈(13)의 실시간 프로그램 갱신 기능의 수행에 연동되어, 인터페이스 제공부(14) 역시, 유저 단말(20)로부터의 인터페이스를 통한 제1 입력 및 제2 입력에 따라서, 실시간으로 갱신 및 변경되는 제2 프로그램의 소스 코드 및 배치 스케줄러를 상기 언급한 코드 확인 메뉴 등에 출력하는 기능을 수행할 수 있다.
한편 상술한 바와 같이 데이터베이스부(11)는 유저의 식별 정보를 예를 들어 유저의 업종 정보 등을 의미하는 기설정된 기준에 따라서 카테고리화하여 관리할 수 있다. 이때, 유저가 더욱 편리하게 모듈 정보를 확인할 수 있도록 하기 위하여, 인터페이스 제공부(14)는 모듈 확인 메뉴를 출력하여 유저가 모듈 정보를 확인할 수 있도록 하는 데 있어서, 유저의 식별 정보가 포함된 카테고리에 따라서 선택 가능한 모듈 정보를 서로 다르게 출력하는 기능을 수행할 수 있다.
모듈 정보를 서로 다르게 출력하는 것은, 예를 들어 특정 카테고리에서만 사용할 수 있는 모듈 정보를 출력하거나, 모듈 정보의 출력 형태를 서로 다르게 할 수 있는 것을 의미한다.
예를 들어 기설정된 기준이 상술한 바와 같이 유저의 업종 정보인 경우, 인터페이스 제공부(14)는, 모듈 확인 메뉴를 출력할 때, 동일한 카테고리에 속한 유저들의 제1 입력에 따라서 기 선택된 모듈 정보들의 선택 빈도를 산출하고, 이에 따라서 각 모듈 정보의 출력 순서를 설정하여 모듈 확인 메뉴를 구성 및 유저 단말(20)에 출력하도록 할 수 있다.
모듈 정보는 프로세스에 따라서 마련되는 코드 모듈 또는 배치 모듈이기 때문에, 유저가 이를 일일이 확인하는 데 불편함이 있을 수 있다. 이에 따라서, 유저와 유사한 업종인 다른 유저들이 개발한 프로그램의 생성 과정에 따라서 기 선택된 모듈 정보를 확인하는 경우, 유사 업종의 경우 유사한 프로그램을 개발할 가능성이 높기 때문에, 다른 유저들이 개발한 프로그램에 포함된, 즉 유저들이 선택한 적 있는 모듈 정보를 해당 유저가 사용할 가능성이 높을 것이다.
이에 따라서, 모듈 정보를 상술한 바와 같은 기준에 따라서 서로 다르게 표시함으로써, 유저들이 프로그램 개발을 위하여 모듈 정보를 선택하는 데 가이드를 할 수 있고, 이에 따라서 더욱 간편하고 직관적으로 프로그램을 개발할 수 있는 효과가 있다.
한편, 리포트 생성부(15)는, 유저 단말(20)을 통하여 개발된 프로그램을 직접 하나의 인터페이스 상에서 실행한 결과를 확인할 수 있는 기능을 수행한다. 구체적으로, 리포트 생성부(15)는 외부로부터 입력된 처리 대상 데이터를 제2 프로그램을 통하여 처리한 결과를 기설정된 포맷의 파일로 생성한 리포트 파일을 생성하여 유저 단말(20)에 제공하는 기능을 수행한다.
예를 들어 금융 기관의 경우, 고객의 자산의 변동 사항에 대한 데이터를 처리 대상 데이터로 설정하고, 해당 자산 변동에 따른 고객의 자산 가치를 평가할 수 있는 프로그램을 개발할 수 있다. 본 발명의 시스템(10)에서는, 처리 대상 데이터에 대한 엑셀(Excel) 파일 등의 포맷을 갖는 데이터를 수신 시, 이를 리포트 생성부(15)에 전달하고, 리포트 생성부(15)는 수신한 처리 대상 데이터를 유저가 개발한 프로그램에 적용하여, 상술한 고객의 자산 가치에 대한 기설정된 포맷(예를 들어 엑셀 포맷)의 파일로 생성한 뒤 이를 유저 단말(20) 제공하게 된다.
한편 상기의 리포트 생성부(15)의 기본 기능을 더욱 실질적으로 이용할 수 있도록 하기 위해, 리포트 생성부(15)는 외부(예를 들어 유저 계정의 메일 서버)로부터 수신한 메일의 리스트를 외부의 메일 서버 등으로부터 수신하여 출력하고, 출력된 리스트에 포함된 메일 중 유저 단말(20)로부터 선택된 메일에 첨부된 데이터로부터 처리 대상 데이터를 자동으로 추출하고, 자동으로 추출된 처리 대상 데이터를 제2 프로그램을 통해 처리한 결과를 기설정된 포맷의 파일로 생성한 리포트 파일을 생성하여 유저 단말에 제공하는 기능을 수행할 수 있다.
기존의 데이터 처리의 경우, 외부로부터 엑셀 파일 등이 첨부된 형태로 메일을 받게 되면, 유저가 메일 서버에 직접 접속하여 파일을 유저 단말(20)에 다운로드 한 뒤 이를 프로그램 상에서 로드하여 데이터를 취합 및 처리하여 왔다.
그러나 본 발명의 경우, 리포트 생성부(15)를 유저의 메일 서버와 연동시켜, 유저가 메일 서버를 통하여 수신한 메일을 자동으로 로드할 수 있도록 한다. 이때, 로드되는 메일은 리포트 생성부(15)에 의하여 필터링될 수 있다. 예를 들어, 특정 포맷의 파일(예를 들어 엑셀 파일)이 첨부된 메일만을 리포트 생성부(15)에 출력하도록 할 수 있다. 필터링 기준은, 메일 송신자, 첨부파일의 유무, 첨푸파일의 포맷, 유저의 선택 입력 등 다양한 기준이 사용될 수 있다.
사용자가 일 메일을 선택하게 되면, 리포트 생성부(15)는 해당 메일에 포함된 첨부 파일이나 메일에 기재된 텍스트를 분석하여, 개발된 제2 프로그램에 의하여 처리되는 처리 대상 데이터를 자동으로 추출할 수 있다. 데이터 추출은 텍스트 분석 기법 등을 통하여 이루어질 수 있다.
이렇게 되면, 상기와 같이 리포트 생성부(15)의 처리 결과 데이터 생성 기능을 이용할 수 있게 되며, 사용자가 메일의 첨부 파일을 별도로 접근할 필요가 없이, 리포트 생성부(15)에 의하여 자동으로 메일을 분석하여 해당 메일에 포함된 데이터를 처리한 결과를 한 번에 확인할 수 있도록 하는 효과가 있다.
한편, 데이터 처리 결과에 대한 리포트 파일을 유저 단말(20)이 아닌 다른 단말에 전송해야 하는 경우, 리포트 생성부(15)는 유저 단말(20)로부터 리포트 파일에 대한 메일 송신 입력을 수신하게 된다. 이때 메일 서버와 연동된 리포트 생성부(15)는, 생성된 리포트 파일을 메일 송신 입력에 포함된 메일 주소로 메일 서버를 통하여 송신하게 된다.
이로서, 개발된 프로그램을 별도로 조작할 필요가 없이, 본 발명의 시스템(10) 상에서 한번에 이용할 수 있도록 함으로써, 프로그램 개발뿐 아니라 프로그램을 이용한 업무 처리 역시 한번에 수행할 수 있도록 하여 유저의 편의성을 극대화할 수 있다.
한편 모듈 거래 인터페이스 제공부(16)은, 상술한 모듈 정보를 유저들 사이에서 또는 시스템(10)의 운영자와의 사이에서 거래할 수 있도록 하는 기능을 수행한다.
즉, 모듈 거래 인터페이스 제공부(16)는, 거래 가능한 모듈 정보를 일 화면에 출력하며, 출력된 거래 가능한 모듈 정보에 대한 유저 단말(20)로부터의 구매 입력을 수신 시, 유저 단말(20)와의 과금 처리를 통하여 유저가 각 모듈 정보를 구매할 수 있는 모듈 거래 인터페이스를 유저 단말(20)에 제공하는 기능을 수행한다.
이러한 기능 수행에 따라서, 유저는 자신이 사용하고자 하는 모듈 정보를 자신이 직접 제작할 필요 없이 구매하여 사용할 수 있도록 함으로써, 기 제작된 모듈 정보를 이용하여 자신이 사용하는 언어로 프로그램이 자동 개발될 수 있도록 할 수 있다. 이에 따라 유저의 프로그램 개발에 대한 전문적인 지식의 필요성이 낮아져, 더욱 많은 유저가 프로그램을 자신이 필요한 프로세스에 따라서 개발할 수 있도록 하는 효과가 있다.
한편, 상기의 기능 수행을 위하여 데이터베이스부(11)는 모듈 정보를 관리 시, 기본적으로 유저에게 공통으로 제공되는 기설정된 기본 모듈 정보와, 유저 단말(20)이 모듈 거래 인터페이스를 통하여 구매할 모듈 정보를 유저마다 관리할 수 있다.
또한, 모듈 거래 인터페이스 제공부(16)는 시스템(10)에서 모듈 정보를 일일이 제작해야 함에 따른 업무의 과부하 및 모듈 정보의 제한성을 최소화하기 위하여, 유저 단말(20)로부터 개발된 모듈 정보를 모듈 거래 인터페이스에 출력하도록 하여 유저끼리 서로 개발한 모듈 정보를 거래할 수 있도록 할 수 있다.
즉, 유저 단말(20)로부터 생성된 모듈 정보 및 유저 단말(20)로부터의 판매 요청 입력을 수신하게 되면, 그 모듈 정보를 거래 가능한 모듈 정보로서 모듈 거래 인터페이스 상에 등록하게 된다. 이를 통해서, 유저들은 더욱 다양한 모듈 정보를 구매하여 사용할 수 있게 되어, 프로그램 개발의 자유도를 크게 높일 수 있는 효과가 있다.
도 2 내지 9는 본 발명의 각 실시예에 따라서 유저 단말의 화면에 출력되는 다수의 인터페이스의 화면 예이다. 이하의 설명에 있어서, 도 1에 대한 설명과 중복되는 부분에 대한 설명은 이를 생략하기로 한다.
먼저 도 2를 참조하면, 상술한 인터페이스 제공부에 의하여 제공되는 인터페이스의 일 화면(100)을 확인할 수 있다.
인터페이스 상에서, 유저는 모듈 확인 메뉴(101, 102)를 이용하여 자신이 사용하고자 하는 모듈 정보를 확인하고 이에 대한 그래픽 유저 인터페이스 조작을 통한 선택 입력(제1 입력)을 수행할 수 있다.
제1 입력을 수행하게 되면, 모듈 제어 메뉴(103)를 통해 선택된 모듈 정보에 대응하는 적어도 하나의 다이어그램(104) 및 다이어그램(104) 사이의 수행 순서, 즉 결합 순서를 나타내는 화살표 아이콘(105)을 확인할 수 있으며, 해당 다이어 그램(104) 또는 아이콘(105)에 대한 제어 입력을 통해 제2 입력 등을 수행할 수 있다.
제1 입력과 제2 입력에 따라서 각 모듈 정보에 대한 소스 코드가 생성되는 바, 코드 확인 메뉴(106)를 통해 생성되는 소스 코드 및 실시간으로 갱신 및 변경되는 소스 코드를 확인할 수 있다.
도 3을 참조하면, 도 2의 인터페이스의 일 화면(100)과 다른 인터페이스의 일 화면(110)을 확인할 수 있다. 구체적으로, 도 2의 화면(100)은 소스 코드의 작성 인터페이스이며, 도 3의 화면(110)은 배치 파일의 작성 화면이다.
도 3의 화면(110)을 참조하면, 제1 입력을 통하여 선택 가능한 모듈 정보로서, 배치 파일에 포함된 스케줄러의 각 잡(Job)의 리스트가 도 2와 다른 모듈 확인 메뉴(111)로서 출력되어 유저가 이를 확인하고 선택할 수 있도록 한다.
한편 모듈 제어 메뉴(112)를 통해 도 2와 유사하게 배치 스케줄러에 포함된 각 잡을 다이어그램(113)으로 확인하는 동시에 배치 스케줄러에 따라서 설정된 각 잡의 수행 순서를 나타내는 화살표 아이콘(114)를 확인하고, 이를 제어할 수 있다. 속성 정보(115)를 통하여, 유저는 해당 배치 스케줄러의 속성 정보를 확인할 수 있다.
도 4를 참조하면, 데이터베이스부에 의하여 관리되는 유저 정보(120)를 확인할 수 있다. 유저 정보에는 유저의 이름 등의 식별 정보, 업종 정보, 카테고리 정보 및 유저의 프로그램 개발 언어 정보가 포함되어, 상술한 본 발명의 기능을 수행할 수 있도록 한다.
한편 도 5를 참조하면, 리포트 생성부에 의하여 제공되는 리포트 인터페이스(130)를 확인할 수 있다. 유저는 리포트 리스트 메뉴(131)를 통해 자신이 기 생성하거나 자신이 설정하여 생성된 리포트의 포맷 등을 확인 및 선택할 수 있다.
리포트 다이어그램 메뉴(132)를 통하여 각 코드 및 리포트의 태스크(Task)를 아이콘 형식으로 확인할 수 있다. 한편, 리포트 확인 메뉴(133)를 통해서, 데이터 처리 결과 생성된 기설정된 포맷의 리포트 파일을 확인할 수 있다.
도 6을 참조하면, 도 5와 다른 실시예 상의 리포트 인터페이스(140)를 확인할 수 있다. 리포트 인터페이스(140) 상에 있어서, 메일 수신 메뉴(141)를 통하여 상술한 바와 같이 연동된 유저의 메일 계정으로부터 메일을 수신할 수 있고, 메일 송신 메뉴(142)를 통하여 생성된 리포트 파일을 다른 메일 주소로 송신할 수 있다.
리스트 메뉴(143)를 통해, 유저는 자신이 수신한 메일을 확인하고 특정 메일을 선택할 수 있다. 리포트 확인 메뉴(144)를 통하여, 유저는 자신이 선택한 메일에 포함된 처리 대상 리스트를 프로그램에 의하여 처리한 결과 생성된 리포트 파일을 확인할 수 있다.
도 7을 참조하면, 모듈 거래 인터페이스의 일 화면(150)을 확인할 수 있다. 유저는 자신이 작성한 모듈 정보(151)를 확인할 수 있고, 판매 요청 입력 메뉴(152)를 선택하여 선택한 모듈 정보(151)를 거래 가능한 모듈로서 등록할 수 있다.
도 8을 참조하면, 모듈 거래 인터페이스의 다른 화면(160)을 확인할 수 있다. 유저들은 구매 가능한 모듈 정보들의 리스트(161)를 확인하고, 해당 모듈 정보의 상세한 코드 및 다이어그램 정보(162)를 확인할 수 있다. 구매하기 메뉴(163)를 통하여 선택한 모듈을 구매할 수 있다.
도 9를 참조하면, 모듈 거래 인터페이스의 또 다른 화면(170)을 확인할 수 있다. 유저들은 자신이 구매한 모듈 정보들의 리스트(171)를 확인할 수 있고, 추가하기 메뉴(172)를 통하여 자신이 구매할 모듈 정보를 사용 가능하도록 설정할 수 있다.
이상에서 전술한 본 발명의 실시 예에 따른 멀티 프로그램 코드 자동 개발 시스템의 모든 기능 및 이에 대응하여 출력되는 인터페이스의 기능은, 사용자 단말에 기본적으로 설치된 애플리케이션(이는 단말기에 기본적으로 탑재된 플랫폼이나 운영체제 등에 포함된 프로그램을 포함할 수 있음)에 의해 실행될 수 있고, 사용자가 애플리케이션 스토어 서버, 애플리케이션 또는 해당 서비스와 관련된 웹 서버 등의 애플리케이션 제공 서버를 통해 사용자 단말에 직접 설치한 애플리케이션(즉, 프로그램)에 의해 실행될 수도 있다. 이러한 의미에서, 전술한 본 발명의 실시 예에 따른 멀티 프로그램 코드 자동 개발 시스템의 모든 기능 및 이에 대응하여 출력되는 광고 인터페이스의 기 능은 사용자 단말에 기본적으로 설치되거나 사용자에 의해 직접 설치된 애플리케이션(즉, 프로그램)으로 구현되고 사용자 단말 등의 컴퓨터로 읽을 수 있는 기록매체에 기록될 수 있다.
이러한 프로그램은 컴퓨터에 의해 읽힐 수 있는 기록매체에 기록되고 컴퓨터에 의해 실행됨으로써 전술한 기능들이 실행될 수 있다.
이와 같이, 본 발명의 각 실시 예에 따른 멀티 프로그램 코드 자동 개발 시스템의 모든 기능 및 이에 대응하여 출력되는 광고 인터페이스의 기능을 실행시키기 위하여, 전술한 프로그램은 컴퓨터의 프로세서(CPU)가 읽힐 수 있는 C, C++, JAVA, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다.
이러한 코드는 전술한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Function Code)를 포함할 수 있고, 전술한 기능들을 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수도 있다.
또한, 이러한 코드는 전술한 기능들을 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소 번지)에서 참조 되어야 하는지에 대한 메모리 참조 관련 코드를 더 포함할수 있다.
또한, 컴퓨터의 프로세서가 전술한 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 컴퓨터의 프로세서가 컴퓨터의 통신 모듈(예: 유선 및/또는 무선 통신 모듈)을 이용하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야만 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수도 있다.
그리고 본 발명을 구현하기 위한 기능적인(Functional) 프로그램과 이와 관련된 코드 및 코드 세그먼트 등은, 기록매체를 읽어서 프로그램을 실행시키는 컴퓨터의 시스템 환경 등을 고려하여, 본 발명이 속하는 기술 분야의 프로그래머들에 의해 용이하게 추론되거나 변경될 수도 있다.
이상에서 전술한 바와 같은 프로그램을 기록한 컴퓨터로 읽힐 수 있는 기록매체는, 일 예로, ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 미디어 저장장치 등이 있다.
또한 전술한 바와 같은 프로그램을 기록한 컴퓨터로 읽힐 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 이 경우, 다수의 분산된 컴퓨터 중 어느 하나 이상의 컴퓨터는 상기에 제시된 기능들 중 일부를 실행하고, 그 결과를 다른 분산된 컴퓨터들 중 하나 이상에 그 실행 결과를 전송할 수 있으며, 그 결과를 전송받은 컴퓨터 역시 상기에 제시된 기능들 중 일부를 실행하여, 그 결과를 역시 다른 분산된 컴퓨터들에 제공할 수 있다.
특히, 본 발명의 각 실시 예에 따른 멀티 프로그램 코드 자동 개발 시스템의 모든 기능 및 이에 대응하여 출력되는 광고 인터페이스의 기능을 실행시키기 위한 프로그램인 애플리케이션을 기록한 컴퓨터로 읽을 수 있는 기록매체는, 애플리케이션 스토어 서버(Application Store Server), 애플리케이션 또는 해당 서비스와 관련된 웹 서버 등의 애플리케이션 제공 서버(Application Provider Server)에 포함된 저장매체(예: 하드디스크 등)이거나, 애플리케이션 제공 서버 그 자체일 수도 있다.
본 발명의 각 실시 예에 따른 멀티 프로그램 코드 자동 개발 시스템의 모든 기능 및 이에 대응하여 출력되는 광고 인터페이스의 기능을 실행시키기 위한 프로그램인 애플리케이션을 기록한 기록매체를 읽을 수 있는 컴퓨터는, 일반적인 데스크 탑이나 노트북 등의 일반 PC 뿐만 아니라, 스마트 폰, 태블릿 PC, PDA(Personal Digital Assistants) 및 이동통신 단말기 등의 모바일 단말기를 포함할 수 있으며, 이뿐만 아니라, 컴퓨팅(Computing) 가능한 모든 기기로 해석되어야 할 것이다.
또한, 본 발명의 실시 예에 따른 멀티 프로그램 코드 자동 개발 시스템의 모든 기능 및 이에 대응하여 출력되는 광고 인터페이스의 기능을 실행시키기 위한 프로그램인 애플리케이션을 기록한 기록매체를 읽을 수 있는 컴퓨터가 스마트 폰, 태블릿 PC, PDA(Personal Digital Assistants) 및 이동통신 단말기 등의 모바일 단말기인 경우, 애플리케이션은 애플리케이션 제공 서버에서 일반 PC로 다운로드 되어 동기화 프로그램을 통해 모바일 단말기에 설치될 수도 있다.
이상에서, 본 발명의 실 시예를 구성하는 모든 구성 요소들이 하나로 결합되거나 결합되어 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시 예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실 시예를 구현할 수 있다. 컴퓨터 프로그램의 저장매체로서는 자기 기록매체, 광 기록매체, 등이 포함될 수 있다.
또한, 이상에서 기재된 “포함하다”, “구성하다” 또는 “가지다” 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재될 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. 기술적이거나 과학적인 용어를 포함한 모든 용어들은, 다르게 정의되지 않는 한, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가진다. 사전에 정의된 용어와 같이 일반적으로 사용되는 용어들은 관련 기술의 문맥상의 의미와 일치하는 것으로 해석되어야 하며, 본 발명에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서 본 발명에 개시된 실시 예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시 예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (15)

  1. 기설정된 디폴트 언어의 코드로 이루어짐으로써, 프로그램 소스 코드를 구성하는 복수의 프로세스 각각에 대응하는 코드 모듈과 각 프로세스 및 파일을 실행하기 위한 배치 모듈에 관한 정보인 모듈 정보, 및 유저의 식별 정보, 다수의 프로그램 언어 정보 및 각 유저의 식별 정보와 프로그램 언어 정보 간의 매칭 정보를 포함하는 유저 정보를 저장하는 데이터베이스부;
    유저 단말로부터 모듈 정보에 대한 호출 입력인 제1 입력을 수신 시, 상기 데이터베이스로부터 호출 입력에 대응하는 모듈 정보를 로드하고, 유저 단말로부터 로드된 각 모듈 정보 사이의 결합 순서에 대한 설정 입력인 제2 입력을 수신 시, 로드된 모듈 정보 사이의 결합 순서를 설정하여 기설정된 디폴트 언어로 구성된 프로그램 소스 코드 및 배치 스케줄러를 포함하는 제1 프로그램을 생성하는 제1 프로그램 생성 모듈; 및
    상기 데이터베이스로부터 유저 정보를 로드하고, 로드된 유저 정보를 이용하여 제1 프로그램의 코드를, 상기 디폴트 언어와 다종의 프로그램 언어 사이의 모듈 정보별 매칭 정보에 따라서, 유저 정보에 매칭된 프로그램 언어로 자동으로 변환하여 제2 프로그램을 생성하는 제2 프로그램 생성 모듈;을 포함하고,
    외부로부터 입력된 처리 대상 데이터를 상기 제2 프로그램을 통해 처리한 결과를 기설정된 포맷의 파일로 생성한 리포트 파일을 생성하여 유저 단말에 제공하는 리포트 생성부;를 포함하되,
    상기 리포트 생성부는,
    외부로부터 수신된 메일의 리스트를 출력하고, 출력된 리스트에 포함된 메일 중 유저 단말로부터 선택된 메일에 첨부된 데이터로부터 상기 처리 대상 데이터를 자동으로 추출하고, 상기 자동으로 추출된 처리 대상 데이터를 상기 제2 프로그램을 통해 처리한 결과를 기설정된 포맷의 파일로 생성한 리포트 파일을 생성하여 유저 단말에 제공하며,
    유저 단말로부터 리포트 파일에 대한 메일 송신 입력을 수신 시, 상기 생성된 리포트 파일을 메일 송신 입력에 포함된 메일 주소로 송신하는 것을 특징으로 하는 멀티 프로그램 코드 자동 개발 시스템.
  2. 제1항에 있어서,
    상기 데이터베이스부를 통해 관리되어 프로그램 생성을 위하여 선택 가능한 모듈 정보가 출력되는 모듈 확인 메뉴, 상기 제1 입력에 의하여 로드된 모듈 정보를 적어도 하나의 다이어그램으로 출력하고, 제2 입력에 포함되는 입력으로서 상기 다이어그램의 추가, 삭제, 수정 입력 및 상기 다이어그램 사이의 결합 순서를 변경하기 위한 변경 입력이 가능한 모듈 제어 메뉴 및 상기 다이어그램에 대응하는 제2 프로그램의 소스 코드를 출력하는 코드 확인 메뉴를 포함하는 인터페이스를 유저 단말에 출력하여, 유저가 유저 단말의 입력 수단을 통하여 다이어그램 제어 방식으로 상기 제2 프로그램을 생성할 수 있도록 하는 인터페이스 제공부;를 더 포함하는 것을 특징으로 하는 멀티 프로그램 코드 자동 개발 시스템.
  3. 제2항에 있어서,
    상기 인터페이스 제공부는,
    상기 제1 입력 및 제2 입력에 따라서 실시간으로 변경되는 제2 프로그램의 소스 코드를 출력하는 것을 특징으로 하는 멀티 프로그램 코드 자동 개발 시스템.
  4. 제2항에 있어서,
    상기 데이터베이스부는,
    상기 유저의 식별 정보를 기설정된 기준에 따라서 카테고리화하여 관리하고,
    상기 인터페이스 제공부는
    모듈 확인 메뉴를 출력 시, 유저의 식별 정보가 포함된 카테고리에 따라서 선택 가능한 모듈 정보를 서로 다르게 출력하는 것을 특징으로 하는 멀티 프로그램 코드 자동 개발 시스템.
  5. 제4항에 있어서,
    상기 기설정된 기준은 유저의 식별 정보에 따라서 설정 가능한 유저의 업종 정보인 것을 특징으로 하는 멀티 프로그램 코드 자동 개발 시스템.
  6. 제4항에 있어서,
    상기 인터페이스 제공부는,
    모듈 확인 메뉴를 출력 시, 동일한 카테고리에 속한 유저들의 제1 입력에 따른 모듈 정보의 선택 빈도에 따라서, 각 모듈 정보의 출력 순서를 설정하여 모듈 확인 메뉴를 구성하는 것을 특징으로 하는 멀티 프로그램 코드 자동 개발 시스템.
  7. 제1항에 있어서,
    상기 제1 프로그램 생성 모듈은,
    상기 제1 입력 및 제2 입력에 따라서 실시간으로 제1 프로그램을 갱신하는 것을 특징으로 하는 멀티 프로그램 코드 자동 개발 시스템.
  8. 제7항에 있어서,
    상기 제2 프로그램 생성 모듈은,
    상기 제1 프로그램이 갱신되는 경우, 갱신된 제1 프로그램에 따라 상기 제2 프로그램을 실시간으로 갱신하는 것을 특징으로 하는 멀티 프로그램 코드 자동 개발 시스템.
  9. 제1항에 있어서,
    상기 데이터베이스부는,
    각 코드 모듈 및 배치 모듈의 식별 정보, 코드 모듈 및 배치 모듈을 이루는 코드, 및 코드 모듈 및 배치 모듈의 식별 정보와 각 코드간의 매칭 정보를 관리하는 것을 특징으로 하는 멀티 프로그램 코드 자동 개발 시스템.
  10. 삭제
  11. 삭제
  12. 삭제
  13. 제1항에 있어서,
    거래 가능한 모듈 정보를 일 화면에 출력하며, 상기 출력된 거래 가능한 모듈 정보에 대한 유저 단말로부터의 구매 입력을 수신 시 유저 단말과의 과금 처리를 통하여 유저가 각 모듈 정보를 구매할 수 있는 모듈 거래 인터페이스를 유저 단말에 제공하는 모듈 거래 인터페이스 제공부;를 더 포함하는 것을 특징으로 하는 멀티 프로그램 코드 자동 개발 시스템.
  14. 제13항에 있어서,
    상기 데이터베이스부는,
    상기 모듈 정보를 관리 시, 기본으로 제공되는 기설정된 기본 모듈 정보 및 유저 단말이 상기 모듈 거래 인터페이스를 통하여 구매한 모듈 정보를 관리하는 것을 특징으로 하는 멀티 프로그램 코드 자동 개발 시스템.
  15. 제13항에 있어서,
    상기 모듈 거래 인터페이스 제공부는,
    유저 단말로부터 생성된 모듈 정보 및 유저 단말로부터의 판매 요청 입력을 수신 시, 그 모듈 정보를 거래 가능한 모듈 정보로 등록하는 것을 특징으로 하는 멀티 프로그램 코드 자동 개발 시스템.
KR1020160021717A 2016-02-24 2016-02-24 멀티 프로그램 코드 자동 개발 시스템 KR101734306B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160021717A KR101734306B1 (ko) 2016-02-24 2016-02-24 멀티 프로그램 코드 자동 개발 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160021717A KR101734306B1 (ko) 2016-02-24 2016-02-24 멀티 프로그램 코드 자동 개발 시스템

Publications (1)

Publication Number Publication Date
KR101734306B1 true KR101734306B1 (ko) 2017-05-18

Family

ID=59048908

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160021717A KR101734306B1 (ko) 2016-02-24 2016-02-24 멀티 프로그램 코드 자동 개발 시스템

Country Status (1)

Country Link
KR (1) KR101734306B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109947431A (zh) * 2019-03-28 2019-06-28 北京字节跳动网络技术有限公司 一种代码生成方法、装置、设备及存储介质
WO2020197011A1 (ko) * 2019-03-25 2020-10-01 엘에스일렉트릭(주) 프로그램 언어와 제조사에서 정의한 언어의 혼용을 위한 메모리 매핑 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
다중 모바일 플랫폼 지원을 위한 e-MDD 기반 모델 변환 프레임워크, 교육과학기술부 일반연구자지원사업 최종(결과)보고서, 홍익대학교, 2014.1.13..*

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020197011A1 (ko) * 2019-03-25 2020-10-01 엘에스일렉트릭(주) 프로그램 언어와 제조사에서 정의한 언어의 혼용을 위한 메모리 매핑 방법
CN109947431A (zh) * 2019-03-28 2019-06-28 北京字节跳动网络技术有限公司 一种代码生成方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
US10019239B2 (en) Systems and methods for enhancing software products through integrated development environment running on host computer
JP5021211B2 (ja) デジタル装置メニューエディタのための方法およびシステム
US10331765B2 (en) Methods and apparatus for translating forms to native mobile applications
KR20120128661A (ko) 위젯 프레임워크, 실시간 서비스 결합, 및 실시간 리소스 집계
CN110688145B (zh) Android MVP代码自动生成方法、装置、介质、电子设备
US10489167B2 (en) Dynamically binding data in an application
CN102419709A (zh) 基于元数据的事件化
CN102591710A (zh) 共享对象表示
KR101734306B1 (ko) 멀티 프로그램 코드 자동 개발 시스템
JP6002302B2 (ja) Webアプリケーション生成システム、Webアプリケーション生成システムの制御方法、Webアプリケーション生成システムのプログラム、Webアプリケーション生成装置、Webアプリケーション生成装置の制御方法、およびWebアプリケーション生成装置のプログラム
CN109408057B (zh) 自动生成代码的方法、装置、介质和计算设备
CN113919815A (zh) 一种规则配置***、方法、设备和介质
CN113448960A (zh) 一种导入表格文件的方法和装置
US20230093709A1 (en) Dynamically binding data in an application
KR20140114983A (ko) 애플리케이션 개발 환경 제공 방법
KR20140114984A (ko) 애플리케이션 개발 환경 제공 장치
KR20140114968A (ko) 애플리케이션 개발 환경 제공 프로그램을 기록한 것을 특징으로 하는 컴퓨터로 판독 가능한 기록매체
KR20140115006A (ko) 애플리케이션 개발 환경 제공 장치
JP2019153131A (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
KR20140115004A (ko) 애플리케이션 개발 환경 제공 방법과 이를 위한 기록매체
KR20140115005A (ko) 애플리케이션 개발 환경 제공 방법
KR20140115465A (ko) 애플리케이션 환경 제공 시스템
KR20140115468A (ko) 애플리케이션 환경 제공 시스템
KR20140114999A (ko) 애플리케이션 개발 환경 제공 방법
KR20140114995A (ko) 애플리케이션 개발 환경 제공 방법

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant