A while ago, continued to read the "Requirements Engineering-software modeling and analysis." Prior to understanding the requirements of the introduction of engineering and the capture of requirements, respectively, the difficulties in capturing requirements. Methods and sources of access to information, learning to analyze the prospects of the project, identifying system boundaries, stakeholder analysis and hard data acquisition, methods in demand capture: interviews, questionnaires, brainstorming, prototypes, observations and documentation reviews;
This reading is mainly about requirements analysis and requirements documentation and validation. It introduces the requirement analysis technique, the requirement analysis method, etc., Modeling (process modeling, data modeling, object-oriented modeling), requirement specification, requirement verification.
After this reading, I found that the basic task of demand acquisition is: 1, the establishment of analytical models, to achieve the developer and users of the needs of the common understanding of information. 2, according to common understanding, to play the creative, create software system solutions. In the long-term research and development, has produced a lot of requirements analysis technology, common have context diagram, data flow chart, entity contact diagram, functional entity matrix, process dependency diagram, use case diagram, class diagram, interaction diagram, Activity diagram, object constraint language, micro-specification, database dictionary, state diagram and so on. The task of the requirements analysis phase is to determine the functionality of the software system. Software requirements analysis is to study the user needs to get things, fully understand the user's software requirements of the complete function, to confirm the user software functional requirements, establish a verifiable, verifiable a basic basis. Software Requirement analysis is the beginning of a project and the most important key point of project implementation. According to the analysis results of the relevant agencies, we have designed the software products are not integrity, the correctness of the problem of more than 80% is the result of demand analysis errors, and due to demand analysis errors caused by the fundamental functional problems are particularly prominent. Therefore, a successful software requirements analysis of a project is a critical step. In order to ensure the normal implementation of the project, and can be successfully completed, we must strengthen the project management and focus on the project analysis work. We only from the actual start, the real grasp of user needs, grasp the user needs goals, grasp the user's future function definition, to ensure that our development work correctness direction. Three methods of demand analysis: Structural analysis method, object-oriented analysis method, problem-oriented analysis method. An important task of the demand analysis activity is to carry out the requirement refinement, to clarify the implicit information of the user's requirement, and to unfold the expectation of the behavior of the software system, that is, the system requirement. These refined system requirements define the acceptance criteria of the software system in a measurable way from the point of view of software and technology. The modeling of the problem domain and the requirement information can help to reveal the hidden factors in the problem world, and the system model is the abstract knowledge model after the various implicit factors are clarified. Therefore, the requirement refinement is based on the system model. On the one hand, it needs to clarify the hidden factors of user requirements, to provide sufficient information support for the establishment and implementation of software system; On the other hand, it wants to translate the user requirements from the problem domain and the business perspective into the system requirements expressed from the perspective of software and technology to help software developers to develop a proper and accurate understanding of the requirements.
In terms of documentation and validation of requirements, I learned the reasons for writing requirements Specification documents: On the one hand, clear, clear, structured documents can better communicate the requirements and solutions of software systems to all developers. On the other hand, documents can expand people's knowledge and memory ability. There are different types of requirements specification documents, which are expressed in: document name, content, organization, expression, purpose and function. Among them, excellent requirements Specification document features: Correctness, ambiguity, completeness, consistency, classification according to importance and stability, verifiable, repairable, traceability. The specification writing of the requirement document can make the software less detours in the future, can develop the customer's demand according to the document, can make the software development more smoothly. In the requirement analysis, the document writing is an important step, its importance is that the quality of the document can directly affect the development of the project speed and the development of software. So in the document writing, we must standardize the writing, the specification of the requirements of the document can reflect the quality of a developer, good development habits. The requirements verification activity is to determine the following aspects: The software Requirements specification correctly describes the expected system behavior and characteristics, system requirements or other sources of software requirements, requirements are complete and high quality, there is a consistent view of demand, demand for the continuation of product design, Construction and testing provide a sufficient basis. The best type of formal technical review is called Review, and the review of requirements documentation is the most advanced software quality technology available. In order to understand the actual meaning of verification and diagnosis, it is necessary to understand the system validation meaning in the framework of software engineering. In the process of demand analysis, we need to constantly collate, analyze, pay attention to every detail, determine the boundaries of the system.
"Requirements Engineering-software modeling and analysis" reading notes two