WO2022130943A1 - Modeling assistance method, information processing device, and program - Google Patents

Modeling assistance method, information processing device, and program Download PDF

Info

Publication number
WO2022130943A1
WO2022130943A1 PCT/JP2021/043501 JP2021043501W WO2022130943A1 WO 2022130943 A1 WO2022130943 A1 WO 2022130943A1 JP 2021043501 W JP2021043501 W JP 2021043501W WO 2022130943 A1 WO2022130943 A1 WO 2022130943A1
Authority
WO
WIPO (PCT)
Prior art keywords
line
display device
input operation
displaying
control structure
Prior art date
Application number
PCT/JP2021/043501
Other languages
French (fr)
Japanese (ja)
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 カシオ計算機株式会社
Publication of WO2022130943A1 publication Critical patent/WO2022130943A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04845Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/33Intelligent editors

Definitions

  • the disclosure of this specification relates to modeling support methods, information processing devices, and programs.
  • the conventional programming language used for programming requires writing program code, and the hurdle is too high for beginners including elementary school students to learn programming for the first time.
  • branching and iteration are the basic control structures of a program as well as sequential.
  • the control structure is represented graphically, the graphical representation of branching and iteration is more complicated than that of sequential. Therefore, even in visual programming, GUI operations for realizing branching and repetition tend to be more complicated than those in sequence.
  • the explanation was made assuming a programming tool for visual programming, but similar problems can occur not only in the program implementation process but also in the design process. Therefore, the above-mentioned problems are common to all modeling tools including programming tools. Further, the above-mentioned problems in the modeling tool are not limited to the design of the program running on the computer, but may occur in the design of the entire processing flow including, for example, the business flow.
  • an object of one aspect of the present invention is to provide a technique for improving the operability of a modeling tool used for designing or programming a processing flow.
  • the modeling support method is a process performed by a computer for displaying on a display device a line on which one or more elements indicating a control structure, each of which is classified into sequential, branching, or iterative, can be arranged.
  • a computer for displaying on a display device a line on which one or more elements indicating a control structure, each of which is classified into sequential, branching, or iterative, can be arranged.
  • the process of detecting an input operation on the line or an element on the line displayed on the display device and the detected input operation include an operation in a direction intersecting the line, the branch or the branch or the element on the line is included.
  • the process includes displaying a new element indicating a control structure classified into the iteration on the display device.
  • the information processing apparatus includes one or more non-temporary computer-readable media including instructions and one or more processors that execute the instructions.
  • the instruction is configured to cause the one or more processors to perform an operation, where the operation is a line on which one or more elements can be placed, each representing a control structure classified as sequential, branching, or iterative.
  • the display device comprises displaying a new element on the line indicating a control structure classified into the branch or the iteration.
  • the program according to one aspect of the present invention causes a computer to display on a display device a line on which one or more elements can be arranged, indicating a control structure in which each is classified into sequential, branching, or iterative.
  • a computer to display on a display device a line on which one or more elements can be arranged, indicating a control structure in which each is classified into sequential, branching, or iterative.
  • the input operation is classified as the branch or the iteration on the line.
  • the process of displaying a new element indicating the control structure on the display device is executed.
  • the operability of the modeling tool can be improved.
  • the modeling tool means an application program that supports the modeling work performed by the user, and / or a computer on which the program operates. That is, the modeling tool is at least one of software, hardware, or a combination thereof that supports the modeling work.
  • the modeling tool is a desktop application program or an information processing device (hereinafter, also referred to as a user terminal) directly operated by a user in which the desktop application program is installed will be described as an example. ..
  • the modeling tool may be a web application program, or may be an information processing device different from the user terminal on which the web application program is deployed. That is, the modeling tool may provide a GUI on the web browser of the user terminal.
  • the modeling tool is a visual programming tool that converts a program represented graphically using elements (objects) such as figures into a text format program code (source code) and executes it.
  • objects elements
  • source code text format program code
  • the modeling tool is not limited to a programming tool that creates and executes source code, and may be, for example, a drawing tool that draws a flowchart of processing executed by a computer. Further, the modeling tool may be used as a drawing tool for drawing a business flow.
  • FIG. 1 is an external view of the information processing apparatus 10 according to the present embodiment.
  • FIG. 2 is a hardware configuration diagram of the information processing apparatus 10 according to the present embodiment.
  • the information processing apparatus 10 is, for example, a tablet terminal provided with a touch panel display, and is a computer in which a program for visual programming is installed.
  • the information processing device 10 may be a touch device having a touch panel display, and is not limited to a tablet terminal.
  • the information processing device 10 may be, for example, a laptop computer, a smartphone, an electronic dictionary, or the like.
  • the present invention is not limited to a mobile terminal, and may be, for example, a table-type computer in which a touch panel display is embedded in a table.
  • the information processing device 10 includes one or more processors 1, one or more storage devices 2, an input device 3, a display device 4, and a communication device 5. Further, in the information processing apparatus 10, they are connected through the bus 6.
  • the input device 3 and the display device 4 constitute a touch panel display, and are arranged so as to overlap each other as shown in FIG.
  • Each of the one or more processors 1 is hardware including, for example, a CPU (Central Processing Unit), and executes a program 2a stored in the storage device 2.
  • the CPU includes a control device, an arithmetic unit, a register, a cache memory, and the like, and further includes an interface with another device and the like.
  • One or more processors 1 may include a GPU (Graphics processing unit), an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), a DSP (Digital Sensor), etc.
  • Each of the one or more storage devices 2 is a non-temporary computer-readable medium, for example, an arbitrary semiconductor memory.
  • the one or more storage devices 2 include a volatile memory such as a RAM (Random Access Memory), a non-volatile memory such as a ROM (Read Only Memory), and a flash memory. Further, the storage device 2 may include a magnetic storage device, an optical storage device, and other types of storage devices.
  • At least one of the one or more storage devices 2 contains the program 2a.
  • Program 2a is a visual programming tool and includes instructions for programming support processing described later. Further, the instructions included in the program 2a are configured to cause one or more processors 1 to execute a predetermined operation.
  • the input device 3 is a device directly operated by the user.
  • the input device 3 is a touch sensor constituting a touch panel display.
  • the detection method of the touch sensor is not particularly limited. For example, any detection method such as a resistance film method, a capacitance method, an electromagnetic induction method, an ultrasonic surface acoustic wave method, and an infrared method can be adopted.
  • the display device 4 is, for example, a liquid crystal display, an organic EL display, or the like, but may be another type of display.
  • the communication device 5 is a device for communicating with an external device.
  • the communication device 5 is, for example, a wireless communication device such as a Wi-Fi module.
  • the visual programming performed by the user using the information processing device 10 configured as described above is to create a program by arranging the elements showing the control structure of the programming on the screen.
  • the programming support process performed by the information processing apparatus 10 controls the screen display according to the input operation of the user when the visual programming is performed.
  • FIG. 3 is a flowchart showing an example of programming support processing performed by the information processing apparatus 10.
  • FIG. 4 is a diagram showing a configuration example of a screen displayed on the information processing apparatus 10.
  • the programming support process shown in FIG. 3 is an example of the modeling support process, and is started by executing an instruction included in the program 2a stored in the storage device 2 by one or more processors 1.
  • the processor 1 causes the display device 4 to display a line on which one or more elements indicating a control structure, each of which is classified into sequential, branching, or repeating, can be arranged (step S1).
  • step S1 for example, when the user taps the software button described as “New” in the area 12, the processor 1 causes the line L to be displayed in the area 12 of the display device 4 shown in FIG.
  • Area 12 is a programming area in which a program designed by a user is expressed using a graphic.
  • the line L displayed in the region 12 shows the flow of processing of the program from one end of the line L described as “START” to the other end of the line L described as “END”.
  • Elements indicating the control structure displayed in the area 11 can be selectively arranged on the line L according to the operation of the user.
  • an element indicating a control structure classified into sequential, branching, or iterative will be simply referred to as a control element.
  • the processor 1 monitors the input operation to the input device 3. Then, when the input operation is performed, the processor 1 detects the input operation based on the output from the input device 3 (step S2). In step S2, the processor 1 detects the user's input operation based on the operation signal output by the input device 3 (touch sensor) in response to the input operation on the user's touch panel display.
  • step S3 When it is determined in step S3 that the input operation detected in step S2 is (1) an operation on the line L or a control element on the line L, and (2) includes an operation in a direction intersecting the line L. ,
  • the processor 1 causes the display device 4 to display a new control element classified as a branch or an iteration on the line L (steps S4 to S7, step S9).
  • the processor 1 detects an input operation on the line L or an element on the line L, and if the detected input operation includes an operation in a direction intersecting the line L, the processor 1 is classified as a branch or an iteration on the line L.
  • the new control element is displayed on the display device 4.
  • step S2 when the input operation detected in step S2 is a one-way operation in a direction intersecting the line L with respect to the line L or an element on the line (step S4: one direction), the processor 1 is on the line L.
  • a new control element (branch element) classified as a branch is displayed on the display device 4. More specifically, the processor 1 branches the line L (step S5), adds a branch element to the branch point (step S6), and updates the screen display (step S9).
  • the one-way operation is, for example, flicking, swiping, sliding, or the like.
  • step S2 when the input operation detected in step S2 is a bidirectional operation in a direction intersecting the line L with respect to the line L or an element on the line (step S4: bidirectional), the processor 1 classifies the input operation into iterations on the line L.
  • the new control element (repetition element) to be displayed is displayed on the display device 4. That is, the processor 1 adds a repeating element (step S7) and updates the screen display (step S9).
  • the bidirectional operation is, for example, a set of flicks in opposite directions, a set of swipes in opposite directions, a slide that draws a trajectory that folds back and forth in the middle, and the like.
  • step S4 arc straddling the line
  • the processor 1 is a new control element (repetition) classified as an iteration on the line L. Element) is displayed on the display device 4. That is, the processor 1 adds a repeating element (step S7) and updates the screen display (step S9).
  • step S3 determines whether the input operation detected in step S2 does not satisfy the operations (1) and (2) described later.
  • the processor 1 performs a process according to the input operation (step S8).
  • the screen display of the display device 4 is updated (step S9).
  • the input operation targeted in step S8 is not particularly limited, and may include, for example, taps, double taps, long taps, pinch-ins, pinch-outs, flicks, swipes, slides, and the like for the area 11 or the area 12. ..
  • the process corresponding to these input operations may include, for example, a process of displaying new control elements classified sequentially on the line L.
  • the processor 1 determines whether or not the end instruction has been input (step S10), and when it is determined that the end instruction has been input, the processor 1 ends the programming support process shown in FIG. On the other hand, if it is determined that the end instruction has not been input, the processor 1 repeats the processes of steps S2 to S9 until the end instruction is input.
  • the information processing apparatus 10 can add a control structure classified into branching and repetition to the program by intuitive and simple operation by executing the programming support process shown in FIG. 3 described above.
  • the operability of the programming tool is improved as compared with the conventional case, so that the user of the programming tool can concentrate on programming without interrupting thinking and can efficiently perform programming learning. ..
  • even beginners who are unfamiliar with programming and programming tools can operate it intuitively, so compared to conventional programming tools, there is less confusion about how to use programming tools. Therefore, it is possible to avoid a situation in which programming learning itself is abandoned at an initial stage due to difficulty in mastering programming tools.
  • FIG. 5 is a diagram for explaining an example of a method of adding an element showing a control structure.
  • FIG. 6 is a diagram for explaining an example of a method of setting element parameters.
  • FIG. 7 is a diagram for explaining an example of a method of changing the order of the elements showing the control structure.
  • a method of adding a control element to the region 12 will be described with reference to FIGS. 5 to 7.
  • the user When adding a control element, the user may long-tap on the line L as shown in FIG. 5, and the new control element 21 is added to the long-tapped position. Further, the type of the control element can be freely switched from any control element displayed in the area 11 by flicking the control element 21 added on the line L to the left or right.
  • control element may be added by dragging the control element displayed in the area 11 onto the line L and dropping it at the position to be added.
  • parameter settings for each control element can be performed by long-tapping the control element added on the line L.
  • the setting window 23 for parameter setting is displayed.
  • Parameters can be set for control elements by entering or selecting information in the items in the settings window 23.
  • the order of the control elements added on the line L can be changed later. For example, as shown in FIG. 7, tap the control element 25 to select it as a movement target. After that, the control element 25 selected as the movement target can be moved to a desired position by dragging and dropping the control element 25 at a desired position. For example, if the control elements are set to be aligned at regular intervals, the intervals between the control elements may be maintained by moving other control elements in accordance with the movement of the control element 25. .. In the example shown in FIG. 7, it is shown that each of the control elements 29 moves forward from the control element 26 due to the backward movement of the control element 25.
  • FIG. 8 is a diagram for explaining an example of a method of adding an element indicating a branch.
  • FIG. 9 is a diagram for explaining an example of a method of setting parameters of elements indicating branches.
  • FIG. 10 is a diagram for explaining an example of an operation method for branching.
  • FIG. 11 is a diagram for explaining another example of the operation method for branching.
  • the method of adding an arbitrary control element has been described, but hereinafter, a method peculiar to the case of adding a control element (branch element) classified into a branch will be described with reference to FIGS. 8 to 11. do.
  • the user When adding a branch element, as shown in FIG. 8, the user first taps and selects the control element 31 corresponding to the process to be executed only under specific conditions. After that, the selected control element 31 may be dragged and dropped or flicked in the direction intersecting the line L.
  • the operation on the control element 31 is not limited to drag and drop and flick, and may be a one-way operation in a direction intersecting the line L. Specifically, for example, it may be a swipe, a slide, or the like.
  • a new line L1 branched from the line L is added to the control element 31 on the line L1 as shown in FIG.
  • a branch element 32 is added as a new control element to the branch point where the line L branches to the line L1.
  • the parameter setting for the branch element can be performed by long-tapping the branch element 32 added on the line L. This point is the same as the case where the parameter is set for an arbitrary control element as described above in FIG.
  • the branch condition can be set in the setting window 33.
  • control element 34 corresponding to the process is dragged to branch the line (line L, line L1). ) Just drop it at the desired position above.
  • the position of another control element may be automatically adjusted by moving the control element 34.
  • FIG. 10 shows how a new control element 36 is added to the space secured by such an operation.
  • the flick may be programmed so that the branches merge at the end of the processing flow, and the merge position moves backward by one control element for each flick. You may. Further, by flicking the merging point toward the start end of the line L described as "START", the merging position may be moved forward by one control element for each flick.
  • FIG. 12 is a diagram for explaining another example of how to add an element indicating a branch.
  • FIG. 13 is a diagram for explaining an example of a method of adding elements indicating branches in a nested manner.
  • the control element branch element classified into a branch without selecting the control element while referring to FIGS. 12 and 13.
  • the user When adding a branch element without selecting a control element, the user first taps the line L to select it, as shown in FIG. After that, the line L may be dragged and dropped or flicked in the direction intersecting the line L.
  • the operation on the line L is not limited to drag and drop and flick, and may be a one-way operation in a direction intersecting the line L. Specifically, for example, it may be a swipe, a slide, or the like. Further, the operation for the line L may be a one-way operation performed after selecting the line L as described above, or a one-way operation performed so as to straddle the line L (for example, above the line L). Swipe operation from the area of to the lower area, etc.).
  • the processor 1 When the processor 1 detects a one-way operation in a direction intersecting the line L with respect to the line L, as shown in FIG. 12, the processor 1 adds a new line L2 branched from the line L and branches from the line L to the line L2.
  • a branch element 38 is added to the branch point as a new control element.
  • the user can add a branch element only by performing a one-way operation in the direction intersecting the line.
  • One-way operation in the direction of crossing a line is an operation that is easily recalled when imagining a branch from a series of processes, and even a beginner can intuitively grasp and memorize it as an operation for branching processes. It is easy to remain in. Therefore, according to the information processing apparatus 10, a more complicated program using branch elements can be easily assembled by intuitive operation without interrupting thinking.
  • FIG. 14 is a diagram for explaining an example of a method of adding an element indicating repetition.
  • FIG. 15 is a diagram for explaining an example of a method of setting parameters of elements indicating repetition.
  • FIG. 16 is a diagram for explaining another example of how to add an element indicating repetition.
  • a method peculiar to the case of adding a control element (repetition element) classified into an iteration will be described with reference to FIGS. 14 to 16.
  • the user may draw an arc so as to surround the control element 40 corresponding to the process to be repeatedly executed, as shown in FIG. As a result, an arc straddling the line L is drawn at least once.
  • the repeat element 41 and the repeat element 42 are lined as new control elements. Add on L.
  • the repeating element 41 and the repeating element 42 are added in front of and behind the control element 40 so as to sandwich the control element 40 indicating the process to be repeated.
  • the parameter setting for the repeating element can be performed by tapping or long tapping the repeating element 41 added on the line L. This point is the same as the case where the parameter is set for an arbitrary control element as described above in FIG. The number of iterations can be set in the setting window 43. Further, by setting the parameter "Block" to ON, as shown in FIG. 15, the iterative element (repetitive element 41, iterative element 42) and the control element 40 corresponding to the process to be repeatedly executed are combined into one element. Can be blocked into.
  • the positions of the start and end of the arc are not particularly limited.
  • an arc may be drawn from the region above the line L to the region below the line L, and as shown in FIG. 16, the region below the line L passes through the region above the line L. You may draw an arc down to the lower area.
  • an arc may be drawn from the region above the line L to the region above the region L through the region below the line L.
  • the user can add a repeating element only by performing an input operation so that the trajectory of the input operation draws an arc straddling the line.
  • the operation of drawing an arc in which the trajectory straddles the line is an operation that is easily recalled when imagining the repetition in which the processing is repeated, and even a beginner can intuitively grasp and remember it as an operation for the iterative processing. Easy to remain. Therefore, according to the information processing apparatus 10, a more complicated program using repetitive elements can be easily assembled by intuitive operation without interrupting thinking.
  • FIGS. 17 and 18 are diagrams for explaining yet another example of the method of adding an element indicating repetition.
  • an example of adding a repeating element when the locus of the detected input operation draws an arc straddling the line L has been shown, but in the following, the detected input operation is performed with reference to FIGS. 17 and 18.
  • An example of adding a repeating element to a line L or an element on the line L in a bidirectional operation in a direction intersecting the line L will be described.
  • the user may flick up and down on the left and right of the control element 40 corresponding to the process to be repeatedly executed, as shown in FIG. Further, as shown in FIG. 18, flicking may be performed up and down at the same position with respect to the line L.
  • flicking up and down at the same position as shown in FIG. 18, since there is no control element between the added repeating elements (repeating element 41, repeating element 42), after the repeating element is added, The desired control element (control element 46) may be moved between repeating elements by dragging and dropping.
  • a set of flicks may be performed in the order of up and down or in the order of bottom and top.
  • the user can add a repeating element only by performing a bidirectional operation in a direction intersecting the line.
  • Bidirectional operation in the direction of crossing the line is an operation that is easy to recall when imagining an iteration in which the process is repeated, and even a beginner can intuitively grasp and remember it as an operation for iterative processing. Easy to remain. Therefore, according to the information processing apparatus 10, a more complicated program using repetitive elements can be easily assembled by intuitive operation without interrupting thinking.
  • FIG. 19 is a diagram for explaining an example of an operation method for elements showing iterations created in a nested manner.
  • FIG. 15 shows an example of blocking an iterative element and a control element corresponding to a process to be repeatedly executed into one element.
  • the target to be blocked together with the iterative element is It may be a control element (control element 52), or may include a block of a control element and a repeating element (element 56).
  • the element 56 in which the elements 51 to the element 53 are blocked can be displayed with an arbitrary name
  • the element 57 in which the element 59 to the element 55 is blocked can also be similarly given an arbitrary name. It is possible to display with. By changing the name of the blocked element to an appropriate name indicating the processing content, the processing content performed by that element can be recognized at a glance.
  • the information processing device 10 having a built-in touch panel display is illustrated, but the information processing device that executes a program to realize the modeling support as described above is connected to the touch panel display by wire or wirelessly.
  • the touch panel display may be a desktop computer.
  • the input device 3 is a touch sensor constituting the touch panel has been described as an example, but the input device 3 does not necessarily have to be a touch sensor.
  • an information processing device including a keyboard as an input device will be described.
  • FIG. 20 is an external view of the information processing apparatus 60 according to the present embodiment.
  • the information processing apparatus 60 is, for example, a laptop computer in which a program for visual programming is installed.
  • the information processing device 60 includes a display device 61 and an input device 62.
  • the information processing device 60 is different from the information processing device 10 in that the display device 61 is not a touch panel display but the input device 62 is a keyboard. That is, the information processing device 60 differs from the information processing device 10 in that visual programming is performed by operating the keyboard, but other configurations include, for example, one or more processors and one or more storage devices 2.
  • the points to be provided are the same as those of the information processing apparatus 10.
  • FIG. 21 is a diagram for explaining an example of a method of adding an element indicating a branch.
  • FIG. 22 is a diagram for explaining an example of a method of adding an element indicating repetition.
  • any control element including branching and repetition can be added to the program by a simple operation.
  • a method of adding a branching element and a repeating element to the region 12 will be described with reference to FIGS. 21 and 22.
  • the user When adding a branch element, as shown in FIG. 21, the user first selects a control element corresponding to the process to be executed only under specific conditions by using the cross key 80 and the selection key 90. For example, if it is desired to execute the process corresponding to the control element 72 only under specific conditions, the cursor 70 is moved from the control element 71 to the control element 72 with the right key of the cross key 80, and further, the selection key 90 is used. Press the enter key to select the control element 72.
  • a branch element is added using the cross key 80.
  • the down key of the cross key 80 is pressed.
  • a new line L1 branched from the line L is added, the control element 72 is displayed on the line L1, and a new control is performed at the branch point branching from the line L to the line L1.
  • a branch element 73 is added as an element.
  • FIG. 21 shows an example of adding a branch element with the lower key
  • the branch element may be added by pressing the upper key. That is, one-way operation in the direction intersecting the line L may be performed.
  • the user when adding an iterative element, as shown in FIG. 22, the user first selects a control element corresponding to the process to be repeatedly executed by using the cross key 80 and the selection key 90. For example, if it is desired to repeatedly execute the process corresponding to the control element 72, move the cursor 70 from the control element 71 to the control element 72 with the right key of the cross key 80, and further press the enter key of the selection key 90. And select the control element 72.
  • a repeating element using the cross key 80 For example, the up and down keys of the cross key 80 are pressed in order. As a result, as shown in FIG. 22, a repeating element 74 and a repeating element 75 are added on the line L as new control elements. The repeating element 74 and the repeating element 75 are added in front of and behind the control element 72 so as to sandwich the control element 72 indicating the process to be repeated.
  • FIG. 22 shows an example in which the up key and the down key are pressed in this order
  • the repeating element may be added by pressing the down key and the up key in this order. That is, bidirectional operation in the direction intersecting the line L may be performed.
  • the information processing apparatus 60 can also add a control structure classified into branching and repetition to the program by an intuitive and simple operation.
  • Appendix 2 In the modeling support method described in Appendix 1, The process of displaying the new element on the display device is the branching on the line when the detected input operation is a one-way operation in a direction intersecting the line with respect to the line or the element on the line. A modeling support method comprising a process of displaying the new element indicating a control structure classified into the above on the display device.
  • Appendix 3 In the modeling support method described in Appendix 1 or Appendix 2, The process of displaying the new element on the display device is the repetition on the line when the detected input operation is a bidirectional operation in a direction intersecting the line with respect to the line or the element on the line.
  • a modeling support method comprising a process of displaying the new element indicating a control structure classified into the above on the display device.
  • Appendix 4 In the modeling support method described in any one of Supplementary Note 1 to Supplementary Note 3, The modeling support method, wherein the computer detects the input operation based on an output from a touch sensor that detects the input operation to the display device.
  • Appendix 5 In the modeling support method described in Appendix 4, In the process of displaying the new element on the display device, when the detected trajectory of the input operation draws an arc straddling the line, the new element showing the control structure classified into the iteration is displayed on the line.
  • a modeling support method comprising a process of displaying on the display device.
  • One or more non-temporary computer-readable media containing instructions Includes one or more processors that execute the instructions.
  • the instruction is configured to cause the one or more processors to perform an operation.
  • the above operation is Displaying on the display device a line on which one or more elements can be placed indicating a control structure, each of which is classified as sequential, branching, or repeating.
  • the display device may display a new element indicating a control structure classified into the branch or the iteration on the line.
  • An information processing device characterized by including.
  • Processor 2 Memory 2a Program 3, 62 Input device 4, 61 Display device 10, 60 Information processing device 21, 22, 24-31, 34-36, 40, 45, 46, 52, 54, 71, 72 Control element 32 , 37-39, 73 Branching element 41, 42, 47-49, 51, 53, 55, 74, 75 Repeating element 44, 50, 56, 57 element L, L1-L3 line

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)

Abstract

In the present invention, a computer executes: a process (S1) for causing a display device to display a line on which one or more elements can be arranged, where each element indicates a control structure classified as sequential, branching, or iterative; a process (S2) for detecting an input operation with respect to the line displayed on the display device or an element on the line; and a process (S5, S7, S9) for causing the display device to display, on the line, a new element indicating a control structure classified as branching or iterative if the detected input operation includes an operation in a direction that intersects the line.

Description

モデリング支援方法、情報処理装置、及び、プログラムModeling support method, information processing device, and program
 本明細書の開示は、モデリング支援方法、情報処理装置、及び、プログラムに関する。 The disclosure of this specification relates to modeling support methods, information processing devices, and programs.
 論理的思考や課題解決力を養うことができるプログラミング教育の重要性は、現在、世界中で認識されている。近年では、日本でも小学校でプログラミング教育が必修化されるなど、若年層からのプログラミング教育の普及が推進されている。 The importance of programming education that can cultivate logical thinking and problem-solving ability is currently recognized all over the world. In recent years, programming education has become compulsory in elementary schools in Japan as well, and the spread of programming education from young people is being promoted.
 一方で、プログラミングに用いられる従来のプログラミング言語は、プログラムコードを記述する必要があり、小学生などを含む初学者が初めてプログラミングを学習するにはハードルが高すぎる。 On the other hand, the conventional programming language used for programming requires writing program code, and the hurdle is too high for beginners including elementary school students to learn programming for the first time.
 このため、初学者でも容易に学習可能なGUI(Graphical User Interface:グラフィカルユーザインターフェース)ベースの教育向けのプログラミング言語が様々に開発されている。このような教育向けのプログラミング言語は、一般にビジュアルプログラミング言語と呼ばれている。ビジュアルプログラミングでは、アルゴリズムが図形的に表現されるため、テキストでコードを記述する必要がなく、GUIを操作するだけでプログラミングが可能である。ビジュアルプログラミングに関連する技術は、例えば、特許文献1に記載されている。 For this reason, various programming languages for GUI (Graphical User Interface) -based education that even beginners can easily learn have been developed. Such programming languages for education are generally called visual programming languages. In visual programming, the algorithm is expressed graphically, so there is no need to write code in text, and programming is possible simply by operating the GUI. Techniques related to visual programming are described in, for example, Patent Document 1.
日本国特開平9-258971号公報Japanese Patent Application Laid-Open No. 9-258971
 ところで、分岐と反復は、順次と同様にプログラムの基本的な制御構造である。制御構造を図形的に表現する場合、分岐と反復の図形的表現は、順次のそれよりも複雑になる。従って、ビジュアルプログラミングにおいても、分岐、反復を実現するためのGUI操作は、順次のそれに比べて煩雑なものと成りがちである。 By the way, branching and iteration are the basic control structures of a program as well as sequential. When the control structure is represented graphically, the graphical representation of branching and iteration is more complicated than that of sequential. Therefore, even in visual programming, GUI operations for realizing branching and repetition tend to be more complicated than those in sequence.
 煩雑な操作は、操作自体に注意が行ってしまい、アルゴリズムを検討する思考の中断を招きやすい。このため、ビジュアルプログラミングにおいて、特に、分岐と反復について、思考の中断を招くことなく直感的な操作でプログラミングを可能とする技術的改善が求められている。 Complicated operations pay attention to the operation itself, which tends to interrupt the thinking of considering the algorithm. For this reason, in visual programming, in particular, for branching and repetition, there is a demand for technical improvements that enable programming with intuitive operations without causing interruption of thinking.
 なお、以上では、ビジュアルプログラミング用のプログラミングツールを想定して説明したが、同様の課題は、プログラムの実装工程に限らず設計工程でも生じ得る。このため、上記の課題は、プログラミングツールを含むモデリングツール全般において共通した課題である。また、モデリングツールにおける上記の課題は、コンピュータ上で動作するプログラムの設計に限らず、例えば業務フローなどを含む、処理フロー全般の設計において生じ得る。 In the above, the explanation was made assuming a programming tool for visual programming, but similar problems can occur not only in the program implementation process but also in the design process. Therefore, the above-mentioned problems are common to all modeling tools including programming tools. Further, the above-mentioned problems in the modeling tool are not limited to the design of the program running on the computer, but may occur in the design of the entire processing flow including, for example, the business flow.
 以上のような実情を踏まえ、本発明の一側面に係る目的は、処理フローの設計又はプログラミングに用いられるモデリングツールの操作性を改善する技術を提供することである。 Based on the above circumstances, an object of one aspect of the present invention is to provide a technique for improving the operability of a modeling tool used for designing or programming a processing flow.
 本発明の一態様に係るモデリング支援方法は、コンピュータが行う、各々が順次、分岐、又は反復に分類される制御構造を示す1つ以上の要素が配置可能なラインを表示装置に表示させる処理と、前記表示装置に表示された前記ライン又は前記ライン上の要素に対する入力操作を検出する処理と、検出した前記入力操作が前記ラインに交差する方向の操作を含む場合、前記ライン上に前記分岐又は前記反復に分類される制御構造を示す新たな要素を前記表示装置に表示させる処理と、を含む。 The modeling support method according to one aspect of the present invention is a process performed by a computer for displaying on a display device a line on which one or more elements indicating a control structure, each of which is classified into sequential, branching, or iterative, can be arranged. When the process of detecting an input operation on the line or an element on the line displayed on the display device and the detected input operation include an operation in a direction intersecting the line, the branch or the branch or the element on the line is included. The process includes displaying a new element indicating a control structure classified into the iteration on the display device.
 本発明の一態様に係る情報処理装置は、命令を含む1つ以上の非一時的なコンピュータ読取可能媒体と、前記命令を実行する1つ以上のプロセッサと、を含む。前記命令は、前記1つ以上のプロセッサに動作を実行させるよう構成され、前記動作は、各々が順次、分岐、又は反復に分類される制御構造を示す1つ以上の要素が配置可能なラインを表示装置に表示させることと、前記表示装置に表示された前記ライン又は前記ライン上の要素に対する入力操作を検出することと、検出した前記入力操作が前記ラインに交差する方向の入力操作である場合、前記ライン上に前記分岐又は前記反復に分類される制御構造を示す新たな要素を前記表示装置に表示させることと、を含む。 The information processing apparatus according to one aspect of the present invention includes one or more non-temporary computer-readable media including instructions and one or more processors that execute the instructions. The instruction is configured to cause the one or more processors to perform an operation, where the operation is a line on which one or more elements can be placed, each representing a control structure classified as sequential, branching, or iterative. When displaying on the display device, detecting an input operation on the line or an element on the line displayed on the display device, and detecting the input operation is an input operation in a direction intersecting the line. The display device comprises displaying a new element on the line indicating a control structure classified into the branch or the iteration.
 本発明の一態様に係るプログラムは、コンピュータに、各々が順次、分岐、又は反復に分類される制御構造を示す、1つ以上の要素が配置可能なラインを表示装置に表示させ、前記表示装置に表示された前記ライン又は前記ライン上の要素に対する入力操作を検出し、検出した前記入力操作が前記ラインに交差する方向の入力操作である場合、前記ライン上に前記分岐又は前記反復に分類される制御構造を示す新たな要素を前記表示装置に表示させる処理を実行させる。 The program according to one aspect of the present invention causes a computer to display on a display device a line on which one or more elements can be arranged, indicating a control structure in which each is classified into sequential, branching, or iterative. When an input operation for the line or an element on the line displayed on the line is detected and the detected input operation is an input operation in a direction intersecting the line, the input operation is classified as the branch or the iteration on the line. The process of displaying a new element indicating the control structure on the display device is executed.
 上記の態様によれば、モデリングツールの操作性を改善することができる。 According to the above aspect, the operability of the modeling tool can be improved.
第1の実施形態に係る情報処理装置10の外観図である。It is an external view of the information processing apparatus 10 which concerns on 1st Embodiment. 第1の実施形態に係る情報処理装置10のハードウェア構成図である。It is a hardware block diagram of the information processing apparatus 10 which concerns on 1st Embodiment. 情報処理装置10が行うプログラミング支援処理の一例を示すフローチャートである。It is a flowchart which shows an example of a programming support process performed by an information processing apparatus 10. 情報処理装置10に表示される画面の構成例を示した図である。It is a figure which showed the structural example of the screen displayed on the information processing apparatus 10. 制御構造を示す要素の追加方法の一例を説明するための図である。It is a figure for demonstrating an example of the addition method of the element which shows the control structure. 要素のパラメータの設定方法の一例を説明するための図である。It is a figure for demonstrating an example of the setting method of the parameter of an element. 制御構造を示す要素の並び順の変更方法の一例を説明するための図である。It is a figure for demonstrating an example of the method of changing the arrangement order of the element which shows a control structure. 分岐を示す要素の追加方法の一例を説明するための図である。It is a figure for demonstrating an example of the addition method of the element which shows a branch. 分岐を示す要素のパラメータの設定方法の一例を説明するための図である。It is a figure for demonstrating an example of the setting method of the parameter of the element which shows a branch. 分岐に対する操作方法の一例を説明するための図である。It is a figure for demonstrating an example of the operation method for a branch. 分岐に対する操作方法の別の例を説明するための図である。It is a figure for demonstrating another example of the operation method for a branch. 分岐を示す要素の追加方法の別の例を説明するための図である。It is a figure for demonstrating another example of the addition method of the element which shows a branch. 分岐を示す要素を入れ子状に追加する方法の一例を説明するための図である。It is a figure for demonstrating an example of the method of adding the element which shows a branch in a nested manner. 反復を示す要素の追加方法の一例を説明するための図である。It is a figure for demonstrating an example of the addition method of the element which shows an iteration. 反復を示す要素のパラメータの設定方法の一例を説明するための図である。It is a figure for demonstrating an example of the setting method of the parameter of the element which shows an iteration. 反復を示す要素の追加方法の別の例を説明するための図である。It is a figure for demonstrating another example of the addition method of the element which shows an iteration. 反復を示す要素の追加方法の更に別の例を説明するための図である。It is a figure for demonstrating yet another example of the method of adding the element which shows an iteration. 反復を示す要素の追加方法の更に別の例を説明するための図である。It is a figure for demonstrating yet another example of the method of adding the element which shows an iteration. 入れ子状に作成された反復を示す要素に対する操作方法の一例を説明するための図である。It is a figure for demonstrating an example of the operation method for the element which shows the iteration created in a nested manner. 第2の実施形態に係る情報処理装置60の外観図である。It is an external view of the information processing apparatus 60 which concerns on 2nd Embodiment. 分岐を示す要素の追加方法の一例を説明するための図である。It is a figure for demonstrating an example of the addition method of the element which shows a branch. 反復を示す要素の追加方法の一例を説明するための図である。It is a figure for demonstrating an example of the addition method of the element which shows an iteration.
 以下、モデリングツールによって提供されるGUIを具体的に例示しながら、本発明の実施形態に係るモデリング支援方法、情報処理装置、及び、プログラムについて説明する。なお、本明細書において、モデリングツールとは、利用者が行うモデリング作業を支援するアプリケーションプログラム、及び/又は、そのプログラムが動作するコンピュータのことを意味する。即ち、モデリングツールは、モデリング作業を支援するソフトウェア、ハードウェア、又は、それらの組み合わせのうちの少なくとも1つである。 Hereinafter, the modeling support method, the information processing apparatus, and the program according to the embodiment of the present invention will be described while specifically exemplifying the GUI provided by the modeling tool. In the present specification, the modeling tool means an application program that supports the modeling work performed by the user, and / or a computer on which the program operates. That is, the modeling tool is at least one of software, hardware, or a combination thereof that supports the modeling work.
 本明細書では、モデリングツールが、デスクトップアプリケーションプログラム、又は、デスクトップアプリケーションプログラムがインストールされている利用者が直接操作する情報処理装置(以降、利用者端末とも記す。)である場合を例に説明する。ただし、モデリングツールは、ウェブアプリケーションプログラムであってもよく、ウェブアプリケーションプログラムがデプロイされた、利用者端末とは異なる情報処理装置であってもよい。即ち、モデリングツールは、利用者端末のウェブブラウザ上にGUIを提供してもよい。 In this specification, a case where the modeling tool is a desktop application program or an information processing device (hereinafter, also referred to as a user terminal) directly operated by a user in which the desktop application program is installed will be described as an example. .. However, the modeling tool may be a web application program, or may be an information processing device different from the user terminal on which the web application program is deployed. That is, the modeling tool may provide a GUI on the web browser of the user terminal.
 また、本明細書では、モデリングツールが、図形などの要素(オブジェクト)を用いてグラフィカルに表現されたプログラムをテキスト形式のプログラムコード(ソースコード)に変換して実行するビジュアルプログラミングツールである場合を例に説明する。ただし、モデリングツールは、ソースコードを作成して実行するプログラミングツールに限らず、例えば、コンピュータで実行される処理のフローチャートなどを描く描画ツールであってもよい。また、モデリングツールは、業務フローを描く描画ツールとして用いられてもよい。 Further, in the present specification, the case where the modeling tool is a visual programming tool that converts a program represented graphically using elements (objects) such as figures into a text format program code (source code) and executes it. Let's take an example. However, the modeling tool is not limited to a programming tool that creates and executes source code, and may be, for example, a drawing tool that draws a flowchart of processing executed by a computer. Further, the modeling tool may be used as a drawing tool for drawing a business flow.
[第1の実施形態]
 図1は、本実施形態に係る情報処理装置10の外観図である。図2は、本実施形態に係る情報処理装置10のハードウェア構成図である。情報処理装置10は、図1に示すように、例えば、タッチパネルディスプレイを備えたタブレット端末であり、ビジュアルプログラミングのためのプログラムがインストールされたコンピュータである。
[First Embodiment]
FIG. 1 is an external view of the information processing apparatus 10 according to the present embodiment. FIG. 2 is a hardware configuration diagram of the information processing apparatus 10 according to the present embodiment. As shown in FIG. 1, the information processing apparatus 10 is, for example, a tablet terminal provided with a touch panel display, and is a computer in which a program for visual programming is installed.
 情報処理装置10は、タッチパネルディスプレイを有するタッチデバイスであればよく、タブレット端末に限らない。情報処理装置10は、例えば、ラップトップ型のコンピュータ、スマートフォン、電子辞書などであってもよい。また、モバイル端末に限らず、例えば、テーブルにタッチパネルディスプレイが埋め込まれたテーブル型のコンピュータなどであってもよい。 The information processing device 10 may be a touch device having a touch panel display, and is not limited to a tablet terminal. The information processing device 10 may be, for example, a laptop computer, a smartphone, an electronic dictionary, or the like. Further, the present invention is not limited to a mobile terminal, and may be, for example, a table-type computer in which a touch panel display is embedded in a table.
 情報処理装置10は、図2に示すように、1つ以上のプロセッサ1と、1つ以上の記憶装置2と、入力装置3と、表示装置4と、通信装置5を備えている。また、情報処理装置10では、それらはバス6を通じて接続されている。入力装置3と表示装置4は、タッチパネルディスプレイを構成し、図1に示すように、互いに重なって配置されている。 As shown in FIG. 2, the information processing device 10 includes one or more processors 1, one or more storage devices 2, an input device 3, a display device 4, and a communication device 5. Further, in the information processing apparatus 10, they are connected through the bus 6. The input device 3 and the display device 4 constitute a touch panel display, and are arranged so as to overlap each other as shown in FIG.
 1つ以上のプロセッサ1のそれぞれは、例えば、CPU(Central Processing Unit)などを含むハードウェアであり、記憶装置2に記憶されているプログラム2aを実行する。なお、CPUには、制御装置、演算装置、レジスタ、キャシュメモリなどが含まれ、さらに、他の装置とのインタフェースなどが含まれている。1つ以上のプロセッサ1には、GPU(Graphics processing unit)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)、DSP(Digital Signal Processor)などが含まれてもよい。 Each of the one or more processors 1 is hardware including, for example, a CPU (Central Processing Unit), and executes a program 2a stored in the storage device 2. The CPU includes a control device, an arithmetic unit, a register, a cache memory, and the like, and further includes an interface with another device and the like. One or more processors 1 may include a GPU (Graphics processing unit), an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), a DSP (Digital Sensor), etc.
 1つ以上の記憶装置2のそれぞれは、非一時的なコンピュータ読取可能媒体であり、例えば、任意の半導体メモリである。1つ以上の記憶装置2は、RAM(Random Access Memory)などの揮発性メモリ、ROM(Read Only Memory)、フラッシュメモリなどの不揮発性メモリを含んでいる。また、記憶装置2は、磁気記憶装置、光学記憶装置、その他の種類の記憶装置を含んでもよい。 Each of the one or more storage devices 2 is a non-temporary computer-readable medium, for example, an arbitrary semiconductor memory. The one or more storage devices 2 include a volatile memory such as a RAM (Random Access Memory), a non-volatile memory such as a ROM (Read Only Memory), and a flash memory. Further, the storage device 2 may include a magnetic storage device, an optical storage device, and other types of storage devices.
 1つ以上の記憶装置2の少なくとも1つには、プログラム2aが含まれている。プログラム2aは、ビジュアルプログラミングツールであり、後述するプログラミング支援処理のための命令を含んでいる。また、プログラム2aに含まれる命令は、1つ以上のプロセッサ1に所定の動作を実行させるように構成されている。 At least one of the one or more storage devices 2 contains the program 2a. Program 2a is a visual programming tool and includes instructions for programming support processing described later. Further, the instructions included in the program 2a are configured to cause one or more processors 1 to execute a predetermined operation.
 入力装置3は、利用者が直接操作する装置である。具体的には、入力装置3は、タッチパネルディスプレイを構成するタッチセンサである。タッチセンサの検出方式は、特に限定しない。例えば、抵抗膜方式、静電容量方式、電磁誘導方式、超音波表面弾性波方式、赤外線方式などの任意の検出方式が採用し得る。 The input device 3 is a device directly operated by the user. Specifically, the input device 3 is a touch sensor constituting a touch panel display. The detection method of the touch sensor is not particularly limited. For example, any detection method such as a resistance film method, a capacitance method, an electromagnetic induction method, an ultrasonic surface acoustic wave method, and an infrared method can be adopted.
 表示装置4は、例えば、液晶ディスプレイ、有機ELディスプレイなどであるが、他の種類のディスプレイであってもよい。通信装置5は、外部機器と通信するための装置である。通信装置5は、例えば、Wi-Fiモジュールなどの無線通信装置である。 The display device 4 is, for example, a liquid crystal display, an organic EL display, or the like, but may be another type of display. The communication device 5 is a device for communicating with an external device. The communication device 5 is, for example, a wireless communication device such as a Wi-Fi module.
 以上のように構成された情報処理装置10を用いて利用者が行うビジュアルプログラミングは、プログラミングの制御構造を示す要素を画面上に並べることでプログラムを作成するというものである。そして、情報処理装置10が行うプログラミング支援処理は、ビジュアルプログラミングが行われている際に、利用者の入力操作に従って画面表示を制御するものである。 The visual programming performed by the user using the information processing device 10 configured as described above is to create a program by arranging the elements showing the control structure of the programming on the screen. The programming support process performed by the information processing apparatus 10 controls the screen display according to the input operation of the user when the visual programming is performed.
 図3は、情報処理装置10が行うプログラミング支援処理の一例を示すフローチャートである。図4は、情報処理装置10に表示される画面の構成例を示した図である。以下、情報処理装置10を用いて実施されるプログラミング支援方法について、図3及び図4を参照しながら概説する。なお、図3に示すプログラミング支援処理は、モデリング支援処理の一例であり、1つ以上のプロセッサ1が記憶装置2に格納されているプログラム2aに含まれる命令を実行することによって開始される。 FIG. 3 is a flowchart showing an example of programming support processing performed by the information processing apparatus 10. FIG. 4 is a diagram showing a configuration example of a screen displayed on the information processing apparatus 10. Hereinafter, the programming support method implemented using the information processing apparatus 10 will be outlined with reference to FIGS. 3 and 4. The programming support process shown in FIG. 3 is an example of the modeling support process, and is started by executing an instruction included in the program 2a stored in the storage device 2 by one or more processors 1.
 プロセッサ1は、まず、各々が順次、分岐、又は反復に分類される制御構造を示している1つ以上の要素が配置可能なラインを表示装置4に表示させる(ステップS1)。ステップS1では、例えば、利用者が領域12の“New”と記載されたソフトウェアボタンをタップすると、プロセッサ1は、図4に示す表示装置4の領域12にラインLを表示させる。領域12は、利用者によって設計されたプログラムが図形を用いて表現されるプログラミング領域である。領域12に表示されたラインLは、“START”と記載されたラインLの一端から“END”と記載されたラインLの他端に向かうプログラムの処理の流れを示している。ラインL上には、利用者の操作に応じて、領域11に表示されている制御構造を示す要素が選択的に配置可能である。なお、以降では、順次、分岐、又は反復に分類される制御構造を示す要素を、単に、制御要素とも記す。 First, the processor 1 causes the display device 4 to display a line on which one or more elements indicating a control structure, each of which is classified into sequential, branching, or repeating, can be arranged (step S1). In step S1, for example, when the user taps the software button described as “New” in the area 12, the processor 1 causes the line L to be displayed in the area 12 of the display device 4 shown in FIG. Area 12 is a programming area in which a program designed by a user is expressed using a graphic. The line L displayed in the region 12 shows the flow of processing of the program from one end of the line L described as “START” to the other end of the line L described as “END”. Elements indicating the control structure displayed in the area 11 can be selectively arranged on the line L according to the operation of the user. In the following, an element indicating a control structure classified into sequential, branching, or iterative will be simply referred to as a control element.
 その後、プロセッサ1は、入力装置3への入力操作を監視する。そして、入力操作が行われると、プロセッサ1は、入力装置3からの出力に基づいて入力操作を検出する(ステップS2)。ステップS2では、利用者のタッチパネルディスプレイに対する入力操作に応じて入力装置3(タッチセンサ)が出力する操作信号に基づいて、プロセッサ1は、利用者の入力操作を検出する。 After that, the processor 1 monitors the input operation to the input device 3. Then, when the input operation is performed, the processor 1 detects the input operation based on the output from the input device 3 (step S2). In step S2, the processor 1 detects the user's input operation based on the operation signal output by the input device 3 (touch sensor) in response to the input operation on the user's touch panel display.
 ステップS2で検出した入力操作が(1)ラインL又はラインL上の制御要素に対する操作であって、且つ、(2)ラインLに交差する方向の操作を含む、とステップS3において判定された場合、プロセッサ1は、ラインL上に分岐又は反復に分類される新たな制御要素を表示装置4に表示させる(ステップS4からステップS7、ステップS9)。換言すると、プロセッサ1は、ラインL又はラインL上の要素に対する入力操作を検出し、検出した入力操作がラインLに交差する方向の操作を含む場合、ラインL上に分岐又は反復に分類される新たな制御要素を表示装置4に表示させる。 When it is determined in step S3 that the input operation detected in step S2 is (1) an operation on the line L or a control element on the line L, and (2) includes an operation in a direction intersecting the line L. , The processor 1 causes the display device 4 to display a new control element classified as a branch or an iteration on the line L (steps S4 to S7, step S9). In other words, the processor 1 detects an input operation on the line L or an element on the line L, and if the detected input operation includes an operation in a direction intersecting the line L, the processor 1 is classified as a branch or an iteration on the line L. The new control element is displayed on the display device 4.
 具体的には、プロセッサ1は、ステップS2で検出した入力操作がラインLまたはライン上の要素に対するラインLに交差する方向の一方向操作である場合(ステップS4:一方向)、ラインL上に分岐に分類される新たな制御要素(分岐要素)を表示装置4に表示させる。さらに具体的には、プロセッサ1は、ラインLを分岐させるとともに(ステップS5)、分岐点に分岐要素を追加し(ステップS6)、画面表示を更新する(ステップS9)。なお、一方向操作は、例えば、フリック、スワイプ、スライドなどである。 Specifically, when the input operation detected in step S2 is a one-way operation in a direction intersecting the line L with respect to the line L or an element on the line (step S4: one direction), the processor 1 is on the line L. A new control element (branch element) classified as a branch is displayed on the display device 4. More specifically, the processor 1 branches the line L (step S5), adds a branch element to the branch point (step S6), and updates the screen display (step S9). The one-way operation is, for example, flicking, swiping, sliding, or the like.
 また、プロセッサ1は、ステップS2で検出した入力操作がラインLまたはライン上の要素に対するラインLに交差する方向の双方向操作である場合(ステップS4:双方向)、ラインL上に反復に分類される新たな制御要素(反復要素)を表示装置4に表示させる。つまり、プロセッサ1は、反復要素を追加し(ステップS7)、画面表示を更新する(ステップS9)。なお、双方向操作は、例えば、互いに反対向きの1組のフリック、互いに反対向きの1組のスワイプ、途中で折り返して往復するような軌跡を描くスライドなどである。 Further, when the input operation detected in step S2 is a bidirectional operation in a direction intersecting the line L with respect to the line L or an element on the line (step S4: bidirectional), the processor 1 classifies the input operation into iterations on the line L. The new control element (repetition element) to be displayed is displayed on the display device 4. That is, the processor 1 adds a repeating element (step S7) and updates the screen display (step S9). The bidirectional operation is, for example, a set of flicks in opposite directions, a set of swipes in opposite directions, a slide that draws a trajectory that folds back and forth in the middle, and the like.
 また、プロセッサ1は、ステップS2で検出した入力操作の軌跡がラインLを跨る弧を描く場合も(ステップS4:ラインを跨る弧)、ラインL上に反復に分類される新たな制御要素(反復要素)を表示装置4に表示させる。つまり、プロセッサ1は、反復要素を追加し(ステップS7)、画面表示を更新する(ステップS9)。 Further, even when the locus of the input operation detected in step S2 draws an arc straddling the line L (step S4: arc straddling the line), the processor 1 is a new control element (repetition) classified as an iteration on the line L. Element) is displayed on the display device 4. That is, the processor 1 adds a repeating element (step S7) and updates the screen display (step S9).
 一方、ステップS2で検出した入力操作が後述する(1)、(2)を満たす操作でないとステップS3において判定された場合、プロセッサ1は、その入力操作に応じた処理を行い(ステップS8)、その後、表示装置4の画面表示を更新する(ステップS9)。なお、ステップS8で対象とする入力操作については特に限定しないが、例えば、領域11又は領域12に対するタップ、ダブルタップ、ロングタップ、ピンチイン、ピンチアウト、フリック、スワイプ、スライドなどの操作が含まれ得る。これらの入力操作に応じた処理には、例えば、順次に分類される新たな制御要素をラインL上に表示させる処理が含まれ得る。 On the other hand, if it is determined in step S3 that the input operation detected in step S2 does not satisfy the operations (1) and (2) described later, the processor 1 performs a process according to the input operation (step S8). After that, the screen display of the display device 4 is updated (step S9). The input operation targeted in step S8 is not particularly limited, and may include, for example, taps, double taps, long taps, pinch-ins, pinch-outs, flicks, swipes, slides, and the like for the area 11 or the area 12. .. The process corresponding to these input operations may include, for example, a process of displaying new control elements classified sequentially on the line L.
 表示が更新されると、プロセッサ1は、終了指示が入力されたか判定し(ステップS10)、終了指示が入力された判定すると、プロセッサ1は、図3に示すプログラミング支援処理を終了する。一方、終了指示が入力されていないと判定すると、プロセッサ1は、終了指示が入力されるまでステップS2からステップS9の処理を繰り返す。 When the display is updated, the processor 1 determines whether or not the end instruction has been input (step S10), and when it is determined that the end instruction has been input, the processor 1 ends the programming support process shown in FIG. On the other hand, if it is determined that the end instruction has not been input, the processor 1 repeats the processes of steps S2 to S9 until the end instruction is input.
 情報処理装置10は、上述した図3に示すプログラミング支援処理を実行することで、直感的で且つシンプルな操作で分岐及び反復に分類される制御構造をプログラムに追加することができる。これにより、従来に比べてプログラミングツールの操作性が改善されるため、プログラミングツールの利用者は、思考の中断を招くことなくプログラミングに集中することが可能となり、効率よくプログラミング学習を行うことができる。また、プログラミングやプログラミングツールに不慣れな初学者であっても直感的に操作可能なため、従来のプログラミングツールに比べて、プログラミングツールの使い方がわからず戸惑うといったことも少なくなる。このため、プログラミングツールを使いこなすことが難しいことに起因して初期段階でプログラミング学習自体を断念してしまうといった事態を回避することができる。以上のように、情報処理装置10によれば、プログラミング学習の敷居を下げることが可能である。 The information processing apparatus 10 can add a control structure classified into branching and repetition to the program by intuitive and simple operation by executing the programming support process shown in FIG. 3 described above. As a result, the operability of the programming tool is improved as compared with the conventional case, so that the user of the programming tool can concentrate on programming without interrupting thinking and can efficiently perform programming learning. .. In addition, even beginners who are unfamiliar with programming and programming tools can operate it intuitively, so compared to conventional programming tools, there is less confusion about how to use programming tools. Therefore, it is possible to avoid a situation in which programming learning itself is abandoned at an initial stage due to difficulty in mastering programming tools. As described above, according to the information processing apparatus 10, it is possible to lower the threshold of programming learning.
 以下、図5から図19を参照しながら、情報処理装置10を用いて実施されるプログラミング支援方法について、さらに具体的に説明する。図5は、制御構造を示す要素の追加方法の一例を説明するための図である。図6は、要素のパラメータの設定方法の一例を説明するための図である。図7は、制御構造を示す要素の並び順の変更方法の一例を説明するための図である。まず、図5から図7を参照しながら、領域12に制御要素を追加する方法について説明する。 Hereinafter, the programming support method implemented by using the information processing apparatus 10 will be described more specifically with reference to FIGS. 5 to 19. FIG. 5 is a diagram for explaining an example of a method of adding an element showing a control structure. FIG. 6 is a diagram for explaining an example of a method of setting element parameters. FIG. 7 is a diagram for explaining an example of a method of changing the order of the elements showing the control structure. First, a method of adding a control element to the region 12 will be described with reference to FIGS. 5 to 7.
 制御要素を追加する場合、利用者は、図5に示すように、ラインL上をロングタップすればよく、新たな制御要素21は、ロングタップした位置に追加される。さらに、制御要素の種類は、ラインL上に追加された制御要素21を左右にフリックすることで、領域11に表示される任意の制御要素の中から自由に切り替えることができる。 When adding a control element, the user may long-tap on the line L as shown in FIG. 5, and the new control element 21 is added to the long-tapped position. Further, the type of the control element can be freely switched from any control element displayed in the area 11 by flicking the control element 21 added on the line L to the left or right.
 制御要素を追加する処理を繰り返すことで、図6に示すように、ラインLに複数の制御要素を並べて表示することができる。これにより、全体的なプログラムの骨格を作ることができる。例えば、図6に示すプログラムの場合であれば、入力処理(“Input”)、表示処理(“Disp”)、移動処理(“Move”)、待機処理(“Wait”)、移動処理(“Move”)、待機処理(“Wait”)、移動処理(“Move”)といった処理フローが表されている。 By repeating the process of adding control elements, as shown in FIG. 6, a plurality of control elements can be displayed side by side on the line L. This allows you to create the skeleton of the overall program. For example, in the case of the program shown in FIG. 6, input processing (“Input”), display processing (“Disp”), moving processing (“Move”), standby processing (“Wait”), and moving processing (“Move”) A processing flow such as "), standby processing ("Wait"), and moving processing ("Move") is represented.
 なお、制御要素を追加する方法は、この方法に限らない。例えば、領域11に表示されている制御要素をラインL上までドラッグして、追加したい位置でドロップすることによって制御要素を追加してもよい。 The method of adding a control element is not limited to this method. For example, the control element may be added by dragging the control element displayed in the area 11 onto the line L and dropping it at the position to be added.
 各制御要素に対するパラメータ設定は、図6に示すように、ラインL上に追加された制御要素をロングタップすることで行うことができる。制御要素をロングタップすることでパラメータ設定のための設定ウィンドウ23が表示される。設定ウィンドウ23内の項目に情報を入力又は選択することで、制御要素に対してパラメータを設定することができる。 As shown in FIG. 6, parameter settings for each control element can be performed by long-tapping the control element added on the line L. By long-tapping the control element, the setting window 23 for parameter setting is displayed. Parameters can be set for control elements by entering or selecting information in the items in the settings window 23.
 また、ラインL上に追加された制御要素の並び順は、後から変更することができる。例えば、図7に示すように、制御要素25をタップして移動対象として選択する。その後、移動対象として選択された制御要素25をドラッグし、所望の位置でドロップすることで、制御要素25を所望の位置へ移動させることができる。なお、例えば、制御要素が一定間隔で整列するように設定される場合であれば、制御要素25の移動に合わせて他の制御要素も移動することで、制御要素間の間隔を保ってもよい。図7に示す例では、制御要素25の後方への移動により、制御要素26から制御要素29のそれぞれが前方へ移動した様子が示されている。 Also, the order of the control elements added on the line L can be changed later. For example, as shown in FIG. 7, tap the control element 25 to select it as a movement target. After that, the control element 25 selected as the movement target can be moved to a desired position by dragging and dropping the control element 25 at a desired position. For example, if the control elements are set to be aligned at regular intervals, the intervals between the control elements may be maintained by moving other control elements in accordance with the movement of the control element 25. .. In the example shown in FIG. 7, it is shown that each of the control elements 29 moves forward from the control element 26 due to the backward movement of the control element 25.
 図8は、分岐を示す要素の追加方法の一例を説明するための図である。図9は、分岐を示す要素のパラメータの設定方法の一例を説明するための図である。図10は、分岐に対する操作方法の一例を説明するための図である。図11は、分岐に対する操作方法の別の例を説明するための図である。以上では、任意の制御要素を追加する方法について説明したが、以降では、図8から図11を参照しながら、分岐に分類される制御要素(分岐要素)を追加する場合に特有の方法について説明する。 FIG. 8 is a diagram for explaining an example of a method of adding an element indicating a branch. FIG. 9 is a diagram for explaining an example of a method of setting parameters of elements indicating branches. FIG. 10 is a diagram for explaining an example of an operation method for branching. FIG. 11 is a diagram for explaining another example of the operation method for branching. In the above, the method of adding an arbitrary control element has been described, but hereinafter, a method peculiar to the case of adding a control element (branch element) classified into a branch will be described with reference to FIGS. 8 to 11. do.
 分岐要素を追加する場合、利用者は、図8に示すように、まず、特定の条件下でのみ実行させたい処理に対応する制御要素31をタップして選択する。その後、選択した制御要素31に対してラインLに交差する方向にドラッグ&ドロップ又はフリックすればよい。なお、制御要素31に対する操作は、ドラッグ&ドロップ、フリックに限らず、ラインLに交差する方向の一方向操作であればよい。具体的には、例えば、スワイプ、スライドなどであってもよい。 When adding a branch element, as shown in FIG. 8, the user first taps and selects the control element 31 corresponding to the process to be executed only under specific conditions. After that, the selected control element 31 may be dragged and dropped or flicked in the direction intersecting the line L. The operation on the control element 31 is not limited to drag and drop and flick, and may be a one-way operation in a direction intersecting the line L. Specifically, for example, it may be a swipe, a slide, or the like.
 プロセッサ1は、制御要素31に対するラインLに交差する方向の一方向操作を検出すると、図8に示すように、ラインLから分岐した新たなラインL1を追加してラインL1上に制御要素31を表示するとともに、ラインLからラインL1へ分岐する分岐点に、新たな制御要素として分岐要素32を追加する。 When the processor 1 detects a one-way operation in a direction intersecting the line L with respect to the control element 31, a new line L1 branched from the line L is added to the control element 31 on the line L1 as shown in FIG. At the same time as displaying, a branch element 32 is added as a new control element to the branch point where the line L branches to the line L1.
 分岐要素に対するパラメータ設定は、図9に示すように、ラインL上に追加された分岐要素32をロングタップすることで行うことができる。この点は、図6において上述したように、任意の制御要素に対してパラメータを設定する場合と同様である。なお、設定ウィンドウ33内では、分岐条件を設定可能である。 As shown in FIG. 9, the parameter setting for the branch element can be performed by long-tapping the branch element 32 added on the line L. This point is the same as the case where the parameter is set for an arbitrary control element as described above in FIG. The branch condition can be set in the setting window 33.
 また、特定の条件下でのみ実行させたい処理が他にも存在する場合には、図10に示すように、その処理に対応する制御要素34をドラッグし、分岐したライン(ラインL、ラインL1)上の所望の位置でドロップすればよい。この場合、制御要素34の移動により、他の制御要素(制御要素35など)の位置が自動的に調整されてもよい。 If there is another process that is desired to be executed only under specific conditions, as shown in FIG. 10, the control element 34 corresponding to the process is dragged to branch the line (line L, line L1). ) Just drop it at the desired position above. In this case, the position of another control element (control element 35, etc.) may be automatically adjusted by moving the control element 34.
 また、特定の条件下でのみ実行させたい処理を配置するスペースが不足している場合には、図10に示すように、分岐したライン(ラインL、ラインL1)が合流する合流点をドラッグ&ドロップで移動させてスペースを確保してもよい。図10では、このような操作により確保されたスペースに新たな制御要素36を追加する様子が示されている。 If there is not enough space to arrange the processing that you want to execute only under specific conditions, drag and drag the confluence point where the branched lines (line L, line L1) merge, as shown in FIG. You may move it by dropping to secure space. FIG. 10 shows how a new control element 36 is added to the space secured by such an operation.
 また、合流点を“END”と記載されたラインLの終端に向けてフリックすることで、分岐したラインの合流位置を調整可能であってもよい。例えば、図11に示すように、フリックによって、処理フローの最後で分岐が合流するようにプログラムされてもよく、また、1回のフリック毎に1つの制御要素分だけ合流位置が後方に移動してもよい。また、合流点を“START”と記載されたラインLの始端に向けてフリックすることで、1回フリック毎に1つの制御要素分だけ合流位置が前方に移動してもよい。 Further, it may be possible to adjust the merging position of the branched line by flicking the merging point toward the end of the line L described as "END". For example, as shown in FIG. 11, the flick may be programmed so that the branches merge at the end of the processing flow, and the merge position moves backward by one control element for each flick. You may. Further, by flicking the merging point toward the start end of the line L described as "START", the merging position may be moved forward by one control element for each flick.
 図12は、分岐を示す要素の追加方法の別の例を説明するための図である。図13は、分岐を示す要素を入れ子状に追加する方法の一例を説明するための図である。以上では、制御要素を選択して処理を分岐させる方法を説明したが、以降では、図12及び図13を参照しながら、制御要素を選択することなく分岐に分類される制御要素(分岐要素)を追加する方法について説明する。 FIG. 12 is a diagram for explaining another example of how to add an element indicating a branch. FIG. 13 is a diagram for explaining an example of a method of adding elements indicating branches in a nested manner. In the above, the method of selecting a control element and branching the process has been described. Hereinafter, the control element (branch element) classified into a branch without selecting the control element while referring to FIGS. 12 and 13. Explains how to add.
 制御要素を選択することなく分岐要素を追加する場合、利用者は、利用者は、図12に示すように、まず、ラインLをタップして選択する。その後、ラインLをラインLに交差する方向にドラッグ&ドロップ又はフリックすればよい。なお、ラインLに対する操作は、ドラッグ&ドロップ、フリックに限らず、ラインLに交差する方向の一方向操作であればよい。具体的には、例えば、スワイプ、スライドなどであってもよい。また、ラインLに対する操作は、上記のようにラインLを選択してから行う一方向操作であってもよく、又は、ラインLを跨ぐように行われる一方向操作(例えば、ラインLよりも上側の領域から下側の領域までのスワイプ操作など)であってもよい。 When adding a branch element without selecting a control element, the user first taps the line L to select it, as shown in FIG. After that, the line L may be dragged and dropped or flicked in the direction intersecting the line L. The operation on the line L is not limited to drag and drop and flick, and may be a one-way operation in a direction intersecting the line L. Specifically, for example, it may be a swipe, a slide, or the like. Further, the operation for the line L may be a one-way operation performed after selecting the line L as described above, or a one-way operation performed so as to straddle the line L (for example, above the line L). Swipe operation from the area of to the lower area, etc.).
 プロセッサ1は、ラインLに対するラインLに交差する方向の一方向操作を検出すると、図12に示すように、ラインLから分岐した新たなラインL2を追加するとともに、ラインLからラインL2へ分岐する分岐点に、新たな制御要素として分岐要素38を追加する。 When the processor 1 detects a one-way operation in a direction intersecting the line L with respect to the line L, as shown in FIG. 12, the processor 1 adds a new line L2 branched from the line L and branches from the line L to the line L2. A branch element 38 is added to the branch point as a new control element.
 ラインL2から更に処理を分岐させた場合には、利用者は、ラインL2をラインL2に交差する方向にドラッグ&ドロップ又はフリックすればよい。これにより、図13に示すように、ラインL2から分岐した新たなラインL3が追加されるとともに、ラインL2からラインL3へ分岐する分岐点に、新たな制御要素として分岐要素39が追加される。このように、ラインの分岐を繰り返すことで、複雑な条件分岐を簡単な操作でプログラムすることができる。 When the process is further branched from the line L2, the user may drag and drop or flick the line L2 in the direction intersecting the line L2. As a result, as shown in FIG. 13, a new line L3 branched from the line L2 is added, and a branch element 39 is added as a new control element at the branch point branching from the line L2 to the line L3. By repeating the branching of the line in this way, it is possible to program a complicated conditional branching with a simple operation.
 このように、情報処理装置10では、利用者は、ラインに交差する方向の一方向操作を行うだけで分岐要素を追加することができる。ラインに交差する方向の一方向操作は、一連の処理からの分岐をイメージしたときに想起されやすい操作であり、処理を分岐するための操作として初学者であっても直感的に把握可能で記憶に残りやすい。従って、情報処理装置10によれば、分岐要素を用いたより複雑なプログラムを、思考を中断することなく直感的な操作によって容易に組み上げることができる。 As described above, in the information processing apparatus 10, the user can add a branch element only by performing a one-way operation in the direction intersecting the line. One-way operation in the direction of crossing a line is an operation that is easily recalled when imagining a branch from a series of processes, and even a beginner can intuitively grasp and memorize it as an operation for branching processes. It is easy to remain in. Therefore, according to the information processing apparatus 10, a more complicated program using branch elements can be easily assembled by intuitive operation without interrupting thinking.
 図14は、反復を示す要素の追加方法の一例を説明するための図である。図15は、反復を示す要素のパラメータの設定方法の一例を説明するための図である。図16は、反復を示す要素の追加方法の別の例を説明するための図である。以降では、図14から図16を参照しながら、反復に分類される制御要素(反復要素)を追加する場合に特有の方法について説明する。 FIG. 14 is a diagram for explaining an example of a method of adding an element indicating repetition. FIG. 15 is a diagram for explaining an example of a method of setting parameters of elements indicating repetition. FIG. 16 is a diagram for explaining another example of how to add an element indicating repetition. Hereinafter, a method peculiar to the case of adding a control element (repetition element) classified into an iteration will be described with reference to FIGS. 14 to 16.
 反復要素を追加する場合、利用者は、図14に示すように、繰り返し実行させたい処理に対応する制御要素40を囲むように円弧を描けばよい。これにより、少なくとも1回はラインLを跨る弧が描かれることになる。 When adding a repeating element, the user may draw an arc so as to surround the control element 40 corresponding to the process to be repeatedly executed, as shown in FIG. As a result, an arc straddling the line L is drawn at least once.
 プロセッサ1は、利用者によって行われた入力操作の軌跡がラインLを跨る弧を描いていることを検出すると、図14に示すように、新たな制御要素として反復要素41、反復要素42をラインL上に追加する。反復要素41と反復要素42は、繰り返し対象の処理を示す制御要素40を挟むように、それぞれ制御要素40の前方、後方に追加される。 When the processor 1 detects that the locus of the input operation performed by the user draws an arc straddling the line L, as shown in FIG. 14, the repeat element 41 and the repeat element 42 are lined as new control elements. Add on L. The repeating element 41 and the repeating element 42 are added in front of and behind the control element 40 so as to sandwich the control element 40 indicating the process to be repeated.
 反復要素に対するパラメータ設定は、図15に示すように、ラインL上に追加された反復要素41をタップ又はロングタップすることで行うことができる。この点は、図6において上述したように、任意の制御要素に対してパラメータを設定する場合と同様である。なお、設定ウィンドウ43内では、反復回数を設定可能である。また、パラメータ“Block”をONに設定することで、図15に示すように、反復要素(反復要素41、反復要素42)と、繰り返し実行する処理に対応する制御要素40と、を1つの要素にブロック化することができる。 As shown in FIG. 15, the parameter setting for the repeating element can be performed by tapping or long tapping the repeating element 41 added on the line L. This point is the same as the case where the parameter is set for an arbitrary control element as described above in FIG. The number of iterations can be set in the setting window 43. Further, by setting the parameter "Block" to ON, as shown in FIG. 15, the iterative element (repetitive element 41, iterative element 42) and the control element 40 corresponding to the process to be repeatedly executed are combined into one element. Can be blocked into.
 なお、円弧の始端と終端の位置は特に限定しない。例えば、図14に示すように、ラインLよりも上側の領域から下側の領域へ円弧を描いてもよく、図16に示すように、ラインLよりも下側の領域から上側の領域を通って下側の領域まで円弧を描いてもよい。また、図示しないが、ラインLよりも上側の領域から下側の領域を通って上側の領域まで円弧を描いてもよい。 The positions of the start and end of the arc are not particularly limited. For example, as shown in FIG. 14, an arc may be drawn from the region above the line L to the region below the line L, and as shown in FIG. 16, the region below the line L passes through the region above the line L. You may draw an arc down to the lower area. Further, although not shown, an arc may be drawn from the region above the line L to the region above the region L through the region below the line L.
 このように、情報処理装置10では、利用者は、入力操作の軌跡がラインを跨る弧を描くように入力操作を行うだけで反復要素を追加することができる。軌跡がラインを跨る弧を描く操作は、処理が繰り返し行われる反復をイメージしたときに想起されやすい操作であり、反復処理のための操作として初学者であっても直感的に把握可能で記憶に残りやすい。従って、情報処理装置10によれば、反復要素を用いたより複雑なプログラムを、思考を中断することなく直感的な操作によって容易に組み上げることができる。 As described above, in the information processing apparatus 10, the user can add a repeating element only by performing an input operation so that the trajectory of the input operation draws an arc straddling the line. The operation of drawing an arc in which the trajectory straddles the line is an operation that is easily recalled when imagining the repetition in which the processing is repeated, and even a beginner can intuitively grasp and remember it as an operation for the iterative processing. Easy to remain. Therefore, according to the information processing apparatus 10, a more complicated program using repetitive elements can be easily assembled by intuitive operation without interrupting thinking.
 図17及び図18は、反復を示す要素の追加方法の更に別の例を説明するための図である。以上では、検出した入力操作の軌跡がラインLを跨る弧を描いている場合に反復要素を追加する例を示したが、以下では、図17及び図18を参照しながら、検出した入力操作がラインLまたはラインL上の要素に対するラインLに交差する方向の双方向操作である場合に反復要素を追加する例について説明する。 17 and 18 are diagrams for explaining yet another example of the method of adding an element indicating repetition. In the above, an example of adding a repeating element when the locus of the detected input operation draws an arc straddling the line L has been shown, but in the following, the detected input operation is performed with reference to FIGS. 17 and 18. An example of adding a repeating element to a line L or an element on the line L in a bidirectional operation in a direction intersecting the line L will be described.
 反復要素を追加する場合、利用者は、図17に示すように、繰り返し実行させたい処理に対応する制御要素40の左右で、上下にフリックしてもよい。また、図18に示すように、ラインLに対して同じ位置で上下にフリックしてもよい。同じ位置で上下にフリックした場合には、図18に示すように、追加される反復要素(反復要素41、反復要素42)間に制御要素が存在しないため、反復要素が追加された後で、所望の制御要素(制御要素46)をドラッグ&ドロップで反復要素間に移動させてもよい。なお、1組のフリックは、上下の順に行われても、下上の順に行われてもよい。 When adding a repeating element, the user may flick up and down on the left and right of the control element 40 corresponding to the process to be repeatedly executed, as shown in FIG. Further, as shown in FIG. 18, flicking may be performed up and down at the same position with respect to the line L. When flicking up and down at the same position, as shown in FIG. 18, since there is no control element between the added repeating elements (repeating element 41, repeating element 42), after the repeating element is added, The desired control element (control element 46) may be moved between repeating elements by dragging and dropping. A set of flicks may be performed in the order of up and down or in the order of bottom and top.
 このように、情報処理装置10では、利用者は、ラインに交差する方向の双方向操作を行うだけで反復要素を追加することができる。ラインに交差する方向の双方向操作は、処理が繰り返し行われる反復をイメージしたときに想起されやすい操作であり、反復処理のための操作として初学者であっても直感的に把握可能で記憶に残りやすい。従って、情報処理装置10によれば、反復要素を用いたより複雑なプログラムを、思考を中断することなく直感的な操作によって容易に組み上げることができる。 As described above, in the information processing apparatus 10, the user can add a repeating element only by performing a bidirectional operation in a direction intersecting the line. Bidirectional operation in the direction of crossing the line is an operation that is easy to recall when imagining an iteration in which the process is repeated, and even a beginner can intuitively grasp and remember it as an operation for iterative processing. Easy to remain. Therefore, according to the information processing apparatus 10, a more complicated program using repetitive elements can be easily assembled by intuitive operation without interrupting thinking.
 図19は、入れ子状に作成された反復を示す要素に対する操作方法の一例を説明するための図である。図15では、反復要素と、繰り返し実行する処理に対応する制御要素と、を1つの要素にブロック化する例を示したが、図19に示すように、反復要素とともにブロック化される対象は、制御要素(制御要素52)であってもよく、制御要素と反復要素とがブロック化したもの(要素56)が含まれてもよい。また、要素51から要素53がブロック化した要素56には、任意の名称を付けて表示することが可能であり、要素49から要素55がブロック化した要素57にも、同様に、任意の名称を付けて表示することが可能である。ブロック化した要素の名称を、処理内容を示す適切な名称に変更することで、その要素で行われる処理内容を一目で認識することができる。 FIG. 19 is a diagram for explaining an example of an operation method for elements showing iterations created in a nested manner. FIG. 15 shows an example of blocking an iterative element and a control element corresponding to a process to be repeatedly executed into one element. However, as shown in FIG. 19, the target to be blocked together with the iterative element is It may be a control element (control element 52), or may include a block of a control element and a repeating element (element 56). Further, the element 56 in which the elements 51 to the element 53 are blocked can be displayed with an arbitrary name, and the element 57 in which the element 59 to the element 55 is blocked can also be similarly given an arbitrary name. It is possible to display with. By changing the name of the blocked element to an appropriate name indicating the processing content, the processing content performed by that element can be recognized at a glance.
 本実施形態では、タッチパネルディスプレイを内蔵した情報処理装置10を例示したが、上述したようなモデリング支援を実現するためにプログラムを実行する情報処理装置は、タッチパネルディスプレイと有線又は無線で接続される、例えば、デスクトップ型のコンピュータであってもよい。タッチパネルディスプレイを用いることで、キーボード操作に不慣れな利用者であっても容易にプログラミングを行うことが可能である。 In the present embodiment, the information processing device 10 having a built-in touch panel display is illustrated, but the information processing device that executes a program to realize the modeling support as described above is connected to the touch panel display by wire or wirelessly. For example, it may be a desktop computer. By using the touch panel display, even a user who is unfamiliar with keyboard operation can easily perform programming.
[第2の実施形態]
 第1の実施形態では、入力装置3がタッチパネルを構成するタッチセンサである場合を例に説明したが、入力装置3は、必ずしもタッチセンサでなくてもよい。本実施形態では、キーボードを入力装置として備える情報処理装置について説明する。
[Second Embodiment]
In the first embodiment, the case where the input device 3 is a touch sensor constituting the touch panel has been described as an example, but the input device 3 does not necessarily have to be a touch sensor. In this embodiment, an information processing device including a keyboard as an input device will be described.
 図20は、本実施形態に係る情報処理装置60の外観図である。情報処理装置60は、図20に示すように、例えば、ラップトップ型のコンピュータであり、ビジュアルプログラミングのためのプログラムがインストールされている。 FIG. 20 is an external view of the information processing apparatus 60 according to the present embodiment. As shown in FIG. 20, the information processing apparatus 60 is, for example, a laptop computer in which a program for visual programming is installed.
 情報処理装置60は、表示装置61と、入力装置62を備えている。情報処理装置60は、表示装置61がタッチパネルディスプレイではなく、入力装置62がキーボードである点が、情報処理装置10とは異なっている。即ち、情報処理装置60では、キーボード操作によりビジュアルプログラミングが行われる点が、情報処理装置10とは異なるが、その他の構成は、例えば、1つ以上のプロセッサと1つ以上の記憶装置2などを備える点は、情報処理装置10と同様である。 The information processing device 60 includes a display device 61 and an input device 62. The information processing device 60 is different from the information processing device 10 in that the display device 61 is not a touch panel display but the input device 62 is a keyboard. That is, the information processing device 60 differs from the information processing device 10 in that visual programming is performed by operating the keyboard, but other configurations include, for example, one or more processors and one or more storage devices 2. The points to be provided are the same as those of the information processing apparatus 10.
 図21は、分岐を示す要素の追加方法の一例を説明するための図である。図22は、反復を示す要素の追加方法の一例を説明するための図である。情報処理装置60でも、情報処理装置10と同様に、簡単な操作で分岐及び反復を含む任意の制御要素をプログラムに追加することができる。以下、図21及び図22を参照しながら、領域12に分岐要素と反復要素を追加する方法について説明する。 FIG. 21 is a diagram for explaining an example of a method of adding an element indicating a branch. FIG. 22 is a diagram for explaining an example of a method of adding an element indicating repetition. In the information processing device 60, as in the information processing device 10, any control element including branching and repetition can be added to the program by a simple operation. Hereinafter, a method of adding a branching element and a repeating element to the region 12 will be described with reference to FIGS. 21 and 22.
 分岐要素を追加する場合、利用者は、図21に示すように、まず、特定の条件下でのみ実行させたい処理に対応する制御要素を、十字キー80と選択キー90を用いて選択する。例えば、制御要素72に対応する処理を特定の条件下でのみ実行させたい場合であれば、十字キー80の右キーでカーソル70を制御要素71から制御要素72に移し、さらに、選択キー90の決定キーを押下して制御要素72を選択する。 When adding a branch element, as shown in FIG. 21, the user first selects a control element corresponding to the process to be executed only under specific conditions by using the cross key 80 and the selection key 90. For example, if it is desired to execute the process corresponding to the control element 72 only under specific conditions, the cursor 70 is moved from the control element 71 to the control element 72 with the right key of the cross key 80, and further, the selection key 90 is used. Press the enter key to select the control element 72.
 その後、制御要素72が選択された状態で、十字キー80を用いて分岐要素を追加する。例えば、十字キー80の下キーを押下する。これにより、図21に示すように、ラインLから分岐した新たなラインL1が追加されラインL1上に制御要素72が表示されるとともに、ラインLからラインL1へ分岐する分岐点に、新たな制御要素として分岐要素73が追加される。 After that, with the control element 72 selected, a branch element is added using the cross key 80. For example, the down key of the cross key 80 is pressed. As a result, as shown in FIG. 21, a new line L1 branched from the line L is added, the control element 72 is displayed on the line L1, and a new control is performed at the branch point branching from the line L to the line L1. A branch element 73 is added as an element.
 なお、図21では、下キーで分岐要素を追加する例を示したが、分岐要素は上キーの押下によって追加されてもよい。即ち、ラインLに交差する方向の一方向操作が行われればよい。 Although FIG. 21 shows an example of adding a branch element with the lower key, the branch element may be added by pressing the upper key. That is, one-way operation in the direction intersecting the line L may be performed.
 一方、反復要素を追加する場合、利用者は、図22に示すように、まず、繰り返し実行させたい処理に対応する制御要素を、十字キー80と選択キー90を用いて選択する。例えば、制御要素72に対応する処理を繰り返し実行させたい場合であれば、十字キー80の右キーでカーソル70を制御要素71から制御要素72に移し、さらに、選択キー90の決定キーを押下して制御要素72を選択する。 On the other hand, when adding an iterative element, as shown in FIG. 22, the user first selects a control element corresponding to the process to be repeatedly executed by using the cross key 80 and the selection key 90. For example, if it is desired to repeatedly execute the process corresponding to the control element 72, move the cursor 70 from the control element 71 to the control element 72 with the right key of the cross key 80, and further press the enter key of the selection key 90. And select the control element 72.
 その後、制御要素72が選択された状態で、十字キー80を用いて反復要素を追加する。例えば、十字キー80の上下キーを順番に押下する。これにより、図22に示すように、新たな制御要素として反復要素74、反復要素75がラインL上に追加される。反復要素74と反復要素75は、繰り返し対象の処理を示す制御要素72を挟むように、それぞれ制御要素72の前方、後方に追加される。 After that, with the control element 72 selected, add a repeating element using the cross key 80. For example, the up and down keys of the cross key 80 are pressed in order. As a result, as shown in FIG. 22, a repeating element 74 and a repeating element 75 are added on the line L as new control elements. The repeating element 74 and the repeating element 75 are added in front of and behind the control element 72 so as to sandwich the control element 72 indicating the process to be repeated.
 なお、図22では、上キー、下キーの順に押下する例を示したが、反復要素は下キー、上キーの順に押下することによって追加されてもよい。即ち、ラインLに交差する方向の双方向操作が行われればよい。 Although FIG. 22 shows an example in which the up key and the down key are pressed in this order, the repeating element may be added by pressing the down key and the up key in this order. That is, bidirectional operation in the direction intersecting the line L may be performed.
 以上のように、情報処理装置60によっても、直感的で且つシンプルな操作で分岐及び反復に分類される制御構造をプログラムに追加することができる。 As described above, the information processing apparatus 60 can also add a control structure classified into branching and repetition to the program by an intuitive and simple operation.
 上述した実施形態は、発明の理解を容易にするために具体例を示したものであり、本発明はこれらの実施形態に限定されるものではなく、上述の実施形態の各種変形形態および代替形態を包含するものとして理解されるべきである。例えば、各実施形態は、その趣旨および範囲を逸脱しない範囲で構成要素を変形して具体化できることが理解されよう。また、上述した実施形態に開示されている複数の構成要素を適宜組み合わせることにより、種々の実施形態が実施され得ることが理解されよう。更には、実施形態に示される全構成要素からいくつかの構成要素を削除して、または実施形態に示される構成要素にいくつかの構成要素を追加して種々の実施形態が実施され得ることが当業者には理解されよう。即ち、モデリング支援方法、情報処理装置、及び、プログラムは、特許請求の範囲の記載を逸脱しない範囲において、さまざまな変形、変更が可能である。 The above-described embodiments show specific examples for facilitating the understanding of the invention, and the present invention is not limited to these embodiments, and various modifications and alternatives of the above-described embodiments are shown. Should be understood as embracing. For example, it will be understood that each embodiment can be transformed and embodied within a range that does not deviate from its purpose and scope. It will also be appreciated that various embodiments can be implemented by appropriately combining the plurality of components disclosed in the above-described embodiments. Further, various embodiments may be implemented by removing some components from all the components shown in the embodiments or adding some components to the components shown in the embodiments. Those skilled in the art will understand. That is, the modeling support method, the information processing apparatus, and the program can be variously modified and changed without departing from the description of the claims.
 以下、本願の出願当初の特許請求の範囲に記載された発明を付記する。
[付記1]
 各々が順次、分岐、又は反復に分類される制御構造を示す1つ以上の要素が配置可能なラインを表示装置に表示させる処理と、
 前記表示装置に表示された前記ライン又は前記ライン上の要素に対する入力操作を検出する処理と、
 検出した前記入力操作が前記ラインに交差する方向の操作を含む場合、前記ライン上に前記分岐又は前記反復に分類される制御構造を示す新たな要素を前記表示装置に表示させる処理と、
をコンピュータが行うことを特徴とするモデリング支援方法。
[付記2]
 付記1に記載のモデリング支援方法において、
 前記新たな要素を前記表示装置に表示させる処理は、検出した前記入力操作が前記ラインまたは前記ライン上の前記要素に対する前記ラインに交差する方向の一方向操作である場合、前記ライン上に前記分岐に分類される制御構造を示す前記新たな要素を前記表示装置に表示させる処理、を含む
ことを特徴とするモデリング支援方法。
[付記3]
 付記1又は付記2に記載のモデリング支援方法において、
 前記新たな要素を前記表示装置に表示させる処理は、検出した前記入力操作が前記ラインまたは前記ライン上の前記要素に対する前記ラインに交差する方向の双方向操作である場合、前記ライン上に前記反復に分類される制御構造を示す前記新たな要素を前記表示装置に表示させる処理、を含む
ことを特徴とするモデリング支援方法。
[付記4]
 付記1乃至付記3のいずれか1つに記載のモデリング支援方法において、
 前記コンピュータは、前記表示装置への前記入力操作を検出するタッチセンサからの出力に基づいて前記入力操作を検出する
ことを特徴とするモデリング支援方法。
[付記5]
 付記4に記載のモデリング支援方法において、
 前記新たな要素を前記表示装置に表示させる処理は、検出した前記入力操作の軌跡が前記ラインを跨る弧を描く場合、前記ライン上に前記反復に分類される制御構造を示す前記新たな要素を前記表示装置に表示させる処理、を含む
ことを特徴とするモデリング支援方法。
[付記6]
 命令を含む1つ以上の非一時的なコンピュータ読取可能媒体と、
 前記命令を実行する1つ以上のプロセッサと、を含み、
 前記命令は、前記1つ以上のプロセッサに動作を実行させるよう構成され、
 前記動作は、
  各々が順次、分岐、又は反復に分類される制御構造を示す1つ以上の要素が配置可能なラインを表示装置に表示させることと、
  前記表示装置に表示された前記ライン又は前記ライン上の要素に対する入力操作を検出することと、
  検出した前記入力操作が前記ラインに交差する方向の入力操作である場合、前記ライン上に前記分岐又は前記反復に分類される制御構造を示す新たな要素を前記表示装置に表示させることと、を含む
ことを特徴とする情報処理装置。
[付記7]
 コンピュータに、
 各々が順次、分岐、又は反復に分類される制御構造を示す、1つ以上の要素が配置可能なラインを表示装置に表示させ、
 前記表示装置に表示された前記ライン又は前記ライン上の要素に対する入力操作を検出し、
 検出した前記入力操作が前記ラインに交差する方向の入力操作である場合、前記ライン上に前記分岐又は前記反復に分類される制御構造を示す新たな要素を前記表示装置に表示させる
処理を実行させることを特徴とするプログラム。
Hereinafter, the inventions described in the scope of claims at the time of filing the application of the present application will be added.
[Appendix 1]
A process of displaying on a display device a line on which one or more elements indicating a control structure, each of which is classified as sequential, branching, or repeating, can be placed.
A process for detecting an input operation on the line or an element on the line displayed on the display device, and
When the detected input operation includes an operation in a direction intersecting the line, a process of displaying a new element indicating a control structure classified into the branch or the iteration on the line on the display device.
A modeling support method characterized by a computer doing.
[Appendix 2]
In the modeling support method described in Appendix 1,
The process of displaying the new element on the display device is the branching on the line when the detected input operation is a one-way operation in a direction intersecting the line with respect to the line or the element on the line. A modeling support method comprising a process of displaying the new element indicating a control structure classified into the above on the display device.
[Appendix 3]
In the modeling support method described in Appendix 1 or Appendix 2,
The process of displaying the new element on the display device is the repetition on the line when the detected input operation is a bidirectional operation in a direction intersecting the line with respect to the line or the element on the line. A modeling support method comprising a process of displaying the new element indicating a control structure classified into the above on the display device.
[Appendix 4]
In the modeling support method described in any one of Supplementary Note 1 to Supplementary Note 3,
The modeling support method, wherein the computer detects the input operation based on an output from a touch sensor that detects the input operation to the display device.
[Appendix 5]
In the modeling support method described in Appendix 4,
In the process of displaying the new element on the display device, when the detected trajectory of the input operation draws an arc straddling the line, the new element showing the control structure classified into the iteration is displayed on the line. A modeling support method comprising a process of displaying on the display device.
[Appendix 6]
One or more non-temporary computer-readable media containing instructions,
Includes one or more processors that execute the instructions.
The instruction is configured to cause the one or more processors to perform an operation.
The above operation is
Displaying on the display device a line on which one or more elements can be placed indicating a control structure, each of which is classified as sequential, branching, or repeating.
To detect an input operation on the line or an element on the line displayed on the display device.
When the detected input operation is an input operation in a direction intersecting the line, the display device may display a new element indicating a control structure classified into the branch or the iteration on the line. An information processing device characterized by including.
[Appendix 7]
On the computer
Display on the display device a line on which one or more elements can be placed, each showing a control structure that is classified as sequential, branching, or iterative.
Detects an input operation on the line or an element on the line displayed on the display device, and detects the input operation.
When the detected input operation is an input operation in a direction intersecting the line, a process of displaying a new element indicating a control structure classified into the branch or the iteration on the line is executed on the display device. A program characterized by that.
 本願は、2020年12月18日に出願された日本国特許出願第2020-210086号を基礎出願とする優先権を主張するものであり、当該基礎出願の内容は全て本願に取り込まれる。 This application claims the priority of the Japanese patent application No. 2020-210086 filed on December 18, 2020 as the basic application, and all the contents of the basic application are incorporated into the present application.
 1 プロセッサ
 2 メモリ
 2a プログラム
 3、62 入力装置
 4、61 表示装置
 10、60 情報処理装置
 21、22、24-31、34-36、40、45、46、52、54、71、72 制御要素
 32、37-39、73 分岐要素
 41、42、47-49、51、53、55、74、75 反復要素
 44、50、56、57 要素
 L、L1-L3 ライン
1 Processor 2 Memory 2a Program 3, 62 Input device 4, 61 Display device 10, 60 Information processing device 21, 22, 24-31, 34-36, 40, 45, 46, 52, 54, 71, 72 Control element 32 , 37-39, 73 Branching element 41, 42, 47-49, 51, 53, 55, 74, 75 Repeating element 44, 50, 56, 57 element L, L1-L3 line

Claims (7)

  1.  各々が順次、分岐、又は反復に分類される制御構造を示す1つ以上の要素が配置可能なラインを表示装置に表示させる処理と、
     前記表示装置に表示された前記ライン又は前記ライン上の要素に対する入力操作を検出する処理と、
     検出した前記入力操作が前記ラインに交差する方向の操作を含む場合、前記ライン上に前記分岐又は前記反復に分類される制御構造を示す新たな要素を前記表示装置に表示させる処理と、
    をコンピュータが行うことを特徴とするモデリング支援方法。
    A process of displaying on a display device a line on which one or more elements indicating a control structure, each of which is classified as sequential, branching, or repeating, can be placed.
    A process for detecting an input operation on the line or an element on the line displayed on the display device, and
    When the detected input operation includes an operation in a direction intersecting the line, a process of displaying a new element indicating a control structure classified into the branch or the iteration on the line on the display device.
    A modeling support method characterized by a computer doing.
  2.  請求項1に記載のモデリング支援方法において、
     前記新たな要素を前記表示装置に表示させる処理は、検出した前記入力操作が前記ラインまたは前記ライン上の前記要素に対する前記ラインに交差する方向の一方向操作である場合、前記ライン上に前記分岐に分類される制御構造を示す前記新たな要素を前記表示装置に表示させる処理、を含む
    ことを特徴とするモデリング支援方法。
    In the modeling support method according to claim 1,
    The process of displaying the new element on the display device is the branching on the line when the detected input operation is a one-way operation in a direction intersecting the line with respect to the line or the element on the line. A modeling support method comprising a process of displaying the new element indicating a control structure classified into the above on the display device.
  3.  請求項1又は請求項2に記載のモデリング支援方法において、
     前記新たな要素を前記表示装置に表示させる処理は、検出した前記入力操作が前記ラインまたは前記ライン上の前記要素に対する前記ラインに交差する方向の双方向操作である場合、前記ライン上に前記反復に分類される制御構造を示す前記新たな要素を前記表示装置に表示させる処理、を含む
    ことを特徴とするモデリング支援方法。
    In the modeling support method according to claim 1 or 2.
    The process of displaying the new element on the display device is the repetition on the line when the detected input operation is a bidirectional operation in a direction intersecting the line with respect to the line or the element on the line. A modeling support method comprising a process of displaying the new element indicating a control structure classified into the above on the display device.
  4.  請求項1乃至請求項3のいずれか1項に記載のモデリング支援方法において、
     前記コンピュータは、前記表示装置への前記入力操作を検出するタッチセンサからの出力に基づいて前記入力操作を検出する
    ことを特徴とするモデリング支援方法。
    The modeling support method according to any one of claims 1 to 3.
    The modeling support method, wherein the computer detects the input operation based on an output from a touch sensor that detects the input operation to the display device.
  5.  請求項4に記載のモデリング支援方法において、
     前記新たな要素を前記表示装置に表示させる処理は、検出した前記入力操作の軌跡が前記ラインを跨る弧を描く場合、前記ライン上に前記反復に分類される制御構造を示す前記新たな要素を前記表示装置に表示させる処理、を含む
    ことを特徴とするモデリング支援方法。
    In the modeling support method according to claim 4,
    In the process of displaying the new element on the display device, when the detected trajectory of the input operation draws an arc straddling the line, the new element showing the control structure classified into the iteration is displayed on the line. A modeling support method comprising a process of displaying on the display device.
  6.  命令を含む1つ以上の非一時的なコンピュータ読取可能媒体と、
     前記命令を実行する1つ以上のプロセッサと、を含み、
     前記命令は、前記1つ以上のプロセッサに動作を実行させるよう構成され、
     前記動作は、
      各々が順次、分岐、又は反復に分類される制御構造を示す1つ以上の要素が配置可能なラインを表示装置に表示させることと、
      前記表示装置に表示された前記ライン又は前記ライン上の要素に対する入力操作を検出することと、
      検出した前記入力操作が前記ラインに交差する方向の入力操作である場合、前記ライン上に前記分岐又は前記反復に分類される制御構造を示す新たな要素を前記表示装置に表示させることと、を含む
    ことを特徴とする情報処理装置。
    One or more non-temporary computer-readable media containing instructions,
    Includes one or more processors that execute the instructions.
    The instruction is configured to cause the one or more processors to perform an operation.
    The above operation is
    Displaying on the display device a line on which one or more elements can be placed indicating a control structure, each of which is classified as sequential, branching, or repeating.
    To detect an input operation on the line or an element on the line displayed on the display device.
    When the detected input operation is an input operation in a direction intersecting the line, the display device may display a new element indicating a control structure classified into the branch or the iteration on the line. An information processing device characterized by including.
  7.  コンピュータに、
     各々が順次、分岐、又は反復に分類される制御構造を示す、1つ以上の要素が配置可能なラインを表示装置に表示させ、
     前記表示装置に表示された前記ライン又は前記ライン上の要素に対する入力操作を検出し、
     検出した前記入力操作が前記ラインに交差する方向の入力操作である場合、前記ライン上に前記分岐又は前記反復に分類される制御構造を示す新たな要素を前記表示装置に表示させる
    処理を実行させることを特徴とするプログラム。
    On the computer
    Display on the display device a line on which one or more elements can be placed, each showing a control structure that is classified as sequential, branching, or iterative.
    Detects an input operation on the line or an element on the line displayed on the display device, and detects the input operation.
    When the detected input operation is an input operation in a direction intersecting the line, a process of displaying a new element indicating a control structure classified into the branch or the iteration on the line is executed on the display device. A program characterized by that.
PCT/JP2021/043501 2020-12-18 2021-11-26 Modeling assistance method, information processing device, and program WO2022130943A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2020-210086 2020-12-18
JP2020210086A JP7219868B2 (en) 2020-12-18 2020-12-18 Modeling support method, information processing device, and program

Publications (1)

Publication Number Publication Date
WO2022130943A1 true WO2022130943A1 (en) 2022-06-23

Family

ID=82059047

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/043501 WO2022130943A1 (en) 2020-12-18 2021-11-26 Modeling assistance method, information processing device, and program

Country Status (2)

Country Link
JP (2) JP7219868B2 (en)
WO (1) WO2022130943A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011048477A (en) * 2009-08-25 2011-03-10 Justsystems Corp Device, method, and program for drawing flow chart

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005309593A (en) 2004-04-19 2005-11-04 Mitsubishi Electric Corp Program preparation device and program preparation method
GB0426247D0 (en) 2004-11-25 2004-12-29 Koninkl Philips Electronics Nv User interface for content authoring
KR101260834B1 (en) 2010-12-14 2013-05-06 삼성전자주식회사 Method and device for controlling touch screen using timeline bar, recording medium for program for the same, and user terminal having the same
US9639184B2 (en) 2015-03-19 2017-05-02 Apple Inc. Touch input cursor manipulation

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011048477A (en) * 2009-08-25 2011-03-10 Justsystems Corp Device, method, and program for drawing flow chart

Also Published As

Publication number Publication date
JP2023054806A (en) 2023-04-14
JP2022096859A (en) 2022-06-30
JP7219868B2 (en) 2023-02-09

Similar Documents

Publication Publication Date Title
JP6071107B2 (en) Mobile device
ES2939305T3 (en) Navigating between activities on a computing device
KR101686581B1 (en) User Interface for Toolbar Navigation
WO2015151619A1 (en) Vehicle-mounted information device
US9195387B2 (en) Separating a cursor when a touch selection continues from a first to second screen
JP6041742B2 (en) Touch panel display controller
EP3278203B1 (en) Enhancement to text selection controls
KR20160053547A (en) Electronic apparatus and interaction method for the same
JP2012226516A (en) Electronic apparatus, display control method and program
WO2022130943A1 (en) Modeling assistance method, information processing device, and program
JP2018101054A (en) Display, display method, and program
JP2017016594A (en) Information processing apparatus, information display program, and information display method
JP6369937B2 (en) Icon display device and icon display program
JP5747688B2 (en) Computer apparatus and program
JP5304849B2 (en) Electronic equipment and programs
KR101050671B1 (en) Hangul input device using touch screen, method
JP5742870B2 (en) Electronic equipment and programs
JP2019082748A (en) Document processing apparatus and document processing program
JP7215054B2 (en) PROGRAMMING DISPLAY, PROGRAMMING DISPLAY METHOD, AND PROGRAM
JP2018101296A (en) Display, display method in display, and program
CN108205407B (en) Display device, display method, and storage medium
JP6770422B2 (en) Score display program
JP6194383B2 (en) Information processing apparatus, information display program, and information display method
JP2017027190A (en) Object operation control program and object operation control method, as well as object operation system
KR20220053522A (en) Recognition method of multi-touch of touch button on touch screen, text input method on touch screen and modifying method of object

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21906306

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21906306

Country of ref document: EP

Kind code of ref document: A1