Programming support method

The programming support method addresses the need for programming expertise in business system development by providing users with reference source code from grouped existing screens, enabling effective application creation.

JP2026010574APending Publication Date: 2026-01-22繁縄 康彦
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024110532
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-07-09
Publication Date
2026-01-22

AI Technical Summary

Technical Problem

The development of business systems often requires programming knowledge, making it difficult for companies without experienced staff to create unique systems.

Method used

A programming support method that includes storing source code from existing screens, grouping them based on images and attributes, identifying corresponding groups, and providing relevant source code to users for reference.

Benefits of technology

Enables users to perform programming without extensive knowledge by referring to provided source code, facilitating the creation of business applications.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026010574000001_ABST
    Figure 2026010574000001_ABST
Patent Text Reader

Abstract

To solve the problem that it is difficult to construct an original business system when there is no staff skilled in knowledge and experience of programming.SOLUTION: A programming support method comprising: a step of storing a source code of an action set for each of a plurality of existing screens of a plurality of existing business applications; a grouping step of grouping the plurality of existing screens into a plurality of groups based on images of the plurality of existing screens and attributes of the plurality of existing screens; The method includes a group specifying step of specifying the group corresponding to the screen, and a providing step of providing a source code of the action set in the existing screen belonging to the specified group.SELECTED DRAWING: Figure 9
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present invention relates to a programming support method. [Background technology]

[0002] In recent years, various services using SaaS (Software as a Service) have been provided, such as document creation services, chat services, and web conferencing services. SaaS also provides workflows for internal applications such as approval forms, business trip reports, travel expense reports, and vacation notices, as well as business systems for accounting management, inventory and quality control, customer management, and billing management.

[0003] With the advancement of IT in today's world, business systems have become indispensable tools for carrying out daily business operations. The development process for such business systems generally involves the following steps: screen definition, database design, and program design. Screen definition is the process of defining the content of the screens that will be displayed when business operations are carried out. Database design is the process of designing a database that stores and manages information used in business operations, such as input and output information for the defined screens. Program design is the process of designing a program to carry out business operations based on the information from the screens and databases.

[0004] For example, in the business system described in Patent Document 1, a standard screen and an alternative screen defined for each user are prepared in the screen definition. Display control for a specific user then displays the alternative screen instead of the standard screen. When displaying the alternative screen, the values ​​of the fields in the alternative screen are extracted and displayed based on a correspondence table that defines the relationship between the fields in the alternative screen and the data items in the database. The business system described in Patent Document 1 can provide specific users with an alternative screen that is easy to use for performing their work. [Prior art documents] [Patent documents]

[0005] [Patent Document 1] Japanese Patent Application Laid-Open No. 2001-282517 Summary of the Invention [Problem to be solved by the invention]

[0006] In the process of building (developing) the above-mentioned business systems, screen definition and database design can now be carried out without programming experience, thanks to the existence of GUI-based construction technologies. However, the program design and creation process in the process of building business systems often requires programming knowledge and experience. Therefore, if a company does not have staff with extensive programming knowledge and experience, it has been difficult to build a unique business system. [Means for solving the problem]

[0007] In order to achieve the above-mentioned object, the programming support method according to the present invention is characterized by including a step of storing source code of actions set for each of a plurality of existing screens of a plurality of existing business applications; a grouping step of grouping the plurality of existing screens into a plurality of groups based on images of the plurality of existing screens and attributes of the plurality of existing screens; a group identification step of identifying the group corresponding to the screen based on images of the screens of the business application defined by the user and attributes of the screens; and a providing step of providing source code of the actions set for the existing screens belonging to the identified group.

[0008] The programming support method is characterized by including a translation step of translating the source code of the action. [Effects of the Invention]

[0009] According to the present invention, the user can perform programming by referring to the provided source code. [Brief explanation of the drawings]

[0010] [Figure 1] Schematic diagram of a system according to an embodiment of the present invention. [Figure 2] (a) An example of an existing screen, (b) a list of actions defined for that existing screen [Figure 3] A diagram showing the sentences written for each action. [Figure 4] (a) A screenshot of the travel expense report screen, (b) a screenshot of the search screen for the subject master, and (c) a screenshot of the registration screen for the company regulations. [Figure 5] Diagram showing an example of a specification and requirements vector [Figure 6] Diagram showing the screen specifications and requirements settings list [Figure 7] Example of a screen requirements configuration list [Figure 8] Flow diagram for building business applications [Figure 9] Diagram showing the provision process [Figure 10] A diagram showing an example of grouping by clustering [Figure 11] A diagram showing examples of existing actions and existing sentences defined on an existing screen. [Figure 12] A diagram showing the transition of data in the translation database generation process. [Figure 13] A diagram showing the flow of the translation generation process DETAILED DESCRIPTION OF THE INVENTION

[0011] [First embodiment]

[0012] As shown in FIG. 1, the system of this embodiment is a system that builds business applications (hereinafter referred to as "business apps") and provides the built business apps, and includes a terminal 10 of a user who uses this system (hereinafter referred to as "user terminal 10") and a SaaS (Software as a Service) type server 30 (hereinafter referred to as "platform server 30") that functions as a platform for building and providing business apps.

[0013] The user terminal 10 is a network-connectable information processing device, such as a desktop or notebook PC 10a and / or a smart device 10b such as a smartphone or tablet terminal. The PC 10a and the smart device 10b are equipped with known hardware. Specifically, the PC 10a includes a display 11 functioning as a display unit, a keyboard (not shown) functioning as a text input unit for inputting text, a mouse (not shown) functioning as a coordinate input unit for inputting coordinates, a network module (not shown) functioning as a network communication unit, a memory (not shown) functioning as a storage unit for storing programs such as a web browser, and a CPU (not shown) functioning as a processing unit that controls the keyboard, mouse, and network module and performs arithmetic processing by executing programs stored in the memory. The smart device 10b is a user-portable information terminal and includes a touch panel display 12 instead of the display 11, keyboard, and mouse of the PC 10a. The user terminal 10 configured in this manner can communicate with the platform server 30 via a network N such as an Internet communication line or a mobile phone communication network.

[0014] The platform server 30 is an information processing device that supports the construction of business applications and provides the constructed business applications to the user terminals 10, and includes a network module (not shown) that functions as a network communication unit that communicates with the user terminals 10 via a network N, a CPU (not shown) that functions as a processing unit that executes a program having the construction support function and the application providing function and performs arithmetic processing, and a memory (not shown) that functions as a storage unit that stores the program. The platform server 30 also includes a database 31.

[0015] The database 31 functions as a storage unit that stores information about various business applications (hereinafter referred to as "existing applications") that have been built in the past. The information about the existing applications includes an action list of actions (hereinafter referred to as "existing actions") incorporated into a screen (hereinafter referred to as "existing screen") used in the existing application, a sentence for each existing action (hereinafter referred to as "existing sentence"), attributes set for the existing screen, and a cluster number assigned to the existing screen, and this information is stored in association with an existing screen ID assigned to the existing screen. Hereinafter, this database 31 will be referred to as the existing application database 31.

[0016] An action list is a list of one or more existing actions defined for an existing screen. An existing action indicates processing related to the screen operation of the existing screen or the component operation of a component incorporated into the existing screen, and / or processing related to table operations of a table corresponding to the existing screen. Each action consists of one or more sentences. An existing sentence is source code (command statement) that specifically describes the processing of the existing action. For example, the search screen (search form) for the account master, which is an existing screen shown in FIG. 2(a), has defined existing actions such as "LOAD: Initial Load," "GET: Tax Exempt," "BT: Search," "SQL: Search," "List.Select," and "BT: Close" shown in FIG. 2(b). As shown in FIG. 3, an existing sentence that defines the specific processing for each existing action is written for each existing action. Such an action list is stored in the existing application database 31 in association with an existing screen ID. In addition, an existing sentence is stored in association with each existing action.

[0017] A capture image is an image generated by capturing an existing screen. For example, FIG. 4(a) is a capture image generated by capturing a business trip expense reimbursement report screen, which is an existing screen. Similarly, FIG. 4(b) is a capture image generated by capturing an account master search screen, which is an existing screen. Similarly, FIG. 4(c) is a capture image generated by capturing an internal company regulations registration screen, which is an existing screen. These capture images are stored in the existing application database 31 in association with existing screen IDs.

[0018] The attributes set for an existing screen are the specifications and requirements of the existing screen set for the existing screen. Here, the specifications of the existing screen are matters related to the page type and screen pattern shown in FIG. 6. Furthermore, the requirements of the existing screen are matters other than the specifications of the existing screen shown in FIGS. 6 and 7. A code is assigned to each specification and requirement of the existing screen, and as shown in FIG. 5, a flag is set for the specification and requirement selected by the user. Then, as shown in FIG. 5, the specifications and requirements are set for each existing screen, associated with the existing screen ID of the existing screen, and stored in the existing application database 31. In this way, each record in FIG. 5 is treated as specification and requirement vector data for one existing screen.

[0019] The cluster number is the number of the cluster (group) to which the existing screen belongs as a result of clustering (described later) performed on a wide variety of existing screens. The cluster number of the cluster to which the existing screen belongs is stored in association with the existing screen ID.

[0020] The screens of business applications constructed using the construction support function of the platform server 30 are not limited to the travel expense statement screen, the subject master search screen, and the company regulations registration screen shown in Figure 4, but can also be created to suit the user's business operations.

[0021] The following describes the construction support function provided by the platform server 30. The construction support function is a function that supports the construction of business applications, and includes a screen definition process s10, a table creation process s20, a specification / requirement setting process s30, a provision process s40, and an action setting process s50, as shown in FIG.

[0022] The screen definition process s10 is a process for defining a screen used in a business application. Specifically, the CPU of the platform server 30 displays a definition screen on the user terminal 10. The definition screen is a screen for constructing a screen used in the business application, and includes a background image and a toolbox. The toolbox is a GUI of multiple components that can be incorporated into a form. Representative components include a text field, a text area, a radio button, a button, a check box, a combo box, and a data grid.

[0023] The platform server 30 displays a definition screen on the user terminal 10 and receives operation information from the user terminal 10. Then, the platform server 30 arranges components selected from a toolbox within the display area of ​​the background image based on the operation information received from the user terminal 10. In this way, in the screen definition process s10, the platform server 30 executes a display step of displaying a definition screen, a reception step of receiving operation information, and an arrangement step of arranging components based on the operation information. Then, a screen used in a business application (hereinafter referred to as an "application screen") is created by the screen definition process s10.

[0024] After executing the screen definition process s10, the platform server 30 executes a table creation process s20. The table creation process s20 is a process for creating a table used in a business application, and creates the table based on information about the components arranged on the application screen (component attribute information). Note that the table creation process s20 may include a process for displaying the created table on the user terminal 10 and changing the contents of the table based on operation information received from the user terminal 10.

[0025] After executing the table creation process s20, the platform server 30 executes the specification / requirement setting process s30. The specification / requirement setting process s30 is a process for setting attributes of the application screen created in the screen definition process s10. Here, the application screen attributes refer to the application screen specifications and requirements. Specifically, the lists shown in FIGS. 6 and 7 are displayed on the user terminal 10, and information (flag setting state) related to the specifications and requirements selected by the user is acquired. Upon acquiring the selected specifications and requirements from the user terminal 10, the platform server 30 generates a specification / requirement vector based on the specifications and requirements, and stores the generated specification / requirement vector in memory. The specification / requirement vector is generated in the same manner as in FIG. 5.

[0026] After executing the setting process s30, the platform server 30 executes a providing process s40. The providing process s40 is a process for providing actions and sentences suitable for the application screen created in the above process based on information about the existing screen stored in the platform server 30, and includes a vector acquisition process s41, a group identification process s42, a selection process s43, and a transmission process s44, as shown in Fig. 9 .

[0027] The vector acquisition process s41 includes an image vector acquisition process and a specification / requirement vector acquisition process. The image vector acquisition process is a process of imaging the application screen created in the screen definition process s10 (acquiring a captured image 60) and vectorizing the captured image 60. By vectorizing the captured image 60, it is possible to acquire an image vector in which feature quantities such as the type and number of components placed on the application screen are quantified. The specification / requirement vector acquisition process is a process of extracting the specification / requirement vector 61 stored in memory in the specification / requirement setting process s30. In this way, the platform server 30 functions as a vector acquisition unit that acquires image vectors and attribute (specification / requirement) vectors 61.

[0028] The group identification process s42 is a process for identifying a group corresponding to an application screen created by a user. In this embodiment, as shown in FIG. 10, a wide variety of existing screens 70a, 70b, and 70c prepared in advance are clustered into a plurality of groups 71a, 71b, 71c, 71d, etc. A cluster number is assigned to each group 71a, 71b, 71c, 71d, etc., and each existing screen is assigned the cluster number of the corresponding group. As a preprocessing step for the clustering, the wide variety of existing screens are subjected to the vectorization process described above to obtain image vectors and specification / requirement vectors for each existing screen, and clustering is performed based on the obtained image vectors and specification / requirement vectors. By performing the clustering, a clustering model and a scaler 73 are generated. In the group identification process, the image vector of the application screen and the specification and requirement vector of the application screen obtained in the vectorization process are input into a scaler, and the group is identified by obtaining the cluster number output from the scaler.

[0029] The selection process s43 is a process for allowing the user to select an existing screen similar to the application screen, and includes an extraction process, a display process, and an acquisition process. The extraction process is a process for extracting an existing screen ID and a capture image corresponding to the acquired cluster number from the existing application database 31. The display process is a process for displaying the extracted capture image on the user terminal 10. At this time, the existing screen ID is linked to the displayed capture image. When a capture image is selected by the user, the existing screen ID linked to the selected capture image can be acquired (acquisition process).

[0030] The transmission process s44 is a process of transmitting reference actions and reference sentences to the user terminal 10. The reference actions are existing actions corresponding to the existing screen ID selected in the selection process s43, and serve as a reference when the user sets actions for the application screen. The reference sentences are existing sentences corresponding to the existing actions, and serve as a reference when the user creates sentences for the application screen. The transmission process s44 performs an extraction process of extracting the existing actions corresponding to the acquired existing screen IDs and existing sentences written for the existing actions from the existing application database 31, and then performs a process of compiling the extracted existing actions and existing sentences into a single file as reference actions and reference sentences, and transmitting the files to the user terminal 10.

[0031] When the transmission process s44 is executed, the platform server 30 executes an action setting process s50. The action setting process s50 displays an action input box for inputting an action and a sentence input box for inputting a sentence on the user terminal 10. The action and sentence input by the user are then acquired. At this time, the user can input the action and sentence while referring to the existing actions and existing sentences provided in the provision process.

[0032] According to this embodiment, an existing screen similar to an application screen created by a user is selected, and existing actions and sentences incorporated into the existing screen are provided to the user. Thus, the user can set actions and sentences for the application screen by referring to the provided actions and sentences.

[0033] Furthermore, the system 100 according to this embodiment has a sentence translation function. Sentence translation is a function for converting a sentence written in a programming language into Japanese text. By using this translation function on the reference sentence in the provision process s40, the system 100 provides the user with Japanese text corresponding to the reference sentence. The sentence translation function will be explained below with reference to FIGS. 11 to 13. This translation function is realized by a translation database generation process and a translation process.

[0034] The translation database generation process is a process for generating a database 32 based on existing sentences to be used in the translation process described later, and is executed in advance of the translation process described later. Specifically, the translation database generation process includes a sentence extraction process, a translation generation process, and a vectorization process.

[0035] The sentence extraction process is a process of extracting existing sentences used in an existing screen. As shown in Fig. 11 , a plurality of existing actions 81 are defined in an existing screen 80, and one or more existing sentences 82 indicating the processing content of each existing action 81 are written for each existing action 81. As described above, these existing actions 81 and existing sentences 82 are stored in the existing application database 31. Therefore, in the sentence extraction process, the platform server 30 extracts all existing sentences 82 stored in the existing application database 31.

[0036] The translation generation process is a process of generating Japanese sentences from extracted existing sentences. In this embodiment, the Japanese sentences are generated using a generation AI. Specifically, as shown in FIG. 12, the platform server 30 transmits the extracted existing sentences and a prompt to the generation AI server 40 (FIG. 1). The prompt includes a message requesting that the existing sentences be translated into Japanese and rules for the translation. The generation AI server generates Japanese sentences corresponding to each existing sentence based on the received prompt, and transmits the Japanese sentences to the platform server 30. The platform server 30 associates the received Japanese sentences with the existing sentences and registers them in the database 32. Hereinafter, this database will be referred to as the text database 32.

[0037] The vectorization process is a process of vectorizing the received Japanese text and existing sentences, and is executed by the platform server 30. A known method can be used for the vectorization. By the vectorization process, vector data of each translated sentence and vector data of each existing sentence are generated. The generated vector data of the translated sentence and vector data of the existing sentence are registered in a database 33 in association with each other. Hereinafter, the database 33 will be referred to as the vector database 33.

[0038] The translation process includes a specification process, a vectorization process, an extraction process, and a translation generation process.

[0039] The identification process is a process for identifying a sentence to be translated. For example, an existing sentence extracted in the presentation process can be identified as the sentence to be translated. Below, an example will be described in which "addNum = {tuika_lines}.getValue();" is identified as the sentence to be translated, as shown in FIG. 13. Note that the translation target may be, for example, identified by displaying an input box on the user terminal 10 for inputting the sentence to be translated, and the sentence entered in the input box.

[0040] The vectorization process is a process of vectorizing the sentence "addNum = {tuika_lines}.getValue();" identified in the above-mentioned identification process. The content of this process is the same as the above-mentioned vectorization process. By this vectorization process, vector data of the sentence identified in the above-mentioned identification process is generated.

[0041] The extraction process is a process of extracting Japanese sentences from databases 32 and 33 based on the vector data of the identified sentence, and includes a first extraction process and a second extraction process. The first extraction process extracts a plurality of vector data that matches or is similar to the vector data of the identified sentence from vector database 33. The second extraction process is a process of extracting existing sentences and Japanese sentences that correspond to the vector data extracted in the first extraction process from text database 32.

[0042] The translation generation process is a process of inputting the sentence identified as the translation target, the sentence and Japanese sentence extracted in the extraction process, and a prompt into the generation AI to obtain the Japanese sentence from the generation AI. The prompt includes a message to translate the identified sentence into Japanese, and a message to refer to sentences similar to the identified sentence and Japanese examples.

[0043] The translation process described above makes it possible to acquire Japanese text corresponding to the sentence. The acquired Japanese text is transmitted to the user terminal 10 in association with the existing sentence in the provision process.

[0044] The system according to the above embodiment can provide Japanese sentences to the user, allowing the user to easily understand the content of the provided sentences and use them to create sentences.

[0045] Furthermore, although the above embodiment provides existing actions and existing sentences to the user, for example, generalized sentences (hereinafter referred to as "general sentences") may be provided to the user. The general sentences are existing sentences in which specific notations such as variable names are changed to general notations, and are registered in the existing application database 31. Furthermore, when registering the general sentences in the existing application database 31, sentence codes may be assigned to the general sentences.

[0046] Although the system of this embodiment has been described above, the present invention is not limited to the above embodiment, and various improvements and modifications may be made.

[0047] <Variation 1> For example, the generation AI server is not limited to a single server, and may include one server that executes the translation generation process in the translation database generation process and another server that executes the translation generation process in the translation process. [Explanation of symbols]

[0048] 10 User terminal 30 Platform Server 31 Database (existing application database) 32 Database (Text Database) 33 Database (Vector Database) 40 Generative AI Server 100 systems

Claims

1. Storing source codes of actions set for each of a plurality of existing screens of a plurality of existing business applications; a grouping step of grouping the plurality of existing screens into a plurality of groups based on images of the plurality of existing screens and attributes of the plurality of existing screens; a group specifying step of specifying the group corresponding to the screen based on an image of the screen of the business application defined by the user and attributes of the screen; a providing step of providing a source code of the action set on the existing screen belonging to the specified group; How to support programming, including:

2. 2. The programming support method according to claim 1, further comprising a translation step of translating a source code of the action.

Citation Information

Patent Citations

  • Business system development device

    JP2001282517A