A software development assistance system based on artificial intelligence
Through the software development assistance system based on artificial intelligence, the UI interface that is difficult to rectify in traditional software development assistance systems are typesetting and scoring and adjusting, which solves the problem of difficulty in optimizing the UI interface in traditional methods, and achieves the effect of saving development costs and improving efficiency. .
Patent Information
- Application Number
- CN202411545042.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-01
- Publication Date
- 2025-02-11
- Estimated Expiration
- 2044-11-01
AI Technical Summary
Traditional software development auxiliary systems are difficult to provide specific rectification opinions and suggestions for the generated software UI interface, resulting in increased development costs and extended project time costs.
Using an artificial intelligence-based software development assistance system, we search Internet materials and templates by entering conjunctions, UI interface typesetting and scoring, and add logical functions of functional and interactive buttons.
It realizes timely adjustment and optimization of the UI interface, saves development costs, improves development efficiency, and provides specific rectification suggestions, reducing project time costs.
Smart Images

Figure CN119045822B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of software development, and in particular to a software development auxiliary system based on artificial intelligence. Background Art
[0002] Traditional software development auxiliary systems, usually called integrated development tools, have a long history and development process. The emergence and development of development tools have gradually evolved with the progress of computer science and software engineering. From simple text editors to powerful IDEs, they have continuously adapted to the needs of software development and technological progress. These tools have greatly improved the productivity of developers and promoted the development of software engineering.
[0003] However, the traditional method uses tools to conveniently complete software development, but it is difficult to give specific rectification opinions and suggestions for the generated software UI interface, which increases the development cost. It is difficult to correct problems in the development process in a timely manner, which increases the time cost of the project.
[0004] In view of the above technical defects, a solution is now proposed. Summary of the invention
[0005] The purpose of the present invention is to provide a software development assistance system based on artificial intelligence to solve the technical defects mentioned above. The present invention retrieves relevant materials and templates on the Internet through input associated words, deletes and externally imports the contents in the material library alternative area, typesets the materials and templates in the material library alternative area according to demand, scores the UI interface after the typesetting is completed, firstly performs a framework scoring on the UI interface framework typesetting, adjusts the UI interface framework typesetting according to the framework scoring result, and performs a regional scoring on the UI interface area typesetting based on the adjusted UI interface framework typesetting, adjusts the UI interface area typesetting based on the regional scoring result, and adds logical functions to the functional buttons and interactive buttons of the output UI interface typesetting through a conversational command line, and generates corresponding logical functions and interactive functions.
[0006] The object of the present invention can be achieved by the following technical solutions: an artificial intelligence-based software development auxiliary system, comprising a demand identification and judgment module, a UI interface layout module, a UI interface adjustment module and a logic association module;
[0007] The demand identification and judgment module searches for relevant materials and templates on the Internet through the input associated words, loads the materials and templates into the material library candidate area, deletes the content in the material library candidate area and imports it from outside, and imports the materials and templates in the material library candidate area into the UI interface layout module;
[0008] The UI interface layout module is used to layout the materials and templates in the material library selection area according to the requirements. By referring to the templates in the material library selection area, the required UI interface is laid out. The UI interface framework is laid out first, and then the UI interface area is laid out. The completed UI interface layout is imported into the UI interface adjustment module.
[0009] The UI interface adjustment module is used to score the UI interface after the layout is completed. First, the framework layout of the UI interface is scored, and the framework layout of the UI interface is adjusted according to the framework scoring result. Based on the adjusted UI interface framework layout, the regional layout of the UI interface is scored, and the regional layout of the UI interface is adjusted based on the regional scoring result. After the regional layout of the UI interface is adjusted, the UI interface layout is output, and the output UI interface layout is imported into the logic association module;
[0010] The logic association module is used to add logic functions to the functional buttons and interactive buttons of the output UI interface layout through a conversational command line, and generate corresponding logic functions and interactive functions.
[0011] Preferably, the process of searching the Internet for relevant materials and templates is as follows:
[0012] By obtaining the input text sentence, splitting the text sentence, extracting the keywords in the text sentence, and constructing the query statement based on the extracted keywords and the description in the requirement document, the steps are as follows:
[0013] S101, preprocessing the input text sentence, removing irrelevant characters or marks in the text sentence, and converting the text sentence into a unified format;
[0014] S102, using a word segmentation tool or algorithm to segment the text sentence into individual words or sub-phrases;
[0015] S103, by calculating the weight of a single word or sub-phrase, using the TF-IDF weighting method, calculating the TF-IDF value of the single word or sub-phrase, and extracting the keyword;
[0016] After the keywords are extracted, they are input into the information retrieval system to retrieve the relevant materials and templates, and the required materials and templates are extracted and imported into the material library selection area.
[0017] Preferably, the process of typesetting the materials and templates in the material library candidate area according to the requirements is as follows:
[0018] After the materials and templates are imported into the material library selection area, open the template in the UI interface browsing area, and perform UI interface layout for the materials in the material library selection area in the layout area, adjust the materials, and complete the UI interface layout.
[0019] Preferably, the process of material adjustment is as follows:
[0020] While laying out the UI interface framework, call out the guidance tool to assist in the layout of the materials. According to the UI interface browsing area template, classify the materials in the material library selection area. The categories include: operation icons, status icons, function icons and multimedia icons. Drag the materials to the appropriate position, lay out the UI interface framework for the UI icons, and adjust the UI interface framework layout.
[0021] After completing the layout of the UI interface framework, the size and position of the UI icons are arranged, and the UI icons are adjusted. The UI icon adjustments include: spacing, color, transparency, shape, border, shadow and level. At the same time, text format is added to the UI icons, and the content of the text format is edited to complete the UI interface area layout.
[0022] Preferably, the process of scoring the key factors of UI interface framework layout is as follows:
[0023] By obtaining the UI interface layout, using standard UI design principles, the UI interface framework layout is scored. The framework scoring results use recognized UI interface indicators, including: design consistency, intuitiveness, discoverability, color contrast and brand elements;
[0024] According to the recognized UI interface indicators, as the key factors affecting the UI interface framework layout score, by defining key factors and weights, for each UI interface framework layout key factor, define specific evaluation criteria, collect UI design sample data, extract relevant features, and label them. Through the classification model, the UI design sample data after extracting relevant features is divided into training set, validation set and test set. The performance of the classification model is evaluated on the validation set, and the classification model is adjusted. The trained classification model is applied to the UI interface framework layout key factor scoring.
[0025] Preferably, the process of calculating the weights of the key factors of the UI interface framework layout and judging the UI interface framework layout scoring results is as follows:
[0026] Each UI framework layout key factor is assigned a weight, where: design consistency is 20%, intuitiveness is 30%, discoverability is 20%, color contrast is 15%, and brand elements are 15%. The score of each UI framework layout key factor is multiplied by its weight, and the results of each UI framework layout key factor multiplied by its weight are sorted from small to large, and the sum is obtained to obtain the UI framework layout score, and the UI framework layout score result is judged:
[0027] When the UI interface framework layout score is lower than 60%, make improvements to the key factors that affect the UI interface framework layout score. Calculate the score of each key factor, multiply the result by its weight, sort the results from small to large, and make improvements to the key factors corresponding to the small to large sorting in turn until the UI interface framework layout score is greater than or equal to 60%;
[0028] When the UI interface framework layout score is greater than or equal to 60%, there is no need to improve the key factors of the UI interface framework layout score, and the UI interface framework layout can be directly output for UI interface local layout scoring.
[0029] Preferably, the steps of UI interface local layout scoring are as follows:
[0030] S301: Use interface crawling tools to automatically crawl the output UI interface framework layout, use Spectacle to obtain similar UI interface local layouts on the Internet, key factors of UI interface local layouts include main colors, layouts and text features, obtain indirect evaluations of related software UI interface layouts on the Internet, use natural language processing technology to parse text content, identify users' likes and dislikes for specific functions or overall experience, and select UI interface local layouts with a favorable rate greater than 90% as samples;
[0031] Use the Applitools Eyes visual testing tool to extract the key factors of local layout of the UI interface, analyze the position and arrangement of icons in related factors, and use the DBSCAN clustering algorithm to group similar key factors;
[0032] S302: Based on the key factors of the local layout of the UI interface, the local layout of the UI interface is automatically scored by using the image processing technology OpenCV;
[0033] Through the image processing technology OpenCV, the screenshots of the local layout of the UI interface are processed and features are extracted, and the deep learning model is used to identify and classify the different key factors of the local layout of the UI interface; screenshots of the local layout of the UI interface are collected as training data, and the key factors of the local layout of the UI interface in each screenshot are marked. The screenshots are pre-processed using the OpenCV library, and the visual features in the image are automatically learned using a convolutional neural network through resizing, grayscale and edge detection, and the HTML structure is captured. The NLP tools are used to parse and extract key factors.
[0034] Preferably, the process of calculating the weight of the key factors of the local layout of the UI interface and judging the scoring result of the local layout of the UI interface is as follows:
[0035] The local layout of the UI interface is scored, and a weight is assigned to each key factor of the local layout of the UI interface, where the main color is 40%, the layout is 30%, and the text feature is 30%. The score of each key factor of the local layout of the UI interface is multiplied by its weight, and the results of each key factor of the local layout of the UI interface are multiplied by its weight. Then the results are sorted from small to large, and then the sum is obtained to obtain the local layout score of the UI interface, and the local layout score of the UI interface is judged:
[0036] When the local layout score of the UI interface is lower than 60%, it is necessary to improve the key factors that affect the local layout score of the UI interface, and adjust the score of each key factor of the local layout of the UI interface multiplied by its weight from small to large until the local layout score of the UI interface is greater than or equal to 60%;
[0037] When the local layout score of the UI interface is greater than or equal to 60%, there is no need to improve the key factors of the local layout score of the UI interface, and the UI interface layout is output to the logical association module.
[0038] Preferably, the process of adding boxes to functional buttons and interactive buttons in the output UI interface layout is as follows:
[0039] Distinguish between functional buttons and interactive buttons in the UI interface, mark the functional buttons and interactive buttons in the UI interface separately, manually mark the icons on the UI interface, and select them using the tools provided in the function menu.
[0040] Preferably, the process of adding logical functions to the functional buttons and interactive buttons of the output UI interface layout is as follows:
[0041] Use the conversational command line to add functional logic to functional buttons and interactive buttons. Enter conversational commands and quickly build applications and add logic through the OutSystems drag-and-drop interface. Add event handlers to each selected button and use Service Studio to add event handlers to buttons and integrate changes into the project.
[0042] The beneficial effects of the present invention are as follows:
[0043] (I) The present invention drags the material to the appropriate position, arranges the UI interface framework for the UI icons, adjusts the UI interface framework layout to ensure the overall coordination of the UI interface look and feel, distinguishes between the functional buttons and the interactive buttons in the UI interface, and respectively selects and marks the functional buttons and the interactive buttons in the UI interface, manually selects the buttons, adds functional logic to the functional buttons and the interactive buttons through the conversational command line, and completes the software auxiliary development work simply and quickly by inputting the conversational commands.
[0044] (ii) The present invention saves development costs and improves development efficiency by timely adjusting the UI layout through framework scoring of the UI interface framework layout and local scoring of the UI interface local layout, and provides corresponding rectification suggestions for the key factors of the UI interface framework layout and the UI interface local layout, thereby avoiding the need to make corresponding rectifications to the software UI interface at a later stage. BRIEF DESCRIPTION OF THE DRAWINGS
[0045] The present invention will be further described below in conjunction with the accompanying drawings;
[0046] Figure 1 It is a system flow chart of the present invention. DETAILED DESCRIPTION
[0047] The following will be combined with the drawings in the embodiments of the present invention to clearly and completely describe the technical solutions in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0048] Example: See Figure 1 As shown, this embodiment provides a software development assistance system based on artificial intelligence, including the following modules:
[0049] The demand identification and judgment module is used to retrieve relevant materials and templates on the Internet through the input associated words, load the materials and templates into the material library candidate area, delete the content in the material library candidate area and import external content, and import the materials and templates in the material library candidate area into the UI interface layout module;
[0050] By obtaining the input text sentence, splitting the text sentence, extracting the keywords in the text sentence, and constructing the query statement according to the extracted keywords and the description in the requirement document, the steps are as follows:
[0051] S101, pre-processing the input text sentence to remove irrelevant characters or marks in the text sentence, such as HTML tags and special symbols, and unifying the format of the text sentence, by converting the text sentence into a unified format, such as unifying uppercase and lowercase, to facilitate subsequent processing, for example, "looking for homepage design materials for a modern e-commerce application";
[0052] S102, using a word segmentation tool or algorithm to segment the text sentence into individual words or sub-phrases;
[0053] Stanford CoreNLP: is an NLP toolkit that provides a range of text sentence processing functions, including word segmentation, syntactic analysis, etc.
[0054] S103, by calculating the weight of a single word or sub-phrase, using the TF-IDF weighting method, calculating the TF-IDF value of the single word or sub-phrase, and extracting the keywords, so as to further screen out the most relevant keywords;
[0055] TF-IDF: is a commonly used method to measure the importance of a word, which evaluates its importance based on the frequency of the word in the document and the frequency in the entire document collection;
[0056] After the keywords are extracted, the keywords are input into the information retrieval system to retrieve relevant materials and templates, which can be materials and templates in local storage and online material websites. The materials and templates that may be needed are extracted and imported into the material library selection area. At the same time, the content in the material library selection area can be added and deleted at any time;
[0057] The UI interface layout module is used to layout the materials and templates in the material library selection area according to the requirements. By referring to the templates in the material library selection area, the required UI interface is laid out. The UI interface framework is laid out first, and then the UI interface area is laid out. The completed UI interface layout is imported into the UI interface adjustment module.
[0058] After the materials and templates are imported into the material library selection area, the materials in the material library selection area are laid out in the layout area for the UI interface. You can refer to the templates previously imported into the material library selection area for the UI interface framework layout. Open the template in the UI interface browsing area and adjust it to a suitable size and position, and use it as a reference.
[0059] While laying out the UI interface framework, you can call out guidance tools to assist with material layout, for example:
[0060] Grid assistant: divide the layout area into several cells of fixed size;
[0061] Auxiliary lines and reference lines: provide additional alignment references to ensure that buttons and interactive controls are placed according to the predetermined layout, improve the accuracy and efficiency of material layout, and ensure that the final UI interface layout is both beautiful and in line with design specifications;
[0062] Classify the materials in the material library candidate area according to the UI interface browsing area template. The categories include: operation icons, status icons, function icons and multimedia icons. The selection of icons and UI interface layout also need to consider the results of usability testing to ensure their effectiveness and intuitiveness in the actual software scenario.
[0063] Drag the material to the appropriate position, and arrange the UI interface frame for the UI icon, and adjust the UI interface frame layout to ensure the overall coordination of the UI interface look and feel; after completing the UI interface frame layout, arrange the UI icon size and position, and adjust the UI icon. The UI icon adjustment includes: spacing, color, transparency, shape, border, shadow and level. At the same time, add text format to the UI icon and edit the content of the text format to complete the UI interface area layout;
[0064] The UI interface adjustment module is used to score the UI interface after the layout is completed. First, the framework layout of the UI interface is scored, and the framework layout of the UI interface is adjusted according to the framework scoring result. Based on the adjusted UI interface framework layout, the regional layout of the UI interface is scored, and the regional layout of the UI interface is adjusted based on the regional scoring result. After the regional layout of the UI interface is adjusted, the UI interface layout is output, and the output UI interface layout is imported into the logic association module;
[0065] By obtaining the UI interface layout and using standard UI design principles, the UI interface framework layout is scored. The framework scoring results use recognized UI interface indicators, including:
[0066] Design consistency: Elements in UI interface layout (such as buttons, text boxes, etc.) should be consistent in visual style and behavior to reduce the user's cognitive burden;
[0067] Intuitiveness: The UI interface layout should be intuitive and easy to understand, allowing users to easily get started;
[0068] Discoverability: The functions and information displayed in the UI interface should be easy to find, without requiring users to think or explore too much;
[0069] Color contrast: UI interface layout should not be too complicated or crowded, and the white space should be appropriate;
[0070] Brand elements: UI interface layout should be consistent with the overall brand image, including colors, fonts, icons, etc.
[0071] According to the recognized UI interface indicators, as the key factors affecting the UI interface framework typesetting score, a percentage system is used, that is, the UI interface framework typesetting key factors include: design consistency, intuitiveness, discoverability, color contrast and brand elements. By defining key factors and weights, specific evaluation criteria are defined for each UI interface framework typesetting key factor, and UI design sample data and UI design samples of different qualities are collected. Each UI design sample has a clear label, and the UI design sample comes from a public design resource library, competition works or internal projects. Relevant features are extracted from each UI design sample, and each UI design sample is labeled. The label can be the result of expert review or user feedback data. Through the classification model, the UI design sample data after extracting relevant features is divided into a training set, a validation set and a test set. The performance of the classification model is evaluated on the validation set, and the classification model is adjusted. The trained classification model is applied to the UI interface framework typesetting key factor scoring;
[0072] And assign a weight to each key factor of UI interface framework layout, where: design consistency is 20%, intuitiveness is 30%, discoverability is 20%, color contrast is 15% and brand elements are 15%. Multiply the score of each key factor of UI interface framework layout by its weight, and sort the results from small to large after multiplying the score of each key factor of UI interface framework layout by its weight, and then sum them up to get the UI interface framework layout score, and judge the UI interface framework layout score result:
[0073] When the UI interface framework layout score is lower than 60%, make improvements to the key factors that affect the UI interface framework layout score. Calculate the score of each key factor, multiply the result by its weight, sort the results from small to large, and make improvements to the key factors corresponding to the small to large sorting in turn until the UI interface framework layout score is greater than or equal to 60%;
[0074] When the UI interface framework layout score is greater than or equal to 60%, there is no need to improve the key factors of the UI interface framework layout score, and the UI interface framework layout is directly output for UI interface local layout scoring;
[0075] The steps for scoring the local layout of the UI interface are as follows:
[0076] S301: Use the interface crawling tool to automatically crawl the output UI interface framework layout, and use Spectacle to obtain similar UI interface local layouts on the Internet. The key factors of UI interface local layout include main colors, layouts and text features. The evaluation of the UI interface layout of related software on the Internet is indirectly obtained:
[0077] App stores: user ratings and reviews on platforms such as the App Store and Google Play;
[0078] Social media and forums: user discussions on social networks such as Weibo, Zhihu, Reddit, and Quora;
[0079] Professional review websites: TechCrunch, CNET, PCMag and other technology review sites;
[0080] Official Community or Help Center: Directly from the official support page or user feedback area;
[0081] Use crawler tools to collect relevant information from the above channels. For each software UI layout, record its average rating, number of comments, ratio of positive / negative reviews, and other quantitative indicators. Use natural language processing technology to parse the text content, identify users' likes and dislikes for specific functions or overall experience, and select partial UI layouts with a positive review rate greater than 90% as samples.
[0082] Use the Applitools Eyes visual testing tool to extract the key factors of local layout of the UI interface, analyze the position and arrangement of icons in related factors, and use clustering algorithms such as K-means or DBSCAN to group similar key factors or pages to check consistency;
[0083] Applitools Eyes - is an automated visual testing and monitoring tool that uses artificial intelligence to detect UI changes in web, mobile, and desktop applications.
[0084] S302: Based on the key factors of the local layout of the UI interface, the local layout of the UI interface is automatically scored by using the image processing technology OpenCV;
[0085] Through the image processing technology OpenCV, the screenshots of the local layout of the UI interface are processed and features are extracted. Through the deep learning model, different key factors of the local layout of the UI interface are identified and classified; a set of clear scoring criteria for the key factors of the local layout of the UI interface are defined, including:
[0086] OpenCV: is an open source computer vision and machine learning software library;
[0087] Collect screenshots of local layout of UI interface as training data. The screenshots of local layout of UI interface include various types of key factors of local layout of UI interface, such as main color, layout and text features. Label the key factors of local layout of UI interface in each screenshot, including their location, category and possible attributes. Use OpenCV library to pre-process the screenshots by resizing, graying, edge detection, etc. Use convolutional neural network to automatically learn visual features in images, capture HTML structure, and use NLP tools to parse and extract key factors.
[0088] Through Python examples, use OpenCV to perform local layout scoring of UI interfaces and generate code examples:
[0089] import cv2
[0090] import numpy as np
[0091] from sklearn.cluster import KMeans
[0092] From sklearn.metrics import pairwise_distances_argmin_min
[0093] def extract_features(image_path):
[0094] image = cv2.imread(image_path)
[0095] image = cv2.resize(image, (100, 100))
[0096] image = image.reshape((image.shape[0] * image.shape[1], 3))
[0097] return image
[0098] def consistency_score(features, n_clusters=5):
[0099] kmeans = KMeans(n_clusters=n_clusters)
[0100] kmeans.fit(features)
[0101] labels = kmeans.labels_
[0102] distances, _ = pairwise_distances_argmin_min(features, kmeans.cluster_centers_)
[0103] score = 1 - np.mean(distances)
[0104] return score
[0105] # Example Usage
[0106] image_path = 'path / to / your / ui / screenshot.png'
[0107] features = extract_features(image_path)
[0108] consistency = consistency_score(features)
[0109] print(f"Consistency Score: {consistency:.2f}")
[0110] The local layout of the UI interface is scored, and a weight is assigned to each key factor of the local layout of the UI interface, where the main color is 40%, the layout is 30%, and the text feature is 30%. The score of each key factor of the local layout of the UI interface is multiplied by its weight, and the results of each key factor of the local layout of the UI interface are multiplied by its weight. Then the results are sorted from small to large, and then the sum is obtained to obtain the local layout score of the UI interface, and the local layout score of the UI interface is judged:
[0111] When the local layout score of the UI interface is lower than 60%, it is necessary to improve the key factors that affect the local layout score of the UI interface. The score of each key factor of the local layout of the UI interface multiplied by its weight is adjusted from small to large until the local layout score of the UI interface is greater than or equal to 60%;
[0112] When the local layout score of the UI interface is greater than or equal to 60%, there is no need to improve the key factors of the local layout score of the UI interface, and the UI interface layout can be directly output to the logical association module;
[0113] The logic association module is used to add logic functions to the functional buttons and interactive buttons of the output UI interface layout through the conversational command line, and generate corresponding logic functions and interactive functions;
[0114] Distinguish between functional buttons and interactive buttons in the UI interface, and mark them separately. Manually mark icons on the UI interface. You can use the tools provided in the function menu to mark icons, including automatic selection, graphic selection, and adaptive selection. Manually mark icons on the UI interface.
[0115] Use the conversational command line to add functional logic to functional buttons and interactive buttons. Enter conversational commands. For example, create two buttons: a functional button that prints a message in the console when clicked; an interactive button that displays or hides a piece of content when clicked. Define the two buttons through command line input. Each button requires the following information: button ID, button text, button type (functional or interactive), functional description (for functional buttons) or interactive description (for interactive buttons).
[0116] Quickly build applications and add logic through the OutSystems drag-and-drop interface, including:
[0117] OutSystems is an enterprise-grade low-code development platform that allows developers to create cross-platform applications, including web, mobile, and hybrid applications, using a visual development environment that can easily connect UI elements with backend logic;
[0118] For each selected button, add an event handler to it. Use Service Studio to add an event handler to the button. Click the button on the interface to select it. Make sure all logic is fully tested, including unit testing, integration testing, and user acceptance testing, to ensure that the button behaves as expected. Integrate all changes into the project and ensure that the entire application runs normally. After release, collect user feedback and further adjust the button's functionality and interactive experience.
[0119] The above formulas are obtained by collecting a large amount of data for software simulation and selecting a formula that is close to the actual value. The coefficients in the formula are set by technical personnel in this field according to actual conditions. The above are only preferred specific implementations of the present invention, but the protection scope of the present invention is not limited to this. Any technical personnel familiar with the technical field within the technical scope disclosed by the present invention, according to the technical solution and inventive concept of the present invention, make equivalent replacement or change, which should be covered within the protection scope of the present invention.
Claims
1. A software development assistance system based on artificial intelligence, characterized in that: It includes demand identification and judgment module, UI interface layout module, UI interface adjustment module and logic association module; The demand identification and judgment module searches for relevant materials and templates on the Internet through the input associated words, loads the materials and templates into the material library candidate area, deletes the content in the material library candidate area and imports it from outside, and imports the materials and templates in the material library candidate area into the UI interface layout module; The UI interface layout module is used to layout the materials and templates in the material library selection area according to the requirements. By referring to the templates in the material library selection area, the required UI interface is laid out. The UI interface framework is laid out first, and then the UI interface area is laid out. The completed UI interface layout is imported into the UI interface adjustment module. The UI interface adjustment module is used to score the UI interface after the layout is completed. First, the framework of the UI interface framework layout is scored: By obtaining the UI interface layout, using standard UI design principles, the UI interface framework layout is scored. The framework scoring results use recognized UI interface indicators, including: design consistency, intuitiveness, discoverability, color contrast and brand elements; According to the recognized UI interface indicators, as the key factors affecting the UI interface framework layout score, by defining key factors and weights, for each UI interface framework layout key factor, define specific evaluation criteria, collect UI design sample data, extract relevant features, and label them. Through the classification model, the UI design sample data after extracting relevant features is divided into training set, validation set and test set. The performance of the classification model is evaluated on the validation set, and the classification model is adjusted. The trained classification model is applied to the UI interface framework layout key factor scoring; The process of calculating the weights of the key factors of UI interface framework layout and judging the scoring results of UI interface framework layout is as follows: Each UI framework layout key factor is assigned a weight, where: design consistency is 20%, intuitiveness is 30%, discoverability is 20%, color contrast is 15%, and brand elements are 15%. The score of each UI framework layout key factor is multiplied by its weight, and the results of each UI framework layout key factor multiplied by its weight are sorted from small to large, and the sum is obtained to obtain the UI framework layout score, and the UI framework layout score result is judged: When the UI interface framework layout score is lower than 60%, make improvements to the key factors that affect the UI interface framework layout score. Calculate the score of each key factor, multiply the result by its weight, sort the results from small to large, and make improvements to the key factors corresponding to the small to large sorting in turn until the UI interface framework layout score is greater than or equal to 60%; When the UI interface framework layout score is greater than or equal to 60%, there is no need to improve the key factors of the UI interface framework layout score, and the UI interface framework layout is directly output for the UI interface local layout score; Adjust the UI interface framework layout according to the framework scoring result, and perform regional scoring on the UI interface regional layout based on the adjusted UI interface framework layout, and adjust the UI interface regional layout based on the regional scoring result. After the UI interface regional layout adjustment is completed, output the UI interface layout, and import the output UI interface layout into the logic association module; The logic association module is used to add logic functions to the functional buttons and interactive buttons of the output UI interface layout through a conversational command line, and generate corresponding logic functions and interactive functions.
2. The software development assistance system based on artificial intelligence according to claim 1, characterized in that: The process of searching the Internet for relevant materials and templates is as follows: By obtaining the input text sentence, splitting the text sentence, extracting the keywords in the text sentence, and constructing the query statement based on the extracted keywords and the description in the requirement document, the steps are as follows: S101, preprocessing the input text sentence, removing irrelevant characters or marks in the text sentence, and converting the text sentence into a unified format; S102, using a word segmentation tool or algorithm to segment the text sentence into individual words or sub-phrases; S103, by calculating the weight of a single word or sub-phrase, using the TF-IDF weighting method, calculating the TF-IDF value of the single word or sub-phrase, and extracting the keywords in the single word or sub-phrase; After extracting the keywords from a single word or sub-phrase, the keywords are input into the information retrieval system to retrieve the relevant materials and templates, and the required materials and templates are extracted and imported into the material library selection area.
3. The software development assistance system based on artificial intelligence according to claim 2, characterized in that: The process of layout the materials and templates in the material library selection area according to requirements is as follows: After the materials and templates are imported into the material library selection area, open the template in the UI interface browsing area, and perform UI interface layout for the materials in the material library selection area in the layout area, adjust the materials, and complete the UI interface layout.
4. The software development assistance system based on artificial intelligence according to claim 3, characterized in that: The process of material adjustment is as follows: While laying out the UI interface framework, call out the guidance tool to assist in the layout of the materials. According to the UI interface browsing area template, classify the materials in the material library selection area. The categories include: operation icons, status icons, function icons and multimedia icons. Drag the materials to the appropriate position, lay out the UI interface framework for the UI icons, and adjust the UI interface framework layout. After completing the layout of the UI interface framework, the size and position of the UI icons are arranged, and the UI icons are adjusted. The UI icon adjustments include: spacing, color, transparency, shape, border, shadow and level. At the same time, text format is added to the UI icons, and the content of the text format is edited to complete the UI interface area layout.
5. The software development assistance system based on artificial intelligence according to claim 4, characterized in that: The steps for scoring the local layout of the UI interface are as follows: S301: Use interface crawling tools to automatically crawl the output UI interface framework layout, use Spectacle to obtain similar UI interface local layouts on the Internet, key factors of UI interface local layouts include main colors, layouts and text features, obtain indirect evaluations of related software UI interface layouts on the Internet, use natural language processing technology to parse text content, identify users' likes and dislikes for specific functions or overall experience, and select UI interface local layouts with a favorable rate greater than 90% as samples; Use the Applitools Eyes visual testing tool to extract the key factors of local layout of the UI interface, analyze the position and arrangement of icons in related factors, and use the DBSCAN clustering algorithm to group similar key factors; S302: Based on the key factors of the local layout of the UI interface, the local layout of the UI interface is automatically scored by using the image processing technology OpenCV; The image processing technology OpenCV is used to process the screenshots and extract the features of the local layout of the UI interface, and the deep learning model is used to identify and classify the key factors of the local layout of the UI interface. Collect screenshots of local layout of UI interface as training data, mark the key factors of local layout of UI interface in each screenshot, use OpenCV library to preprocess the screenshots, adjust the size, grayscale and detect edges, use convolutional neural network to automatically learn the visual features in the image, capture the HTML structure, and use NLP tools to parse and extract key factors.
6. The software development assistance system based on artificial intelligence according to claim 5, characterized in that: The process of calculating the weights of the key factors of the local layout of the UI interface and judging the scoring results of the local layout of the UI interface is as follows: The local layout of the UI interface is scored, and a weight is assigned to each key factor of the local layout of the UI interface, where the main color is 40%, the layout is 30%, and the text feature is 30%. The score of each key factor of the local layout of the UI interface is multiplied by its weight, and the results of each key factor of the local layout of the UI interface are multiplied by its weight. Then the results are sorted from small to large, and then the sum is obtained to obtain the local layout score of the UI interface, and the local layout score of the UI interface is judged: When the local layout score of the UI interface is lower than 60%, it is necessary to improve the key factors that affect the local layout score of the UI interface, and adjust the score of each key factor of the local layout of the UI interface multiplied by its weight from small to large until the local layout score of the UI interface is greater than or equal to 60%; When the local layout score of the UI interface is greater than or equal to 60%, there is no need to improve the key factors of the local layout score of the UI interface, and the UI interface layout is output to the logical association module.
7. The software development assistance system based on artificial intelligence according to claim 1, characterized in that: The process of adding boxes to functional buttons and interactive buttons in the output UI interface layout is as follows: Distinguish between functional buttons and interactive buttons in the UI interface, mark the functional buttons and interactive buttons in the UI interface separately, manually mark the icons on the UI interface, and select them using the tools provided in the function menu.
8. The software development assistance system based on artificial intelligence according to claim 1, characterized in that: The process of adding logical functions to the functional buttons and interactive buttons of the output UI interface layout is as follows: Use the conversational command line to add functional logic to functional buttons and interactive buttons. Enter conversational commands and quickly build applications and add logic through the OutSystems drag-and-drop interface. Add event handlers to each selected button and use Service Studio to add event handlers to buttons and integrate changes into the project.
Citation Information
Patent Citations
Image-text typesetting method and image-text typesetting device based on artificial intelligence and electronic equipment
CN110795925A
Page typesetting method, device and equipment and storage medium
CN113254134A