Agile software development method and device, electronic equipment, storage medium and development platform
By introducing the AUTOSAR architecture and engineering configuration management tools into automotive electronic control systems, identifying and processing ARXML file differences, the information inconsistency and collaboration problems in domain controller development are resolved, and development efficiency and accuracy are improved.
Patent Information
- Application Number
- CN202510814149.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-06-18
- Publication Date
- 2025-10-17
AI Technical Summary
The development of domain controllers for automotive electronic control systems faces challenges such as frequent demand changes, redundant development processes, complex version management, challenges in team collaboration, and difficulty in error detection and debugging, especially during the software development phase. These issues lead to low development efficiency and increased costs.
By introducing the AUTOSAR architecture and using engineering configuration management tools to identify differences between new and old ARXML files, we provide options for handling these differences, including adding, ignoring, or merging. This ensures consistency between the requirement change list and the actual input information, and optimizes the development schedule through interaction on the information platform.
It enables early identification and processing of differences in domain controller development, reduces uncertainty risks, improves the certainty of project advancement and collaboration efficiency, and reduces ineffective work content.
Smart Images

Figure CN120803403A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of software development, in particular to an agile development method of software, an agile development device of software, an electronic device, a storage medium and a development platform. BACKGROUND
[0002] In the development of modern automotive electronic control systems, the design and development of the vehicle domain controller occupy a very important position. As a centralized control unit, the domain controller is usually responsible for the integration and control of multiple functions, such as powertrain, body control, infotainment system, etc. The development of the domain controller is directly related to the overall performance and user experience of the vehicle. However, with the continuous increase of functions and the improvement of complexity, the challenges encountered in the development process of the domain controller are becoming more and more severe, especially in the aspect of software development.
[0003] Although the AUTOSAR architecture provides a standardized solution for the development of automotive electronic systems, in the actual development process, the underlying software developers (hereinafter referred to as "bottom software developers") still face many challenges:
[0004] 1. the frequency of requirement changes, 2. the redundancy of the development process, 3. the complexity of version management, 4. the challenge of team collaboration, 5. the difficulty of error detection and debugging.
[0005] Therefore, there is a need for an agile development solution for software to coordinate and manage the contradiction of non-uniform data information in the development iteration of the domain controller, maximize the development process, and reduce the invalid work content. SUMMARY
[0006] The purpose of the present application is to provide an agile development method of software, an agile development device of software, an electronic device, a storage medium and a development platform, which at least solve the problem of coordinating and managing the contradiction of non-uniform data information in the development iteration of the domain controller, solve one of the technical problems of maximizing the development process and reducing the invalid work content.
[0007] The present application provides the following solutions:
[0008] According to one aspect of the present application, an agile development method of software is provided, which comprises:
[0009] obtaining information of the developed system;
[0010] corresponding to the information of the developed system, respectively obtaining engineering configuration item information from a first information platform and a second information platform;
[0011] Comparing the engineering configuration item information obtained from the first information platform and the second information platform, marking the same item and the difference item;
[0012] The information of the developed system further includes progress plan information;
[0013] According to the marked same item, judging whether there is an item that can be developed in advance or / and in parallel in the progress plan;
[0014] If yes, selecting one or more of them to start the development process;
[0015] According to the difference item, starting the preset conflict processing strategy.
[0016] Further, the first information platform includes:
[0017] Collecting the configuration item information in the current engineering file;
[0018] Exporting the first group of configuration items by means of the engineering configuration management tool;
[0019] Importing the ARXML file provided by the upstream team;
[0020] According to the ARXML file, exporting the second group of configuration items;
[0021] According to the first group of configuration items and the second group of configuration items, marking the same item and the difference item.
[0022] Further, the conflict processing strategy includes a difference item display strategy;
[0023] The difference item display strategy includes marking the detail information of each difference item;
[0024] The detail information of each difference item includes the detail information of the element name, the old value or / and the new value;
[0025] The difference item display strategy further includes marking the information generated by each difference item;
[0026] The information generated by each difference item includes the information generated by adding, modifying or deleting the item.
[0027] Further, the conflict processing strategy further includes:
[0028] Obtaining the requirement information of the developed system;
[0029] According to the display of the difference item information and the requirement of the developed system, operating on each difference item;
[0030] The operation on each difference item includes the operation processing of adding, ignoring or merging the difference item.
[0031] Further, the comparing the engineering configuration item information respectively acquired from the first information platform and the second information platform, and marking the same items and the difference items comprises:
[0032] According to the marking of the same items and the difference items, the first information platform and the second information platform are fed back;
[0033] According to the feedback of the first information platform and the second information platform, the first information platform and the second information platform interact information;
[0034] According to the information interaction of the first information platform and the second information platform, the engineering configuration item information respectively acquired from the first information platform and the second information platform is marked again, and the same items and the difference items are marked twice.
[0035] Further, the comparing the engineering configuration item information respectively acquired from the first information platform and the second information platform, and marking the same items and the difference items further comprises:
[0036] According to the marking of the same items and the difference items, the first information platform and the second information platform are fed back;
[0037] According to the feedback of the first information platform and the second information platform, the first information platform and the second information platform respectively handle the difference items;
[0038] According to the handling of the difference items by the first information platform and the second information platform, the engineering configuration item information respectively acquired from the first information platform and the second information platform is marked again, and the same items and the difference items are marked twice.
[0039] Further, it further comprises:
[0040] Comparing the same items and the difference items marked each time, a non-controversial same item is selected;
[0041] According to the non-controversial same item, it is judged whether there is an item that can be developed in advance or / and developed in parallel in the progress plan;
[0042] If yes, one or more of the items are selected to start a development process;
[0043] According to the difference items, a preset conflict handling strategy is started.
[0044] According to the two aspects of the present application, a software agile development device is provided, which comprises:
[0045] An information acquisition module is used to acquire information of a developed system;
[0046] A configuration file module is used to acquire engineering configuration item information from a first information platform and a second information platform respectively according to the information of the developed system;
[0047] A project marking module is configured to mark the same items and the difference items by comparing the engineering configuration item information obtained from the first information platform and the second information platform respectively.
[0048] The information of the developed system further includes progress plan information.
[0049] A project judging module is configured to judge whether there are items that can be developed in advance or / and in parallel in the progress plan according to the marked same items.
[0050] A project selecting module is configured to select one or more items to start the development process if there are such items.
[0051] A strategy starting module is configured to start a preset conflict processing strategy according to the difference items.
[0052] According to the three aspects of the present application, an electronic device is provided, which comprises a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory are in communication with each other through the communication bus.
[0053] The memory stores a computer program, and when the computer program is executed by the processor, the processor executes the steps of the agile development method of software.
[0054] According to the four aspects of the present application, a computer readable storage medium is provided, which stores a computer program executable by an electronic device, and when the computer program is run on the electronic device, the electronic device executes the steps of the agile development method of software.
[0055] According to the five aspects of the present application, a development platform is provided, which comprises:
[0056] The electronic device is configured to execute the steps of the agile development method of software.
[0057] The processor runs a program, and when the program is run, the data output from the electronic device executes the steps of the agile development method of software.
[0058] The storage medium is configured to store a program, and when the program is run, the data output from the electronic device executes the steps of the agile development method of software.
[0059] Through the above scheme, the following beneficial technical effects are obtained:
[0060] The present application determines the change content that needs to be processed by identifying the difference items between the new and old ARXML files, processes the difference items as early as possible, and eliminates the uncertainty risk in the later software development.
[0061] The application eliminates the difference items quickly by providing operation options of adding, ignoring and merging beside each difference item, and increases the certainty of project advancement.
[0062] The application promotes the same items and eliminates the difference items in parallel process, so that the whole project can be advanced as much as possible without being affected by the uncertainty of the difference items, and can be coordinated with product iteration. BRIEF DESCRIPTION OF DRAWINGS
[0063] Figure 1 is a flowchart of an agile development method of software provided by one or more embodiments of the application.
[0064] Figure 2 is a structural diagram of an agile development device of software provided by one or more embodiments of the application.
[0065] Figure 3 is a structural block diagram of an electronic device of an agile development method of software provided by one or more embodiments of the application. DETAILED DESCRIPTION
[0066] The technical solutions of the application will be described clearly and completely below with reference to the drawings. Obviously, the described embodiments are part of the embodiments of the application, rather than all the embodiments. Based on the embodiments in the application, all other embodiments obtained by those skilled in the art without creative labor fall within the protection scope of the application.
[0067] Figure 1 is a flowchart of an agile development method of software provided by one or more embodiments of the application.
[0068] As shown in the agile development method of software includes: Figure 1
[0069] Step S1, obtaining information of a developed system;
[0070] Step S2, obtaining engineering configuration item information from a first information platform and a second information platform respectively according to the information of the developed system;
[0071] Step S3, marking same items and difference items by comparing the engineering configuration item information obtained from the first information platform and the second information platform respectively;
[0072] The information of the developed system further includes progress plan information;
[0073] Step S4, judging whether there are items that can be developed in advance or / and developed in parallel in the progress plan according to the marked same items;
[0074] Step S5, if yes, starting a development process by selecting one or more of them.
[0075] Step S6, according to the difference, start the preset conflict processing strategy.
[0076] Specifically, in one specific embodiment, in order to solve the complexity problem in the development of automotive electronic system, the AUTOSAR (AUTomotive Open System ARchitecture) architecture is introduced.
[0077] AUTOSAR is an open, standardized software and hardware architecture for the automotive industry, which can improve the modularity, reusability and interoperability of vehicle electronic systems. Developers can design modularly based on this architecture, thereby reducing development workload and improving system stability and maintainability. However, in the actual development process, the underlying software developers (hereinafter referred to as "bottom software developers") still face many challenges, especially in the application software (ASW) development stage. These challenges mainly focus on the following aspects:
[0078] 1. The frequency of requirement changes: In the development process of vehicle domain controller, the frequent changes of requirements are inevitable. Upstream developers, such as architects and network engineers, usually adjust the system architecture according to market demand, technological development or customer feedback. These adjustments are usually communicated to bottom software developers in the form of requirement change lists. However, in the actual development process, bottom software developers often find that the requirement change list does not match the actual received input information (such as ARXML files), which brings great challenges to the development work.
[0079] 2. Redundancy of development process: Due to the frequent changes of requirements, every time the upstream developers release new ARXML files, the bottom software developers usually need to collect requirements again, model again, and develop again. This process not only consumes a lot of time and resources, but also is prone to errors, especially when the requirement change list does not match the actual input. This redundant development process greatly reduces the development efficiency and increases the development cost.
[0080] 3. Complexity of version management: In the software development process, version management is a very key link. With the continuous increase and complexity of software functions, bottom software developers need to strictly manage each version to ensure compatibility and stability between different versions. However, in the case of frequent changes in requirements, bottom software developers often need to switch and adjust between multiple versions, which makes version management extremely complex.
[0081] 4. Team collaboration challenges: In the development of domain controllers, multiple teams need to work closely together, such as the architecture team, network team, functional safety team, and base software development team. However, due to the different focuses of each team, communication problems and information asymmetry often occur during collaboration, further increasing the complexity of development.
[0082] 5. Difficulty in error detection and debugging: In a complex system architecture, error detection and debugging is a very challenging task. Base software developers need to ensure that all modules work properly, and any error in a module can cause the entire system to crash. However, due to the complexity of the system and the dependencies between modules, error localization and repair often require a lot of time and effort.
[0083] Therefore, in this embodiment, the requirement change list comes from the first information platform, and the actual received ARXML input information comes from the second information platform. The engineering configuration item information is interpreted, compared one by one, and the same items and difference items are marked.
[0084] The manifestation of difference items includes not only content differences, but also missing items, categories, and other unaligned issues.
[0085] Generally, most of them are the same, but in order to eliminate difference items and delay the start of development work, it will have a great impact on the overall progress. Therefore, the same items that are not affected by other factors can be developed in parallel to start development and advance the entire project. It also includes the first step of the entire project, which can be developed first if it does not affect subsequent steps. For items with a sequence or strong association with other items, they will be considered for execution after the difference items are handled.
[0086] In this embodiment, the first information platform includes:
[0087] Collecting configuration item information in the current engineering file;
[0088] Exporting the first group of configuration items with the help of engineering configuration management tools;
[0089] Importing the ARXML file provided by the upstream team;
[0090] Exporting the second group of configuration items according to the ARXML file;
[0091] Marking the same items and difference items according to the first group of configuration items and the second group of configuration items.
[0092] Specifically, in a specific embodiment, base software developers face many problems during the development of the entire vehicle domain controller, especially during the application software development phase, including:
[0093] 1. Inconsistency between requirement changes and actual inputs: The requirement change list often does not match the actual ARXML input information received, which requires the bottom software developer to perform a large amount of additional work during development, such as re-collecting requirements and re-modeling. This inconsistency greatly increases the difficulty of development and the risk of errors.
[0094] 2. Redundant development process: Whenever the upstream developer releases new input information, the bottom software developer needs to re-perform a series of development activities, which not only consumes a lot of time and resources, but also is prone to errors, especially when the requirements change further during the development process.
[0095] 3. Difficulty in error detection and repair: Due to the complexity of the system and the multi-module dependency relationship, the bottom software developer often faces great challenges in detecting and repairing errors. Any error in a module can cause the entire system to crash, and the developer needs to spend a lot of time and effort to locate and repair the error.
[0096] 4. Complexity of version management: In the case of frequent changes in requirements, the bottom software developer needs to switch and adjust between multiple versions, which makes version management extremely complex. The developer not only needs to ensure compatibility and stability between different versions, but also needs to deal with various problems that may arise due to version switching.
[0097] 5. Challenges in team collaboration: In a multi-team development environment, poor communication and information asymmetry often lead to various problems during development. Especially in the case of frequent changes in requirements, collaboration between teams is more difficult, and developers need to spend more time and effort on coordination and communication.
[0098] 6. Limitations of traditional solutions: In order to address the above problems, some measures are usually taken to improve the software development process, such as automatically identifying and processing the differences between ARXML and engineering configuration, significantly improving development efficiency and reducing redundant work of re-collecting requirements and modeling; accurately identifying difference items and providing operation options to reduce the risk of manual error handling; in addition, the tool allows the developer to perform pre-check when the change list and the actual input information do not match, and timely discover and feedback conflict items, further improving the accuracy and collaboration efficiency of development.
[0099] In this embodiment, the development system preparation and engineering configuration collection are performed first. For example, in the step of collecting existing engineering configuration items, first, collect all configuration item information in the current project (from the first information platform). Mainly including SWC (Software Component) model elements, SWC internal behavior (such as runnable), SWC port interface, and interface type definition.
[0100] As, find the current configuration file (usually with suffix.arxml or.xml) from the engineering folder. Extract and export these configuration items (export the first set of configuration items) using the ASW tool or other engineering configuration management tools.
[0101] In addition, in the step of receiving and importing a new ARXML file, obtain the new ARXML file provided by the upstream team (from the second information platform) and import it into the ASW tool for subsequent comparison.
[0102] In this step, ensure that the ARXML file obtained from the upstream team is the latest and complete, and place it in the specified directory (export the second set of configuration items).
[0103] As, in the ASW tool, select the "Import ARXML" function, select the file and import it into the tool (such as the engineering configuration management tool).
[0104] In this embodiment, the conflict handling strategy includes a strategy for displaying difference items.
[0105] The strategy for displaying difference items includes marking the detail information of each difference item.
[0106] The detail information of each difference item includes the detail information of the element name, old value or / and new value.
[0107] The strategy for displaying difference items also includes marking the information generated by each difference item.
[0108] The information generated by each difference item includes information generated by adding, modifying or deleting the item.
[0109] Specifically, in one specific embodiment, the ARXML file is first parsed, so that the new and old ARXML files can be compared; the difference items between the new and old ARXML files are identified, and the change content that needs to be handled is determined.
[0110] As, use the "Compare" function of the ASW tool to compare the imported ARXML file with the configuration items of the existing engineering.
[0111] As, the tool automatically identifies and lists all difference items, which are grouped and displayed by category (such as SWC model elements, runnable, port interface, interface type definition, etc.).
[0112] The difference items are displayed in detail to ensure that all identified difference items can be displayed in detail for developers to view and operate more intuitively.
[0113] For example, the tool displays the differences graphically in the interface, such as identifying the added, modified, and deleted parts by color.
[0114] For example, each difference item should contain detailed information, such as element name, old value, new value, etc.
[0115] In this embodiment, the conflict handling strategy further includes:
[0116] Obtain the requirement information of the developed system;
[0117] According to the display of the difference item information and the requirements of the developed system, operate each difference item;
[0118] The operation of each difference item includes adding, ignoring, or merging the difference item.
[0119] Specifically, in one specific embodiment, in the step of operating the difference item, the operation options of the difference item are obtained, such as providing appropriate operation options for each difference item, allowing the developer to choose the appropriate processing method according to the requirements.
[0120] For example, the tool provides operation options such as add, discard, and merge next to each difference item.
[0121] The developer can choose the corresponding operation according to the specific requirements in the change list. For example, if a certain change item is confirmed to be applied to the current engineering configuration, select add or merge.
[0122] In the step of applying and confirming the operation, the confirmed difference item is applied to the existing engineering configuration, and it is ensured that there is no omission or error.
[0123] For example, confirm and select the operation of each difference item one by one to ensure that all necessary changes have been correctly processed.
[0124] For example, the tool automatically applies these changes to the engineering configuration file and prompts the user for final confirmation.
[0125] In this embodiment, by comparing the engineering configuration item information obtained from the first information platform and the second information platform, the same items and difference items are marked, which includes:
[0126] According to the marking of the same items and the difference items, feedback the first information platform and the second information platform;
[0127] According to the feedback of the first information platform and the second information platform, the first information platform and the second information platform interact;
[0128] According to the information interaction between the first information platform and the second information platform, the engineering configuration item information obtained from the first information platform and the second information platform again is marked again for the same items and the different items.
[0129] In the embodiment, the marking of the same items and the different items according to the engineering configuration item information obtained from the first information platform and the second information platform respectively further includes:
[0130] According to the marking of the same items and the different items, the first information platform and the second information platform are fed back.
[0131] According to the feedback of the first information platform and the second information platform, the first information platform and the second information platform process the different items respectively.
[0132] According to the processing of the different items by the first information platform and the second information platform respectively, the engineering configuration item information obtained from the first information platform and the second information platform again is marked again for the same items and the different items.
[0133] Specifically, in one specific embodiment, in the step of pre-checking and conflict processing, the requirement change list and the ARXML file are checked.
[0134] For example, before the application of the change, the differences between the requirement change list and the ARXML file are checked to ensure that they are consistent.
[0135] For example, the checking function of the tool is used to compare the content in the requirement change list with the actual configuration in the ARXML file to check whether there is inconsistency.
[0136] For example, the tool generates a checking report, marks the inconsistent part, and lists the conflict items in detail.
[0137] In the step of processing the conflict items, the conflict between the requirement change list and the ARXML file is solved to ensure that the change is successfully applied.
[0138] For example, for the conflict items in the report, the developer selects to manually adjust the configuration item or communicates with the upstream team to solve the problem.
[0139] For example, the operation options provided by the tool, such as resolve (solve the conflict) or ignore (ignore the conflict), are used to process these conflict items.
[0140] In the embodiment, the step of feedback and adjustment is further included, which includes feeding back the problems encountered in the process to the related team in time so that the problems can be solved quickly.
[0141] For example, the feedback function of the tool is used to record and send the conflicts or problems encountered to the upstream team, and the content and possible reasons of the problem are described in detail.
[0142] Further comprising adjusting the final configuration, according to the feedback and the check result, adjusting the final engineering configuration, ensuring that all changes have been correctly applied.
[0143] For example, according to the final confirmed change result, adjusting the engineering configuration item, and generating the final configuration file.
[0144] For example, submitting the final configuration file to the version control system, and notifying the relevant team to prepare to enter the next development or testing stage.
[0145] In the embodiment, further comprising:
[0146] Comparing the same items and the difference items marked each time, selecting the non-controversial same items;
[0147] According to the non-controversial same items, judging whether there are items that can be developed in advance or / and in parallel in the progress plan;
[0148] If so, selecting one or more of them to start the development process;
[0149] According to the difference items, starting the preset conflict handling strategy.
[0150] Figure 2 is a structural diagram of an agile development device for software provided by one or more embodiments of the application.
[0151] As shown in Figure 2 The agile development device for software comprises an information acquisition module, a configuration file module, a project marking module, a project judgment module, a project selection module, and a strategy starting module.
[0152] The information acquisition module is configured to acquire information of a developed system.
[0153] The configuration file module is configured to correspond to the information of the developed system, and acquire engineering configuration item information from the first information platform and the second information platform respectively.
[0154] The project marking module is configured to compare the engineering configuration item information acquired from the first information platform and the second information platform respectively, and mark the same items and the difference items.
[0155] The information of the developed system further comprises progress plan information.
[0156] The project judgment module is configured to judge whether there are items that can be developed in advance or / and in parallel in the progress plan according to the marked same items.
[0157] The project selection module is configured to select one or more of them to start the development process if so.
[0158] The strategy starting module is configured to start the preset conflict handling strategy according to the difference items.
[0159] It is worth noting that although the system only discloses the information acquisition module, the configuration file module, the project mark module, the project judgment module, the project selection module, and the strategy starting module, it does not mean that the device is limited to the above basic function modules. On the contrary, the meaning expressed by the present application is that on the basis of the above basic function modules, the person skilled in the art can add one or more function modules to form an infinite number of embodiments or technical solutions in combination with the prior art. That is to say, the system is open rather than closed, and it cannot be considered that the protection scope of the present application claimed is limited to the above disclosed basic function modules because the present embodiment only discloses individual basic function modules.
[0160] In one specific embodiment, the update involves multiple runnable internal behaviors. For example, during the development of a control system for an electric vehicle, it is found that there are important updates to the runnable internal behaviors of multiple SWCs in a new ARXML file, including new scheduling strategies and execution frequencies. These changes need to be compared with the existing configuration and applied.
[0161] Step 1, collect existing configuration:
[0162] Extract the definitions and configurations of runnable internal behaviors in the existing project.
[0163] Use the ASW tool to export these definitions in the form of a list or table.
[0164] Step 2, import new ARXML file:
[0165] Import the new ARXML file provided by the upstream team, which contains updates to the runnable internal behaviors.
[0166] Step 3, perform comparison:
[0167] Start the comparison function to compare the existing runnable definitions with the definitions in the new SWC ARXML.
[0168] The tool identifies the differences in new scheduling strategies and execution frequencies.
[0169] Step 4, refine display and operation:
[0170] The difference items are displayed in a graphical manner, such as using color markers for the changed part of the scheduling strategy.
[0171] Developers can operate on these difference items, such as merge operation, to apply the new scheduling strategy to the existing configuration.
[0172] Step 5, apply changes:
[0173] After confirming the operation, apply the changes to the engineering configuration.
[0174] Verify that the configuration of the runnable internal behavior is correct and complies with the new scheduling policy.
[0175] Step 6, Feedback and Adjustment:
[0176] Record any issues encountered during the operation and feedback to the upstream team.
[0177] Adjust the final configuration based on feedback to ensure all changes are applied correctly.
[0178] In the above example, based on the AUTOSAR (Automotive Open System Architecture) technical background:
[0179] For example, AUTOSAR is an open automotive system architecture standard aimed at providing a standardized platform for automotive electronic systems. It defines a set of standard interfaces and architectures to facilitate the collaboration of components from different vendors on the same platform.
[0180] Among them,
[0181] 1、ARXML (AUTOSAR XML): A standardized file format for describing AUTOSAR configurations, including component models, interfaces, and configuration parameters, etc.
[0182] 2、ECU (Electronic Control Unit): Electronic control unit in the car, used to control various car functions.
[0183] 3、Bsw (Basic Software): Basic software layer provided in AUTOSAR, including various system services and communication modules.
[0184] Also includes, SWC (Software Component):
[0185] SWC is a core concept in AUTOSAR, used to define functional modules of software. Each SWC contains the implementation of a specific function and can be developed and deployed independently of other SWCs.
[0186] Among them,
[0187] 1、Runnable: Executable unit in SWC, defines the specific behavior and processing logic of SWC.
[0188] 2、Port: Interface for communication between SWC and other SWC or ECU, used for data exchange and message passing.
[0189] 3、Interface: Defines the protocol and data format for communication between SWCs.
[0190] Also includes ARXML file:
[0191] Where ARXML file is the configuration file format of AUTOSAR, used to describe and store information of AUTOSAR system configuration and software components. It is an XML format file containing SWC, interface, task and other definitions.
[0192] Purpose: Used for passing and sharing AUTOSAR configuration data between different development tools and systems.
[0193] Also includes ASW (Application Software):
[0194] Where ASW refers to the application software part, which includes all software components and application logic, defining the functional implementation of the system. ASW integrates with basic software (Bsw) and operating system (OS) to perform actual functional tasks.
[0195] Also includes Application Layer: The layer where ASW resides, responsible for executing specific application logic and functions.
[0196] Many software engineers have problems with insufficient understanding of enterprise specifications when dealing with enterprise specifications. Due to the complexity and frequent updates of technical details involved in the specifications, engineers may not have received adequate training or obtained the latest specification information, affecting the accuracy and quality of the engineering. Even if engineers have some understanding of the specifications, the tediousness and risk of manual configuration in the actual development process still exist, especially in complex AUTOSAR CP configuration tasks. Manual configuration is prone to errors or omissions, affecting system performance.
[0197] The present application can also use AI models (such as GPT-2 or BERT based on Transformer architecture) to automatically generate configuration files that meet the AUTOSAR CP standard. The core technology includes collecting and preprocessing data from enterprise specifications and historical configuration files, training deep learning models to generate accurate configuration files, and finally saving the generated configuration as a standardized XML format. The present application also includes data collection and processing methods, selection and training process of AI models, specific techniques for automatic configuration generation, and configuration verification and adjustment mechanisms. Improving software quality and development efficiency.
[0198] Figure 3An electronic device structure block diagram of an agile development method of software provided by one or more embodiments of the present application.
[0199] As shown in Figure 3 The present application provides an electronic device, comprising: a processor, a communication interface, a memory and a communication bus, wherein the processor, the communication interface and the memory complete mutual communication through the communication bus.
[0200] The memory stores a computer program, and when the computer program is executed by the processor, the processor executes the steps of the agile development method of software.
[0201] The present application also provides a computer readable storage medium storing a computer program executable by an electronic device, and when the computer program runs on the electronic device, the electronic device executes the steps of the agile development method of software.
[0202] The present application also provides a vehicle or a development platform, comprising:
[0203] An electronic device for implementing the steps of the agile development method of software.
[0204] A processor, wherein the processor runs a program, and when the program runs, the data output from the electronic device executes the steps of the agile development method of software.
[0205] A storage medium for storing a program, and when the program runs, the data output from the electronic device executes the steps of the agile development method of software.
[0206] The communication bus mentioned above can be a peripheral component interconnect (PCI) bus or an extended industry standard architecture (EISA) bus, etc. The communication bus can be divided into an address bus, a data bus, a control bus, etc. For the convenience of representation, only one thick line is used in the figure, but it does not mean that there is only one bus or only one type of bus.
[0207] The electronic device includes a hardware layer, an operating system layer running above the hardware layer, and an application layer running on the operating system. The hardware layer includes hardware such as a central processing unit (CPU), a memory management unit (MMU), and a memory. The operating system can be any one or more computer operating systems that implement control of the electronic device through a process, such as a Linux operating system, a Unix operating system, an Android operating system, an iOS operating system, or a windows operating system. In embodiments of the present application, the electronic device can be a handheld device such as a smartphone or a tablet computer, or an electronic device such as a desktop computer or a laptop computer, and is not particularly limited in embodiments of the present application.
[0208] The execution subject of the electronic device control in embodiments of the present application can be an electronic device or a functional module in the electronic device that can call and execute a program. The electronic device can obtain firmware corresponding to the storage medium, which is provided by a vendor. The firmware corresponding to different storage media can be the same or different, and is not limited herein. After the electronic device obtains the firmware corresponding to the storage medium, the electronic device can write the firmware corresponding to the storage medium into the storage medium, specifically by burning the firmware corresponding to the storage medium into the storage medium. The process of burning the firmware into the storage medium can be implemented using existing technology, and is not described in detail in embodiments of the present application.
[0209] The electronic device can also obtain a reset command corresponding to the storage medium, which is provided by a vendor. The reset command corresponding to different storage media can be the same or different, and is not limited herein.
[0210] At this time, the storage medium of the electronic device is a storage medium into which the corresponding firmware has been written, and the electronic device can respond to the reset command corresponding to the storage medium in the storage medium into which the corresponding firmware has been written, so that the electronic device resets the storage medium into which the corresponding firmware has been written according to the reset command corresponding to the storage medium. The process of resetting the storage medium according to the reset command can be implemented using existing technology, and is not described in detail in embodiments of the present application.
[0211] For the convenience of description, the above-described apparatus is described as various units and modules in terms of functions. Of course, the functions of the units and modules can be implemented in one or more software and / or hardware in the implementation of the present application.
[0212] Those skilled in the art can understand that, unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art in the field of the present application. It should also be understood that terms such as those defined in a generally used dictionary should be interpreted as having a meaning consistent with the meaning in the context of the relevant art and should not be interpreted in an idealized or overly formal sense unless specifically so defined.
[0213] For the method embodiments, for the sake of simplicity, all of the operations are described sequentially, but those skilled in the art should understand that the embodiments of the present application are not limited by the order of the operations described, since some steps can be performed in other order or simultaneously in accordance with the embodiments of the present application. In addition, those skilled in the art should understand that the embodiments described in the specification are all preferred embodiments, and the operations involved are not necessarily essential to the embodiments of the present application.
[0214] From the above description of the embodiments, those skilled in the art can clearly understand that the present application can be implemented by means of software and the necessary general hardware platform. Based on such understanding, the technical solutions of the present application can be embodied in the form of a software product, which can be stored in a storage medium, such as a ROM / RAM, a magnetic disk, an optical disk, etc., and includes a number of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments of the present application.
[0215] Finally, it should be noted that: the above embodiments are only used to illustrate the technical solutions of the present application, and not to limit them; although the present application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that they can still modify the technical solutions recorded in the foregoing embodiments, or make equivalent replacements to some or all of the technical features; and these modifications or replacements do not make the essence of the corresponding technical solutions deviate from the scope of the technical solutions of the embodiments of the present application.
Claims
1. An agile software development method, characterized in that: The agile development method for the software includes: Obtain information about the system being developed; Corresponding to the information of the developed system, engineering configuration item information is obtained from the first information platform and the second information platform respectively; Comparing the engineering configuration item information obtained from the first information platform and the second information platform, marking the same items and the different items; The information of the developed system also includes,schedule plan information; Based on the items with the same tags, determine whether there are items in the schedule that can be developed first or / and in parallel; If,yes, then select one or more of them to start the development process; Based on the differences, the preset conflict resolution strategy is activated.
2. The agile software development method according to claim 1, characterized in that: The first information platform includes: Collect configuration item information in the current project file; Using the engineering configuration management tool, export the first set of configuration items; Import the ARXML file provided by the upstream team; Export the second set of configuration items based on the ARXML file; Mark the same items and different items based on the first set of configuration items and the second set of configuration items.
3. The agile software development method according to claim 1 or 2, characterized in that: The conflict handling strategies include: strategies for displaying difference items; The strategy for displaying the difference items includes marking the detailed information of each difference item; The detailed information of each difference item includes detailed information of the element name, old value and / or new value; The strategy for displaying the difference items also includes marking the information generated by each difference item; The information generated by each difference item includes information generated by adding, modifying or deleting the item.
4. The agile software development method according to claim 3, characterized in that: The conflict handling strategy also includes: Obtain the requirements information of the system being developed; Operate on each difference item according to the display of difference item information and the requirements of the developed system; The operation on each difference item includes adding, ignoring or merging the difference item.
5. The agile software development method according to claim 1 or 4, characterized in that: The comparing the engineering configuration item information obtained from the first information platform and the second information platform, and marking the same items and the different items, includes: Feedback is provided to the first information platform and the second information platform based on the marked identical items and the marked different items; The first information platform and the second information platform exchange information based on the feedback; According to the information interaction between the first information platform and the second information platform, the engineering configuration item information obtained from the first information platform and the second information platform is again marked with the same items and different items.
6. The agile software development method according to claim 5, characterized in that: The comparing the engineering configuration item information obtained from the first information platform and the second information platform respectively, marking the same items and the different items further includes: Feedback is provided to the first information platform and the second information platform based on the marked identical items and the marked different items; According to the feedback from the first information platform and the second information platform, the first information platform and the second information platform respectively process the difference items; The difference items are processed respectively according to the information of the first information platform and the second information platform, and the engineering configuration item information obtained from the first information platform and the second information platform are marked again for the same items and the difference items.
7. The agile software development method according to claim 1 or 6, characterized in that: Also includes: Compare the identical and different items in each mark and select the undisputed identical items; Based on the undisputed identical items, determine whether there are items in the schedule that can be developed first or / and in parallel; If,yes, then select one or more of them to start the development process; Based on the differences, the preset conflict resolution strategy is activated.
8. An agile software development device, characterized in that: The agile development device of the software includes: Information acquisition module, used to obtain information about the developed system; A configuration file module is used to obtain engineering configuration item information from the first information platform and the second information platform respectively, corresponding to the information of the developed system; A project marking module, used to compare the engineering configuration item information obtained from the first information platform and the second information platform, and mark the same items and different items; The information of the developed system also includes,schedule plan information; The project judgment module is used to determine whether there are items in the schedule that can be developed first or / and in parallel based on the items with the same tags; The project selection module is used to select one or more of them to start the development process if there are any; The strategy startup module is used to start the preset conflict handling strategy based on the difference items.
9. An electronic device, characterized in that: include: A processor, a communication interface, a memory, and a communication bus, wherein the processor, the communication interface, and the memory communicate with each other via the communication bus; A computer program is stored in the memory. When the computer program is executed by the processor, the processor is caused to execute the steps of the agile software development method according to any one of claims 1 to 7.
10. A computer-readable storage medium, characterized in that A computer program executable by an electronic device is stored, and when the computer program is run on the electronic device, the electronic device executes the steps of the agile software development method according to any one of claims 1 to 7.