





본 발명은 데이터 기반 프로그래밍 모델을 이용하는 업무 관리 모형화 장치 및 방법에 관한 것으로, 보다 상세하게는 소프트웨어에 포함되는 데이터 인스턴스 각각에 대하여 독립적으로 생성, 소멸, 이동, 조합 및 편집이 가능한 데이터 기반 프로그래밍 모델을 이용하는 업무 관리 모형화 장치 및 방법에 관한 것이다.
The present invention relates to an apparatus and method for modeling a business management using a data-based programming model, and more particularly, to a data-based programming model capable of independently generating, destroying, moving, combining, and editing each data instance included in software And to a method and apparatus for modeling a business management using the same.
현재까지 프로그래밍 방법론의 패러다임으로는 명령형 프로그래밍(Imperative Programming), 함수형 프로그래밍(Functional Programming) 및 객체 지향 프로그래밍(Object Oriented Programming) 등이 대두되고 있다. 이러한 프로그래밍 방법론들은 모두 컴퓨터에 의한 프로그램의 실행(Execution)을 나타내는 동작 의미론(Operational Semantics)을 직접적으로 프로그램이 규정한다는 점에서 공통되어 있으며, 동작 의미론은 궁극적으로 프로그램에 의하여 컴퓨터가 주어지는 데이터에 대하여 동작을 수행하는 프로세스(Process)를 규정하므로, 상술한 프로그램 방법론들은 프로세스에 의하여 데이터를 처리하는 방법을 프로그램이 기술한다는 점에서 공통되어 있다.Imperative Programming, Functional Programming, and Object Oriented Programming are emerging paradigms of programming methodology. All of these programming methodologies are common in that programs directly define operational semantics that represent the execution of programs by a computer, and the semantics of operations are ultimately determined by the program, The above program methodologies are common in that the program describes how to process data by a process.
그러나 실제 세계에서 사물의 행동을 관찰하면, 각각의 사물은 서로 독립적으로 행동하고, 따라서 각 사물에 대한 정보에 대응하는 각각의 데이터 객체 또는 데이터 인스턴스들이 서로 독립적으로 동작하며, 이러한 데이터 객체의 조합과 운동에 의하여 정보 처리가 실현된다. 즉, 실제 세계에서 사물의 행동에 의하여 실현되는 정보 처리는 현재의 프로그래밍 방법론에 대응하는 프로세스에 의한 계산의 입력 및 결과로서의 데이터보다는 서로 독립적으로 동작하는 데이터 인스턴스들의 생성, 결합 및 이동에 의하여 더 자연스럽게 모델링될 수 있다.However, when observing the behavior of objects in the real world, each object acts independently of each other, so that each data object or data instance corresponding to information about each object operates independently of each other, Information processing is realized by motion. That is, the information processing realized by the behavior of objects in the real world is more natural by the generation, combination and movement of data instances operating independently of each other, rather than input of computation by the process corresponding to the current programming methodology and resultant data Can be modeled.
이에 따라, 업무 프로세스의 모델링을 상술한 바와 같이 서로 독립적으로 동작하는 데이터 인스턴스에 기반하여 수행한다면, 실제 세계의 사물의 행동을 용이하게 모델링할 수 있고, 각 데이터 인스턴스를 개별적으로 조작할 수 있으므로 클래스의 상속 또는 변형상속이 불필요할 뿐더러 필요에 따라 객체의 개별적 변형과 일괄적 변형을 선택할 수 있으며, 각 데이터 인스턴스별로 필요에 따라 절차 코드를 변형할 수 있어 보다 병렬 처리가 용이하고 실제 세계와 직관적으로 유사한 업무 프로세스의 모델링이 가능하리라 기대된다. 또한 이렇게 실제 세계와 직관적으로 유사한 업무 프로세스의 모델링을 사용하면 데이터 인스턴스가 실제 세계의 사물의 행동을 모델링하므로, 실제 세계의 업무 프로세스에 있어서 작업의 대상물 또는 실재하는 사물을 데이터 인스턴스로 모델링하고 각 데이터 인스턴스가 가지는 절차 코드를 이용하여 업무 작업을 모델링함으로써 업무 관리 모형화을 용이하게 할 수 있으리라 기대된다.
Accordingly, if modeling of business processes is performed based on data instances operating independently of each other as described above, the behavior of objects in the real world can be easily modeled, and each data instance can be manipulated individually, In addition, it is possible to select individual transformations and batch transformations of objects as needed, and to modify procedural codes as needed for each data instance, making parallel processing easier and more intuitive to the real world It is expected that modeling of similar business processes will be possible. In addition, modeling work processes that are intuitively similar to the real world allows data instances to model the behavior of objects in the real world, thereby modeling the objects of work or real objects in the real world's business processes as data instances, It is expected that it will be easy to model task management by modeling task task using procedure code of instance.
본 발명은, 업무 프로세스에서 작업의 대상물 또는 사용되는 사물을 표현하는 데이터 인스턴스 각각에 대하여 독립적으로 생성, 소멸, 이동, 조합 및 편집이 가능한 데이터 기반 프로그래밍 모델을 이용하는 업무 관리 모형화 장치 및 방법을 제공하는 데 그 목적이 있다.
The present invention provides a task management modeling apparatus and method using a data-based programming model capable of independently creating, destroying, moving, combining, and editing each data instance representing a work object or a used object in a business process It has its purpose.
본 발명의 일 측면에 따른 데이터 기반 프로그래밍 모델을 이용하는 업무 관리 모형화 장치는 사용자의 입력에 응답하여 데이터 객체를 생성하는 데이터 객체 생성부, 상기 데이터 객체의 이동, 조합 및 소멸 중 적어도 하나를 수행하는 데이터 객체 관리부, 상기 데이터 객체에 대한 절차 정보를 생성 및 관리하는 절차 코드 관리부, 사용자로부터 상기 데이터 객체의 생성, 이동, 조합, 소멸 및 절차 코드의 편집 중 적어도 하나와 관련된 정보를 입력받고 사용자에게 상기 데이터 코드 및 상기 데이터 코드, 절차 코드 및 절차 코드의 실행 결과 중 적어도 하나를 출력하는 입출력부 및 상기 데이터 코드 및 절차 코드를 저장하는 저장부 및 상기 절차 코드를 실행하는 실행부를 포함하되, 상기 데이터 객체는 제1 이름 정보, 제2 이름 정보 및 제3 이름 정보를 포함하여 이루어지고, 상기 각 이름 정보는, 객체 식별자, 데이터 타입, 절차 코드 식별자, 절차 코드, 기억 장소, 변동 식별자, 관계 객체 식별자, 반환값, 메시지 및 null 중 하나이며, 상기 객체 식별자는 상기 각 이름 정보가 포함되어 있는 데이터 객체를 지칭하는 식별자이고, 상기 관계 객체 식별자는 상기 객체 식별자가 지칭하는 데이터 객체가 아닌 데이터 객체를 지칭하는 식별자이며, 상기 변동 식별자는 현재 식별자와 이전 식별자의 쌍으로 이루어지는 것을 특징으로 한다.A task management modeling apparatus using a data-based programming model according to an aspect of the present invention includes a data object generation unit for generating a data object in response to a user's input, data for performing at least one of movement, combination, An object management unit, a procedure code management unit for generating and managing procedure information for the data object, and an input unit for inputting information related to at least one of creation, movement, combination, destruction and procedure code editing of the data object from the user, An input / output unit for outputting at least one of a code, an execution result of the data code, a procedure code and a procedure code, a storage unit for storing the data code and the procedure code, and an execution unit for executing the procedure code, The first name information, the second name information, and the third name information Wherein each name information is one of an object identifier, a data type, a procedure code identifier, a procedure code, a storage location, a variation identifier, a relational object identifier, a return value, a message and null, Wherein the object identifier is an identifier indicating a data object that is not a data object referred to by the object identifier, and the variable identifier is a pair of a current identifier and a previous identifier .
바람직하게는, 상기 데이터 객체 관리부는 하나 이상의 데이터 객체가 연결된 리스트를, 상기 리스트 상의 각 제1 데이터 객체에 대하여, 제1 이름 정보가 상기 리스트에서 상기 제1 데이터 객체의 직전 데이터 객체의 객체 식별자이고, 제2 이름 정보가 상기 제1 데이터 객체의 객체 식별자이며, 제3 이름 정보가 상기 리스트에서 상기 제1 데이터 객체의 직후 데이터 객체의 객체 식별자인 데이터 객체를 생성함으로써 표현하되, 상기 제1 데이터 객체가 상기 리스트의 최초 데이터 객체인 경우 제1 이름 정보가 null이고, 상기 제1 데이터 객체가 상기 리스트의 최후 데이터 객체인 경우 제3 이름 정보가 null이다.Preferably, the data object management unit is operable to determine, for each first data object on the list, a list to which one or more data objects are linked, wherein the first name information is an object identifier of a data object immediately preceding the first data object The first data object is an object identifier of the first data object, the second name information is an object identifier of the first data object, and the third name information is an object identifier of a data object immediately after the first data object in the list, The first name information is null if the first data object is the first data object of the list and the third name information is null if the first data object is the last data object of the list.
바람직하게는, 상기 절차 코드 관리부는 제1 데이터 객체에 대한 절차 코드를, 상기 제1 데이터 객체로 시작되는 데이터 객체의 리스트와 변동 식별자의 쌍으로 표현되는 절차 정보를 생성하여 나타낸다.Preferably, the procedure code management unit generates and represents a procedure code for the first data object, the procedure information being represented by a pair of a variable identifier and a list of data objects starting with the first data object.
바람직하게는, 상기 절차 정보를 표현하는 쌍에 포함되는 데이터 객체의 리스트는 적어도 하나의 절차 코드 식별자를 포함한다.Advantageously, the list of data objects contained in the pair representing the procedure information comprises at least one procedure code identifier.
바람직하게는, 상기 절차 정보를 표현하는 쌍에 포함되는 데이터 객체의 리스트는 적어도 하나의 반환값을 포함한다.Advantageously, the list of data objects contained in the pair representing the procedure information comprises at least one return value.
바람직하게는, 상기 절차 코드 관리부는, 제1 변동 식별자 및 제1 리스트의 쌍으로 이루어지는 절차 정보에 대하여, 상기 제1 변동 식별자의 현재 식별자를 이전 식별자로 하는 제2 변동 식별자와 상기 제1 리스트의 쌍으로 이루어지는 변형 절차 정보를 생성한다.Preferably, the procedure code managing unit is further configured to compare, with respect to the procedure information consisting of the first variable identifier and the first list, a second variable identifier having the current identifier of the first variable identifier as the previous identifier, And generates a pair of deformation process information.
바람직하게는, 상기 데이터 객체 관리부는, 제1 리스트를 시작하는 제1 데이터 객체 및 제2 리스트를 시작하는 제2 데이터 객체에 대하여, 상기 제1 리스트와 쌍을 이루는 제1 변동 식별자의 현재 식별자를 이전 식별자로 하고 상기 제1 및 제2 데이터 객체의 객체 식별자를 조합하여 생성한 현재 식별자를 가지는 제3 변동 식별자 및, 제1 데이터 객체와 제2 데이터 객체로 이루어지는 제3 리스트의 쌍으로 이루어지는 제1 절차 정보 및 상기 제2 리스트와 쌍을 이루는 제2 변동 식별자의 현재 식별자를 이전 식별자로 하고 상기 제1 및 제2 데이터 객체의 객체 식별자를 조합하여 생성한 현재 식별자를 가지는 제4 변동 식별자 및, 상기 제3 리스트의 쌍으로 이루어지는 제2 절차 정보 중 적어도 하나를 생성한다.Advantageously, the data object management unit is operable to determine, for a first data object starting a first list and a second data object starting a second list, a current identifier of a first variation identifier paired with the first list A third variable identifier having a current identifier generated by combining the object identifiers of the first and second data objects with a previous identifier and a third variable identifier having a current identifier generated by combining the object identifiers of the first and second data objects, And a fourth variable identifier having a current identifier generated by combining the current identifier of the second variable identifier paired with the second list as the previous identifier and the object identifier of the first and second data objects, And second procedure information consisting of a pair of third lists.
바람직하게는, 상기 데이터 객체 관리부는, 상기 제1 리스트에서 상기 제1 데이터 객체의 직후 데이터 객체를 제3 데이터 객체로 대체한 제1 부분 리스트 뒤에 상기 제1 데이터 객체를 덧붙인 제4 리스트 및 상기 제2 리스트에서 상기 제2 데이터 객체의 직후 데이터 객체를 제4 데이터 객체로 대체한 제2 부분 리스트 뒤에 상기 제2 데이터 객체를 덧붙인 제5 리스트 중 적어도 하나를 생성하고, 상기 제3 변동 식별자와 상기 제4 리스트의 쌍으로 이루어지는 제3 절차 정보 및 상기 제4 변동 식별자와 상기 제5 리스트의 쌍으로 이루어지는 제5 절차 정보 중 적어도 하나를 생성한다.Preferably, the data object management unit includes a fourth list in which the first data object is added to the first list after a first partial list in which the data object immediately after the first data object is replaced with a third data object in the first list, 2 list, a fifth list in which the second data object is added after the second partial list in which the data object immediately after the second data object is replaced with the fourth data object, and the third variation identifier and the third variation identifier 4 list, and fifth procedure information, which is a pair of the fourth variation identifier and the fifth list.
본 발명의 다른 측면에 따른 데이터 기반 프로그래밍 모델을 이용하는 업무 관리 모형화 방법은 데이터 객체 생성부가 사용자의 입력에 응답하여 데이터 객체를 생성하는 단계, 데이터 객체 관리부가 사용자의 입력에 응답하여 상기 데이터 객체의 이동, 조합 및 소멸 중 적어도 하나를 수행하는 단계, 절차 코드 관리부가 상기 데이터 객체에 대한 절차 정보에 포함되는 절차 코드를 편집하는 단계 및 사용자의 입력에 응답하여 실행부가 상기 절차 코드를 실행하는 단계를 포함하되, 상기 데이터 객체는 제1 이름 정보, 제2 이름 정보 및 제3 이름 정보를 포함하여 이루어지고, 상기 각 이름 정보는, 객체 식별자, 데이터 타입, 절차 코드 식별자, 절차 코드, 기억 장소, 변동 식별자, 관계 객체 식별자, 반환값, 메시지 및 null 중 하나이며, 상기 객체 식별자는 상기 각 이름 정보가 포함되어 있는 데이터 객체를 지칭하는 식별자이고, 상기 관계 객체 식별자는 상기 객체 식별자가 지칭하는 데이터 객체가 아닌 데이터 객체를 지칭하는 식별자이며, 상기 변동 식별자는 현재 식별자와 이전 식별자의 쌍으로 이루어진다.
According to another aspect of the present invention, there is provided a task management modeling method using a data-based programming model, the method comprising: generating a data object in response to a user's input; , Combining and destroying, editing a procedure code included in the procedure information for the data object by the procedure code management unit, and executing the procedure code in response to the input of the user Wherein the data object includes a first name information, a second name information, and a third name information, wherein each name information includes at least one of an object identifier, a data type, a procedure code identifier, a procedure code, , A relational object identifier, a return value, a message, and null, and the object identifier is Wherein the relational identifier is an identifier indicating a data object that is not a data object referred to by the object identifier, and the variable identifier is a pair of a current identifier and a previous identifier Lt; / RTI >
본 발명에 따르면,  업무 프로세스에서 작업의 대상물 또는 사용되는 사물을 표현하는 데이터 인스턴스 각각에 대하여 데이터 객체를 독립적으로 생성, 소멸, 이동, 조합 및 편집이 가능한 데이터 기반 프로그래밍 모델을 이용하는 업무 관리 모형를 개발함으로써, 실제 세계의 사물의 행동을 용이하게 모델링할 수 있고, 각 데이터 인스턴스를 개별적으로 조작할 수 있으므로 클래스의 상속 또는 변형상속이 불필요할 뿐더러 필요에 따라 객체의 개별적 변형과 일괄적 변형을 선택할 수 있으며, 각 데이터 인스턴스별로 필요에 따라 절차 코드를 변형할 수 있어 보다 병렬 처리가 용이하고 실제 세계와 직관적으로 유사한 업무 처리 프로세스의 모델링이 가능하며 업무 관리 모형화을 용이하게 할 수 있다.
According to the present invention, by developing a business management model that utilizes a data-based programming model capable of independently creating, destroying, moving, combining, and editing data objects for each of the data instances representing objects of work or objects used in a business process , You can easily model the behavior of objects in the real world, and you can manipulate each data instance individually, eliminating the need for class inheritance or transformation inheritance, as well as selecting individual transformations and batch transformations of objects as needed , It is possible to modify the procedural code according to the needs of each data instance, so that parallel processing is easy, modeling of business process similar to the real world is possible, and work management modeling can be facilitated.
도 1은 본 발명의 일 실시예에 따른 데이터 기반 프로그래밍 모델을 이용하는 업무 관리 모형화 장치의 블록도이다.
도 2는 본 발명의 일 실시예에 따른 데이터 객체 및 데이터 객체의 리스트의 예를 도시한 도면이다.
도 3은 본 발명의 일 실시예에 따른 절차 정보의 예를 도시한 도면이다.
도 4는 본 발명의 일 실시예에 따른 변형 절차 정보의 예를 도시한 도면이다.
도 5는 본 발명의 일 실시예에 따른 데이터 객체의 조합의 예를 도시한 도면이다.
도 6은 본 발명의 다른 실시예에 따른 데이터 기반 프로그래밍 모델을 이용하는 업무 관리 모형화 방법의 동작을 도시한 순서도이다.1 is a block diagram of a task management modeling device that utilizes a data-driven programming model in accordance with an embodiment of the present invention.
 2 is a diagram illustrating an example of a list of data objects and data objects according to an embodiment of the present invention.
 3 is a diagram illustrating an example of procedure information according to an embodiment of the present invention.
 4 is a view showing an example of modification procedure information according to an embodiment of the present invention.
 5 is a diagram illustrating an example of a combination of data objects according to an embodiment of the present invention.
 FIG. 6 is a flowchart illustrating an operation of a method for modeling business management using a data-based programming model according to another embodiment of the present invention.
이하에서는 본 발명에 따른 데이터 기반 프로그래밍 모델을 이용하는 업무 관리 모형화 장치 및 방법을 첨부된 도면들을 참조하여 상세하게 설명한다. 이러한 과정에서 도면에 도시된 선들의 두께나 구성요소의 크기 등은 설명의 명료성과 편의상 과장되게 도시되어 있을 수 있다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례에 따라 달라질 수 있다. 그러므로, 이러한 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.Hereinafter, an apparatus and method for modeling a task management using a data-based programming model according to the present invention will be described in detail with reference to the accompanying drawings. In this process, the thicknesses of the lines and the sizes of the components shown in the drawings may be exaggerated for clarity and convenience of explanation. In addition, the terms described below are defined in consideration of the functions of the present invention, which may vary depending on the intention or custom of the user, the operator. Therefore, definitions of these terms should be made based on the contents throughout this specification.
도 1은 본 발명의 일 실시예에 따른 데이터 기반 프로그래밍 모델을 이용하는 업무 관리 모형화 장치의 블록도이다.1 is a block diagram of a task management modeling device that utilizes a data-driven programming model in accordance with an embodiment of the present invention.
도 1에 도시된 바와 같이, 본 발명의 일 실시예에 따른  데이터 기반 프로그래밍 모델을 이용하는 업무 관리 모형화 장치는, 데이터 객체 생성부(110), 데이터 객체 관리부(120), 절차 코드 관리부(130), 실행부(140), 저장부(200) 및 입출력부(300)를 포함하여 이루어질 수 있다.1, a task management modeling apparatus using a data-based programming model according to an embodiment of the present invention includes a data
데이터 객체 생성부(110)는 사용자의 입력에 응답하여 데이터 객체를 생성한다. 데이터 객체는 업무 프로세스에 있어서 업무 처리의 대상이 되는 사물 또는 개념물일 수 있다. 예컨대 시간표에 따른 버스 운행을 모델링한다면, 데이터 객체는 버스, 각 정거장, 각 정거장 사이의 노선, 승객, 승객이 지불하는 요금 등을 모델링할 수 있다. 데이터 객체는 데이터의 구성을 규정하는 이름 정보와 데이터들의 관계를 규정하는 관계 정보의 측면에서 규정될 수 있다. 이 때, 각 이름 정보는, 객체 식별자, 데이터 타입, 절차 코드 식별자, 절차 코드, 기억 장소, 변동 식별자, 관계 객체 식별자, 반환값, 메시지 및 null 중 하나일 수 있다. 객체 식별자는 하나의 데이터 객체에 고유한 이름이다. 이 때, 다른 모든 이름과 다른 보존된 값(Reserved Value)으로 null을 준비하여, 데이터 객체의 초기화 및 데이터 객체의 리스트의 끝을 표현할 수 있다. 데이터 타입은 일반적인 프로그래밍 언어에서와 같은 데이터의 형태를 정의하는 정보이다. 예컨대 데이터 타입은 정수, 스트링, 실수, 정수나 실수의 경우 그 자리수에 대한 정보를 포함할 수 있다. 기억 장소는 데이터 객체에 대응되는 절차 코드가 사용하는 메모리이다. 이 때, 기억 장소는 구체적인 메모리 공간을 추상화하여 나타내는 기호로 표현될 수도 있으며, 메모리 어드레스에 대한 포인터일 수도 있다. 절차 코드 식별자는 데이터 객체가 수행하는 절차 코드를 가리키는 이름이며, 절차 코드가 실행하는 구체적인 명령을 내용으로 가지는 하위 데이터 객체와 연결하기 위하여 사용될 수 있다. 절차 코드는 데이터 객체에 대하여 수행되는 구체적인 명령어이다. 즉, 절차 코드는 데이터 객체가 나타내는 사물 또는 개념물이 직접 수행하거나 또는 사물 또는 개념물에 대하여 수행되는 작업을 나타내는 코드일 수 있다. 예컨대, 상술한 버스 운행의 모델링에서, 버스를 나타내는 데이터 객체의 하위 데이터 객체에는 그 버스의 노선에 해당하는 노선을 따라 버스의 이동을 나타내는 절차 코드가 포함될 수 있다. 또한 예컨대 승객을 나타내는 데이터 객체의 하위 데이터 객체에는 승차, 하차, 요금 지불을 나타내는 코드가 절차 포함될 수 있다. 또한 이러한 각 절차 코드는 고유의 절차 코드 식별자를 가질 수 있으며, 절차 코드 식별자가 절차 코드를 포함하는 데이터 객체와 사물 또는 개념물을 나타내는 데이터 객체를 연결하기 위하여 사용될 수 있다.The data
후술하듯이 절차 코드는 일반적인 명령형 프로그래밍 언어와 유사한 명령어 집합을 포함한다. 변동 식별자는 데이터 객체의 조합이 일어날 때, 또는 데이터 객체를 다른 의미로 사용할 경우 부여하는 고유한 이름이다. 관계 객체 식별자는 절차 코드를 관리할 때 절차 코드에 의하여 형성된 이름을 가리키는 이름이다. 반환값은 절차 코드에 의하여 산출되는 데이터 객체의 값을 지칭하는 이름이다. 메시지는 절차 코드를 관리하거나 실행하는 도중 발생하는 에러 메시지 또는 예외 상황 등을 지칭하는 이름이다.As will be described later, the procedure code includes a set of instructions similar to a general imperative programming language. Variable identifiers are unique names given when a combination of data objects occurs, or when a data object is used in a different sense. The relational object identifier is a name that indicates the name formed by the procedure code when managing the procedure code. The return value is a name that refers to the value of the data object produced by the procedure code. A message is a name that refers to an error message or exception that occurs during the execution or execution of the procedure code.
이 때, 데이터 객체 사이의 연결을 표시하기 위하여 데이터 객체는 제1 이름 정보, 제2 이름 정보 및 제3 이름 정보를 포함하여 이루어질 수 있으며, 제1 내지 제3 이름 정보는 각각 상술한 10가지 정보 중 하나일 수 있다. 즉, 데이터 객체 생성부가 생성하는 새로운 정보를 포함하는 데이터 객체는 (null, Name, null)의 형식을 가질 수 있으며, 제1 및 제3 이름 정보가 null 이고 제2 이름 정보는 null을 제외한 9가지 정보 중 하나일 수 있다.In this case, the data object may include first name information, second name information, and third name information in order to display a connection between data objects, and the first to third name information may include information on each of the above- ≪ / RTI > That is, the data object including the new information generated by the data object generating unit may have a format of (null, Name, null), and the first and third name information are null and the second name information includes nine Information.
여기에서 데이터 객체 관리부(120)는 하나 이상의 데이터 객체가 연결된 리스트를, 리스트 상의 각 제1 데이터 객체에 대하여, 제1 이름 정보가 리스트에서 제1 데이터 객체의 직전 데이터 객체의 객체 식별자이고, 제2 이름 정보가 제1 데이터 객체의 객체 식별자이며, 제3 이름 정보가 리스트에서 제1 데이터 객체의 직후 데이터 객체의 객체 식별자인 데이터 객체를 생성함으로써 표현할 수 있다. 이 때, 제1 데이터 객체가 상기 리스트의 최초 데이터 객체인 경우 제1 이름 정보가 null이고, 제1 데이터 객체가 상기 리스트의 최후 데이터 객체인 경우 제3 이름 정보가 null일 수 있다. 도 2는 본 발명의 일 실시예에 따른 데이터 객체 및 데이터 객체의 리스트의 예를 도시한 도면이다.Here, for each first data object on the list, the first object information is the object identifier of the immediately preceding data object in the list, and the second object information is the object identifier of the second data object in the list. The name information is the object identifier of the first data object and the third name information is the object identifier of the data object immediately after the first data object in the list. In this case, if the first data object is the first data object of the list, the first name information is null, and if the first data object is the last data object of the list, the third name information may be null. 2 is a diagram illustrating an example of a list of data objects and data objects according to an embodiment of the present invention.
즉, 도 2에 도시된 바와 같이 [A, B, C, D] 와 같은 리스트는 {(null, A, B) , (A, B, C) , (B, C, D), (C, D, null)} 과 같이 리스트에 포함된 4개의 데이터 객체에 대응하는 4 쌍의 이름 정보의 3터플(Tuple)로 표현될 수 있으며, 이러한 3터플의 집합은 4개의 데이터 객체의 집합일 수 있다. 이 때 이러한 리스트를 리스트의 최초 객체의 직전 데이터 객체 및 최후 객체의 직후 데이터 객체를 null 로 표현하여 (null - A - B - C - D - null)과 같이 표현할 수도 있다. 또한 동일한 이름을 가지는 데이터 객체를 공유하는 리스트를 여러 개 사용하여 일반적인 임의의 그래프를 표현할 수 있다. 도 2에 도시된 예는 하나의 데이터 객체에 연결되는 데이터 타입 및 절차 코드가 이러한 리스트를 통하여 어떻게 구성되는지 보여주는 예이다. 도 2 하단의 도면에서, '이름'은 객체 식별자를, '생김새'는 데이터 타입을, '부림값 골라내기'는 반환값을, '다룸말'은 절차 코드 식별자를, '긔걸'은 절차 코드를, '다룸값 골라내기'는 관계 객체 식별자를, '일말'은 객체 식별자 내부의 절차 코드가 사용하는 임시 기억 장소를, '뒷말'은 '다룸말'과 연결된 데이터 객체를 나타낼 수 있다..(A, B, C), (B, C, D), (C, D) D, null)}, and the set of three tuples may be a set of four data objects (e.g., a set of four data objects) . This list can be expressed as null (A - B - C - D - null) by representing the data object immediately before the first object in the list and the data object immediately after the last object in the list. You can also use any number of lists that share data objects with the same name to represent a typical arbitrary graph. The example shown in FIG. 2 is an example showing how data types and procedure codes connected to one data object are configured through this list. In the drawing at the bottom of FIG. 2, 'name' indicates an object identifier, 'appearance' indicates a data type, 'borrow value selection' indicates a return value, 'comment' indicates a procedure code identifier, , 'Relative value' can indicate the relational object identifier, 'Illegality' indicates the temporary storage location used by the procedure code in the object identifier, and 'Behind' indicates the data object connected with 'Relay statement'.
이 때, 상술한 바와 같이 이름 정보의 3터플로 구성되는 데이터 객체는 다음과 같이 63가지의 유형 중 하나일 수 있다.
At this time, as described above, a data object composed of three tuples of name information can be one of 63 types as follows.
제1 이름 정보 제2 이름 정보 제3 이름 정보First name information Second name information Third name information
관계 객체 식별자 반환값 관계 객체 식별자Relational object identifier Return value Relational object identifier
절차 코드 식별자 절차 코드 반환값Procedure Code Identifier Procedure Code Return Value
절차 코드 반환값 관계 객체 식별자Procedure Code Return Value Relational object identifier
null 객체 식별자 일말The null object identifier
반환값 절차 코드 반환값Return Value
반환값 절차 코드 nullReturn Value
null 객체 식별자 객체 식별자null object identifier object identifier
null 절차 코드 식별자 nullnull the procedure code identifier null
객체 식별자 절차 코드 식별자 절차 코드 식별자Object Identifier Procedure Code Identifier Procedure Code Identifier
절차 코드 식별자 절차 코드 식별자 nullProcedure Code Identifier Procedure Code Identifier null
null 변동 식별자 nullthe null variation identifier null
null 객체 식별자 nullthe null object identifier null
null 데이터 타입 nullnull data type null
객체 식별자 반환값 반환값Object identifier Return value Return value
데이터 타입 절차 코드 식별자 nullData Type Procedure Code Identifier null
절차 코드 식별자 절차 코드 관계 객체 식별자Procedure Code Identifier Procedure Code Relation Object Identifier
절차 코드 관계 객체 식별자 관계 객체 식별자Procedure Code Relation Object Identifier Relation Object Identifier
관계 객체 식별자 관계 객체 식별자 관계 객체 식별자Relational Object Identifier Relational Object Identifier Relational Object Identifier
관계 객체 식별자 절차 코드 nullRelational object identifier Procedure code null
관계 객체 식별자 절차 코드 관계 객체 식별자Relational Object Identifier Procedure Code Relational Object Identifier
절차 코드 식별자 절차 코드 nullProcedure Code Identifier Procedure Code null
절차 코드 식별자 절차 코드 식별자 절차 코드Procedure Code Identifier Procedure Code Identifier Procedure Code
절차 코드 절차 코드 nullProcedure Code Procedure Code null
반환값 반환값 nullReturn ValueReturn Value
null 절차 코드 nullnull the procedure code null
절차 코드 절차 코드 식별자 nullProcedure Code Procedure Code identifier null
절차 코드 절차 코드 식별자 절차 코드Procedure Code Procedure Code Identifier Procedure Code
null 객체 식별자 뒷말The end of the null object identifier
null 뒷말 nullnull trailing null
null 일말 nullnull null
절차 코드 절차 코드 반환값Procedure Code Procedure Code Return Value
관계 객체 식별자 절차 코드 반환값Relative object identifier Procedure code Return value
절차 코드 반환값 반환값Procedure code return value return value
절차 코드 반환값 절차 코드Procedure Code Return Value Procedure Code
절차 코드 반환값 nullProcedure Code Return Value null
객체 식별자 일말 nullObject identifier null
반환값 절차 코드 절차 코드 식별자Return Values Procedure Code Procedure Code Identifier
반환값 절차 코드 절차 코드Return Value
반환값 절차 코드 관계 객체 식별자Return Value PROCEDURE Code Relation Object Identifier
객체 식별자 객체 식별자 객체 식별자Object Identifier Object Identifier Object Identifier
null 객체 식별자 절차 코드 식별자null object identifier procedure code identifier
객체 식별자 객체 식별자 nullObject identifier Object identifier null
객체 식별자 절차 코드 식별자 nullObject Identifier Procedure Code Identifier null
절차 코드 식별자 절차 코드 식별자 절차 코드 식별자Procedure Code Identifier Procedure Code Identifier Procedure Code Identifier
null 객체 식별자 반환값null object identifier Return Value
객체 식별자 반환값 nullObject identifier Returns null
객체 식별자 절차 코드 식별자 절차 코드Object Identifier Procedure Code Identifier Procedure Code
절차 코드 관계 객체 식별자 절차 코드Procedure Code Relationship Object Identifier Procedure Code
관계 객체 식별자 절차 코드 절차 코드Relational object identifier Procedure code Procedure code
관계 객체 식별자 절차 코드 절차 코드 식별자Relational object identifier Procedure code Procedure Code identifier
관계 객체 식별자 반환값 절차 코드Relative object identifier Return value Procedure code
반환값 관계 객체 식별자 절차 코드Return value Relation object identifier Procedure code
객체 식별자 뒷말 nullObject identifier ending null
절차 코드 식별자 절차 코드 절차 코드Procedure Code Identifier Procedure Code Procedure Code
절차 코드 식별자 절차 코드 절차 코드 식별자Procedure Code Identifier Procedure Code Procedure Code Identifier
절차 코드 절차 코드 절차 코드Procedure Code Procedure Code Procedure Code
절차 코드 절차 코드 절차 코드 식별자Procedure Code Procedure Code Procedure Code Identifier
절차 코드 절차 코드 식별자 절차 코드 식별자Procedure Code Procedure Code Identifier Procedure Code Identifier
null 데이터 타입 절차 코드 식별자null data type procedure code identifier
데이터 타입 절차 코드 식별자 절차 코드 식별자Data Type Procedure Code Identifier Procedure Code Identifier
데이터 타입 절차 코드 식별자 절차 코드Data Type Procedure Code Identifier Procedure Code
관계 객체 식별자 관계 객체 식별자 절차 코드Relational Object Identifier Relational Object Identifier Procedure Code
반환값               반환값                  반환값
Return Value Return ValueReturn Value
즉, 객체 식별자는 각 이름 정보가 포함되어 있는 데이터 객체를 지칭하는 식별자이고, 관계 객체 식별자는 객체 식별자가 지칭하는 데이터 객체가 아닌 다른 데이터 객체를 지칭하는 식별자일 수 있다. 또한, 변동 식별자는 현재 식별자와 이전 식별자의 쌍으로 이루어질 수 있다. 즉, 변동 식별자는 현재식별자_이전식별자 와 같이 표현될 수 있으며, 이는 데이터 객체의 동작을 통하여 이전 식별자에 새로운 식별자인 현재 식별자가 부여됨을 나타낼 수 있다.That is, the object identifier is an identifier indicating a data object in which each name information is included, and the relational object identifier may be an identifier indicating a data object other than the data object referred to by the object identifier. Also, the variable identifier may be a pair of the current identifier and the previous identifier. That is, the variable identifier may be represented as the current identifier_previous identifier, which indicates through the operation of the data object that the current identifier as a new identifier is assigned to the previous identifier.
절차 코드 관리부(130)는 데이터 객체에 대한 절차 정보를 생성 및 관리한다. 이 때, 절차 코드 관리부(130)는 제1 데이터 객체에 대한 절차 코드를, 제1 데이터 객체로 시작되는 데이터 객체의 리스트와 변동 식별자의 쌍으로 표현되는 절차 정보를 생성하여 나타낼 수 있다. 또한 절차 정보를 표현하는 쌍에 포함되는 데이터 객체의 리스트는 적어도 하나의 절차 코드 식별자를 포함할 수 있다. 또는 절차 정보를 표현하는 쌍에 포함되는 데이터 객체의 리스트는 적어도 하나의 반환값을 포함할 수 있다. 이 때, 리스트에 포함된 데이터 객체의 구성에 따라, 반환값이 리스트에 포함될 수도 있고, 데이터 객체에 포함된 절차 코드가 반환값을 반환하지 않는 경우 리스트에 포함되지 않을 수도 있으며, 절차 코드 식별자와 연결된 다른 리스트에 포함되어 절차 코드 식별자의 하위 데이터 객체에 포함될 수도 있다.The procedure
도 3은 본 발명의 일 실시예에 따른 절차 정보의 예를 도시한 도면이다. 도 3의 예는 '이름1'이라는 객체 식별자로 표시되는 이름 정보와 '다룸말1' 이라는 절차 코드 식별자로 이루어지는 리스트와 null_null 로 표시되는 변동 식별자의 쌍으로 이루어지는 절차 정보를 나타내며, 이러한 절차 정보는 '이름 1' 객체 식별자에 '다룸말1' 이라는 절차 코드 식별자가 표시하는 절차 코드가 대응됨을 나타낼 수 있다. 이 때 상술한 리스트는 절차 코드 식별자를 포함하는 리스트이다. 이 때 절차 코드 식별자가 아닌 반환값을 리스트가 포함하면 해당 절차 정보는 '다룸말1' 데이터 객체에 대응하는 절차 코드의 실행 결과 값을 나타낼 수 있다. 또한 도 3은 '이름1'로 표시되는 데이터 객체와 '생김새'로 표시되는 데이터 타입으로 이루어지는 리스트를 표시하며, 이는 데이터 객체 '이름1'이 '생김새' 타입의 데이터를 표시함을 나타낼 수 있다.3 is a diagram illustrating an example of procedure information according to an embodiment of the present invention. The example of FIG. 3 shows procedure information consisting of a pair consisting of name information represented by an object identifier of 'name 1' and a procedure identifier of 'procedure 1' and a variable identifier indicated by null_null. May indicate that the procedure code indicated by the procedure code identifier 'Handle 1' in the 'Name 1' object identifier is mapped. The above-mentioned list is a list including procedure code identifiers. At this time, if the list includes a return value that is not a procedure code identifier, the corresponding procedure information may indicate the execution result value of the procedure code corresponding to the 'handle 1' data object. In addition, FIG. 3 shows a data object represented by 'name 1' and a data type represented by 'appearance', indicating that the data object 'name 1' displays data of 'appearance type' .
또한 절차 코드 관리부(130)는, 제1 변동 식별자 및 제1 리스트의 쌍으로 이루어지는 절차 정보에 대하여, 제1 변동 식별자의 현재 식별자를 이전 식별자로 하는 제2 변동 식별자와 제1 리스트의 쌍으로 이루어지는 변형 절차 정보를 생성할 수 있다. 도 4는 본 발명의 일 실시예에 따른 변형 절차 정보의 예를 도시한 도면이다. 도 4에 도시된 바와 같이, 'null_null' 변동 식별자 및 '이름1 - 다룸말1'리스트의 쌍으로 이루어지는 절차 정보가 구체적인 데이터 객체의 내용 변화 없이 변동 식별자에 '이름패1' 현재 식별자를 부여할 수 있으며, 이 때 새로운 변동 식별자는 '이름패1_null'이 된다. 이 때, 이전의 변동 식별자 'null_null'에 대응하는 절차 코드 식별자가 '다룸말1'이며, '이름패1_null' 변동 식별자에 대응하는 절차 코드 식별자가 '다룸말2'이고, '다룸말2'의 직후 객체로 '다룸말1'이 연결되어 '이름1 - 다룸말2 - 다룸말1' 리스트를 형성할 수 있다. 이에 따라 현재의 절차 코드 뿐 아니라 과거의 절차 코드 역시 현재의 절차 정보를 통하여 접근할 수 있다.Also, the procedure
데이터 객체 관리부(120)는 데이터 객체의 이동, 조합 및 소멸 중 적어도 하나를 수행한다. 도 5는 본 발명의 일 실시예에 따른 데이터 객체의 조합의 예를 도시한 도면이다.The data object
예컨대, 데이터 객체 관리부(120)는 제1 리스트를 시작하는 제1 데이터 객체 및 제2 리스트를 시작하는 제2 데이터 객체에 대하여, 제1 리스트와 쌍을 이루는 제1 변동 식별자의 현재 식별자를 이전 식별자로 하는 제3 변동 식별자 및, 제1 데이터 객체와 제2 데이터 객체로 이루어지는 제3 리스트의 쌍으로 이루어지는 제1 절차 정보 및 제2 리스트와 쌍을 이루는 제2 변동 식별자의 현재 식별자를 이전 식별자로 하는 제4 변동 식별자 및, 제3 리스트의 쌍으로 이루어지는 제2 절차 정보를 생성할 수 있다.For example, the data object
도 5의 예에서 제1 데이터 객체는 '이름1'이고, 제2 데이터 객체는 '이름2'이며, 두 데이터 객체를 조합하는 결과 데이터 객체의 리스트 '이름1 - 이름2'이 제3 리스트로 생성될 수 있다. 또한 이 때, 제1 데이터 객체와 쌍을 이루는 변동 식별자 (이름패1_null)는 새로운 현재 식별자 이름패4에 의하여 제3 변동 식별자 (이름패4_이름패1)로 변동되며, 제2 데이터 객체와 쌍을 이루는 변동 식별자(null_null)은 제4 변동 식별자 (이름패4_null)로 변동될 수 있다. 따라서 제1 절차 정보는 (이름패4_이름패1)_이름1-이름2 가 되며, 제2 절차 정보는 (이름패4_null)_이름1-이름2가 된다.In the example of FIG. 5, the first data object is 'Name 1', the second data object is 'Name 2', and the list of result data objects 'Name 1 - Name 2' Lt; / RTI > Also, at this time, the variable identifier (name name 1_null) that is paired with the first data object is changed to the third variable identifier (nameplate 4_namespace 1) by the new current identifier name 4, The identifier (null_null) may be changed to the fourth variation identifier (nameplate 4_null). Therefore, the first procedure information becomes (Name 4_Name1) _Name1-Name2, and the second procedure information becomes (Name4_null) _Name1-Name2.
또한 이 때, 조합되는 데이터 객체와 연결되어 있던 절차 코드 식별자에 따른 리스트를 새로이 생성할 수도 있다. 즉, 제1 리스트에서 제1 데이터 객체의 직후 데이터 객체를 제3 데이터 객체로 대체한 제1 부분 리스트 뒤에 제1 데이터 객체를 덧붙인 제4 리스트 및 제2 리스트에서 제2 데이터 객체의 직후 데이터 객체를 제4 데이터 객체로 대체한 제2 부분 리스트 뒤에 제2 데이터 객체를 덧붙인 제5 리스트 중 적어도 하나를 생성하고, 제3 변동 식별자와 제4 리스트의 쌍으로 이루어지는 제3 절차 정보 및 제4 변동 식별자와 제5 리스트의 쌍으로 이루어지는 제5 절차 정보 중 적어도 하나를 생성할 수 있다. 도 5의 예에서 예컨대, '이름1 - 다룸말2'인 제1 리스트에서 다룸말2를 다룸말5로 대체하고 다룸말2를 덧붙인 제4 리스트 '이름1 - 다룸말5 - 다룸말2'와 제3 변동 식별자 (이름패4_이름패1)의 쌍으로 이루어지는 제3 절차 정보가 생성될 수 있다. 이 때 제4 리스트에 포함된 '다룸말5'의 뒷쪽에는 절차 코드의 리스트인 '긔걸들'이 덧붙여질 수 있다. 유사한 방법으로 제5리스트 '이름2 - 다룸말6 - 다룸말3'와 제4 변동 식별자 (이름패4_null)의 쌍으로 이루어지는 제4 절차 정보가 생성될 수 있다.At this time, a list according to the procedure code identifier associated with the data object to be combined may be newly generated. That is, in the first list, a fourth list in which a first data object is added after a first partial list in which a data object immediately after the first data object is replaced with a third data object, and a fourth list in which a data object immediately after the second data object in the second list A fifth list in which a second data object is added after the second partial list replaced with the fourth data object, and the third procedure information and the fourth variation identifier, which are a pair of the third and fourth lists, And fifth procedural information consisting of a pair of fifth lists. In the example of FIG. 5, for example, in a first list of 'name 1 - verbal utterance 2', a fourth list 'name 1 - verbal utterance 5 - verbal utterance 2' And third variation identifier (nameplate 4_ nameplate 1) can be generated. At this time, a list of procedural codes, 'hangers', can be appended to the back of the 'hang up word 5' included in the fourth list. In a similar manner, fourth procedure information consisting of a pair of the fifth list 'name 2 - verbal utterance 6 - verbal utterance 3' and fourth variant identifier (name placard 4 - null) may be generated.
또한 이 때 '다룸말5'는 코드 식별자인 '다룸말2' 및 '다룸말3'의 정보를 조합하여 생성되는 새로운 코드 식별자일 수 있으며, 같은 방식으로 '다룸말6'도 코드 식별자인 '다룸말2' 및 '다룸말3'의 정보를 조합하여 생성되는 새로운 코드 식별자일 수 있다. 이렇게 '다룸말5' 또는 '다룸말6' 즉, 제3 데이터 객체 또는 제4 데이터 객체에 해당하는 코드 식별자를 각자 제1 리스트 및 제2 리스트에 포함되어 있던 코드 식별자의 정보를 모두 포함하게 생성함으로써, 제1 리스트 및 제2 리스트를 조합하여 생성되는 제3 리스트 도는 제4 리스트에 포함된 코드 식별자가 조합 이전의 각 리스트에 포함되어 있던 코드 식별자를 모두 식별 및 탐색할 수 있도록 할 수 있다.In this case, the 'reply message 5' may be a new code identifier generated by combining the information of the code identifiers 'reply message 2' and 'reply message 3'. In the same manner, 'reply message 6' And a new code identifier generated by combining the information of the commentary 2 'and the commentary 3'. In other words, a code identifier corresponding to the third data object or the fourth data object is generated so as to include all of the code identifiers included in the first list and the second list, The third list generated by combining the first list and the second list and the code identifier included in the fourth list can be identified and searched for all the code identifiers included in each list before the combination.
상술한 바와 같은 두 데이터 객체의 조합은 조합되는 데이터 객체와 쌍을 이루는 절차 코드 식별자가 (null_null) 인 초기 절차 코드 식별자인 경우에도 같은 방법으로 적용될 수 있으며, 이는 도 5의 하단의 예에 도시된 바와 같다.The combination of the two data objects as described above can be applied in the same way even when the procedure code identifier pairing with the data object to be combined is an initial procedure code identifier of (null_null) Same as.
이상과 같은 방법으로 데이터 객체의 정의로부터 데이터 객체를 생성 및 조합할 수 있으며, 모든 데이터 객체를 상술한 생성 및 조합 방법에 의하여 구성되는 리스트를 통하여 방문할 수 있으므로 반복 또는 재귀적인 방법으로 데이터 객체의 소멸 역시 가능하다. 또한 기 존재하는 데이터 객체의 소멸 및 기 존재하는 데이터 객체와 동일한 데이터를 저장하되 타 데이터 객체와의 연결관계가 다른 새로운 객체의 생성을 수행함으로써 데이터 객체의 이동을 표현하는 것 역시 가능하다.Since data objects can be created and assembled from the definition of data objects in the same manner as described above and all data objects can be visited through a list formed by the above-described generation and combination methods, Destruction is also possible. It is also possible to express the movement of a data object by destroying the existing data object and storing the same data as the existing data object but creating a new object having a different connection relation with the other data object.
실행부(140)는 절차 코드를 실행한다. 이 때 절차 코드를 이름 정보로 하는 각 데이터 객체는 하나 이상의 명령어를 표현할 수 있으며, 따라서 데이터 객체의 리스트가 절차 코드의 리스트, 즉 데이터 객체에 대하여 실행되는 프로그램을 표현할 수 있다. 절차 코드는 일반적인 명령형 프로그래밍 언어와 유사하게 정의될 수 있다. 예컨대 절차 코드는 이하 표 1에 열거되는 명령어를 표현할 수 있다.
The
(파리미터 마지막은 객체개수)The specified data object, or a specific data object of the combination connection object, and so on, to find the corresponding data object or combination connection object data, and to find the specified specific data object value.
 (Parameter end is the number of objects)
스택에 저장하는 처리.Find the object identifier specified in the object identifier that owns the current procedure code identifier
 Processing to store on the stack.
입출력부(300)는 사용자로부터 상기 데이터 객체의 생성, 이동, 조합, 소멸 및 절차 코드의 편집 중 적어도 하나와 관련된 정보를 입력받고 사용자에게 상기 데이터 코드 및 상기 데이터 코드, 절차 코드 및 절차 코드의 실행 결과 중 적어도 하나를 출력하고, 저장부(200)는 데이터 코드 및 절차 코드를 저장한다.The input /
도 6은 본 발명의 다른 실시예에 따른 데이터 기반 프로그래밍 모델을 이용하는 업무 관리 모형화 방법의 동작을 도시한 순서도이다. 이를 참조하여 본 발명의 다른 실시예에 따른 데이터 기반 프로그래밍 모델을 이용하는 업무 관리 모형화 방법을 설명한다.FIG. 6 is a flowchart illustrating an operation of a method for modeling business management using a data-based programming model according to another embodiment of the present invention. A method of modeling a business management using a data-based programming model according to another embodiment of the present invention will be described with reference to this.
먼저 데이터 객체 생성부(110)가 사용자의 입력에 응답하여 데이터 객체를 생성한다(S110). 이 때, 상술한 바와 같이 상기 데이터 객체는 제1 이름 정보, 제2 이름 정보 및 제3 이름 정보를 포함하여 이루어지고, 각 이름 정보는, 객체 식별자, 데이터 타입, 절차 코드 식별자, 절차 코드, 기억 장소, 변동 식별자, 관계 객체 식별자, 반환값, 메시지 및 공백 중 하나이며, 객체 식별자는 각 이름 정보가 포함되어 있는 데이터 객체를 지칭하는 식별자이고, 관계 객체 식별자는 객체 식별자가 지칭하는 데이터 객체가 아닌 데이터 객체를 지칭하는 식별자이며, 변동 식별자는 현재 식별자와 이전 식별자의 쌍으로 이루어질 수 있다.First, the data object generating
이어서 데이터 객체 관리부(120)가 사용자의 입력에 응답하여 상기 데이터 객체의 이동, 조합 및 소멸 중 적어도 하나를 수행한다(S120). 이 때, 데이터 객체의 조합은 상기 도 5와 관련하여 상술한 바와 같이 이루어질 수 있다. 즉, 데이터 객체 관리부(120)는 하나 이상의 데이터 객체가 연결된 리스트를, 리스트 상의 각 제1 데이터 객체에 대하여, 제1 이름 정보가 상기 리스트에서 제1 데이터 객체의 직전 데이터 객체의 객체 식별자이고, 제2 이름 정보가 제1 데이터 객체의 객체 식별자이며, 제3 이름 정보가 리스트에서 제1 데이터 객체의 직후 데이터 객체의 객체 식별자인 데이터 객체를 생성함으로써 표현하되, 제1 데이터 객체가 리스트의 최초 데이터 객체인 경우 상기 직전 데이터 객체의 객체 식별자가 Null이고, 제1 데이터 객체가 리스트의 최후 데이터 객체인 경우 직후 데이터 객체의 객체 식별자가 Null일 수 있다.Then, the data
또한, 데이터 객체 관리부(120)는, 제1 리스트를 시작하는 제1 데이터 객체 및 제2 리스트를 시작하는 제2 데이터 객체에 대하여, 제1 리스트와 쌍을 이루는 제1 변동 식별자의 현재 식별자를 이전 식별자로 하는 제3 변동 식별자 및, 제1 데이터 객체와 제2 데이터 객체로 이루어지는 제3 리스트의 쌍으로 이루어지는 제1 절차 정보 및 제2 리스트와 쌍을 이루는 제2 변동 식별자의 현재 식별자를 이전 식별자로 하는 제4 변동 식별자 및, 제3 리스트의 쌍으로 이루어지는 제2 절차 정보를 생성할 수 있다.Also, the data
아울러 데이터 객체 관리부(120)는, 제1 리스트에서 제1 데이터 객체를 제3 데이터 객체로 대체한 제1 부분 리스트 뒤에 제1 데이터 객체를 덧붙인 제4 리스트 및 제2 리스트에서 제2 데이터 객체를 제4 데이터 객체로 대체한 제2 부분 리스트 뒤에 제2 데이터 객체를 덧붙인 제5 리스트 중 적어도 하나를 생성하고, 제3 변동 식별자와 제4 리스트의 쌍으로 이루어지는 제3 절차 정보 및 제4 변동 식벼자와 제5 리스트의 쌍으로 이루어지는 제5 절차 정보 중 적어도 하나를 생성할 수 있다.In addition, the data
이후 절차 코드 관리부(130)가 상기 데이터 객체에 대한 절차 정보에 포함되는 절차 코드를 편집한다. 이 때, 절차 정보의 관리 및 절차 코드의 편집은 도 3과 관련하여 상술한 바와 같이 이루어질 수 있다. 예컨대, 절차 코드 관리부(130)는 제1 데이터 객체에 대한 절차 코드를, 제1 데이터 객체로 시작되는 데이터 객체의 리스트와 변동 식별자의 쌍으로 표현되는 절차 정보를 생성하여 나타낼 수 있다. 또한 절차 정보를 표현하는 쌍에 포함되는 데이터 객체의 리스트는 적어도 하나의 절차 코드 식별자를 포함할 수 있다. 또는 절차 정보를 표현하는 쌍에 포함되는 데이터 객체의 리스트는 적어도 하나의 반환값을 포함할 수 있다. 또한 절차 코드는 예컨대 상기 표 1에 예시된 바와 같이 일반적인 명령형 프로그래밍 언어와 유사하게 규정될 수 있다.Then, the procedure
이후, 입출력부(300)가 절차 코드를 실행하라는 명령이 입력되었는지 판단한다(S140). 만일 단계(S140)에서 절차 코드를 실행하라는 명령이 입력되었으면 실행부(140)가 사용자의 입력에 응답하여 상기 절차 코드를 실행하고(S150), 만일 절차 코드를 실행하라는 명령이 입력되지 않았으면 프로세스는 단계(S160)으로 진행한다. 절차 코드를 실행함에 의하여 데이터 객체 및 그에 포함된 절차 정보에 의하여 표현되는 업무 프로세스를 시뮬레이션하여 각 데이터 객체에 의하여 표현되는 사물 또는 업무의 대상물에 어떠한 변화가 일어나는지를 알아볼 수 있다.Then, the input /
이어서, 절차 코드 관리부(130)가 데이터 객체 관리 및 절차 코드의 편집이 종료되었는지 여부를 판단한다(S160). 만일 단계(S160)에서 데이터 객체 관리 및 절차 코드의 편집이 종료되지 않았다고 판단한다면 프로세스는 단계(S110) 내지 S(150)을 반복하여 데이터 객체의 생성 및 관리와 절차 코드의 편집 및 관리를 계속한다. 만일 단계(S160)에서 데이터 객체 관리 및 절차 코드의 편집이 종료되었다고 판단한다면 프로세스를 종료한다. 이 때 종료 여부의 판단은 사용자의 입력에 따를 수도 있고, 실행부(140)가 절차 코드를 무사히 끝까지 실행하였는지 여부에 따를 수도 있다.Then, the procedure
이상 살펴본 바와 같이 본 발명에 따르면, 소프트웨어에 포함되는 데이터 인스턴스 각각에 대하여 데이터 객체를 독립적으로 생성, 소멸, 이동, 조합 및 편집이 가능한 데이터 기반 프로그래밍 모델을 이용하는 소프트웨어를 개발함으로써, 실제 세계의 사물의 행동을 용이하게 모델링할 수 있고, 각 데이터 인스턴스를 개별적으로 조작할 수 있으므로 클래스의 상속 또는 변형상속이 불필요할 뿐더러 필요에 따라 객체의 개별적 변형과 일괄적 변형을 선택할 수 있으며, 각 데이터 인스턴스별로 필요에 따라 절차 코드를 변형할 수 있어 보다 병렬 처리가 용이하고 실제 세계와 직관적으로 유사한 업무 처리 프로세스의 모델링이 가능하며 업무 관리 모형화을 용이하게 할 수 있다.As described above, according to the present invention, by developing software that uses a data-based programming model capable of independently creating, destroying, moving, combining, and editing data objects for each data instance included in software, Behavior can be easily modeled, and each data instance can be manipulated independently, eliminating the need for class inheritance or transformation inheritance, as well as selecting individual transformations and batch transformations of objects as needed. It is possible to modify the procedural code according to the model, which facilitates parallel processing, allows modeling of a business process similar to the real world intuitively, and facilitates work management modeling.
본 발명은 도면에 도시된 실시예를 참고로 하여 설명되었으나, 이는 예시적인 것에 불과하며, 당해 기술이 속하는 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 기술적 보호범위는 아래의 특허청구범위에 의해서 정하여져야 할 것이다.
While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it will be understood by those of ordinary skill in the art that various changes in form and details may be made therein without departing from the spirit and scope of the invention as defined by the appended claims. I will understand. Accordingly, the technical scope of the present invention should be defined by the following claims.
110 : 데이터 객체 생성부120 : 데이터 객체 관리부
130 : 절차 코드 관리부140 : 실행부
200 : 저장부300 : 입출력부110: Data object generation unit 120: Data object management unit
 130: procedure code management unit 140:
 200: storage unit 300: input /
| Application Number | Priority Date | Filing Date | Title | 
|---|---|---|---|
| KR1020150056199AKR101655157B1 (en) | 2015-04-21 | 2015-04-21 | Apparatus and method for work process modeling using data oriented programming model | 
| Application Number | Priority Date | Filing Date | Title | 
|---|---|---|---|
| KR1020150056199AKR101655157B1 (en) | 2015-04-21 | 2015-04-21 | Apparatus and method for work process modeling using data oriented programming model | 
| Publication Number | Publication Date | 
|---|---|
| KR101655157B1true KR101655157B1 (en) | 2016-09-07 | 
| Application Number | Title | Priority Date | Filing Date | 
|---|---|---|---|
| KR1020150056199AActiveKR101655157B1 (en) | 2015-04-21 | 2015-04-21 | Apparatus and method for work process modeling using data oriented programming model | 
| Country | Link | 
|---|---|
| KR (1) | KR101655157B1 (en) | 
| Publication number | Priority date | Publication date | Assignee | Title | 
|---|---|---|---|---|
| KR0150260B1 (en) | 1994-12-23 | 1998-10-15 | 양승택 | Object modelling technique meta mode system | 
| KR100588405B1 (en)* | 1998-03-14 | 2006-06-09 | 소니 일렉트로닉스 인코포레이티드 | A mass storage unit and a method for organizing and accessing stored data representing audio and video data in the mass storage unit. | 
| KR20070109851A (en)* | 2006-05-12 | 2007-11-15 | 삼성전자주식회사 | Apparatus and method for generating and utilizing security file identifier of rights object using random number | 
| KR100785774B1 (en)* | 2005-12-08 | 2007-12-18 | 한국전자통신연구원 | Obeject based file system and method for inputting and outputting | 
| Publication number | Priority date | Publication date | Assignee | Title | 
|---|---|---|---|---|
| KR0150260B1 (en) | 1994-12-23 | 1998-10-15 | 양승택 | Object modelling technique meta mode system | 
| KR100588405B1 (en)* | 1998-03-14 | 2006-06-09 | 소니 일렉트로닉스 인코포레이티드 | A mass storage unit and a method for organizing and accessing stored data representing audio and video data in the mass storage unit. | 
| KR100785774B1 (en)* | 2005-12-08 | 2007-12-18 | 한국전자통신연구원 | Obeject based file system and method for inputting and outputting | 
| KR20070109851A (en)* | 2006-05-12 | 2007-11-15 | 삼성전자주식회사 | Apparatus and method for generating and utilizing security file identifier of rights object using random number | 
| Publication | Publication Date | Title | 
|---|---|---|
| JP5159713B2 (en) | Automatic design apparatus, automatic design method and automatic design program for automatically designing design architecture of system components | |
| JP4010516B2 (en) | Conversion rule derivation system | |
| CN105528418B (en) | A kind of design documentation generation method and device | |
| CN109033729B (en) | Product design information management method and system | |
| CN107067200B (en) | Operation method and device for bill of material data | |
| CN109558159A (en) | The update method and device of user interface in game | |
| CN117453713A (en) | SQL sentence generation method, device and storage medium for multi-type database | |
| US8732655B2 (en) | Systems and methods for metamodel transformation | |
| CN106815022A (en) | A kind of general UI interface creating methods and device based on tree data structure | |
| US20240086179A1 (en) | Software component update system, and software component update method | |
| CN107220044B (en) | Method and device for driving business object based on meta-model | |
| JP2008225898A (en) | Conversion device, conversion program, and conversion method | |
| KR101655157B1 (en) | Apparatus and method for work process modeling using data oriented programming model | |
| CN116204267B (en) | Method and device for generating intellectual property flow form | |
| KR101636455B1 (en) | Apparatus and method for development of software using data oriented programming model | |
| KR101765324B1 (en) | Sources code generating apparatus using structured query language and diagram, and method for processing thereof | |
| JP2008287365A (en) | Program generation device, program generation method, program, and recording medium | |
| JP2006285707A (en) | Business specification creation support system and method | |
| CN112925790A (en) | Data management method and device, electronic equipment and storage medium | |
| CN111930387A (en) | Integration method and device of integration package, electronic equipment and storage medium | |
| JP5820324B2 (en) | Design support system, design support method and program | |
| JP2003186670A (en) | Automatic generation device, automatic generation method and automatic generation program for database access component | |
| JP5901465B2 (en) | Procedure manual generation apparatus, procedure manual generation method and program | |
| CN117540712A (en) | Form creation method, device, equipment and storage medium | |
| JP2011154575A (en) | Automatic program generation device | 
| Date | Code | Title | Description | 
|---|---|---|---|
| PA0109 | Patent application | St.27 status event code:A-0-1-A10-A12-nap-PA0109 | |
| PA0201 | Request for examination | St.27 status event code:A-1-2-D10-D11-exm-PA0201 | |
| PE0902 | Notice of grounds for rejection | St.27 status event code:A-1-2-D10-D21-exm-PE0902 | |
| E13-X000 | Pre-grant limitation requested | St.27 status event code:A-2-3-E10-E13-lim-X000 | |
| P11-X000 | Amendment of application requested | St.27 status event code:A-2-2-P10-P11-nap-X000 | |
| P13-X000 | Application amended | St.27 status event code:A-2-2-P10-P13-nap-X000 | |
| E701 | Decision to grant or registration of patent right | ||
| PE0701 | Decision of registration | St.27 status event code:A-1-2-D10-D22-exm-PE0701 | |
| GRNT | Written decision to grant | ||
| PR0701 | Registration of establishment | St.27 status event code:A-2-4-F10-F11-exm-PR0701 | |
| PR1002 | Payment of registration fee | St.27 status event code:A-2-2-U10-U11-oth-PR1002 Fee payment year number:1 | |
| PG1601 | Publication of registration | St.27 status event code:A-4-4-Q10-Q13-nap-PG1601 | |
| R18-X000 | Changes to party contact information recorded | St.27 status event code:A-5-5-R10-R18-oth-X000 | |
| P22-X000 | Classification modified | St.27 status event code:A-4-4-P10-P22-nap-X000 | |
| P22-X000 | Classification modified | St.27 status event code:A-4-4-P10-P22-nap-X000 | |
| FPAY | Annual fee payment | Payment date:20190814 Year of fee payment:4 | |
| PR1001 | Payment of annual fee | St.27 status event code:A-4-4-U10-U11-oth-PR1001 Fee payment year number:4 | |
| PR1001 | Payment of annual fee | St.27 status event code:A-4-4-U10-U11-oth-PR1001 Fee payment year number:5 | |
| PR1001 | Payment of annual fee | St.27 status event code:A-4-4-U10-U11-oth-PR1001 Fee payment year number:6 | |
| P22-X000 | Classification modified | St.27 status event code:A-4-4-P10-P22-nap-X000 | |
| PR1001 | Payment of annual fee | St.27 status event code:A-4-4-U10-U11-oth-PR1001 Fee payment year number:7 | |
| PR1001 | Payment of annual fee | St.27 status event code:A-4-4-U10-U11-oth-PR1001 Fee payment year number:8 | |
| PR1001 | Payment of annual fee | St.27 status event code:A-4-4-U10-U11-oth-PR1001 Fee payment year number:9 | |
| PR1001 | Payment of annual fee | St.27 status event code:A-4-4-U10-U11-oth-PR1001 Fee payment year number:10 |