First, introduce the concept of requirements engineering process
(I. Overview
1. Specifications
Requirements engineering process is an integrated system development requirements development activities, it is to business problems faced by users as a starting point for analysis and various conversion, and ultimately produce a system solution to solve the business problems of user in the user environment, and its documentation into clear specifications.
2. Life Cycle
There are also requirements engineering life cycle model of its own, that there is demand for the development of requirements engineering process that has deployed in the early stages of system development as a sub-process systems engineering and software engineering.
3. Classification Activity
Requirements elicitation, requirements analysis, requirements specification, requirements validation activities for the development of demand, demand management project management activities.
(B) the results of development activities demand brief document type
1. The project vision and scope document
The system defined business requirements, scope of work and a clear direction for system development.
2. User Requirements Document
User-defined system requirements, in order to express the position of the user behavior expectations. For example, a case document belongs to user requirements document.
3. The requirements specification document
System-level requirements definition system, noting that developers should complete the task. Requirements specification document in accordance with the needs of the range can be divided into the following two categories:
( 1) System specification document
The definition of the software and hardware requirements, other requirements.
( 2) software specification document
Only used to describe software requirements.
(C) the subsequent stages of system development
After the end of all system development activities, well-defined requirements are transferred to the subsequent stages of system development - design, implementation, and test, then often be faced with an important issue - changes in demand. Therefore, after the end of the requirements development, adopt effective measures at a later stage in the development of the unified management of demand and changes in demand, demand management and change control.
Second, the demand for engineering process step by step introduction
(A) requirements elicitation
The main requirements elicitation includes five steps:
Collecting background -> Get problems and objectives, the definition and scope of the project Prospects -> identify stakeholders, selected sources of information -> select acquisition method, performing acquisition function of acquiring the non-functional requirements -> Get Record results.
The following brief description of each process considerations :
1. gather background material
This stage is mainly through communication with users, found that users of the problem, through needs analysis step into the user's needs.
2. The issue of access and goals, define the project scope and prospects
Needs to obtain information in the face of broader, therefore, need to ensure the effectiveness of access to information assurance:
( 1) do not spend too much time on unrelated content.
( 2 ) do not miss important content should be retrieved.
3. Identify stakeholders, selected sources of information
This process will involve the acquisition needs of many users, but in order to facilitate the collection and accuracy of information, users need to be broadly categorized according to different roles, select the user representatives to collect comprehensive information as possible after classification. This process is called "analysis involving the public."
4. Select the acquisition method of performing acquisition function of acquiring the non-functional requirements
There are many requirements elicitation techniques and methods, the use of forms, reports, memos and other hard data acquisition requirements, as well as commonly used method for obtaining interviews, questionnaires, observation and prototypes. You should select the appropriate service type according to the actual scene and collection method.
5. Record results Get
Above the acquired information is needed for each stage record for post-analysis and processing, therefore, to obtain transcripts of the recorded content tend to have messy, fuzzy, redundancy and omissions and many other issues.
(B) Requirements Analysis
Its main work is through modeling to integrate all kinds of information, check the requirements that exist in various defects errors, omissions and inconsistencies and so on , and corrected. Which mainly contains the contents of six areas:
Background -> problem analysis, goal analysis, business analysis, system boundaries -> Software Requirement Modeling -> Refinement demand -> to determine the optimal level -> demand negotiation.
1. Background
Mainly for large-scale system, because the system environment is difficult to sort out, this time on the need for background analysis. For example, the field of analysis, enterprise modeling.
This step is omitted in the general project, so as not to spend too much unnecessary energy.
2. problem analysis, goal analysis, business analysis, determine the system boundary
System boundaries need to ensure that the system can form an effective interaction and the surrounding environment, and solve user problems in the interaction, to meet business needs, which will depend on the use of analytical techniques and methods. For example, the system of FIG context and with FIG.
3. Modeling Software Requirements
Semi-formal abstract description of modeling techniques in order to demonstrate and explain the activity information for the commonly used techniques include data flow diagrams, entity relationship diagrams, state transition diagrams, class diagrams. Note that, for some demanding project (Medical Device Control), also need to use a strict formal modeling techniques. For example, the Z-model.
4. Refinement demand
For user needs have vague, ambiguous, by system modeling, into a number of detailed requirements and have a good particle size characteristics, i.e., "the system the type of demand."
5. determine the optimal level
For many user needs, requirements engineers need to sort of demand.
6. demand consultation
When the user needs conflict, the need for consultation with users, the demand for the conflict to choose.
(C) requirements specification
1. customizable document templates
Organization will usually refer to [IEEE 1998] recommended specification document, and then adjust according to their characteristics and needs, establish a reference template organization.
2. documenting
Usually use both expression language model (graphics, expressions, etc.) and natural language (text) mode, to ensure that the content of the document is accurate, easy to read.
(D) requirements validation
Validation requirements documentation meet the following criteria:
l truly reflect the user's intention
l demand recorded a whole has integrity and consistency
l organization and manner of writing readable and modifiability
The main requirements validation includes the following tasks:
1. Perform verification
Best to take peer review, if necessary, can be taken or analog prototype but a higher price.
2. bug fixes
The problems identified, the need for timely correction after verification. Tracking and correction to ensure the implementation of the amendments.
(E) demand management
On the demand to develop a need to establish a baseline in the design, implementation, follow-up activities such as handling change requests from customers, management, marketing and other stakeholder groups. Demand management has a very important role in the management activities of the project, CMMI (Capability Maturity Model Integration, Software Capability Maturity Model Integration) will be a key process area as all second-maturity enterprise should have.
Mainly includes the following tasks:
1. Establish and maintain baseline requirements set
Establish a good configuration management, version control baseline demand. We must first identify each requirement, records related to property. Work baseline version control version management tool you can use to carry out.
2. Establish requirements traceability information
Traceability system requirements to system-level requirements as the starting point for two-way track.
( 1 post) to the track
Tracking system level requirements are designed to realize why the products, and back to each design, implement products is why they exist.
( 2 ) Forward Tracking
Back each system-level requirements for which user requirements and business needs support exists.
3. Change Control
After establishing the baseline demand, still needs to be actively embrace change requests from the outside world, and make timely adjustments and feedback.
Issue Date: 2018-04-01 15:03