The data room charging system is over, and software engineering is started! After watching a few sets of videos, I feel deeply touched! The process of making such software is incredible, but it is really necessary to develop large software. At the beginning, in this blog, I want to give you a brief introduction to software engineering and a macro understanding.
Let's take a look at this figure first:
This figure describes the software and engineering knowledge. As you can see in the waterfall model shown in the figure, the process of software engineering is described in detail below, because this is the main part of software engineering:
I. plan formulation: 1. determine the overall goal of the software system to be developed; 2. provide functional, performance, reliability and interface requirements; 3. Complete the feasibility study of the software task; 4. estimate available resources (hardware, software, manpower, etc.), costs, benefits, and development progress; 5. formulate implementation plans for completion of development tasks, together with feasibility study reports, submit to the Management Department for review. In fact, the white point is that before developing software, we should make an early estimation and comment on all aspects of this work. Macro Analysis.
Ii. requirement analysis and definition: 1. Analyze user requirements and give detailed definitions; 2. Compile the software requirement manual or system function manual and preliminary system user manual; 3. submit the application to the management organization for review. In fact, simply put, it is the requirement analysis of the preparations for the software before the software is designed.
Iii. Software Design: 1. outline design, which converts various requirements into the software architecture. Each component of the structure is a meaningful module, and each module corresponds to some requirements; 2. design in detail, describe the work to be completed for each module, and lay the foundation for programming the source program. 3. Compile the design description and submit it for review. Note that the design phase is closely related to the requirement analysis document, which is used to design the requirement analysis document.
4. Programming: This has entered the real software compiling stage, and the work results of the basic software design stage are used to compile the code. 1. Convert the software design into a program code acceptable to the computer; 2. The written code should be well structured, clear, easy to read, and consistent with the design.
5. Software Testing: 1. Unit Testing, that is, finding out the functional structure of a single module and correcting the existing problems; 2. Assembling and testing the existing modules, test the software together. 3. test the effectiveness of the software according to the specified requirements and determine whether the software is qualified and can be delivered to the user.
Vi. Operation and Maintenance: 1. corrective maintenance, correction of errors occurring during software operation; 2. Adaptive maintenance, and appropriate changes to adapt to the working environment of the software; 3, perfect Maintenance: changes are made to enhance the functions of the software. At this stage, it has entered the practical stage and belongs to the post-maintenance work of the software.
In short, we have a general process of working for the software. With a macro understanding, we will go into every stage of learning and look forward to it!