Nothing Special   »   [go: up one dir, main page]

KR20010076775A - Script automatic generation agent and method - Google Patents

Script automatic generation agent and method Download PDF

Info

Publication number
KR20010076775A
KR20010076775A KR1020000004130A KR20000004130A KR20010076775A KR 20010076775 A KR20010076775 A KR 20010076775A KR 1020000004130 A KR1020000004130 A KR 1020000004130A KR 20000004130 A KR20000004130 A KR 20000004130A KR 20010076775 A KR20010076775 A KR 20010076775A
Authority
KR
South Korea
Prior art keywords
user
script
information
module
agent
Prior art date
Application number
KR1020000004130A
Other languages
Korean (ko)
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 KR1020000004130A priority Critical patent/KR20010076775A/en
Publication of KR20010076775A publication Critical patent/KR20010076775A/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/10Requirements analysis; Specification techniques

Landscapes

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

Abstract

PURPOSE: An agent for automatically creating a script and a method thereof are provided to prepare the script directly and demonstrate an additional function to be appended to the agent through consecutive operations without appending a software addition function. CONSTITUTION: An application software based module(130) is a core module of application software for supporting basic functions(140). The basic functions(140) are created by operation of the application software based module(130). A script engine(160) registers an appending function of the application software by executing a script including consecutive operations. A general user(110) may use the basic functions(140) and an additional function(150) by preparing a script. A script agent(120) creates a script(180) automatically and transmits the script(180) to a script engine(160), thus a new function is inserted in the application software. The process is described as follows. The user(110) uses the basic functions(140) for demonstrating a function to be appended to the agent(120)(1). The agent(120) generates a script(3) by showing the user's demonstration(2). The agent(120) executes the script and shows the script to the user through the script engine(160)(4). The agent(120) registers the newly created script as an appended function(150) through the script engine(160).

Description

스크립트 자동 생성 에이전트 및 그 방법 {Script automatic generation agent and method}Script automatic generation agent and method {Script automatic generation agent and method}

본 발명은 일반 사용자들이 스크립팅 기능이 있는 응용 소프트웨어(Programmable Applications)를 이용하는 경우, 사용자 스스로 직접 스크립트를 작성하여 소프트웨어의 부가 기능을 추가하지 않고, 에이전트(Agent)에게 추가하고자 하는 부가 기능을 일련의 동작을 통해 시연해(Demonstration) 보임으로써 에이전트 스스로 스크립트를 자동으로 생성하는 스크립트 자동 생성 에이전트 및 그 방법에 관한 것이다.According to the present invention, when general users use application programs having scripting functions, a series of operations of additional functions to be added to the agent without adding the software's additional functions by writing a script by the user himself is performed. The present invention relates to a script auto-generating agent and a method for automatically generating a script by the agent by demonstrating it.

현재, 대부분 범용 소프트웨어들은 기본적인 기능 이외에 사용자의 개별적인 요구에 의해서 발생되는 새로운 기능 추가를 손쉽게 하기 위하여 소프트웨어 자체 내에서 스크립트 언어를 지원하고 있다.Currently, most general-purpose software supports the scripting language within the software itself to make it easy to add new functions generated by user's individual requirements in addition to the basic functions.

예를 들어, 마이크로 소프트웨어의 오피스 제품들은 워드, 엑셀 등 범용의 소프트웨어를 컴포넌트로 디자인하여 이 컴포넌트를 비쥬얼 스크립트 언어와 결합한 형태로 VBA(Visual Basic for Applications)을 제공한다. 이러한 추세는 소프트웨어 개발자들이 소비자 개개인의 요구 사항을 만족시키기에는 많은 부담이 따르므로, 소비자 스스로 간단한 언어를 통해 기 개발된 소프트웨어를 조작할 수 있도록 하기 위함이다.For example, Microsoft's Office products design general-purpose software such as Word and Excel as components, providing Visual Basic for Applications (VBA) in combination with the Visual Scripting language. This trend is for software developers to put a lot of pressure to meet the needs of individual consumers, so that consumers can operate the software already developed through a simple language.

현재 이러한 스크립트 내재 소프트웨어들의 스크립팅 방식을 보면, 대부분 일반 사용자들이 아무것도 쓰여지지 않은 윈도우에 스크립트를 텍스트 형태로 기술하는 형태로 되어 있거나, 사용자 인터페이스만 시각적으로 추가하고 이 인터페이스 각각에 스크립트를 직접 입력하는 형태로 되어 있다.Currently, the scripting methods of these script-intrinsic software are mostly written in the form of text description of the script in a window where nothing is written, or visually adding only the user interface and directly entering the script in each of these interfaces. It is.

그런데, 일반 사용자들이 스크립트 언어를 이용하여 이러한 스크립트 내재 소프트웨어를 원활히 조작하기에는 많은 어려움이 따른다. 특히 프로그래밍에 대한 부담감과 새로운 학습을 통해야 하는 등 많은 제약이 따르게 된다.However, it is difficult for general users to operate such script embedded software smoothly using a scripting language. In particular, there are many restrictions, such as the burden of programming and new learning.

상술한 종래의 문제점을 해결하기 위한 본 발명은 사용자 스스로 직접 스크립트를 작성하여 소프트웨어의 부가 기능을 추가하지 않고, 에이전트에게 추가하고자 하는 부가 기능을 일련의 동작을 통해 시연해(Demonstration) 보임으로써 에이전트 스스로 스크립트를 자동으로 생성할 수 있는 스크립트 자동 생성 에이전트 및 그 방법을 제공하는 데 그 목적이 있다.The present invention for solving the above-described problems, by writing a script yourself, without adding the additional function of the software, the agent itself by demonstrating the additional function to add to the agent through a series of operations (Demonstration) The purpose of the present invention is to provide an automatic script generation agent and a method for automatically generating a script.

도 1은 본 발명에 의한 스크립트 자동 생성 에이전트의 개념도1 is a conceptual diagram of an automatic script generation agent according to the present invention

도 2는 본 발명에 의한 스크립트 자동 생성 에이전트의 구조2 is a structure of an automatic script generation agent according to the present invention

도 3은 본 발명에 의한 스크립트 자동 생성 에이전트의 학습 과정과 스크립트 생성 과정을 설명하는 흐름도3 is a flowchart illustrating a learning process and a script generation process of an automatic script generation agent according to the present invention.

* 도면의 주요부분에 대한 부호의 설명 *Explanation of symbols on the main parts of the drawings

110 : 사용자 120 : 에이전트110: user 120: agent

121 : 사용자 행위 학습 모듈 122 : 수행 흐름 제어 모듈121: user behavior learning module 122: performance flow control module

123 : 스크립트 자동 생성 모듈 124 : 사용자 대화 모듈123: automatic script generation module 124: user dialog module

130 : 응용 소프트웨어 기반 모듈 140 : 기본 기능 모듈130: application software based module 140: basic function module

150 : 추가기능 모듈 160 : 스크립트 엔진150: add-on module 160: script engine

170 : 스크립트 내재된 응용 소프트웨어170: script embedded application software

상기와 같은 목적을 달성하기 위해, 본 발명에서는 사용자가 스크립트를 통해 자동으로 하고 싶은 일련의 동작들 혹은 기본적인 기능들의 조합으로 이루어지는 새로운 기능 추가를 위해 기존의 매크로 방식과 동일하게 에이전트에게 시연을 보인다. 예를 들어, C 디렉토리에 있는 *.doc 으로 끝나는 모든 파일을 불러와 이를 프린팅하는 작업을 해야 하는 경우, 일단 사용자는 에이전트를 실행시키고 시연을 보이기 위해 *.doc 중 한 파일을 워드에서 불러와 프린팅한다. 이러한 동작들은에이전트에게 전달되고 에이전트는 이 동작들을 스크립트로 변환한다. 그리고 에이전트는 사용자에게 *.doc으로 끝나는 모든 파일을 프린팅 할 것인지 아니면, a로 시작되는 a*.doc화일을 프린팅 할 것인지 프로그래밍에서 다루는 조건별 분기에 대한 판단을 위해 조건별 분기를 나타내는 템플릿 윈도우를 사용자에게 제시하고 조건을 입력하도록 도움을 요청한다.In order to achieve the above object, the present invention demonstrates to the agent in the same manner as the existing macro method for adding a new function consisting of a series of operations or a combination of basic functions that the user wants to automatically perform through a script. For example, if you need to load all files ending in * .doc in the C directory and print them, you will need to load one of the * .doc files from Word to print the agent and show it. do. These actions are passed to the agent and the agent converts these actions into a script. The agent then opens a template window that displays the conditional branch to the user to determine whether to print all files ending with * .doc or a * .doc files beginning with a to handle the conditional branching covered in programming. Present it to the user and ask for help to enter the conditions.

사용자는 템플릿 윈도우에 프린팅 하고자하는 파일의 조건을 입력하고, 이의 동작이 제대로 이루어지는지에 대한 확인을 위해 에이전트에게 생성된 스크립트를 한번만 실행하도록 명령을 내린다. 에이전트는 스크립트와 분기 템플릿의 입력 내용을 바탕으로 스크립트를 생성하고 이 스크립트에 따라, 스크립트 엔진을 통해 실행한 결과를 사용자에게 보인다. 사용자는 에이전트가 수행한 작업의 만족 유무에 따라 계속을 진행시키든지 아니면, 다시 자신의 작업을 에이전트에게 시연해 보이는 등 추가 작업을 한다. 혹은 더 복잡한 작업을 위해서는 생성된 스크립트를 요구해서 직접 텍스트 입력 작업을 통해 정교한 작업까지 마무리 할 수 있다. 물론, 이 과정은 사용자의 스크립트 입력 작업이 병행되지만, 이것은 기존의 방식 즉 스크래치(Scratch)부터 일일이 입력해야 하는 사용자의 부담을 많이 줄여주는 이점을 제공할 뿐만 아니라, 스크립팅에 익숙한 사용자 까지도 정교한 기능을 추가할 수 있는 이점을 동시에 제공한다.The user enters the condition of the file to be printed in the template window, and instructs the agent to execute the generated script only once to confirm that its operation is performed properly. The agent generates a script based on the input from the script and the branch template, and displays the results of the script engine execution to the user. The user can proceed according to whether the agent is satisfied with the work performed or perform additional work such as showing his work to the agent again. Or, for more complex tasks, you can require a generated script to complete the elaborate task of entering text directly. Of course, this process is accompanied by the user's input of the script, but this not only reduces the burden on users who have to input from the traditional method, Scratch, but also provides sophisticated functions even for users who are familiar with scripting. At the same time, they provide additional benefits.

이와 같이 본 발명에서 제안된 실행 예를 통해 에이전트에게 명령을 내리는 것은 언어 인식 혹은 텍스트 형태의 명령어 나열 보다 더 명확하게 사용자의 요구를 에이전트에게 전달할 수 있다는 장점이 있다. 또한 스크립트 자동 생성 기능은 스크래치부터 일일이 코딩해야 하는 사용자의 부담을 자동 생성이라는 기능을 통해 부분적으로 해결할 수 있다는 것이다.As described above, the command to the agent through the execution example proposed in the present invention has an advantage that the user's request can be clearly transmitted to the agent more than language recognition or text-based command listing. In addition, the automatic script generation function can partially solve the burden of users who need to code from scratch through the automatic generation function.

이하, 첨부한 도면을 참조하여 본 발명에 따른 바람직한 실시 예를 상세하게 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명에 의한 스크립트 자동 생성 에이전트의 활동을 설명하기 위한 개념적인 구성도이다.1 is a conceptual diagram for explaining the activity of the automatic script generation agent according to the present invention.

도면에서 보듯이, 스크립트가 내재된 응용 소프트웨어(170)는 응용 소프트웨어 기반 모듈(130), 기본 기능(140), 추가기능(150), 스크립트엔진(160)으로 구성된다.As shown in the figure, the application software 170 inherent in the script is composed of an application software-based module 130, basic functions 140, additional functions 150, script engine 160.

응용 소프트웨어 기반 모듈(130)은 기본 기능(140)들을 지원하기 위한 응용 소프트웨어의 코어(Core) 모듈이다. 기본기능(140)들은 응용 소프트웨어 기반 모듈(130)의 동작 결과 생성되는 기능으로 일반 사용자가 소프트웨어를 통해 할 수 있는 기능들을 나열한 것이다. 스크립트 엔진(160)은 일련의 작업의 나열로 이루어진 스크립트를 실제 실행하여 응용 소프트웨어의 추가 기능을 등록하는 일을 담당한다.The application software based module 130 is a core module of application software for supporting the basic functions 140. The basic functions 140 are functions generated as a result of the operation of the application software based module 130 and list functions that can be performed by the general user through software. The script engine 160 is responsible for registering a further function of the application software by actually executing a script consisting of a series of tasks.

일반 사용자(110)는 기본 기능(14)0과 자신이 스크립트를 작성하여 추가한 기능(150)을 이용할 수 있게 된다. 본 발명의 주체인 스크립트 에이전트(120)는 스크립트(180)를 자동 생성하여 이를 스크립트 엔진(160)에게 전달함으로써 응용 소프트웨어에 새로운 기능을 삽입하게 된다.The general user 110 can use the basic function 140 and the function 150 that he added by writing a script. The script agent 120, which is the subject of the present invention, automatically generates a script 180 and delivers it to the script engine 160 to insert a new function into application software.

사용자(110)를 대신하여 에이전트(120)가 자동으로 스크립트를 생성하는 과정을 살펴보면, 먼저, 사용자(110)는 자신의 추가하고자 하는 기능을 에이전트(120)에게 보여주기 위하여, 제공되는 기본 기능(140)들을 이용하게 된다(1. 기능이용).Looking at the process of the agent 120 automatically generates a script on behalf of the user 110, first, the user 110 is to provide the agent 120 with the functionality to be added to the agent, the basic function provided ( 140) (1. Function use).

이때, 에이전트(120)는 사용자(110)의 일련의 동작을 보면서(2. 사용자의 동작을 봄) 이를 스크립트로 형성한다(3. 스크립트 생성). 그리고 생성된 스크립트의 성공 여부를 확인하기 위하여 에이전트(120)는 스크립트 엔진(160)을 통해 생성한 스크립트를 실행하여 사용자(110)에게 보여준다(4. 결과 확인).At this time, the agent 120 forms a script (3. script generation) while watching a series of operations of the user 110 (seeing the user's operation). In order to check whether the generated script is successful, the agent 120 executes the generated script through the script engine 160 and shows it to the user 110 (4. Checking the result).

사용자(101)가 스크립의 결과를 만족하게 되면, 에이전트(120)는 스크립트 엔진(160)을 통해 추가 기능(150)으로 새롭게 생성된 스크립트를 등록한다.When the user 101 satisfies the result of the script, the agent 120 registers the newly generated script as the additional function 150 through the script engine 160.

도 2는 본 발명의 스크립트 자동 생성 에이전트의 내부 구성도이다.2 is an internal configuration diagram of an automatic script generation agent of the present invention.

도면에서 보듯이, 스크립트 자동 생성 에이전트(120)는 추가 기능 등록을 위해 기본 기능들을 시연하는 사용자의 행위를 학습하는 사용자 행위 학습 모듈(121); 사용자에게 조건이나 제어 흐름에 대한 문의를 하고 답을 받아 이를 수행 흐름 제어 모듈(122)로 전달하는 사용자 대화 모듈(124); 상기 사용자 행위 학습 모듈(121)에서 학습된 내용 중 제어나 사용자의 판단이 필요한 부분을 찾아내어 사용자 대화 모듈(124)에 전달하고, 사용자 대화 모듈(124)을 통한 사용자의 조건이나 제어 흐름에 대한 부가 정보의 입력이 완료되면 이를 스크립트 자동 생성 모듈(123)로 전달하는 수행 흐름 제어 모듈(122); 및 상기 사용자 행위 학습 모듈(121)에서 학습한 정보를 상기 수행 흐름 제어 모듈(122)에서 전달 받은 조건이나 제어 흐름에 대한 부가 정보에 기초하여 응용 소프트웨어에서 사용하고 있는 스크립트 언어로 변환하는 스크립트 자동 생성 모듈(123)로 구성된다.As shown in the figure, the script automatic generation agent 120 includes a user behavior learning module 121 for learning a user's behavior demonstrating basic functions for registering additional functions; A user dialog module 124 which inquires of a user about a condition or a control flow and receives an answer and delivers the result to the performing flow control module 122; The user behavior learning module 121 finds a part that needs control or a user's judgment and transfers it to the user dialog module 124 and the user's condition or control flow through the user dialog module 124. An execution flow control module 122 which transmits the additional information to the script automatic generation module 123 when input of additional information is completed; And automatically generating a script for converting the information learned by the user behavior learning module 121 into a script language used in application software based on the condition received from the execution flow control module 122 or additional information on the control flow. Module 123.

이와 같이 구성되는 스크립트 자동 생성 에이전트의 동작을 설명한다.The operation of the automatic script generation agent configured as described above will be described.

사용자가 생성하고자하는 스크립트의 기능을 에이전트에게 시연해 보이기 위하여 기본 기능들을 차례 차례 이용하게 된다. 이때, 기본 기능들을 처리하는 기본 기능 모듈(140)은 사용자가 선택한 기본 기능과 속성들을 사용자 행위 학습 모듈(121)에 전달한다.In order to demonstrate to the agent the functionality of the script you want to create, you will use the basic functionality in turn. At this time, the basic function module 140 that processes the basic functions transmits the basic functions and attributes selected by the user to the user behavior learning module 121.

그러면 사용자 행위 학습 모듈(121)은 전달받은 내용을 토대로 학습을 해나간다. 학습이 끝나면 사용자 행위 학습 모듈(121)은 학습된 내용을 수행 흐름 제어 모듈(122)로 전달한다. 수행 흐름 제어 모듈(122)은 전달 받은 학습 내용 중 제어나 사용자의 판단이 필요한 부분을 찾아내어 이를 사용자 대화 모듈(124)로 전달한다.The user behavior learning module 121 then learns based on the received content. After the learning is completed, the user behavior learning module 121 transmits the learned contents to the performance flow control module 122. The execution flow control module 122 finds a part of the received learning content that requires control or the user's judgment and transfers it to the user dialog module 124.

이에 사용자 대화 모듈(124)은 사용자에게 조건이나 제어 흐름에 대한 문의를 하고 답을 받아 이를 수행 흐름 제어 모듈(122)로 전달하고, 조건이나 제어 흐름에 대한 부가 정보의 입력이 완료되면, 수행 흐름 제어 모듈(122)은 스크립트 자동 생성 모듈(123)로 정보를 전달한다.The user dialog module 124 inquires a user about a condition or a control flow, receives an answer, and delivers the result to the execution flow control module 122. When the input of additional information on the condition or the control flow is completed, the flow is performed. The control module 122 transmits the information to the script automatic generation module 123.

그러면 스크립트 자동 생성 모듈(123)은 응용 소프트웨어에서 사용하고 있는스크립트 언어로 학습한 정보를 변환하고, 변환이 완료되면 이를 스크립트 엔진(160)으로 전달하여 실행을 사용자에게 보인다.Then, the script automatic generation module 123 converts the learned information into the script language used by the application software, and when the conversion is completed, delivers it to the script engine 160 to show the execution to the user.

도 3은 본 발명에 의한 스크립트 자동 생성 에이전트의 학습 과정과 스크립트 자동 생성 과정을 보인 흐름도이다.3 is a flowchart illustrating a learning process and an automatic script generation process of an automatic script generation agent according to the present invention.

에이전트의 실행이 시작되면, 먼저 사용자의 학습 요구가 있는지를 판별한다(S31). 사용자의 요구가 발생한 경우, 에이전트는 현재 사용자가 하고 있는 작업에 대한 정보를 수신하기 시작한다(S32). 수신을 종료하기 위해 사용자의 종료(Stop)명령이 수신되었는지를 확인한다(S33).When the execution of the agent starts, it is first determined whether there is a learning request from the user (S31). When the user's request occurs, the agent starts to receive information about the work currently being performed by the user (S32). In order to terminate the reception, it is checked whether a stop command of the user has been received (S33).

수신된 정보가 사용자의 종료명령이 아닐 경우, 에이전트는 수신된 정보가 작업에 대한 정보인지를 테스트한다(S34). 그 결과 작업에 대한 정보가 아니면 단계 S32로 돌아가 정보 수신을 계속하고, 작업정보인 경우 사용자가 선택한 작업의 이름과 속성에 대한 정보 즉, 어떤 형태로 사용하고 있는지에 대한 정보를 받아(S35), 이를 스크립트 생성을 위해 중간 언어 형태로 변환하여 저장한다(S36). 그리고 단계 S32로 돌아가 정보 수신을 계속한다.If the received information is not the end command of the user, the agent tests whether the received information is information on the job (S34). As a result, if the information is not about the job, go back to step S32 to continue receiving the information, and in the case of the job information, the information on the name and attribute of the job selected by the user, that is, what type of information is being used (S35), This is converted into an intermediate language form for script generation and stored (S36). The process then returns to step S32 to continue receiving information.

만약 단계 S33에서 수신된 정보가 종료명령인 경우, 에이전트는 사용자의 작업 정보 수신 작업을 완료하고(S37), 중간언어 형태의 작업 결과를 분석하여(S38), 제어 흐름이나 기타 사용자의 의견이 들어가야 할 부분을 찾는다(S39).If the information received in step S33 is an end command, the agent completes the task of receiving the user's task information (S37), analyzes the result of the work in the intermediate language form (S38), and enters the control flow or other user's opinion. Find a part to do (S39).

제어가 필요한 경우 에이전트는 사용자에게 제어 판단 정보를 요청하여 전달받고(S40), 이를 다시 중간 언어 형태로 변환한다(S41).If control is required, the agent requests and receives control determination information from the user (S40), and converts it back into an intermediate language form (S41).

제어 흐름이 필요하지 않은 경우, 에이전트는 중간 결과를 스크립트 형태로 변환한다(S42). 변환이 완료된 스크립트는 도 1에서 도시한 스크립트 엔진(160)으로 전달되고, 사용자의 결과 확인이 끝나면, 시스템의 새로운 기능 즉 사용자가 편의에 따라 새로 생성한 기능으로 추가된다.If the control flow is not necessary, the agent converts the intermediate result into a script form (S42). The converted script is transferred to the script engine 160 shown in FIG. 1, and when the user's result is confirmed, a new function of the system, that is, a function newly created by the user is added.

상술한 바와 같은 본 발명은 컴퓨터로 읽을 수 있는 기록 매체로 기록되고, 컴퓨터에 의해 처리될 수 있다.The present invention as described above is recorded on a computer-readable recording medium and can be processed by a computer.

상술한 바와 같은 본 발명은 첫째, 스크립트 언어를 배우지 않은 사용자라도 자신의 동작들을 자동화해주는 스크립트를 에이전트를 통해 생성하여 원하는 기능을 추가할 수 있도록 하며 둘째, 스크립트 언어에 익숙한 사용자에게는 스크래치(Scratch)부터 자신의 작업을 일일이 나열해야 하는 부담감을 줄이고, 스크립트 자동 생성의 결과를 텍스트 형태로 받아 이를 추가/보완함으로써 스크립트 생성 시간을 단축하므로써 자신의 업무 효율을 높일 수 있도록 하는 효과가 있다.According to the present invention as described above, first, even a user who has not learned a scripting language can add a desired function by creating a script to automate his / her actions through an agent. Second, from scratch to a user who is familiar with the scripting language, It reduces the burden of having to list one's own work and receives the result of automatic script generation in the form of text and adds / complements it, thereby reducing the script generation time and improving efficiency of work.

이상에서 본 발명에 대한 기술사상을 첨부도면과 함께 서술하였지만 이는 본 발명의 바람직한 실시예를 예시적으로 설명한 것이지 본 발명을 한정하는 것은 아니다. 또한, 이 기술분야의 통상의 지식을 가진 자라면 누구나 본 발명의 기술사상의 범주를 이탈하지 않는 범위 내에서 다양한 변형 및 모방이 가능함은 명백한 사실이다.The technical spirit of the present invention has been described above with reference to the accompanying drawings, but this is by way of example only and not intended to limit the present invention. In addition, it is obvious that any person skilled in the art can make various modifications and imitations without departing from the scope of the technical idea of the present invention.

Claims (4)

응용소프트 웨어의 기본 기능들을 지원하는 응용 소프트웨어 기반 모듈, 상기 응용 소프트웨어 기반 모듈의 동작 결과 생성되는 기본 기능 모듈, 일련의 작업의 나열로 이루어진 스크립트를 실제 실행하여 응용 소프트웨어의 추가 기능을 등록하는 스크립트 엔진을 포함하는 스크립트 내재된 응용 소프트웨어에 사용자가 요구한 추가기능 등록을 위해 스크립트를 생성하는 에이전트에 있어서,A script engine that registers additional functions of the application software by actually executing a script consisting of an application software-based module supporting the basic functions of the application software, a basic function module generated as a result of the operation of the application software module, and a series of tasks. In the agent for generating a script for registering the add-on requested by the user in the script embedded application software, including: 추가 기능 등록을 위해 기본 기능들을 시연하는 사용자의 행위를 학습하는 사용자 행위 학습 모듈;A user behavior learning module for learning a user's behavior demonstrating basic functions for registering an additional function; 사용자에게 조건이나 제어 흐름에 대한 문의를 하고 답을 받아 이를 수행 흐름 제어 모듈로 전달하는 사용자 대화 모듈;A user dialogue module for inquiring a user about a condition or a control flow, receiving an answer, and delivering the result to the performing flow control module; 상기 사용자 행위 학습 모듈에서 학습된 내용 중 제어나 사용자의 판단이 필요한 부분을 찾아내어 상기 사용자 대화 모듈에 전달하고, 상기 사용자 대화 모듈을 통한 사용자의 조건이나 제어 흐름에 대한 부가 정보의 입력이 완료되면 이를 스크립트 자동 생성 모듈로 전달하는 수행 흐름 제어 모듈; 및If the user's behavior learning module finds a part that needs control or user's judgment and transfers it to the user conversation module, and inputting additional information on the user's condition or control flow through the user conversation module is completed, An execution flow control module for delivering this to the script automatic generation module; And 상기 사용자 행위 학습 모듈에서 학습한 정보를 상기 수행 흐름 제어 모듈에서 전달 받은 조건이나 제어 흐름에 대한 부가 정보에 기초하여 응용 소프트웨어에서 사용하고 있는 스크립트 언어로 변환하는 스크립트 자동 생성 모듈을 포함하여 생성된 스크립트를 상기 스크립트 엔진을 통해 소프트웨어에 등록함으로써 사용자가 직접 스크립트를 작성하지 않고도 기본 기능들의 시연을 통해 소프트웨어에 추가 기능을 등록할 수 있도록 하는 것을 특징으로 하는 스크립트 자동 생성 에이전트.A script generated by including a script automatic generation module for converting the information learned in the user behavior learning module into a script language used in application software based on the condition received from the execution flow control module or additional information on the control flow. Registering the software with the script engine through the script engine, so that the user can register additional functions in the software by demonstrating basic functions without writing a script. 스크립트 내재된 응용 소프트웨어에 사용자가 요구한 추가기능을 등록하기 위한 스크립트 생성 방법에 있어서,In the script generation method for registering an additional function requested by the user in the script embedded application software, 사용자가 추가하고자 하는 기능을 기본 기능들을 통해 시연하면, 사용자를 대신하여 이에 해당하는 스트립트를 자동 생성하고, 생성된 스크립트의 성공 여부를 확인하기 위하여 생성한 스트립트를 실행하여 사용자에게 결과를 확인시켜, 사용자의 요구가 만족되면 추가기능으로 새롭게 생성된 스크립트를 등록함으로써 사용자가 직접 스크립트를 작성하지 않고도 소프트웨어에 추가기능을 등록할 수 있도록 하는 것을 특징으로 하는 스크립트 자동 생성 방법.When the user demonstrates the function to add through the basic functions, the script is automatically generated on behalf of the user, and the result is displayed to the user by executing the generated script to check the success of the generated script. If the user's needs are satisfied, the newly generated script as an add-on, so that the user can register the add-on in the software without having to write the script yourself, automatic script generation method characterized in that. 제2항에 있어서,The method of claim 2, 에이전트의 실행에 의해 사용자의 학습 요구를 판단하여, 사용자의 학습 요구가 있으면 현재 사용자가 하고 있는 작업에 대한 정보 수신을 시작하고, 수신을 종료하기 위해 사용자의 종료명령이 수신되었는지를 확인하는 제1과정;A first step of judging the learning request of the user by execution of the agent, if there is a learning request of the user, to start receiving information on the work currently being performed by the user, and confirming whether the user's end command has been received to terminate the reception; process; 상기 제1과정에서 확인 결과, 수신된 정보가 사용자의 종료명령이 아니면 수신된 정보가 작업에 대한 정보인지를 테스트하는 제2과정;A second step of testing whether the received information is information on a job if the received information is not an end command of the user as a result of the checking in the first step; 상기 제2과정에서 테스트 결과 작업에 대한 정보가 아니면 제1과정으로 돌아가 정보 수신을 계속하고, 작업정보이면 사용자가 선택한 작업의 이름과 속성에 대한 정보 즉, 어떤 형태로 사용하고 있는지에 대한 정보를 받아, 이를 스크립트 생성을 위해 중간 언어 형태로 변환하여 저장한 후 상기 제1과정으로 돌아가 정보 수신을 계속하는 제3과정;In step 2, if the test result information is not information about the job, return to step 1 and continue receiving the information. If the job information, information about the name and attribute of the job selected by the user, that is, information about what form is used. A third process of converting the information into an intermediate language form for generating a script and storing the converted information, and then returning to the first process to continue receiving information; 상기 제1과정에서 수신된 정보가 종료명령인 경우, 사용자의 작업 정보 수신 작업을 완료하고, 중간언어 형태의 작업 결과를 분석하여, 제어 흐름이나 기타 사용자의 의견이 들어가야 할 부분을 탐색하는 제4과정;If the information received in the first step is the end command, the fourth task for completing the task of receiving the task information of the user, analyzing the results of the work in the intermediate language form, to search for the part to enter the control flow or other user's opinion process; 제어가 필요한 경우 사용자에게 제어 판단 정보를 요청하여 전달받고, 이를 다시 중간 언어 형태로 변환하는 제5과정; 및A fifth process of requesting and receiving control determination information from a user when control is required and converting the same into an intermediate language; And 상기 제4과정에서의 탐색결과 제어 흐름이 필요하지 않은 경우, 및 제5과정 수행후에 중간 결과를 스크립트 형태로 변환하는 제6과정을 포함하여 사용자가 추가하고자 하는 기능을 기본 기능들을 통해 시연하면, 이에 해당하는 스트립트를 자동 생성하는 것을 특징으로 하는 스크립트 자동 생성 방법.When the search result control flow is not necessary in the fourth process, and the sixth process of converting the intermediate result into a script form after the fifth process is performed, the function to be added by the user is demonstrated through basic functions. Automatic script generation method characterized in that the automatic generation of the corresponding script. 스크립트 내재된 응용 소프트웨어에 사용자가 요구한 추가기능을 등록하기 위한 스크립트를 생성하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체에 있어서,A computer-readable recording medium having recorded thereon a program for generating a script for registering an additional function requested by a user in a script-embedded application software, 에이전트의 실행에 의해 사용자의 학습 요구를 판단하여, 사용자의 학습 요구가 있으면 현재 사용자가 하고 있는 작업에 대한 정보 수신을 시작하고, 수신을 종료하기 위해 사용자의 종료명령이 수신되었는지를 확인하는 제1과정;A first step of judging the learning request of the user by execution of the agent, if there is a learning request of the user, to start receiving information on the work currently being performed by the user, and confirming whether the user's end command has been received to terminate the reception; process; 상기 제1과정에서 확인 결과, 수신된 정보가 사용자의 종료명령이 아니면 수신된 정보가 작업에 대한 정보인지를 테스트하는 제2과정;A second step of testing whether the received information is information on a job if the received information is not an end command of the user as a result of the checking in the first step; 상기 제2과정에서 테스트 결과 작업에 대한 정보가 아니면 제1과정으로 돌아가 정보 수신을 계속하고, 작업정보이면 사용자가 선택한 작업의 이름과 속성에 대한 정보 즉, 어떤 형태로 사용하고 있는지에 대한 정보를 받아, 이를 스크립트 생성을 위해 중간 언어 형태로 변환하여 저장한 후 상기 제1과정으로 돌아가 정보 수신을 계속하는 제3과정;In step 2, if the test result information is not information about the job, return to step 1 and continue receiving the information. If the job information, information about the name and attribute of the job selected by the user, that is, information about what form is used. A third process of converting the information into an intermediate language form for generating a script and storing the converted information, and then returning to the first process to continue receiving information; 상기 제1과정에서 수신된 정보가 종료명령인 경우, 사용자의 작업 정보 수신 작업을 완료하고, 중간언어 형태의 작업 결과를 분석하여, 제어 흐름이나 기타 사용자의 의견이 들어가야 할 부분을 탐색하는 제4과정;If the information received in the first step is the end command, the fourth task for completing the task of receiving the task information of the user, analyzing the results of the work in the intermediate language form, to search for the part to enter the control flow or other user's opinion process; 제어가 필요한 경우 사용자에게 제어 판단 정보를 요청하여 전달받고, 이를 다시 중간 언어 형태로 변환하는 제5과정; 및A fifth process of requesting and receiving control determination information from a user when control is required and converting the same into an intermediate language; And 상기 제4과정에서의 탐색결과 제어 흐름이 필요하지 않은 경우, 및 제5과정 수행후에 중간 결과를 스크립트 형태로 변환하는 제6과정을 포함하여 사용자가 추가하고자 하는 기능을 기본 기능들을 통해 시연하면, 이에 해당하는 스트립트를 자동 생성하는 실행시킬 수 있는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.When the search result control flow is not necessary in the fourth process, and the sixth process of converting the intermediate result into a script form after the fifth process is performed, the function to be added by the user is demonstrated through basic functions. A computer-readable recording medium having recorded thereon an executable program for automatically generating a corresponding script.
KR1020000004130A 2000-01-28 2000-01-28 Script automatic generation agent and method KR20010076775A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020000004130A KR20010076775A (en) 2000-01-28 2000-01-28 Script automatic generation agent and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020000004130A KR20010076775A (en) 2000-01-28 2000-01-28 Script automatic generation agent and method

Publications (1)

Publication Number Publication Date
KR20010076775A true KR20010076775A (en) 2001-08-16

Family

ID=19642269

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020000004130A KR20010076775A (en) 2000-01-28 2000-01-28 Script automatic generation agent and method

Country Status (1)

Country Link
KR (1) KR20010076775A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100727055B1 (en) * 2005-07-01 2007-06-12 엔에이치엔(주) Game production system and method which uses script language
KR102228085B1 (en) * 2020-07-28 2021-03-12 임상희 Method for processing block coding for programming education
US11093715B2 (en) 2019-03-29 2021-08-17 Samsung Electronics Co., Ltd. Method and system for learning and enabling commands via user demonstration
GB2602860A (en) * 2020-07-28 2022-07-20 Robogram Co Ltd Method for processing block coding for programme education
US11468881B2 (en) 2019-03-29 2022-10-11 Samsung Electronics Co., Ltd. Method and system for semantic intelligent task learning and adaptive execution

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR900018809A (en) * 1988-05-23 1990-12-22 디. 크레이그 노들런드 Modular compiler with class independent parser and many class dependent parsers
EP0550369A2 (en) * 1991-12-31 1993-07-07 International Business Machines Corporation Method and system for the automatic performance of a task within an object-oriented software system
US5872931A (en) * 1996-08-13 1999-02-16 Veritas Software, Corp. Management agent automatically executes corrective scripts in accordance with occurrences of specified events regardless of conditions of management interface and management engine
KR19990048314A (en) * 1997-12-09 1999-07-05 구자홍 Software Agent Generator
JPH11203139A (en) * 1998-01-09 1999-07-30 Toshiba Corp Agent system, information processing method and recording medium recording information processing program
US6094673A (en) * 1998-01-16 2000-07-25 Aspect Communications Method and apparatus for generating agent scripts

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR900018809A (en) * 1988-05-23 1990-12-22 디. 크레이그 노들런드 Modular compiler with class independent parser and many class dependent parsers
EP0550369A2 (en) * 1991-12-31 1993-07-07 International Business Machines Corporation Method and system for the automatic performance of a task within an object-oriented software system
US5872931A (en) * 1996-08-13 1999-02-16 Veritas Software, Corp. Management agent automatically executes corrective scripts in accordance with occurrences of specified events regardless of conditions of management interface and management engine
KR19990048314A (en) * 1997-12-09 1999-07-05 구자홍 Software Agent Generator
JPH11203139A (en) * 1998-01-09 1999-07-30 Toshiba Corp Agent system, information processing method and recording medium recording information processing program
US6094673A (en) * 1998-01-16 2000-07-25 Aspect Communications Method and apparatus for generating agent scripts

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100727055B1 (en) * 2005-07-01 2007-06-12 엔에이치엔(주) Game production system and method which uses script language
US11093715B2 (en) 2019-03-29 2021-08-17 Samsung Electronics Co., Ltd. Method and system for learning and enabling commands via user demonstration
US11468881B2 (en) 2019-03-29 2022-10-11 Samsung Electronics Co., Ltd. Method and system for semantic intelligent task learning and adaptive execution
KR102228085B1 (en) * 2020-07-28 2021-03-12 임상희 Method for processing block coding for programming education
WO2022025357A1 (en) * 2020-07-28 2022-02-03 임상희 Block coding processing method for programming education
GB2602860A (en) * 2020-07-28 2022-07-20 Robogram Co Ltd Method for processing block coding for programme education

Similar Documents

Publication Publication Date Title
CN105824787B (en) A kind of control method and system of html template dynamic configuration
AU673528B2 (en) System development support
US7620959B2 (en) Reflection-based processing of input parameters for commands
Srinivasan et al. Discovering natural language commands in multimodal interfaces
US20130254139A1 (en) Systems and methods for building a universal intelligent assistant with learning capabilities
US20030115572A1 (en) System, method and computer program product for application development using a visual paradigm to combine existing data and applications
CN110297761A (en) Acquisition methods, device, computer equipment and the storage medium of returned data
Li et al. Using llms to customize the ui of webpages
CN109960547A (en) The multi-lingual interpretation method of software and system
Larasati et al. Chatbot helpdesk design for digital customer service
KR20010076775A (en) Script automatic generation agent and method
Shaikh et al. Comprehensive understanding of intelligent user interfaces
US20100280819A1 (en) Dialog Design Apparatus and Method
Ba et al. PEWS platform: a Web services composition environment
Warén Cross-platform mobile software development with React Native
Kimmel et al. Excel 2003 VBA Programmer's Reference
Manca et al. Supporting multimodality in service-oriented model-based development environments
KR102263996B1 (en) Method and system for providing font combination service
KR0133411B1 (en) Automatic generation method of command dialog box in basestation subsystem manager
CN112416324B (en) Script function implementation method based on python language, terminal equipment and storage medium
Simpson Introduction to JavaScript
Bartlett Interacting with Web Pages
Post Application of a structured methodology to real-time industrial software development
Tkachenko Inovace mobilní aplikace firmy Getmore sro
Lakshmiraghavan et al. Binding an HTTP Request into CLR Objects

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application