New semester, New beginning, we always need new books to enrich ourselves. This book is divided into five parts: Introduction, demand acquisition, requirements analysis, documentation and validation of requirements, and requirements management and engineering management. This book is a special work on software requirements engineering, the goal is from the developer's perspective, focusing on practitioners of technology and methods, systematically introduce the latest development of demand engineering, and promote the application of the theory, methods and technology in the field of demand engineering, and guide the systematic practice in all stages of demand engineering. This book introduces requirements engineering from requirements acquisition, modeling, documentation, validation and management, and is a very good book.
So, what does the book say about demand engineering? Simply put, demand engineering is the sum of all requirements processing activities, which collects information, analyzes problems, integrates ideas, records requirements and verifies their correctness, and ultimately reflects the desired effect of the software's interaction with its environment. In terms of its definition, demand engineering has three main tasks: first, the requirements engineering must demonstrate that the software system will be applied to the environment of extreme objectives, the software functions used to achieve these goals, but also to describe in the design and implementation of these functions when the context of the software to complete the task of the method, the restrictions and constraints imposed by the methods, It is also necessary to explain what the software needs to do and why it needs to be done. Second, demand engineering must reflect the objectives, functions and constraints in the software system, mapping to the feasible software behavior, and the software behavior of the accurate specification. Requirements specification is the most important achievement, is the project planning, design, testing. User manual writing and many other subsequent software development phases of the work of the Foundation. Thirdly, the real world is a changing world, so demand engineering needs to properly deal with the evolution of objectives, functions and constraints over time. At the same time, in order to save expenses and reuse the requirement specification, the requirement engineering needs to consider and deal with the evolution and distribution of the target, function and restraint in the SOFTWARE product family.
Requirements engineering activities include two aspects of demand development and demand management. Demand development is due to the requirements of demand engineering, they are specifically designed to handle the requirements of the software technology, including demand acquisition, demand analysis, requirements specification and requirements validation of 4 specific activities. Demand management is due to the engineering characteristics of demand engineering, and its purpose is to ensure that the identified requirements can play an effective role in the subsequent project activities and ensure that all activities are carried out in accordance with the requirements after the demand development activities. The goal of demand acquisition is to start with the initial original requirements from the strategic planning of the project. To this end, he needs to study the future application environment of the system, identify the stakeholders of the system, understand the existing problems, establish the goals of the new system, and obtain the details of the business process and the specific user requirements needed to support the new system goals. The purpose of demand analysis is to ensure the integrity and consistency of requirements. It starts with the original requirements and the business process details of the phase output of the demand acquisition stage, maps the target, function and constraint into the software behavior, establishes the system model, then analyzes in the abstract system model, identifies and fixes 1 of the inconsistency defects, discovers and compensates the missing demand. The purpose of the requirements specification is to clearly fix the complete, consistent requirements with the software behavior that satisfies the requirements in a document, which can be described using non-formalized text, and can be described in a formalized language, and the resulting document is a software requirement specification that will be submitted for requirement verification. Requirements validation is the last activity in demand development. Its primary purpose is to ensure the accuracy of the requirements and their documentation, that the requirements correctly reflect the user's true intentions, and that another goal is to ensure the integrity and consistency of requirements and their documentation through inspection and validation. Demand management is the management of demand baselines established for demand development, which formally begins after the completion of the requirements baseline and continues after the demand engineering phase is completed. In the design, testing, implementation and other subsequent software system development in the guarantee of the role of continuous, stable play. Its main work is to track demand analysis and requirements change in the follow-up phase, to determine that the requirements have been correctly understood and correctly implemented in the SOFTWARE PRODUCT.
The main purpose of the system requirement development is to obtain the desired target of the whole system, including the functional characteristics and non-functional characteristics. To this end, we need to judge the stakeholders of the system, collect their goals and requirements, study the environment of the system, determine the constraints of the system, and carry out some overall requirements analysis. The requirement analysis of the system requirement development phase is mainly to analyze the cost efficiency of the system, analyze the organization and administrative strategy of the system, deal with interdependent, conflicting, overlapping or inconsistent stakeholder requirements, check and compensate for the lack of demand, check the technical reserve, external system and other environmental constraints. The results of the system requirements development are written to the system requirements specification.
<< Requirements Engineering-Software modeling and Analysis >> reading notes