What are the embedded system development processes
The embedded system development process includes the software development process and the hardware development process. If you want to understand it more clearly, let me introduce it in detail.
Software development process
The general process of software design ideas and methods, including designing software functions and realizing algorithms and methods, software overall structure design and module design, programming and debugging, program joint debugging and testing, and writing and submitting programs.
1. Demand research and analysis
1. First of all, relevant system analysts and users will have a preliminary understanding of the requirements and confirm the functional modules to be developed. They will list the major functional modules of the system to be developed, what are the small functional modules under each major functional module, and for some requirements When it is clear, a small number of interfaces can be initially defined in this step.
2. The system analyst has an in-depth understanding and analysis of requirements, and makes a functional requirements document based on his own experience and requirements. This document will clearly write out the system's general large function modules and small function modules under the large function modules, as well as related interfaces and interface functions.
3. Our system analyst will confirm the need again with the user.
2. Outline design
Developers need to outline the design of the software system, and the outline design is the system design. The design of the software system should be considered in the outline design, including the basic processing flow of the system, interface design, module division, organizational structure, function allocation, operation design, data structure design and error handling design, etc., to help the detailed design of the software Lay a solid foundation.
Three, detailed design
Based on the outline design of the previous step, the developer needs to carry out a detailed design of the software system. In the detailed design, the main algorithms, data structures, class hierarchical structure and calling relationships related to specific modules will be described. Here is an explanation of the design considerations of each program in each level of the software system to facilitate coding and test. It is necessary to ensure that the software requirements are all allocated to the entire software. The detailed design must be sufficiently detailed to be able to be coded in accordance with the detailed design report.
In the software coding stage, the developer starts the specific programming work according to the design requirements for data structure, algorithm analysis and module realization in the "Detailed Design Report of Software System".
Realize the function of each module separately, so as to realize the requirements for the function, performance, interface, interface and other aspects of the target system.
Test the prepared system. Give it to the user, and the user will confirm each function one by one after use.
6. Software delivery preparation
After the software test proves that the software meets the requirements, the software developer shall submit to the user the developed target installation program, "User Installation Manual", "User Guide", test report and other products agreed by the contract between the parties. The "User Installation Manual" shall describe in detail the requirements for the operating environment of the installed software, the definition and content of the installed software, the specific installation steps on the client, server and middleware, and the system configuration after installation. The "User Guide" shall include the use process, operation steps, corresponding business introduction, special prompts and precautions of each function of the software, and shall also give examples when necessary.
Hardware development process
1. Clarify the overall hardware requirements, such as CPU processing capacity, storage capacity and speed, I/O port allocation, interface requirements, level requirements, special circuit (thick film, etc.) requirements, etc.
2. According to the demand analysis, formulate the overall hardware plan, seek technical information, technical approaches, and technical support for key components and circuits, fully consider technical feasibility, reliability and cost control, and put forward clear requirements for development and debugging tools, key components Request samples, etc.
3. After the overall plan is determined, do the detailed design of the hardware and single-board software, including drawing the hardware schematic diagram, the functional block diagram and coding of the single-board software, PCB wiring, and complete the development bill of materials, device coding application, and material application.
4. Retrieve PCB boards and components, solder 1~2 single boards in the workshop, debug the single boards, debug each function in the schematic diagram, modify the schematic diagram and record if necessary. Strict and effective technical review must be carried out at this stage to ensure "correct product"
5. After the debugging of the software and hardware, the function acceptance and electromagnetic compatibility reliability test and the second board production (if necessary) are carried out. Prototype production and optimization improvement, prototype review; verification and improvement processes should be timely, synchronized revision, controlled design documents, drawings, bills of materials, etc.
6. Maintenance is the product summary.