KR101888472B1 - Do It Yourself system of Internet of Thinks based on Business Process Model and Its Implementation Method - Google Patents

Do It Yourself system of Internet of Thinks based on Business Process Model and Its Implementation Method Download PDF

Info

Publication number
KR101888472B1
KR101888472B1 KR1020160166585A KR20160166585A KR101888472B1 KR 101888472 B1 KR101888472 B1 KR 101888472B1 KR 1020160166585 A KR1020160166585 A KR 1020160166585A KR 20160166585 A KR20160166585 A KR 20160166585A KR 101888472 B1 KR101888472 B1 KR 101888472B1
Authority
KR
South Korea
Prior art keywords
iot
virtual object
service
objects
layer
Prior art date
Application number
KR1020160166585A
Other languages
Korean (ko)
Other versions
KR20180066356A (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 KR1020160166585A priority Critical patent/KR101888472B1/en
Priority to PCT/KR2016/015548 priority patent/WO2018105804A1/en
Publication of KR20180066356A publication Critical patent/KR20180066356A/en
Application granted granted Critical
Publication of KR101888472B1 publication Critical patent/KR101888472B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/145Network analysis or design involving simulating, designing, planning or modelling of a network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Economics (AREA)
  • General Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Marketing (AREA)
  • Data Mining & Analysis (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Educational Administration (AREA)
  • Development Economics (AREA)
  • Game Theory and Decision Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Stored Programmes (AREA)

Abstract

In order to develop various IoT objects, services, and IoS applications, sensors and actuators are rapidly spreading around the world. In order to develop various IoT objects, services, and IoS applications, application software is installed on the hardware of a physical IoT device (including sensors or actuators) It is a DIY-based IoT virtual object, service, and business process authoring system and method that operates IoT device in a way that user wants (service and business process) by easily making and inputting.
To do this, virtual objects are virtualized using profiles of physical IoT devices (sensors or actuators), virtual objects are connected, relationships and rules between virtual objects are created, composition IoT services are created, IoT services are interconnected and business process model (BPM) is applied to create orchestrated IoT business processes. In addition, IoT business processes can be deployed to physical IoT devices via communications interfaces (such as USB or Internet protocols).
To this end, the present invention comprises a physical layer 110, a layer for constructing things related to Internet of Things (IoT); A Virtual Object Layer (VOL) 120 that represents objects in the physical layer 110 as virtual objects (VOs) and manages the virtual objects VO; A Service Composition Layer (SCL) 120 for creating Service Objects (SOs) by combining two or more virtual objects VO with respect to virtual objects VO in a Virtual Object Layer (VOL) ) 130; (SO), a flow of a process desired by a user for one scenario is formed for one service object, and a business process A business process layer (BPL) 140 that utilizes business process modeling notations (BPMN); And a system architecture formed by four layers including the system architecture.
Accordingly, the present invention provides a business process modeling notation (BPMN) based on a representation of service objects by implementing the service through a DIY interface for creating and deploying IoT applications.
In addition, the present invention provides an effect that a user can easily construct an IoT infrastructure by easily visualizing the user for IoT configuration and allowing interaction and manipulation with the generated virtual objects (VOs).
In addition, hardware of physical IoT devices can be operated according to IoT service and business process, and IoT DIY hardware such as Arduino, Billboard and attached sensors or actuators can be operated in a desired manner without computer programming. And I can develop IoT service by myself, and IoT service can be developed personally.

Description

[0001] The present invention relates to a BPM-based IoT DIY system and a method for implementing the same,

The present invention relates to a virtual object, a service, and a business process authoring system and method of IoT using a BPM-based DIY method. More specifically, the present invention relates to a system and method for authoring a DIY (Do- Service composition, and business process creation and distribution of BPM-based IoT that provides IoT Ito-Yourself method, object, service, and process virtualization.

The Internet of Things (IoT) is a service infrastructure for providing advanced services by linking various objects of physical word and virtual world based on information and communication technology.

In order to design such IoT, infrastructure computing devices for realizing ubiquitous space are embedded in environment and things, and environment and objects themselves are intelligent, so that M2M (Machine: Machine) which can communicate intelligently between people and objects, things and objects to Machine has evolved into the concept of interacting with all the information of reality and virtual world by expanding to the Internet. The main technologies of Internet (IoT) are sensing technology, wired / wireless communication and network infrastructure technology, object internet interface technology, and service technology through object internet.

In this IoT environment, it is required to develop a technology for end-users discovering things and using the smart environment effectively through applications.

In addition, the open source HWSW platform is expanding globally, and ICT DIY culture that can develop ICT products and services such as various IoT applications is easily created by non-experts. In addition, Open hardware that can activate the creative ecosystem (Arduino, Billboard, Edison, etc.) is spreading.

That is, in the technology field, a DIY-based IoT support system capable of activating a personal-led development environment for self-producting the idea of Internet Internet service, capable of activating the Internet creation ecosystem of objects, and an open practical business process based IoT development technology are required have.

Korean Patent Registration No. 10-1628996 entitled " Tripling network express gateway system which automatically recognizes wire and wireless communication for IoT " Korean Patent Laid-Open Publication No. 10-2016-0096243 entitled " IoT Service System and Method for Semantic Information Analysis " Korean Patent Laid-Open Publication No. 10-2016-0089772 entitled " Self-adaptive IoT device and system "

SUMMARY OF THE INVENTION The present invention has been made to solve the above problems and it is an object of the present invention to provide a BPM-based IoT DIY system for easily providing a DIY interface without having a basic knowledge of a programming language based on a diagram language solution related to business process management .

Further, the present invention provides a BPM-based IoT DIY system for allowing a user to easily construct an IoT infrastructure by easily visualizing the user for the IoT configuration and allowing interaction and manipulation with the generated virtual objects (VOs) .

However, the objects of the present invention are not limited to the above-mentioned objects, and other objects not mentioned can be clearly understood by those skilled in the art from the following description.

In order to achieve the above object, a BPM-based IoT DIY system according to an embodiment of the present invention includes a physical layer 110, which is a layer for constructing things related to Internet of Things (IoT); A Virtual Object Layer (VOL) 120 that represents objects in the physical layer 110 as virtual objects (VOs) and manages the virtual objects VO; A Service Composition Layer (SCL) 120 for creating Service Objects (SOs) by combining two or more virtual objects VO with respect to virtual objects VO in a Virtual Object Layer (VOL) ) 130; (SO), a flow of a process desired by a user for one scenario is formed for one service object, and a business process A business process layer (BPL) 140 that utilizes business process modeling notations (BPMN); And a system architecture formed by four layers including the system architecture.

The process flow then operates to perform the functions defined by the individual service objects (SO) in the business process layer (BPL) 140 and is based on the encrypted behavior between the individual virtual objects VO in actual interaction And directly performs the physical object PO.

In addition, things are characterized by the detection of control data for a preset phenomenon occurring in the IoT environment and around it.

The virtual object VO summarizes or compressively presents information related to the object of the physical layer 110 and allows the user to manipulate the virtual object VO within the IoT system environment , And access to an environment of a thing in the physical layer 110 represented by a virtual object VO is enabled.

The service object SO is characterized in that it is formed by joining an LED virtual object VO with a temperature sensor virtual object VO and an output virtual object VO as an input virtual object VO .

The virtual object layer (VOL) 120 is a component of a local or remote interface class for inputting information related to things of a physical layer in which users want to register virtual objects VO A virtual object manager (VOM) 120a for providing a user with a virtual object; And a control unit.

The BPM-based IoT DIY system according to the embodiment of the present invention implements business process modeling notations (BPMN) based on the representation of service objects through the DIY interface for creating and deploying IoT applications Can provide.

In addition, the BPM-based IoT DIY system according to another embodiment of the present invention easily visualizes the user for the IoT configuration and allows the user to interact with and manipulate the generated virtual objects (VOs) The present invention provides an effect that can be constructed.

1 is a diagram illustrating a system architecture of a BPM-based IoT DIY system according to an embodiment of the present invention.
2 is a block diagram for explaining the operation of a virtual object manager (VOM) among the BPM-based IoT DIY system of FIG.
Fig. 3 is a diagram showing an operational flowchart (an internal process in the form of a sequence diagram) of the virtual object manager of Fig. 2; Fig.
4 is a block diagram illustrating components for explaining the operation of a Service Composition Manager in the BPM-based IoT DIY system of FIG. 1;
FIG. 5 is a diagram illustrating a service flow by a service composition manager in the BPM-based IoT DIY system of FIG. 1; FIG.
FIG. 6 is a diagram for describing process modeling as a static structure representing a main component in a business process layer (BPL) according to an embodiment of the present invention.
7 is a flowchart illustrating an operation sequence in a business process layer (BPL) according to an embodiment of the present invention.
FIG. 8 is a reference diagram showing the concept of the IoT application configuration system in the BPM-based IoT DIY system of FIG. 1; FIG.
FIG. 9 is a diagram showing an XML representation of a UI screen and a virtual object VO implemented by a virtual object manager (VOM) based on the BPM-based IoT DIY system of FIG. 1;
10 is a diagram showing an XML representation of a UI screen and a virtual object VO implemented by a service composition manager based on the BPM-based IoT DIY system of FIG. 1;
FIG. 11 is a diagram showing an XML representation of a UI screen and a virtual object VO implemented by a BPM-based business process editor based on the BPM-based IoT DIY system of FIG.
12 is a diagram showing a UI screen implemented by a BMP deployment engine or a BMP deployment manager based on the BPM-based IoT DIY system of FIG. 1;
13 is a diagram showing the entire BPM-based IoT DIY system such as the virtual object manager, the service composition manager, the BPM-based business process editor, and the BMP distribution engine of FIG. 1;

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, a detailed description of preferred embodiments of the present invention will be given with reference to the accompanying drawings. In the following description of the present invention, detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention rather unclear.

In the present specification, when any one element 'transmits' data or signals to another element, the element can transmit the data or signal directly to the other element, and through at least one other element Data or signal can be transmitted to another component.

1 is a diagram illustrating a system architecture of a business process model (BPM) based IoT DIY system according to an embodiment of the present invention.

Referring to FIG. 1, the system architecture of the BPM-based IoT DIY system includes a physical layer 110, a virtual object layer (VOL) 120, a service composition layer (SCL) A business process layer 130, and a business process layer (BPL) 140. Each layer performs communication with a neighboring layer according to an individual function and a preset communication plan.

Hereinafter, each layer will be described in detail.

The physical layer 110 is a layer for constructing things related to Internet of Things (IoT). Where things can detect control data for a preset phenomenon occurring in the IoT environment or / and around.

Also, in one embodiment of things, it can be defined as a sensing device and an actuator device having the ability to perform communication via the Internet.

A virtual object layer (VOL) 120 is a layer for managing virtual objects (VOs). The virtual object VO represents things in the physical layer 110. [

The virtual object VO may summarize or compressively present information related to the object of the physical layer 110 and allow the user to manipulate the virtual object VO within the IoT system environment, So that access to the environment of a thing in the physical layer 110 represented by the virtual object VO is made possible.

The virtual object VO in the virtual object layer 120 is managed by a combination of two or more virtual objects VO performed on a service composition layer (SCL) Service Objects, SO).

An example of the service object SO is an operation when the temperature sensor virtual object VO exceeds 40 DEG C as the input virtual object VO and the operation of joining the LED virtual object VO with the output virtual object VO ). At this time, the LED virtual object VO is set to start blinking when the condition is satisfied, and it is preferable that the temperature value acquisition and the flickering of the LED follow the encrypted function between the corresponding virtual objects VO.

When one service object (SO) is created, the service object of one unit is used by the business process layer (BPL) 140 to form a flow of a process desired by the user for one scenario do.

Here, the business process layer (BPL) 140 uses business process modeling notations (BPMN) to perform a join-based model of service objects (SOs).

The process flow is operative to perform functions defined by individual service objects (SOs) in the business process layer (BPL) 140 and to provide physical objects PO ) Directly.

On the other hand, each layer of the BPM-based IoT DIY system has a static structure and has an interaction structure for describing the main operation of each layer.

2 is a block diagram for explaining the operation of the virtual object manager (VOM) 120a of the BPM-based IoT DIY system of FIG.

First, the virtual object manager (VOM) 120a corresponds to a main component in the virtual object hierarchy 120. Referring to FIG. The virtual object manager (VOM) 120a includes another class such as a file manager 120a-1, a communication manager 120a-2, an XML parser 120a-3, class), and performs all functions associated with the Virtual Object Layer (VOL).

The virtual object manager (VOM) 120a provides the user with components of local or remote interface classes for inputting information related to things in the physical layer that users want to register virtual objects VOs.

The communication manager 120a-2 uses the file manager 120a-1 to retrieve the XML version of the virtual object VO from the local file system using the file manager 120a-1, And transmits the virtual object VO to the client application.

In this process, the client application may be a Service Composition Manager 130a described later.

Meanwhile, the XML parser 120a-3 collaborates with the file manager 120a-1, and converts the information input by the user into an XML element representing the virtual object VO, or vice versa And serves as an interface to the user.

Functionally, the XML parser 120a-3 uses the DeviceInformation class as a template for generation of the virtual objects VO.

Next, Fig. 3 shows an operation flow chart of the virtual object manager 120a of Fig. Referring to FIG. 3, the sequence model shown in FIG. 3 represents an interaction between an interface component and a user, as well as an interaction in a message exchange form between system internal components for executing a user command.

The sequence of interaction is initiated by the virtual object manager 120a and all the components including the user interface and the communication manager 120a-2, etc., for initiating the sequence by the virtual object manager 120a, State.

The main interface 120a-4 provides a view for all the virtual objects VOs to allow the file manager 120a-1 via the virtual object manager 120a to access the XML repository 120a- 5 to read data associated with the virtual object VO.

The read data is parsed by the XML parser 120a-3 and information associated with the virtual object VO is provided to the virtual object manager 120a for output via the interface 120a-4.

Accordingly, the user can interact with the virtual objects VOs through the interface 120a-4 under the control of the virtual object manager 120a. At this time, the interactive virtual object (VO) means that the user interacts with the action in the sequence model.

When the selection of one of the plurality of virtual objects VO displayed on the interface by the user is completed, the selected virtual object VO information is displayed again to the user through the interface view. Thereafter, the user can perform at least one of editing and updating of the virtual object VO if necessary.

In order to store the edited virtual object VO, the information displayed in the interface view is transferred to the XML parser 120a-3 under the control of the virtual object manager 120a so as to be converted into a predetermined format, (120a-1) writes the format-converted virtual object to the XML repository (120a-5). The deletion process can also be performed in the same manner.

The communication manager 120a-2 acts as a server thread by detecting incoming connections from a remote client service control manager (SCM). That is, upon receiving the connection request, the communication manager 120a-2 can request the virtual object manager 120a of the virtual object (VO) information sent to the client.

FIG. 4 is a block diagram for explaining the operation of a service composition manager (service composition manager) 130a based on the BPM-based IoT DIY system of FIG. Referring to FIG. 4, the main classes of the composition manager 130a, and the relationships between the classes and the association process are shown as a whole.

Here, the classes 130a-1, 130b-1, 130b-1, 130c-1, 130c-1 and 130c- It is preferably built-in classes.

Specifically, the device module (DeviceModule) 130a-4 is provided for performing a virtual representation for inputting and outputting virtual objects VOs. FIG. 4 shows a device module 130a-4, Shows a specialized relationship between the output module 130a-5, the output module 130a-6, and the device module 130a-4.

Here, actual classes representing an input device as a pressure sensor and an output device as an LED may be obtained from classes of an OutputModule 130a-5 and an OutputModule 130a-6, respectively. Each such input or output device presentation class is associated with a user attribute.

The DeviceModule 130a-4 class includes an I device module (IDeviceModule) 130a-7 interface for performing core properties related to device modules and performing unique methods of each device module Can be operated.

In addition, a class of device module (DeviceModule) 130a-4 may activate an ICloneable (130a-8) interface for replicably creating virtual devices.

Here, the interface provided in I-Cloneable 130a-8 can be used to replicate the selected module when the user drags the module to the canvas, which is a bitmap 2D graphics area displayed on the web browser.

That is, an individual device virtual object (VO) module, such as an LED class, may include a view and a set class having an LED view (LEDView) and an LED setting (LEDSettings) class type. The LEDView and LEDSettings classes may be specialized classes from the DeviceView 130a-9 class and the DeviceSettings 130a-10 class shown in FIG.

The DeviceView (130a-9) class corresponds to a work area class for displaying the characteristics of the selected module in the detailed view tab form in the editor. Similarly, a DeviceSettings 130a-10 class may provide a form for setting properties and parameters.

The MainProcess class 130a-11 acts as a main back end process, which is an independent database-specific processor installed to help the host work, and is executed as a singleton class .

Other classes shown in FIG. 4 use the same instance as the MainProcess 130a-11 through the public interface. An instance in the present invention may be an object that has been allocated a physical memory according to a data type defined in the UI framework, and can be accessed and executed by a program.

The MainProcess 130a-11 class also checks the DeviceModule 130a-4 class and the WorkSpace 130a-12 class list. The Space 130a-13 class is an upper class of the WorkSpace 130a-12 class and is used not only for the file system but also for the XML serialization (XmlSerialization) 130a-11a class.

The Space (130a-13) class is an IWorkspace (130a-14) including interfaces associated with storing data spaces, a current IWorkspace (130a-14) for providing Undo / It is possible to execute the I-space UndoRedo (IspaceUndoRedo) 130a-15 associated with the maintenance of the space.

The Space 130a-13 class is used in the JoinInfo class 130a-16 to maintain information about join joins formed between the input module and the output module shown in the functionality editor, ). ≪ / RTI >

This list of JoinInfo classes 130a-16 is used by a workspace 130a-12 that wants to know about the joins of the parallel paths associated with the current project.

Similarly, each WorkSpace 130a-12 object includes an input module 130a-17 for representing an input module and an output module displayed in a work area of a service composition project, -18) class device data (DeviceData) (130a-19).

The classes of the device panel (DevicePanel) 130a-20, the work panel (WorkPanel) 130a-21 and the work area (WorkArea) 130a-22 include a structure derived from the user control (130a-23) . These classes are used to provide a graphical user interface (UI) for each project. Here, each project has a tab for displaying an object of TabPageEx (TabPageEx) 130a-2b on tabs KRBTTabControl 130a-2a extended for the class TabControl 130a-2 .

Tab page Ex (TabPageEx) 130a-2b corresponds to an expanded version of the TabPage (130a-3) class for providing a tab page that can be closed.

The KRBT tab control (KRBTTabControl) 130a-2a corresponds to a part of the main form 130a-1a corresponding to a displayable main container for visual control and components.

The Trash bin 130a-24 class can graphically represent a waste bin working with the work panel 130a-21 to provide a function for deleting modules displayed in the work area of the editor .

5 shows a process for designing or configuring a service flow using the service composition manager 130a. Referring to FIG. 5, a user first executes a main graphic user interface (GUI) to create a new project.

More specifically, the first area (1st) shown in FIG. 5 represents an interaction sequence among various internal components of the service composition manager (130a) when the user initializes a new project, and the sequence of the first area Does not perform the initialization of the main process 130a-11.

This is because the editor has already been initialized and the Frm main (FrmMain) 130b container has already been displayed on the screen where the user can click a new project button to start the process.

5, when the user clicks a new project button in the FrmMain 130b, the FrmMain 130b calls the createWorkArea () function, and sends a CreateSpace () message to the main process (MainProcess) 130a-11.

The MainProcess 130a-11 creates an object of the WorkSpace class and returns the created object to the FrmMain 130b.

FrmMain 130b then adds a new workspace object to the collection space of the main process 130a-11 and creates a newly created workspace object in the work area WorkArea according to the CreateSpace () (WorkArea) 130a-22 objects by transmitting them to the work area 130a-22.

At this time, the WorkArea 130a-22 class is associated with a WorkPanel 130a-21 object that actually works to show a canvas for the Service Control Manager (SCM).

In addition, the work area (WorkArea) 130a-22 class includes an input for displaying device module blocks that allow a user to perform a drag-n-drop on a work area for creating a service design And output panels.

In order to display the work area object in the Frm main (FrmMain) 130b, the work area (WorkArea) 130a-22 class includes an extended tab page object collection control function called Tab page Ex (TabPageEx) 130a-2b .

Where the tab page object is displayed as a new tab on the tab control, and all toolbar controls are created using the enableControls message. At this time, the user can check the new project tab to drag and drop the virtual objects to create the function proxy.

When a new project is initialized, the user can strat to perform drag & drop of the input or output virtual object (VO) into the work area.

When a work area accepts a WorkPanel 130a-21 control associated with it, a graphical representation for the virtual object VO dropped by the user is shown in the panel.

Next, the mapping sequence from the virtual object VO to the service object SO on the service composition layer (SCL) 130 will be described with reference to the second area 2nd in FIG. The event handler obtains the dropped virtual object VO and related data according to the drag and drop in the panel, and then creates a duplicate object from the original stored in the device list in the main process 130a-11 .

The duplicate objects are added to the list of devices managed by each of the workspaces via the parent class space. The parent class preferably has a stack implementation for managing undo / redo.

This workspace 130-12 class creates an XMLSerializer instance and requests that the XMLSerializer 130a-11a having its own reference as a parameter perform a MemorySerializeCollection.

Accordingly, the XMLSerializer 130a-11a class acquires all the data associated with the workspace object, changes the obtained data into the XML format, and stores it in the memory buffer as byte data.

On the other hand, the reference of the byte data buffer is returned to the workspace 130-12 class.

Here, the byte data buffer is pushed to the Undo stack, the device list is updated, and the WorkPanel 130a-21 is invalidated to generate the update flow.

This sequence is repeated when a new device module is dropped to the work panel every day by the user.

When a device module is created in the work panel only once in a project, only one thing can be memorized, but this is due to the initialization policy for the simplicity of the generated flows and can be changed according to the setting.

Next, the third area (3rd) will be described with reference to FIG. 5, and the user can join the input device module to a plurality of output modules. To this end, the user must click the left mouse button on the input virtual object VO already created in the WorkPanel 130a-21. When the user moves the mouse while holding down the left button, the work panel 130a-21 performs a static method of the JoinInfo (130a-16) class to obtain the start position where the join is drawn. . To illustrate the join, a Bezier line is drawn from the start position of the join to the mouse pointer.

When the mouse pointer is input to the virtual object (VO) area, the mouse pointer is operated to the end position of the joining again by the static method, and the join is displayed on the work panel (130a-21).

At this time, when the user removes the depressed state of the mouse button, the JoinInfo class 130a-16 object is generated together with the information of the input and output device module, and the JoinInfo class 130a-16 object Is added to the join list managed by the workspace object. The drawn line is deleted. When a join is created, the user can double-click the joins or individually double-click the virtual object (VO) to set an action, i.e., to select an available function for the associated physical object, Can also be set. At this time, the related data is stored as a part of a service object (SO) in the form of JoinInfo 130a-16, and the completed service object SO is connected to the input and output virtual objects VOs Lt; / RTI >

FIG. 6 is a diagram illustrating process modeling as a static structure that represents the main components in a business process layer (BPL) 140 according to an embodiment of the present invention.

6, an object of a business process layer (BPL) 140 is to utilize a service object SO generated in a service composition layer (SCL) 130, SO) to the user in the form of business process modeling notations.

The most important component in the business process layer (BPL) 140 is the business process design manager 140a. The business process design manager 140a includes a BPM-based business process editor 140a-1 and the BPM-based business process editor 140a-1 includes a toolbars 140a-2, A main window 140a-5 including a toolbox 140a-3 and a designer canvas 140a-4.

Toolbar 140a-2 is a component panel that is branched from the item control (itemControl) 140a-2a class. In this panel, a visual representation of the business process modeling notation type corresponding to the service object SO obtained in the service composition layer 130 appears.

The Toolbar (140a-2) component performs basic drawing commands and operations to perform a drag and drop design by the user. Here, the drawing commands mean execution, undo operation, copy, paste operation, group and group release operation, and the like.

The Connection class 140a-6 and its associated ConnectionAdorner class 140a-7 include Business Process Modeling Notations (BPMN) items representing flow sequences between process instances Lt; / RTI > is used to illustrate the connection line between the electrodes.

FIG. 7 is a flowchart illustrating an operation sequence in a business process layer (BPL) 140 according to an embodiment of the present invention based on the components of FIG.

7, an operation in a business process layer (BPL) 140 includes a process of acquiring service objects (SOs) from the service composition layer 130, and acquiring service objects (SOs) Business Process Modeling Convert service objects (SOs) to a process model for the user, including mapping to notations, and finally perform the process.

The illustrated service control manager (SCM) communication manager 140c waits for a connection request from the BPM-based business process editor 140a-1, which is a main component of the business process layer 140. [

Once the connection is successfully connected, the service objects (SOs) available in the SO State Repository (140d) are obtained in the form of XML information objects and passed to the business process layer (140) do.

The obtained service objects (SOs) are parsed by an XML parser (140f) to be represented to the user by a business process modeling notation. The user creates a process model by drag and drop operation using the visually implemented business process modeling notation.

At this time, the user may draw a process component according to a predetermined operation rule or conditions in the middle of the process model creation processes, and may connect a process component through connection notation.

When the process model is completed through this process, a process object is created. The process object is an entity that can be deployed through the Deployment Engine (or Deployment Manager) 140e at the business process layer 140. [

These deployed process objects are those that can be changed into a series of operations based on the services that make up the service object.

Here, the deployment engine 140e interacts with services as part of the process object, and the generated process object is executed as a separate thread so that various process objects can be simultaneously executed.

8 is a reference diagram showing the concept of the IoT application configuration system. Referring to FIG. 8, in the prototype execution screen of the proposed system, each detail item shown in FIG. 8 represents individual components and can be functionally classified.

Next, FIG. 9 is a diagram showing an XML representation of a UI screen and a virtual object VO implemented by the virtual object manager (VOM) 120a. Referring to FIG. 9, it is preferable that the virtual object manager (VOM) 120a represents an XML representation of data of stored virtual objects (VOs), and the virtual object manager (VOM) 120a can encrypt the behavior of IoT resources to users.

The virtual object manager (VOM) 120a associates the IoT resource data with a visual representation, thereby allowing the virtual objects VO to interact and manipulate in a more intuitive manner.

Two different approaches can be useful for this purpose. The first approach may be a passive approach that provides a detailed description of the Uniform Resource Identifier (URI), location, type, and IoT resources in the form of services. In this way, a device that performs the provided protocols can be added as a resource to the system.

Another approach is to allow the virtual object manager (VOM) 120a to automatically obtain the necessary information from the device in a manner that the virtual object manager (VOM) 120a is provided with the URI of the remote device, Information is extracted. However, this method is advantageous in that it is performed automatically, but it has a disadvantage that it can be useful only to specific devices provided for performing a service specified in the system for a predetermined purpose.

10 is a diagram showing an XML representation of a UI screen and a virtual object VO implemented by the service composition manager (service composition manager) 130a.

Referring to FIG. 10, a service composition manager (service composition manager) 130a corresponds to a main module in the service composition layer 130. FIG. The service composition manager 130a has a main purpose of easily visualizing the user and allowing interaction and manipulation with the virtual objects VOs generated by the virtual object manager (VOM) 120a.

To accomplish this object, the sensor virtual objects (VOs) and the actuator virtual objects (VOs) can be expressed separately as input and output modules. These modules can be implemented to be dragged and dropped directly onto the canvas via mouse events in the Windows operating system. The virtual object (VO) modules implemented in the canvas can be represented by simple join lines expressed by connecting the input virtual objects VOs and the output virtual objects VOs, and the user can display the joined virtual objects VOs) can be used to set the rules of operation for an intuitive mouse event.

The joining of the input virtual objects VOs and the output virtual objects VOs in the service composition manager 130a generates a service object SOs, Can be stored as XML documents that individually represent an input virtual object VO and an output virtual object VO as part of the service object SO.

Also, the connection between the virtual objects VOs can be represented as an XML document in the form of a specific join node of a source and a sink object for the connection. Accordingly, the objects VOs can be stored, opened or updated at the request of the user.

11 is a diagram showing an XML representation of a UI screen and a virtual object VO implemented by the BPM-based business process editor 140a-1. Referring to FIG. 11, the BPM-based business process editor 140a-1 includes service objects VOs generated in a service composition manager 130a in a business process modeling notation (BPMN) In charge of expression. The main interface for the BPM-based business process editor 140a-1 is shown in FIG.

The BPM-based business process editor 140a-1 generates Business Process Modeling Notations (BPM) based on the representation of service objects in order to provide the basic knowledge of the Noyes line for creating and deploying IoT applications through the DIY interface. BPMN). ≪ / RTI >

In addition, the BPM-based business process editor 140a-1 can eliminate the need for a programming skill for a user to create a graphic model, and can be directly deployed in an IoT application.

Business Process Modeling Notations (BPMN) can be implemented as part of a prototype system that includes basic events, tasks, gateways, script notation, service objects are represented as tasks, The drop approach allows you to create models.

This sequence of operations is generated by the concatenation of notations through object objects, and the same object objects are used to obtain information about input and output notations in the model.

The gateway notation is performed as a decision tool as long as the screened notation is provided in a script list so that the user can manipulate the data or be selected to proceed with the process.

In the XML implementation of the business process model created by the user, the XML sample is shown in Figure 11 as representing tasks and other notations with DesignerItem objects. Also, it can be seen that the connection objects for maintaining the track of the source and sink items in the model shown in Fig. 11 are included.

12 is a diagram showing a UI screen implemented by the BMP Deployment Engine 140e or the BMP Deployment Manager. Referring to FIG. 12, there is shown a result of a test of the same model created through the BPM-based business process editor 140a-1, as well as the UI screen implemented by the BMP deployment manager 140e.

The BMP deployment manager 140e expresses the relationship between various IoT resources generated by the BPM-based business process editor 140a-1 and stored as an XML document in a process model.

These XML documents are loaded into the BMP distribution manager 140e and executed. Because the prototype implementation shown in Figure 12 considers IoT resources with a CoAP implementation, the deployment manager 140e is implemented using Java. Thus, IoT resources can be implemented using the Californium framework.

To execute the generated process model, the XML document is first parsed by the BMP deployment manager 140e and the related entities are extracted. When related entities are extracted, they are sorted according to the flow of the process model and stored in a list, and the list is repeatedly generated, and each entity is performed based on attributes and actions.

For tasks related to remote IoT resources, CoAP services are invoked using the Californium framework described above. The response to the call is read and provided as input to other notations directly linked to the particular task notation.

For reference, the scripts that are executed as part of the BMP deployment manager 140e may be performed by the manager by the manager while the data is provided by another entity, such as a remote IoT resource.

The present invention can also be embodied as computer-readable codes on a computer-readable recording medium. A computer-readable recording medium includes all kinds of recording apparatuses in which data that can be read by a computer system is stored.

Examples of the computer-readable recording medium include a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device and the like, and also implemented in the form of a carrier wave (for example, transmission over the Internet) .

The computer readable recording medium may also be distributed over a networked computer system so that computer readable code can be stored and executed in a distributed manner. And functional programs, codes, and code segments for implementing the present invention can be easily inferred by programmers skilled in the art to which the present invention pertains.

As described above, preferred embodiments of the present invention have been disclosed in the present specification and drawings, and although specific terms have been used, they have been used only in a general sense to easily describe the technical contents of the present invention and to facilitate understanding of the invention , And are not intended to limit the scope of the present invention. It is to be understood by those skilled in the art that other modifications based on the technical idea of the present invention are possible in addition to the embodiments disclosed herein.

110: physical layer
120: Virtual Object Layer (VOL)
120a: Virtual Object Manager (VOM)
130: Service Composition Layer (SCL)
130a: Service Composition Manager (SCM)
140: Business Process Layer (BPL)
140a: Business Process Design Manager (BPDM)

Claims (10)

A physical layer 110 which is a layer for constructing things related to the Internet of Things (IoT);
A virtual object layer (VOL) 120 representing objects in the physical layer 110 as virtual objects (VOs) and managing virtual objects;
A Service Composition Layer (SCL) 130 for generating service objects (SOs) by combining two or more virtual objects with respect to virtual objects in the virtual object layer (VOL) 120; And
When each service object (SO) is created, a flow of a process desired by a user for one scenario is formed for one service object, and a business process modeling And a business process layer (BPL) 140 that utilizes notation (BPMN), and a computer for realizing a system architecture formed of four layers including a business process model
These things are,
IoT environment and control data for a preset phenomenon occurring in the environment,
The virtual object includes:
The physical layer 110 is configured to present information related to an object of the physical layer 110 in a condensed or compressed manner, allow a user to manipulate a virtual object in the IoT system environment, So that the user can access the environment of the thing in < RTI ID = 0.0 >
The service object (SO)
A temperature sensor virtual object as an input virtual object, and an LED virtual object as an output virtual object,
The virtual object layer (VOL)
A virtual object manager (VOM) 120a for providing a user with components of local or remote interface classes for inputting information related to physical layer objects for users to register virtual objects; And,
The virtual object manager (VOM) 120a,
A file manager 120a-1 for managing the file;
A communication manager 120a-2 for retrieving an XML version of a virtual object from the local file system through the file manager 120a-1 or transmitting a virtual object for extracting related information;
An XML parser 120a-3 for converting information input by a user into an XML element that expresses a virtual object or vice versa;
A main interface 120a-4 providing a view for virtual objects,
And an XML repository 120a-5 for allowing the file manager 120a-1 to read data associated with a virtual object through the virtual object manager 120a,
The service composition layer (130)
And a service composition manager (130a) for receiving a virtual object from the communication manager (120a-2).
The method according to claim 1,
The BPM-based IoT DIY system operation procedure is operative to perform functions defined by individual service objects (SO) in the business process layer (BPL) 140, Based on the physical object (PO) based on the BPM.
delete delete delete delete delete delete delete delete
KR1020160166585A 2016-12-08 2016-12-08 Do It Yourself system of Internet of Thinks based on Business Process Model and Its Implementation Method KR101888472B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020160166585A KR101888472B1 (en) 2016-12-08 2016-12-08 Do It Yourself system of Internet of Thinks based on Business Process Model and Its Implementation Method
PCT/KR2016/015548 WO2018105804A1 (en) 2016-12-08 2016-12-30 Bpm-based iot diy system and method for implementing same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160166585A KR101888472B1 (en) 2016-12-08 2016-12-08 Do It Yourself system of Internet of Thinks based on Business Process Model and Its Implementation Method

Publications (2)

Publication Number Publication Date
KR20180066356A KR20180066356A (en) 2018-06-19
KR101888472B1 true KR101888472B1 (en) 2018-08-16

Family

ID=62491226

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160166585A KR101888472B1 (en) 2016-12-08 2016-12-08 Do It Yourself system of Internet of Thinks based on Business Process Model and Its Implementation Method

Country Status (2)

Country Link
KR (1) KR101888472B1 (en)
WO (1) WO2018105804A1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108989093A (en) * 2018-06-27 2018-12-11 安徽国讯芯微科技有限公司 A kind of Internet of Things multidimensional physical modeling system
KR102120548B1 (en) * 2018-08-23 2020-06-16 제주대학교 산학협력단 CLOUD BASED IoT NETWORK VIRTUALIZATION SYSTEM AND NETWORKING METHOD THEREOF
KR102356143B1 (en) * 2018-10-26 2022-01-28 한국전자통신연구원 Apparatus and method for networking object
KR102252446B1 (en) * 2019-06-13 2021-05-17 제주대학교 산학협력단 IoT Services and Virtual Objects Management System and Method in Hyper Connected Things Network, and Computer readable medium storing a program of the same

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101493166B1 (en) * 2013-08-22 2015-02-16 한국과학기술원 Sevice method and system for providing web based user interface for managing instance of virtualization object in internet of things environment
KR20150032151A (en) * 2013-09-17 2015-03-25 한국전자통신연구원 Apparatus and method for process based collaboration in web of things
KR101749023B1 (en) * 2014-01-16 2017-06-20 한국전자통신연구원 Electronic Device supporting the Internet of Things and Do It Yourself Platform
US10374910B2 (en) * 2014-06-13 2019-08-06 Convida Wireless, Llc Automated service profiling and orchestration
US10149335B2 (en) * 2014-11-10 2018-12-04 Qualcomm Incorporated Connectivity module for internet of things (IOT) devices
KR101943148B1 (en) 2015-01-20 2019-04-17 전자부품연구원 Self Adaptive IoT Device and System
KR101997951B1 (en) 2015-02-04 2019-07-09 전자부품연구원 IoT Service System and Method for Semantic Information Analysis
KR101628996B1 (en) 2015-05-08 2016-06-10 주식회사 엠씨티 tripling network express gateway system which automatically recognize wire and wireless communication for IoT

Also Published As

Publication number Publication date
WO2018105804A1 (en) 2018-06-14
KR20180066356A (en) 2018-06-19

Similar Documents

Publication Publication Date Title
US7409679B2 (en) System and method for computer-aided graph-based dependency analysis
US20030067481A1 (en) System and method for computer-aided graph-based dependency analysis with integrated documentation
CN103645908B (en) Full life circle development achievement system of intemetware
KR101888472B1 (en) Do It Yourself system of Internet of Thinks based on Business Process Model and Its Implementation Method
EP1679587A1 (en) Object model tree diagram
US20150082271A1 (en) System and method for providing an editor for use with a business process design environment
KR101748548B1 (en) IoT network system
Song et al. Applying MDE tools at runtime: Experiments upon runtime models
Ferguson et al. MetaMOOSE—an object-oriented framework for the construction of CASE tools
Schlenoff et al. Process specification language (psl): Results of the first pilot implementation
Chan et al. High-level abstractions for message-passing parallel programming
Lehmann et al. Development of context-adaptive applications on the basis of runtime user interface models
US20120011157A1 (en) Method and system for inferencing taxonomy topic concept objects using a metamodel instance model
Chin Jr et al. Scientist-centered workflow abstractions via generic actors, workflow templates, and context-awareness for groundwater modeling and analysis
Chan et al. Visual programming support for graph‐oriented parallel/distributed processing
KR20190130220A (en) IoT network system
Gerdes Jr User interface migration of microsoft windows applications
sohail Khan et al. An intuitive Architecture for DIY IoT Application Composition as Business Process Model
Sboui et al. Addressing Context-Awareness in User Interface Software Product Lines (UI-SPL) Approaches
Ionita et al. Automatic generation of functional workflows using a semantic specification
Reddigari et al. Visual Programming with PyWorkflow: A Web-Based Python IDE for Graphical Data Analysis-Milestone 3 Report
Silingas et al. Integrating GUI Prototyping into UML Toolkit
KR20140114968A (en) A recording media recognized by computer which is recorded an application developing tool programs
KR20140114984A (en) A method for providing an application developing tool and an apparatus using it
KR20140115456A (en) A recording media for providing an application developing tool

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant