Overview
This chapter summarizes the historical development and basic principles of software engineering, discusses the latest software engineering knowledge system and the code of Ethics of Software Engineering in IEEE and ACM.
The book says that software engineering is designed to solve the problem of cost-effectiveness and software quality, which is a computer program, a procedure, and the documentation and data that may be needed to run a computer system. Software is divided into general-purpose software and custom software. The features of the software are four points: complex, invisible, constantly changing, customized rather than assembled by existing artifacts. The development of software has four stages: 20th century 50-60, the 1970s, the 1980s, the 1990s to date. Software development is facing a software crisis. Software engineering is a systematic, standardized, and quantifiable method applied to the development, operation and maintenance of soft ware, which will be used in engineering application to software. Software engineering aims to focus on the quality of the system, consisting of three elements of processes, methodologies, and tools. Computer aided software Engineering is a set of tools and methods, case system can be divided into 3 levels of tools, workbench and environment. The purpose of the SWEBOK project is to provide a consistent recognition of the boundaries of software engineering disciplines and to provide guidance for supporting the knowledge system in this discipline. In Swebok, the software engineering knowledge system is divided into 10 knowledge domains, which are: requirements, software design, software construction, software testing, software maintenance, software configuration management, software engineering management, engineering project process, software software tools and methods, and quality. Every software engineering practitioner should abide by the code of Professional ethics of software engineering.
Theory, method and practice of software Engineering (chapter I)