(1) Software engineering Objective: production of products with correctness, availability and cost-appropriate. Correctness refers to the degree to which a software product achieves its intended function. Availability refers to the extent to which the software infrastructure, implementation, and documentation are available to the user. Overhead is the degree to which the entire cost of software development and operation meets the user's requirements. The realization of these goals, both theoretically and in practice, has many problems to be solved, and they form the constraints of process, process model and engineering method selection.
(2) Software engineering Process: the steps required to produce a product that ultimately meets the requirements and meets the engineering objectives. The software engineering process mainly includes the development process, the operation process and the maintenance process. They cover the requirements, design, implementation, validation, and maintenance activities. Requirements activities include problem analysis and demand analysis. The problem analysis obtains the requirement definition, also called the software Requirement specification. Requirements analysis generates a functional specification. Design activities generally include a summary design and detailed design. The outline design establishes the entire software system structure, including the subsystem, the module as well as the related level explanation, each module's interface definition. Detailed design produces module descriptions that are available to programmers, including data structure descriptions and processing descriptions in each module. The implementation activity transforms the design results into executable program code. Confirm the activities throughout the development process, to achieve the completion of the confirmation, to ensure that the final product to meet user requirements. Maintenance activities include the use of the process of expansion, modification and improvement. Along with the above process, there are management process, support process, training process and so on.
(3) The principle of software engineering refers to the principles that must be followed in the process of software development around engineering design, engineering support and engineering management.
My understanding of software engineering