Software development method, equipment and product
By providing software development interface and auxiliary interface in software development, users are allowed to choose development assistance methods and automatically generate software units, which solves the problem of time-consuming external signal docking and interaction in software development, and improves development efficiency and experience.
Patent Information
- Application Number
- CN202411465151.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-10-18
- Publication Date
- 2025-02-07
AI Technical Summary
During the software development process, developers need to connect and interact with external signals, which consumes a lot of time and energy and affects the efficiency of software development.
Provides a software development method that allows users to submit requirements and choose development assistance methods by displaying the software development interface. According to the choice method, display the auxiliary interface to help users select external database files or collaborate on development and collaborate with other users. At the same time, based on development auxiliary information, software units that match software development needs are automatically generated.
It improves the user's software development experience, improves the efficiency and convenience of software development, simplifies communication and interaction between developers, and helps to achieve rapid iteration of software.
Smart Images

Figure CN119396360A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of software development technology, and in particular, to a software development method, device and product. Background Art
[0002] With the development of science and technology and the advancement of technology, computer technology has become a necessary application in production operations, and computers rely on software technology to provide services to people. Therefore, the development of software engineering has become a basic work content in the computer field.
[0003] During the software development process, it is often necessary to connect with external signals at the software level. At the same time, a large number of signal interactions are also required among developers. At this time, developers often receive, identify, and transmit signals manually. The connection and interaction of these signals require developers to spend a lot of time and energy, affecting software development efficiency. Summary of the invention
[0004] The embodiments of the present disclosure at least provide a software development method, device and product.
[0005] The present disclosure provides a software development method, the method comprising:
[0006] Displaying a software development interface, wherein the software development interface displays a requirement submission area and a method selection area, wherein the requirement submission area is used for a first user to submit software development requirements, and the method selection area is used for the first user to select a development assistance method, wherein the development assistance method includes a first assistance method and a second assistance method, wherein the first assistance method is to directly generate using an external database file, and the second assistance method is to seek development cooperation from a second user;
[0007] According to the development assistance mode selected by the first user, an auxiliary interface corresponding to the development assistance mode is displayed; the auxiliary interface displays guidance content corresponding to the development assistance mode, and for the first assistance mode, the guidance content is used to guide the first user to select the external database file according to the software development requirements, and for the second assistance mode, the guidance content is used to guide the first user to send a collaborative development request to the second user according to the software development requirements;
[0008] A software unit matching the software development requirement is generated according to the development auxiliary information acquired through the auxiliary interface.
[0009] In the embodiments of the present disclosure, by displaying a software development interface, it is convenient for users to submit software development requirements and select a development assistance method. After the user selects the development assistance method, by displaying an auxiliary interface, it is convenient for users to select appropriate external database files or collaborate with other users on development, thereby improving the user's software development experience. In addition, the embodiments of the present disclosure can automatically generate software units that match software development requirements based on development assistance information, thereby improving the efficiency and convenience of software development, facilitating communication and interaction between users developing software, and helping to achieve rapid iteration of software.
[0010] In an optional implementation manner, filling guidance information is displayed in the requirement submission area, and the filling guidance information is used to guide the first user to fill in the software development requirement;
[0011] The filling guide information includes multiple filling level information, each filling level includes at least one filling item; the filling level is used to indicate whether the current filling item is filled in accurately and the degree of influence on the successful generation of a software unit that meets the requirements.
[0012] In the disclosed embodiment, filling guidance information can be displayed in the requirement submission area. The filling guidance information includes at least one filling item under each filling level, so as to assist and guide users to fill in software development requirements, effectively improve the efficiency of filling in software development requirements, and can ensure the comprehensiveness of the filling in of necessary information to a certain extent, thereby helping to improve the quality of subsequently generated software units.
[0013] In an optional implementation manner, the method further includes:
[0014] Determine a recommended target assistance method from the first assistance method and the second assistance method based on the software development requirements submitted by the first user, the external database file information, and the second user information providing development collaboration;
[0015] In the mode selection area, recommendation information is displayed, and the target assistance mode is highlighted, and the recommendation information is used to recommend the first user to select the target assistance mode.
[0016] In the disclosed embodiment, a matching target recommendation method can be automatically determined based on the software development requirements submitted by the first user, and recommendation information can be provided to facilitate the user to quickly select a development assistance method and enhance the user's software development experience.
[0017] In an optional implementation manner, displaying an auxiliary interface corresponding to the development assistance mode selected by the first user includes:
[0018] If the first user selects the first auxiliary mode, a list of external database files is displayed in the auxiliary interface; the list of external database files includes a plurality of external database files for selection;
[0019] If the first user selects the second assistance mode, information of a plurality of second users for selection is displayed in the assistance interface, and the second users are users who can collaborate with the first user for development.
[0020] In the disclosed embodiment, when displaying the auxiliary interface, for the first auxiliary mode, a list of external database files including multiple external database files for selection can be displayed, so that users can select external database files that match the software development requirements. For the second auxiliary mode, information of multiple second users who can collaborate with the first user for development can be displayed, so that users can select second users who match the software development requirements and can assist in development, which helps to improve software development efficiency and enhance the user's software development experience.
[0021] In an optional implementation manner, after displaying information of a plurality of second users for selection in the auxiliary interface, the method further includes:
[0022] In response to the first user selecting a target second user in the auxiliary interface, displaying a dialog window between the first user and the target second user;
[0023] The dialog window is used for communication between the first user and the target second user for development collaboration.
[0024] In the disclosed embodiment, for the second auxiliary method, after the first user selects the target second user, a dialogue window for the first user and the target second user to communicate in development collaboration can be displayed, which helps to achieve high-quality and efficient communication and interaction between various users developing software, and facilitates the rapid iteration of software development needs.
[0025] In an optional implementation manner, when the first user selects the first auxiliary mode, the method further includes:
[0026] Parsing and obtaining a plurality of external signals and attribute information of each of the external signals from the external database file selected by the first user; any of the external signals is used as an input signal or an output signal of the software unit;
[0027] A pair of external signals that meet preset attribute requirements are screened from the multiple external signals as the development auxiliary information; the pair of external signals includes an external signal as an input signal and an external signal as an output signal.
[0028] In the disclosed embodiment, external signals and attribute information of external signals in an external database file can be automatically parsed, and a pair of external signals suitable as input signals and output signals of a software unit can be automatically screened out, without the need for the first user to manually parse and screen the external signals, which helps to improve software development efficiency and enhance the user's software development experience.
[0029] In an optional implementation, generating a software unit matching the software development requirement according to the development auxiliary information obtained through the auxiliary interface includes:
[0030] Based on the internal development rules, attribute information conversion is performed on the pair of external signals respectively to obtain an input signal and an output signal as internal use signals;
[0031] Based on the input signal and the output signal as internal use signals, a software unit matching the software development requirement is generated.
[0032] In the disclosed embodiments, external signals can be automatically converted into internal use signals to generate software units, thereby achieving automatic docking of external signals with internal use signals and automatically generating software units. This eliminates the need for the first user to manually perform signal conversion and manually develop software units, thereby helping to improve software development efficiency and enhance the user's software development experience.
[0033] In an optional implementation, when the first user selects the second auxiliary mode, generating a software unit matching the software development requirement according to the development auxiliary information obtained through the auxiliary interface includes:
[0034] Acquire an output signal of the software unit set by the first user and an input signal of collaborative development uploaded by the second user;
[0035] Verify the attribute information of the output signal and the input signal according to internal development rules;
[0036] After the verification is passed, the software unit is generated based on the output signal and the input signal.
[0037] In the disclosed embodiments, the attribute information of the input signal and the output signal can be automatically checked, and the software unit can be automatically generated after the check is passed, thereby eliminating the need for manual check, improving the convenience of user software development, and ensuring the accuracy of the generated software unit.
[0038] In an optional implementation manner, after generating the software unit matching the software development requirement, the method further includes:
[0039] The output signal of the software unit is shared to the cloud for direct use by other users.
[0040] In the disclosed embodiment, the output signal of the generated software unit can be shared to the cloud so that other users can obtain the transmission signal and use it as an input signal for software units developed by other users, which helps software development collaboration and achieves rapid iteration of software.
[0041] An embodiment of the present disclosure also provides an electronic device, including: a processor, a memory and a bus, wherein the memory stores machine-readable instructions executable by the processor, and when the electronic device is running, the processor and the memory communicate via the bus, and when the machine-readable instructions are executed by the processor, the steps in any possible implementation of the above-mentioned software development method are performed.
[0042] The embodiments of the present disclosure further provide a computer program product, on which a computer program is stored. When the computer program is executed by a processor, the steps in any possible implementation of the above-mentioned software development method are executed.
[0043] For a description of the effects of the above-mentioned electronic device and computer program product, please refer to the description of the above-mentioned software development method, which will not be repeated here.
[0044] It should be understood that the above general description and the following detailed description are merely exemplary and explanatory, and are not intended to limit the technical solutions of the present disclosure.
[0045] In order to make the above-mentioned objectives, features and advantages of the present disclosure more obvious and easy to understand, preferred embodiments are specifically cited below and described in detail with reference to the attached drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0046] In order to more clearly illustrate the technical solutions of the embodiments of the present disclosure, the following is a brief introduction to the drawings required for use in the embodiments. The drawings herein are incorporated into the specification and constitute a part of the specification. These drawings illustrate embodiments consistent with the present disclosure and are used together with the specification to illustrate the technical solutions of the present disclosure. It should be understood that the following drawings only illustrate certain embodiments of the present disclosure and should not be regarded as limiting the scope. For ordinary technicians in this field, other relevant drawings can also be obtained based on these drawings without creative work.
[0047] Figure 1 A flowchart of a software development method provided by an embodiment of the present disclosure is shown;
[0048] Figure 2 One of the schematic diagrams of a software development interface provided by an embodiment of the present disclosure is shown;
[0049] Figure 3 A second schematic diagram of a software development interface provided by an embodiment of the present disclosure is shown;
[0050] Figure 4 A third schematic diagram of a software development interface provided by an embodiment of the present disclosure is shown;
[0051] Figure 5 One of the schematic diagrams of an auxiliary interface provided by an embodiment of the present disclosure is shown;
[0052] Figure 6 A second schematic diagram of an auxiliary interface provided by an embodiment of the present disclosure is shown;
[0053] Figure 7 A third schematic diagram of an auxiliary interface provided by an embodiment of the present disclosure is shown;
[0054] Figure 8 A schematic diagram of a process of generating a software unit in a first auxiliary manner provided by an embodiment of the present disclosure is shown;
[0055] Fig. 9 A schematic diagram of a process of generating a software unit in a second auxiliary mode provided by an embodiment of the present disclosure is shown;
[0056] Fig.10 A schematic diagram of a process of generating a software unit provided by an embodiment of the present disclosure is shown;
[0057] Fig.11 One of the schematic diagrams of a software development device provided by an embodiment of the present disclosure is shown;
[0058] Fig.12 A second schematic diagram of a software development device provided by an embodiment of the present disclosure is shown;
[0059] Fig.13 A schematic structural diagram of an electronic device provided by an embodiment of the present disclosure is shown. DETAILED DESCRIPTION
[0060] In order to make the purpose, technical scheme and advantages of the embodiments of the present disclosure clearer, the technical scheme in the embodiments of the present disclosure will be clearly and completely described below in conjunction with the drawings in the embodiments of the present disclosure. Obviously, the described embodiments are only part of the embodiments of the present disclosure, rather than all of the embodiments. The components of the embodiments of the present disclosure generally described and shown in the drawings here can be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of the present disclosure provided in the drawings is not intended to limit the scope of the present disclosure for protection, but merely represents the selected embodiments of the present disclosure. Based on the embodiments of the present disclosure, all other embodiments obtained by those skilled in the art without making creative work belong to the scope of protection of the present disclosure.
[0061] It should be noted that similar reference numerals and letters denote similar items in the following drawings, and therefore, once an item is defined in one drawing, further definition and explanation thereof is not required in subsequent drawings.
[0062] The term "and / or" herein only describes an association relationship, indicating that three relationships may exist. For example, A and / or B may represent the following three situations: A exists alone, A and B exist at the same time, and B exists alone. In addition, the term "at least one" herein represents any combination of at least two of any one or more of a plurality of. For example, including at least one of A, B, and C may represent including any one or more elements selected from the set consisting of A, B, and C.
[0063] Research has found that in the software development process, it is often necessary to connect with external signals at the software level, and at the same time, a large number of signal interactions are required between developers. At this time, developers often receive, identify, and transmit signals manually. The connection and interaction of these signals require developers to spend a lot of time and energy, affecting software development efficiency. In addition, manual software development methods may introduce errors and affect software quality.
[0064] Based on the above research, the present disclosure provides a software development method, which can not only display the software development interface to the user, facilitate the user to submit software development requirements and select the development assistance method, and after the user selects the development assistance method, display the auxiliary interface, facilitate the user to select the appropriate external database file or collaborate with other users for development, thereby improving the user's software development experience, but also can automatically generate software units that match the software development requirements based on the development assistance information, thereby improving the efficiency and convenience of software development.
[0065] To facilitate understanding of this embodiment, a software development method disclosed in the embodiment of the present disclosure is first introduced in detail. The execution subject of the software development method provided in the embodiment of the present disclosure is generally an electronic device with certain computing capabilities. In this embodiment, the electronic device can be a server. Among them, the server can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, or a cloud server that provides basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud storage, big data and artificial intelligence platforms.
[0066] In other implementations, the electronic device may also be a terminal device or other processing device, and the terminal device may be a mobile device, a user terminal, a handheld device, a computing device, a vehicle-mounted device, a wearable device, etc. Other processing devices may be devices including a processor and a memory, which are not limited here. In some possible implementations, the software development method may be implemented by a processor calling computer-readable instructions stored in a memory.
[0067] The software development method provided by the embodiment of the present disclosure is described below in conjunction with the accompanying drawings.
[0068] See also Figure 1 As shown, it is a flowchart of a software development method provided by an embodiment of the present disclosure, such as Figure 1 As shown in , the software development method provided by the embodiment of the present disclosure includes steps S101 to S103, wherein:
[0069] S101: Display a software development interface, wherein the software development interface displays a requirement submission area and a method selection area, wherein the requirement submission area is used for a first user to submit software development requirements, and the method selection area is used for the first user to select a development assistance method, wherein the development assistance method includes a first assistance method and a second assistance method, wherein the first assistance method is to directly generate using an external database file, and the second assistance method is to seek development collaboration from a second user.
[0070] The software development requirement includes signal information of a software unit that the first user needs to develop, and the signal information of the software unit includes signal information of an input signal of the software unit and signal information of an output signal of the software unit.
[0071] Each of the external database files includes a plurality of external signals, which may be, for example, Controller Area Network (CAN) signals, Local Interconnect Network (LIN) signals, hard-wired signals, etc. According to the external signals in the external database files, input signals and output signals of the software unit may be converted.
[0072] The second user and the first user are users who develop the same software, the software includes multiple software units, and the software units developed by the second user and the first user are different.
[0073] For example, see also Figure 2-Figure 4 , Figure 2-Figure 4 Schematic diagram of the software development interface provided by the embodiment of the present disclosure. Figure 2 As shown in the figure, the software development interface 200 includes a requirement submission area 210 and a method selection area 220. The requirement submission area 210 is used for a first user to submit software development requirements, and the method selection area 220 displays a first auxiliary method and a second auxiliary method for the first user to select an adapted development auxiliary method.
[0074] In order to facilitate the first user to fill in the software development requirements more comprehensively and thoroughly, the requirements submission area may display guidance steps or guidance items for filling in the software development requirements, for example, indicating various information that the user needs to fill in.
[0075] In some possible implementations, such as Figure 3 As shown in , the requirement submission area 210 displays filling guide information 211, and the filling guide information is used to guide the first user to fill in the software development requirement.
[0076] It can be seen that the filling guide information 211 includes multiple filling level information. In this example, the filling levels include required filling items, recommended filling items, and optional filling items. Each filling level includes at least one filling item.
[0077] The filling level is used to indicate whether the current filling item is filled in accurately and the degree of influence on the successful generation of the software unit that meets the requirements. Exemplarily, whether the required filling item is filled in accurately has the greatest influence on the successful generation of the software unit that meets the requirements, whether the recommended filling item is filled in accurately has the second largest influence on the successful generation of the software unit that meets the requirements, and whether the optional filling item is filled in accurately has the least influence on the successful generation of the software unit that meets the requirements.
[0078] Exemplarily, the required items include, for example, signal name, signal type, etc., the recommended items include, for example, signal range, specific value of the signal, etc., and the optional items include, for example, signal description, signal explanation, etc.
[0079] In this way, the filling guidance information can be displayed in the requirement submission area. The filling guidance information includes at least one filling item under each filling level, so as to assist and guide users to fill in the software development requirements, effectively improve the efficiency of filling in the software development requirements, and can ensure the comprehensiveness of the filling in of necessary information to a certain extent, thereby helping to improve the quality of subsequently generated software units.
[0080] In order to facilitate the first user to better select the development assistance method, the method selection area can also display the signal coverage description corresponding to each assistance method, such as which signals can be directly generated based on external database files, and which signals need to be generated based on the development collaboration of the second user.
[0081] In some possible implementations, suggestions for selecting a development assistance method may also be automatically given based on the software development requirements submitted by the first user.
[0082] Specifically, based on the software development requirements submitted by the first user, as well as the external database file information and the second user information providing development collaboration, a recommended target assistance method may be determined from the first assistance method and the second assistance method;
[0083] In the mode selection area, recommendation information is displayed, and the target assistance mode is highlighted, and the recommendation information is used to recommend the first user to select the target assistance mode.
[0084] In the above steps, when determining the target assistance method, specifically, it can be determined based on the software development requirements and the external database file information whether there is an external database file that meets the software development requirements. If so, the recommended target assistance method is determined to be the first assistance method. If not, the recommended target assistance method is determined to be the second assistance method.
[0085] Here, considering that generating software units through external database files does not require communication and interaction with the second user compared to generating software units through collaboration with a second user, priority is given to detecting whether there is an external database file that meets the software development requirements. If it does not exist, the second auxiliary method is recommended, which helps to improve software development efficiency.
[0086] The highlighted display includes but is not limited to magnified display, bold display, display in a target color and / or target font, etc.
[0087] For example, see Figure 4 , taking the target assistance mode as the first assistance mode as an example for explanation, such as Figure 4 As shown in , the mode selection area 220 displays recommendation information for recommending the first user to select the first auxiliary mode, and highlights the first auxiliary mode.
[0088] In this way, a matching target recommendation method can be automatically determined according to the software development requirements submitted by the first user, and recommendation information can be given to facilitate the user to quickly select a development assistance method, thereby improving the user's software development experience.
[0089] Optionally, after receiving the software development requirements of the first user, a software architecture for the target software may be constructed in combination with the software development requirements of a second user who is developing the same software together with the first user, wherein the software architecture includes multiple software units. When the software development interface is displayed to the first user, a development interface of a software unit developed by the first user among multiple software units under the software architecture generated according to the software development requirements of multiple users is displayed.
[0090] In some possible implementations, the function of each software unit can be formulated according to software development requirements, the software unit can be named with an abbreviation, and setting information can be sent to each user who needs to develop a software unit. The setting information includes the function, abbreviation, and corresponding development user of each software unit. In this way, the setting information can be shared among development users, which makes it easier for development users to understand the information of each software unit and facilitates communication and interaction between development users.
[0091] S102: According to the development assistance method selected by the first user, an auxiliary interface corresponding to the development assistance method is displayed; the auxiliary interface displays guidance content corresponding to the development assistance method, and for the first assistance method, the guidance content is used to guide the first user to select the external database file according to the software development requirements, and for the second assistance method, the guidance content is used to guide the first user to send a collaborative development request to the second user according to the software development requirements.
[0092] The collaborative development request includes information of input signals required by the first user to develop the software unit.
[0093] For example, see also Figure 5-Figure 7 , Figure 5-Figure 7 A schematic diagram of an auxiliary interface provided by an embodiment of the present disclosure. Figure 5 As shown in , the auxiliary interface 500 displays guidance content 510 corresponding to the development assistance method selected by the first user.
[0094] Optionally, if the first user selects the first auxiliary mode, a list of external database files is displayed in the auxiliary interface; the list of external database files includes a plurality of external database files for selection.
[0095] For example, see Figure 6 , taking the external database file list including 8 external database files for selection as an example for explanation, such as Figure 6 As shown in , an external database file list is displayed in the auxiliary interface 500, and the external database file list includes 8 external database files for selection. The first user can select an external database file from the auxiliary interface according to the software development requirements.
[0096] Also optionally, if the first user selects the second assistance mode, information of a plurality of second users for selection is displayed in the assistance interface, and the second users are users who can collaborate with the first user for development.
[0097] The information of the second user includes the function, abbreviation, input signal, output signal, etc. of the software unit developed by the second user.
[0098] In another example, see Figure 7 , taking 8 second users and the first user jointly developing a software as an example, Figure 7 As shown in , information of 8 second users is displayed in the auxiliary interface 500 .
[0099] In this way, when displaying the auxiliary interface, for the first auxiliary mode, a list of external database files including multiple external database files for selection can be displayed, so that users can select external database files that match the software development requirements. For the second auxiliary mode, information of multiple second users who can collaborate with the first user for development can be displayed, so that users can select second users who match the software development requirements and can assist in development. This helps to improve software development efficiency and enhance the user's software development experience.
[0100] In some possible implementations, after displaying information of a plurality of second users for selection in the auxiliary interface, the method further includes:
[0101] In response to the first user selecting a target second user in the auxiliary interface, displaying a dialog window between the first user and the target second user;
[0102] The dialog window is used for communication between the first user and the target second user for development collaboration.
[0103] Specifically, the dialog window is used for the first user to send a signal request to the target second user, inquire about the signal generation progress, etc.
[0104] In this way, for the second auxiliary method, after the first user selects the target second user, a dialogue window can be displayed for the first user and the target second user to communicate in development collaboration, which helps to achieve high-quality and efficient communication and interaction between various users developing software, and facilitates the rapid iteration of software development needs.
[0105] S103: Generate a software unit matching the software development requirement according to the development auxiliary information acquired through the auxiliary interface.
[0106] Here, when the first user selects the first auxiliary mode, the development auxiliary information includes the external database file selected by the first user through the auxiliary interface; when the first user selects the second auxiliary mode, the development auxiliary information includes the development signal uploaded by the second user.
[0107] In some possible implementations, when the first user selects the first assistance mode, the method further includes:
[0108] Parsing and obtaining a plurality of external signals and attribute information of each of the external signals from the external database file selected by the first user; any of the external signals is used as an input signal or an output signal of the software unit;
[0109] A pair of external signals that meet preset attribute requirements are screened from the multiple external signals as the development auxiliary information; the pair of external signals includes an external signal as an input signal and an external signal as an output signal.
[0110] In the above steps, the attribute information of the external signal obtained by parsing includes the signal name, signal type, data range, signal description, etc. of the external signal, and the signal type indicates whether the external signal is an input signal or an output signal.
[0111] The preset attribute requirement indicates that the attribute information of the external signal is valid and the value in the attribute information of the external signal is a preset value.
[0112] Exemplarily, the numerical value in the attribute information of the external signal is a preset numerical value, for example, e equals 1, a equals 0, etc., which can be set according to the actual needs of software unit development and is not specifically limited here.
[0113] In this way, the external signals in the external database file and the attribute information of the external signals can be automatically parsed, and a pair of external signals suitable as the input signal and output signal of the software unit can be automatically screened out without the first user manually parsing and screening the external signals, which helps to improve software development efficiency and enhance the user's software development experience.
[0114] Optionally, before parsing and obtaining multiple external signals and the attribute information of each external signal from the external database file selected by the first user, it is also possible to detect whether the file format of the external database file selected by the first user meets the preset format requirements; if it is determined that the file format of the external database file selected by the first user meets the preset format requirements, the external signal and the attribute information of the external signal are parsed. If it is determined that the file format of the external database file selected by the first user does not meet the preset format requirements, a first prompt message is displayed through the auxiliary interface to prompt that there is a problem with the file format of the external database file selected by the first user, so that the user can reselect the external database file or reselect the development auxiliary method.
[0115] Accordingly, when generating a software unit matching the software development requirement according to the development auxiliary information obtained through the auxiliary interface, it includes:
[0116] Based on the internal development rules, attribute information conversion is performed on the pair of external signals respectively to obtain an input signal and an output signal as internal use signals;
[0117] Based on the input signal and the output signal as internal use signals, a software unit matching the software development requirement is generated.
[0118] In the above steps, based on the internal development rules, the attribute information of the signal names of the pair of external signals can be converted respectively, so as to realize the automatic connection between the signal names in the database file and the signal names corresponding to the software units, thereby obtaining the input signals and output signals used as internal signals; thereby, based on the input signals and output signals used as internal signals, a complete software unit matching the software development requirements is generated.
[0119] In this way, external signals can be automatically converted into internal use signals to generate software units, realize automatic docking of external signals and internal use signals, and automatically generate software units. There is no need for the first user to manually convert signals and manually develop software units, which helps to improve software development efficiency and enhance the user's software development experience.
[0120] In order to clearly show the process of generating software units when the user selects the first auxiliary mode, you can also refer to Figure 8 , Figure 8 This is a schematic diagram of a process of generating a software unit in a first auxiliary manner provided by an embodiment of the present disclosure. Figure 8 As shown in the figure, determine the external database file selected by the first user; detect whether the file format of the external database file meets the preset format requirements, if so, parse from the external database file to obtain multiple external signals and attribute information of each of the external signals, if not, display the first prompt information through the auxiliary interface.
[0121] After obtaining multiple external signals, determine whether there is a pair of external signals that meet the preset attribute requirements among the multiple external signals. If so, upload the pair of external signals to the cloud as development auxiliary information. If not, display the first prompt information through the auxiliary interface.
[0122] Then, the pair of external signals is obtained from the cloud, and the signal types are determined respectively, wherein the pair of external signals includes an external signal as an input signal and an external signal as an output signal; for each external signal in the pair of external signals, attribute information is converted based on the development rules to obtain an input signal and an output signal as internal use signals; and then, based on the input signal and the output signal as internal use signals, a software unit matching the software development requirements is generated. The description of the specific steps is referred to the aforementioned embodiments, which will not be repeated here.
[0123] In some other possible implementations, when the first user selects the second auxiliary mode, generating a software unit matching the software development requirement according to the development auxiliary information obtained through the auxiliary interface includes:
[0124] Acquire an output signal of the software unit set by the first user and an input signal of collaborative development uploaded by the second user;
[0125] Verify the attribute information of the output signal and the input signal according to internal development rules;
[0126] After the verification is passed, the software unit is generated based on the output signal and the input signal.
[0127] In this step, the first user only needs to design the output signal of the software unit, and the input signal is uploaded by the second user, that is, the input signal required for developing the software unit can be selected from the output signals of other software units developed by the second user, which helps to reduce the workload of users in developing software and improve the software development experience of users.
[0128] When checking the attribute information of the output signal and the input signal according to the internal development rules, specifically, it can be checked whether the signal name, signal attribute, signal range, etc. of the output signal and the input signal comply with the rules.
[0129] When the verification fails, a second prompt message may be displayed through the auxiliary interface to prompt the first user that there is a problem with the output signal.
[0130] In this way, the attribute information of the input signal and the output signal can be automatically checked, and the software unit can be automatically generated after the check is passed, thus eliminating the need for manual check, improving the convenience of user software development, and ensuring the accuracy of the generated software unit.
[0131] After the verification is passed, when the software unit is generated based on the output signal and the input signal, specifically, a software unit framework is generated based on the output signal and the input signal, and then the software unit is generated based on the software unit framework and the internal logic of the software unit set by the first user.
[0132] In actual applications, in the process of developing a software unit, it often happens that the user initially names an output signal, but the software unit finally generated does not actually output it, causing problems with the developed software unit. Taking the above problems into consideration, in the embodiment of the present disclosure, after verification and clarification of the input signal and the output signal, a software unit framework will be generated based on the output signal and the input signal, and the first user can then fill in the internal logic to generate a complete software unit. By first constructing the software unit framework, the output signal in the software unit is guaranteed to be consistent with the setting of the development user, avoiding the situation where the output signal is named but not used in the actual software unit, and effectively improving the quality of software development.
[0133] Optionally, when the target second user has not yet generated the target output signal required by the first user to develop the software unit, a signal request can be sent to the target second user through the dialog window, and the signal request is used to instruct the target second user to give priority to generating the target signal indicated by the signal requirement, and adjust the software unit developed by the target second user according to the target signal.
[0134] In order to clearly show the process of generating software units when the user selects the second auxiliary mode, you can also refer to Fig. 9 , Fig. 9 FIG. 1 is a schematic diagram of a process of generating a software unit in a second auxiliary mode provided by an embodiment of the present disclosure. Fig. 9As shown in , the output signal of the software unit set by the first user is obtained, and the input signal of the collaborative development uploaded by the second user is obtained; the attribute information of the output signal and the input signal is checked according to the internal development rules; after the check is passed, the software unit is generated based on the output signal and the input signal; if the check fails, the second prompt information is displayed through the auxiliary interface. The description of the specific steps refers to the aforementioned embodiments, which will not be repeated here.
[0135] In some possible implementations, after generating the software unit matching the software development requirement, the method further includes:
[0136] The output signal of the software unit is shared to the cloud for direct use by other users.
[0137] In this way, the output signal of the generated software unit can be shared to the cloud so that other users can obtain the transmission signal and use it as an input signal for software units developed by other users, which helps software development collaboration and achieves rapid software iteration.
[0138] Optionally, when the software development requirements are added or changed, the software architecture, input and output signal design, and external database files may be adjusted accordingly.
[0139] In order to clearly show the process of generating software units, you can also refer to Fig.10 , Fig.10 A schematic diagram of a process for generating a software unit provided by an embodiment of the present disclosure. Fig.10 As shown in , the software development requirements submitted by the first user are obtained, the software architecture is designed, and the setting information is shared.
[0140] After completing the software architecture design, when the first user selects the first auxiliary mode, a plurality of external signals and attribute information of each of the external signals are automatically parsed from the external database file selected by the first user; a pair of external signals that meet the preset attribute requirements are screened from the plurality of external signals; based on internal development rules, attribute information of the pair of external signals are respectively converted to obtain input signals and output signals used as internal signals; based on the input signals and output signals used as internal signals, a software unit matching the software development requirements is generated.
[0141] In case the first user selects the second auxiliary mode, the output signal of the software unit set by the first user and the input signal of the collaborative development uploaded by the second user are obtained; the attribute information of the output signal and the input signal are checked according to internal development rules; after the check is passed, the software unit is generated based on the output signal and the input signal.
[0142] In the software development process, when the software development requirements are added or changed, the software architecture, input and output signal design, and external database files can be adjusted accordingly. The specific steps are described in the above embodiments and will not be repeated here.
[0143] The software development method provided by the embodiment of the present disclosure facilitates users to submit software development requirements and select development assistance methods by displaying a software development interface. After the user selects the development assistance method, the auxiliary interface is displayed to facilitate users to select appropriate external database files or to collaborate with other users on development, thereby improving the user's software development experience. In addition, the embodiment of the present disclosure can automatically generate software units that match software development requirements based on development assistance information, thereby improving the efficiency and convenience of software development, facilitating communication and interaction between users developing software, and helping to achieve rapid iteration of software.
[0144] Those skilled in the art will appreciate that, in the above method of specific implementation, the order in which the steps are written does not imply a strict execution order and does not constitute any limitation on the implementation process. The specific execution order of the steps should be determined by their functions and possible internal logic.
[0145] Based on the same inventive concept, a software development device corresponding to the software development method is also provided in the embodiment of the present disclosure. Since the principle of solving the problem by the software development device in the embodiment of the present disclosure is similar to the above-mentioned software development method in the embodiment of the present disclosure, the implementation of the device can refer to the implementation of the method, and the repeated parts will not be repeated.
[0146] See also Fig.11 and Fig.12 , Fig.11 This is one of the schematic diagrams of a software development device provided in an embodiment of the present disclosure, Fig.12 The second schematic diagram of a software development device provided by the embodiment of the present disclosure. Fig.11 As shown in , the software development device 1100 provided in the embodiment of the present disclosure includes:
[0147] The development interface display module 1110 is used to display the software development interface, wherein the software development interface displays a requirement submission area and a method selection area, wherein the requirement submission area is used for a first user to submit software development requirements, and the method selection area is used for the first user to select a development auxiliary method, wherein the development auxiliary method includes a first auxiliary method and a second auxiliary method, wherein the first auxiliary method is to directly generate using an external database file, and the second auxiliary method is to seek development cooperation from a second user;
[0148] The auxiliary interface display module 1120 is used to display an auxiliary interface corresponding to the development assistance mode selected by the first user; the auxiliary interface displays guidance content corresponding to the development assistance mode, and for the first assistance mode, the guidance content is used to guide the first user to select the external database file according to the software development requirements, and for the second assistance mode, the guidance content is used to guide the first user to send a collaborative development request to the second user according to the software development requirements;
[0149] The software unit generation module 1130 is used to generate a software unit matching the software development requirement according to the development auxiliary information obtained through the auxiliary interface.
[0150] In an optional implementation manner, filling guidance information is displayed in the requirement submission area, and the filling guidance information is used to guide the first user to fill in the software development requirement;
[0151] The filling guide information includes multiple filling level information, each filling level includes at least one filling item; the filling level is used to indicate whether the current filling item is filled in accurately and the degree of influence on the successful generation of a software unit that meets the requirements.
[0152] In an optional implementation, if Fig.12 As shown in , the software development device 1100 further includes an auxiliary method recommendation module 1140, and the auxiliary method recommendation module 1140 is used to:
[0153] Determine a recommended target assistance method from the first assistance method and the second assistance method based on the software development requirements submitted by the first user, the external database file information, and the second user information providing development collaboration;
[0154] In the mode selection area, recommendation information is displayed, and the target assistance mode is highlighted, and the recommendation information is used to recommend the first user to select the target assistance mode.
[0155] In an optional implementation manner, the auxiliary interface display module 1120 is specifically used for:
[0156] If the first user selects the first auxiliary mode, a list of external database files is displayed in the auxiliary interface; the list of external database files includes a plurality of external database files for selection;
[0157] If the first user selects the second assistance mode, information of a plurality of second users for selection is displayed in the assistance interface, and the second users are users who can collaborate with the first user for development.
[0158] In an optional implementation, if Fig.12 As shown in , the software development device 1100 further includes a dialog window display module 1150, and the dialog window display module 1150 is used to:
[0159] In response to the first user selecting a target second user in the auxiliary interface, displaying a dialog window between the first user and the target second user;
[0160] The dialog window is used for communication between the first user and the target second user for development collaboration.
[0161] In an optional implementation, if Fig.12 As shown in , the software development device 1100 further includes an external signal screening module 1160, and the external signal screening module 1160 is used to:
[0162] Parsing and obtaining a plurality of external signals and attribute information of each of the external signals from the external database file selected by the first user; any of the external signals is used as an input signal or an output signal of the software unit;
[0163] A pair of external signals that meet preset attribute requirements are screened from the multiple external signals as the development auxiliary information; the pair of external signals includes an external signal as an input signal and an external signal as an output signal.
[0164] In an optional implementation manner, the software unit generation module 1130 is specifically used to:
[0165] Based on the internal development rules, attribute information conversion is performed on the pair of external signals respectively to obtain an input signal and an output signal as internal use signals;
[0166] Based on the input signal and the output signal as internal use signals, a software unit matching the software development requirement is generated.
[0167] In an optional implementation manner, when the first user selects the second auxiliary mode, the software unit generation module 1130 is specifically configured to:
[0168] Acquire an output signal of the software unit set by the first user and an input signal of collaborative development uploaded by the second user;
[0169] Verify the attribute information of the output signal and the input signal according to internal development rules;
[0170] After the verification is passed, the software unit is generated based on the output signal and the input signal.
[0171] In an optional implementation, if Fig.12 As shown in , the software development device 1100 further includes an output signal sharing module 1170, and the output signal sharing module 1170 is used to:
[0172] The output signal of the software unit is shared to the cloud for direct use by other users.
[0173] For descriptions of the processing flow of each module in the device and the interaction flow between each module, reference may be made to the relevant descriptions in the above method embodiment, which will not be described in detail here.
[0174] The software development device provided by the embodiment of the present disclosure facilitates users to submit software development requirements and select development assistance methods by displaying a software development interface. After the user selects the development assistance method, the auxiliary interface is displayed to facilitate users to select appropriate external database files or to collaborate with other users on development, thereby improving the user's software development experience. In addition, the embodiment of the present disclosure can automatically generate software units that match software development requirements based on development assistance information, thereby improving the efficiency and convenience of software development, facilitating communication and interaction between users developing software, and helping to achieve rapid iteration of software.
[0175] Corresponds to Figure 1 The software development method in the present disclosure also provides an electronic device 1300, such as Fig.13 As shown in FIG. 1 , it is a schematic diagram of the structure of an electronic device 1300 provided in an embodiment of the present disclosure, including:
[0176] Processor 1310, memory 1320, and bus 1330. The memory 1320 is used to store execution instructions, including internal memory 1321 and external memory 1322; the internal memory 1321 is also called internal memory, which is used to temporarily store the operation data in the processor 1310 and the data exchanged with the external memory 1322 such as a hard disk. The processor 1310 exchanges data with the external memory 1322 through the internal memory 1321.
[0177] In the embodiment of the present application, the memory 1320 is specifically used to store the application code for executing the solution of the present application, and the execution is controlled by the processor 1310. That is, when the electronic device 1300 is running, the processor 1310 communicates with the memory 1320 through the bus 1330, so that the processor 1010 executes the application code stored in the memory 1320, and then executes the steps of the software development method described in any of the above embodiments.
[0178] Among them, the memory 1320 can be, but is not limited to, random access memory (Random Access Memory, RAM), read only memory (Read Only Memory, ROM), programmable read-only memory (Programmable Read-Only Memory, PROM), erasable programmable read-only memory (Erasable Programmable Read-Only Memory, EPROM), electrically erasable read-only memory (Electric Erasable Programmable Read-Only Memory, EEPROM), etc.
[0179] The processor 1310 may be an integrated circuit chip with signal processing capabilities. The above-mentioned processor may be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), etc.; it may also be a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components. The disclosed methods, steps and logic block diagrams in the embodiments of the present invention may be implemented or executed. The general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc.
[0180] It is to be understood that the structure illustrated in the embodiment of the present application does not constitute a specific limitation on the electronic device 1300. In other embodiments of the present application, the electronic device 1300 may include more or fewer components than shown in the figure, or combine some components, or split some components, or arrange the components differently. The components shown in the figure may be implemented in hardware, software, or a combination of software and hardware.
[0181] The present disclosure also provides a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the steps of the software development method described in the above method embodiment are executed. The storage medium can be a volatile or non-volatile computer-readable storage medium.
[0182] In addition, an embodiment of the present disclosure also provides a computer program product, which stores a computer program. When the computer program is executed by a processor, the steps of the software development method provided in any of the above embodiments of the present disclosure are executed. For details, please refer to the above method embodiments, which will not be repeated here.
[0183] The computer program product may be implemented in hardware, software or a combination thereof. In an optional embodiment, the computer program product is embodied as a computer storage medium, which may be a volatile or non-volatile computer-readable storage medium. In another optional embodiment, the computer program product is embodied as a software product, such as a software development kit (SDK) and the like.
[0184] Those skilled in the art can clearly understand that, for the convenience and simplicity of description, the specific working process of the above-described equipment and devices can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here. In the several embodiments provided in the present disclosure, it should be understood that the disclosed equipment, devices and methods can be implemented in other ways. The device embodiments described above are merely schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some communication interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.
[0185] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0186] In addition, each functional unit in each embodiment of the present disclosure may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
[0187] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a non-volatile computer-readable storage medium that is executable by a processor. Based on this understanding, the technical solution of the present disclosure, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present disclosure. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0188] Finally, it should be noted that the above-described embodiments are only specific implementation methods of the present disclosure, which are used to illustrate the technical solutions of the present disclosure, rather than to limit them. The protection scope of the present disclosure is not limited thereto. Although the present disclosure is described in detail with reference to the above-described embodiments, ordinary technicians in the field should understand that any technician familiar with the technical field can still modify the technical solutions recorded in the above-described embodiments within the technical scope disclosed in the present disclosure, or can easily think of changes, or make equivalent replacements for some of the technical features therein; and these modifications, changes or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present disclosure, and should be included in the protection scope of the present disclosure. Therefore, the protection scope of the present disclosure should be based on the protection scope of the claims.
Claims
1. A software development method, characterized in that: The method comprises: Displaying a software development interface, wherein the software development interface displays a requirement submission area and a method selection area, wherein the requirement submission area is used for a first user to submit software development requirements, and the method selection area is used for the first user to select a development assistance method, wherein the development assistance method includes a first assistance method and a second assistance method, wherein the first assistance method is to directly generate using an external database file, and the second assistance method is to seek development cooperation from a second user; According to the development assistance mode selected by the first user, an auxiliary interface corresponding to the development assistance mode is displayed; the auxiliary interface displays guidance content corresponding to the development assistance mode, and for the first assistance mode, the guidance content is used to guide the first user to select the external database file according to the software development requirements, and for the second assistance mode, the guidance content is used to guide the first user to send a collaborative development request to the second user according to the software development requirements; A software unit matching the software development requirement is generated according to the development auxiliary information acquired through the auxiliary interface.
2. The method according to claim 1, characterized in that: The requirement submission area displays filling guidance information, and the filling guidance information is used to guide the first user to fill in the software development requirement; The filling guide information includes multiple filling level information, each filling level includes at least one filling item; the filling level is used to indicate whether the current filling item is filled in accurately and the degree of influence on the successful generation of a software unit that meets the requirements.
3. The method according to claim 1, characterized in that The method further comprises: Determine a recommended target assistance method from the first assistance method and the second assistance method based on the software development requirements submitted by the first user, the external database file information, and the second user information providing development collaboration; In the mode selection area, recommendation information is displayed, and the target assistance mode is highlighted, and the recommendation information is used to recommend the first user to select the target assistance mode.
4. The method according to claim 1, characterized in that: The displaying of an auxiliary interface corresponding to the development assistance mode selected by the first user includes: If the first user selects the first auxiliary mode, a list of external database files is displayed in the auxiliary interface; the list of external database files includes a plurality of external database files for selection; If the first user selects the second assistance mode, information of a plurality of second users for selection is displayed in the assistance interface, and the second users are users who can collaborate with the first user for development.
5. The method according to claim 4, characterized in that After displaying information of a plurality of second users for selection in the auxiliary interface, the method further includes: In response to the first user selecting a target second user in the auxiliary interface, displaying a dialog window between the first user and the target second user; The dialog window is used for communication between the first user and the target second user for development collaboration.
6. The method according to claim 1, characterized in that In a case where the first user selects the first auxiliary mode, the method further includes: Parsing and obtaining a plurality of external signals and attribute information of each of the external signals from the external database file selected by the first user; any of the external signals is used as an input signal or an output signal of the software unit; A pair of external signals that meet preset attribute requirements are screened from the multiple external signals as the development auxiliary information; the pair of external signals includes an external signal as an input signal and an external signal as an output signal.
7. The method according to claim 6, characterized in that The step of generating a software unit matching the software development requirement according to the development auxiliary information obtained through the auxiliary interface includes: Based on the internal development rules, attribute information conversion is performed on the pair of external signals respectively to obtain an input signal and an output signal as internal use signals; Based on the input signal and the output signal as internal use signals, a software unit matching the software development requirement is generated.
8. The method according to claim 1, characterized in that In the case where the first user selects the second auxiliary mode, generating a software unit matching the software development requirement according to the development auxiliary information obtained through the auxiliary interface includes: Acquire an output signal of the software unit set by the first user and an input signal of collaborative development uploaded by the second user; Verify the attribute information of the output signal and the input signal according to internal development rules; After the verification is passed, the software unit is generated based on the output signal and the input signal.
9. The method according to claim 1, characterized in that: After generating the software unit matching the software development requirement, the method further includes: The output signal of the software unit is shared to the cloud for direct use by other users.
10. An electronic device, characterized in that: include: A processor, a memory and a bus, wherein the memory stores machine-readable instructions executable by the processor, and when the electronic device is running, the processor and the memory communicate via the bus, and when the machine-readable instructions are executed by the processor, the steps of the software development method as described in any one of claims 1 to 9 are performed.
11. A computer program product, characterized in that The computer program product stores a computer program, and when the computer program is executed by a processor, the steps of the software development method according to any one of claims 1 to 9 are executed.